pkgsrc/graphics/netpbm/patches/patch-aa
rillig a80659b46f Fixed the build on IRIX, which had been broken since about one year,
when the build on Solaris had been fixed, "not affecting other
platforms". ;)
2007-02-19 02:25:19 +00:00

194 lines
6.1 KiB
Text

$NetBSD: patch-aa,v 1.39 2007/02/19 02:25:19 rillig Exp $
--- Makefile.config.in.orig 2006-06-18 21:23:40.000000000 +0200
+++ Makefile.config.in
@@ -24,7 +24,7 @@ DEFAULT_TARGET = nonmerge
# and skip it on those systems unless you want to debug it and fix it.
# OpenBSD:
#BUILD_FIASCO = N
-BUILD_FIASCO = Y
+BUILD_FIASCO?= Y
# The following are commands for the build process to use. These values
# do not get built into anything.
@@ -33,7 +33,7 @@ BUILD_FIASCO = Y
#CC = gcc
# Note that 'cc' is usually an alias for whatever is the main compiler
# on a system, e.g. the GNU Compiler on Linux.
-CC = cc
+#CC = cc
# The linker.
LD = $(CC)
@@ -99,7 +99,7 @@ CFLAGS_FOR_BUILD = $(CFLAGS)
# MAKE is set automatically by Make to what was used to invoke Make.
-INSTALL = $(SRCDIR)/buildtools/install.sh
+#INSTALL = $(SRCDIR)/buildtools/install.sh
#Solaris:
#INSTALL = /usr/ucb/install
#Tru64:
@@ -111,7 +111,7 @@ INSTALL = $(SRCDIR)/buildtools/install.s
# STRIPFLAG is the option you pass to the above install program to make it
# strip unnecessary information out of binaries.
-STRIPFLAG = -s
+#STRIPFLAG = -s
# If you don't want to strip the binaries, just leave it null:
#STRIPFLAG =
@@ -130,8 +130,10 @@ MANPAGE_FORMAT = nroff
AR = ar
RANLIB = ranlib
# IRIX, SCO don't have Ranlib:
-#RANLIB = true
-LEX = flex
+ifeq ($(OPSYS),IRIX)
+RANLIB = ar rs
+endif
+#LEX = flex
# Solaris:
# LEX = flex -e
# Or just skip parts that need Lex:
@@ -220,7 +222,7 @@ EXE =
# Here, $(SONAME) resolves to the soname for the shared library being created.
# The following are gcc options. This works on GNU libc systems.
-LDSHLIB = -shared -Wl,-soname,$(SONAME)
+LDSHLIB = -shared -Wl,-h,$(SONAME)
# You need -nostart instead of -shared on BeOS. Though the BeOS compiler is
# ostensibly gcc, it has the -nostart option, which is not mentioned in gcc
# documentation and doesn't exist in at least one non-BeOS installation.
@@ -253,6 +255,19 @@ LDRELOC = NONE
#LDRELOC = ld --reloc
#LDRELOC = ld -r
+ifeq ($(OPSYS),SunOS)
+LDSHLIB = -Wl,-B,dynamic,-G,-h,$(SONAME)
+endif
+
+ifeq ($(OPSYS),Darwin)
+LDSHLIB = -dynamiclib -install_name $(PREFIX)/lib/libnetpbm.$(MAJ).dylib \
+ -compatibility_version $(MAJ) -current_version $(MAJ).$(MIN)
+endif
+
+ifeq ($(OPSYS),Interix)
+# random base address between 0x6B000000 and 0x6D000000
+LDSHLIB+= -Wl,--image-base,$$(($$RANDOM %64/2*1048576+1795162112))
+endif
# On older systems, you have to make shared libraries out of position
# independent code, so you need -fpic or fPIC here. (The rule is: if
@@ -275,11 +290,23 @@ LDRELOC = NONE
CFLAGS_SHLIB =
# Solaris or SunOS with gcc, and NetBSD:
#CFLAGS_SHLIB = -fpic
-#CFLAGS_SHLIB = -fPIC
+CFLAGS_SHLIB = -fPIC
# Sun compiler:
#CFLAGS_SHLIB = -Kpic
#CFLAGS_SHLIB = -KPIC
+ifeq ($(OPSYS),Darwin)
+CFLAGS_SHLIB = -fno-common
+endif
+
+ifeq ($(OPSYS),IRIX)
+CFLAGS_SHLIB = -KPIC
+endif
+
+ifeq ($(OPSYS),Interix)
+CFLAGS_SHLIB = # none!
+endif
+
# SHLIB_CLIB is the link option to include the C library in a shared library,
# normally "-lc". On typical systems, this serves no purpose. On some,
# though, it causes information about which C library to use to be recorded
@@ -348,8 +375,8 @@ TIFFHDR_DIR =
#TIFFLIB = libtiff.so
#TIFFHDR_DIR = /usr/include/libtiff
#NetBSD:
-#TIFFLIB = $(LOCALBASE)/lib/libtiff.so
-#TIFFHDR_DIR = $(LOCALBASE)/include
+TIFFLIB = $(BUILDLINK_DIR)/lib/libtiff.so
+TIFFHDR_DIR = $(BUILDLINK_DIR)/include
# OSF, Tru64:
#TIFFLIB = /usr/local1/DEC/lib/libtiff.so
#TIFFHDR_DIR = /usr/local1/DEC/include
@@ -379,8 +406,8 @@ JPEGHDR_DIR =
#JPEGLIB = libjpeg.so
#JPEGHDR_DIR = /usr/include/jpeg
# Netbsd:
-#JPEGLIB = ${LOCALBASE}/lib/libjpeg.so
-#JPEGHDR_DIR = ${LOCALBASE}/include
+JPEGLIB = ${BUILDLINK_DIR}/lib/libjpeg.so
+JPEGHDR_DIR = ${BUILDLINK_DIR}/include
# OSF, Tru64:
#JPEGLIB = /usr/local1/DEC/libjpeg.so
#JPEGHDR_DIR = /usr/local1/DEC/include
@@ -400,12 +427,12 @@ JPEGHDR_DIR =
# option.
PNGLIB = NONE
PNGHDR_DIR =
-PNGVER =
+PNGVER = 12
#PNGLIB = libpng$(PNGVER).so
#PNGHDR_DIR = /usr/include/libpng$(PNGVER)
# NetBSD:
-#PNGLIB = $(LOCALBASE)/lib/libpng$(PNGVER).so
-#PNGHDR_DIR = $(LOCALBASE)/include
+PNGLIB = $(BUILDLINK_DIR)/lib/libpng$(PNGVER).so
+PNGHDR_DIR = $(BUILDLINK_DIR)/include
# OSF/Tru64:
#PNGLIB = /usr/local1/DEC/lib/libpng$(PNGVER).so
#PNGHDR_DIR = /usr/local1/DEC/include
@@ -415,8 +442,8 @@ PNGVER =
# NONE for the PNG library, it doesn't matter what you specify here --
# it won't get used.
-ZLIB = NONE
-ZHDR_DIR =
+ZLIB = $(BUILDLINK_DIR)/lib/libz.so
+ZHDR_DIR = $(BUILDLINK_DIR)/include
#ZLIB = libz.so
# The JBIG lossless image compression library (aka JBIG-KIT):
@@ -425,8 +452,8 @@ JBIGLIB = $(BUILDDIR)/converter/other/jb
JBIGHDR_DIR = $(SRCDIR)/converter/other/jbig
# The Jasper JPEG-2000 image compression library (aka JasPer):
-JASPERLIB = $(INTERNAL_JASPERLIB)
-JASPERHDR_DIR = $(INTERNAL_JASPERHDR_DIR)
+JASPERLIB = -ljasper
+JASPERHDR_DIR = /doesnt-matter
# JASPERDEPLIBS is the libraries (-l options or file names) on which
# The Jasper library depends -- i.e. what you have to link into any
# executable that links in the Jasper library.
@@ -471,7 +498,7 @@ OMIT_NETWORK =
# built into the standard C library, so this can be null. This is irrelevant
# if OMIT_NETWORK is "y".
-NETWORKLD =
+#NETWORKLD =
# Solaris, SunOS:
#NETWORKLD = -lsocket -lnsl
# SCO:
@@ -525,7 +552,7 @@ SUFFIXMANUALS5 = 5
#Netpbm library functions. The value is used only in make file tests.
# "unixshared" means a unix-style shared library, typically named like
# libxyz.so.2.3
-NETPBMLIBTYPE = unixshared
+NETPBMLIBTYPE? = unixshared
# "unixstatic" means a unix-style static library, (like libxyz.a)
#NETPBMLIBTYPE = unixstatic
# "dll" means a Windows DLL shared library
@@ -536,7 +563,7 @@ NETPBMLIBTYPE = unixshared
#NETPBMLIBSUFFIX is the suffix used on whatever kind of library is
#selected above. All this is used for is to construct library names.
#The make files never examine the actual value.
-NETPBMLIBSUFFIX = so
+NETPBMLIBSUFFIX?= so
# "a" is the suffix for unix-style static libraries. It is also
# traditionally used for shared libraries on AIX. The Visual Age C