changes: many bugfixes, especially: xpmtoppm: fix wild pointer with color index > 127. which fixes a stack-based buffer overflow (CVE-2009-4274) pkgsrc change: use a fixed PLIST instead of generating on install, helps to detect problems
199 lines
6.2 KiB
Text
199 lines
6.2 KiB
Text
$NetBSD: patch-aa,v 1.40 2010/02/19 18:25:44 drochner Exp $
|
|
|
|
--- Makefile.config.in.orig 2008-12-07 01:58:20.000000000 +0000
|
|
+++ 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)
|
|
@@ -100,7 +100,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:
|
|
@@ -112,7 +112,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 =
|
|
|
|
@@ -131,13 +131,15 @@ MANPAGE_FORMAT = nroff
|
|
AR = ar
|
|
RANLIB = ranlib
|
|
# IRIX, SCO don't have Ranlib:
|
|
-#RANLIB = true
|
|
+ifeq ($(OPSYS),IRIX)
|
|
+RANLIB = ar rs
|
|
+endif
|
|
|
|
# LEX is the beginning of a shell command that runs a Lex-like
|
|
# pattern matcher generator. Null string means there isn't any such
|
|
# command. That means the build will skip parts that need one.
|
|
|
|
-LEX = flex
|
|
+#LEX = flex
|
|
# Solaris:
|
|
# LEX = flex -e
|
|
# Windows Mingw:
|
|
@@ -228,7 +230,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.
|
|
@@ -261,6 +263,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
|
|
@@ -283,11 +298,23 @@ LDRELOC = NONE
|
|
CFLAGS_SHLIB =
|
|
# Gcc:
|
|
#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
|
|
@@ -356,8 +383,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
|
|
@@ -387,8 +414,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
|
|
@@ -415,12 +442,12 @@ JPEGHDR_DIR =
|
|
|
|
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
|
|
@@ -432,8 +459,8 @@ PNGVER =
|
|
#
|
|
# If you have 'libpng-config' (see above), these are irrelevant.
|
|
|
|
-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):
|
|
@@ -442,8 +469,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.
|
|
@@ -488,7 +515,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:
|
|
@@ -542,7 +569,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
|
|
@@ -553,7 +580,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
|