freebsd-ports/graphics/gd/files/patch-ac
Vanilla I. Shu f52f02f515 Compile with freetype default.
Approved by:	billf
2000-11-12 02:40:52 +00:00

177 lines
6.6 KiB
Plaintext

--- Makefile.orig Sun Jun 4 03:26:12 2000
+++ Makefile Thu Nov 9 14:53:41 2000
@@ -3,18 +3,22 @@
#If you do not have gcc, change the setting for COMPILER, but you must
#use an ANSI standard C compiler (NOT the old SunOS 4.1.3 cc
#compiler; get gcc if you are still using it).
-COMPILER=gcc
+COMPILER=${CC}
#If the ar command fails on your system, consult the ar manpage
#for your system.
-AR=ar
+#AR=ar
#If you don't have FreeType, libjpeg and/or Xpm installed, including the
#header files, uncomment this (default).
-CFLAGS=-O
+#CFLAGS=-O
#If you do have FreeType, libjpeg and/or Xpm fully installed, uncomment a
#variation of this and comment out the line above. See also LIBS below.
-#CFLAGS=-O -DHAVE_XPM -DHAVE_JPEG -DHAVE_LIBTTF
+.if defined(WITH_X11)
+CFLAGS+=-DHAVE_XPM -DHAVE_JPEG
+.else
+CFLAGS+=-DHAVE_JPEG -DHAVE_LIBTTF
+.endif
#If you don't have FreeType and/or Xpm fully installed, uncomment this
#(default).
@@ -23,7 +27,7 @@
#Some systems are very picky about link order. They don't all agree
#on the right order, either.
-LIBS=-lm -lgd -lpng -lz
+LIBS=-lm -lgd -lpng -lz -ljpeg -lttf
#If you do have FreeType, JPEG and/or Xpm fully installed, uncomment a
#variation of this and comment out the line above. Note that
@@ -33,14 +37,19 @@
#Some systems are very picky about link order. They don't all agree
#on the right order, either.
-#LIBS=-lm -lgd -lpng -lz -ljpeg -lttf -lXpm -lX11
+.if defined(WITH_X11)
+LIBS+= -lXpm -lX11
+.endif
#Typical install locations for freetype, zlib, xpm, libjpeg and libpng header files.
#If yours are somewhere else, change this.
#-I. is important to ensure that the version of gd you are installing
#is used, and not an older release in your directory tree somewhere.
-INCLUDEDIRS=-I. -I/usr/local/include -I/usr/include/X11 -I/usr/X11R6/include/X11
+INCLUDEDIRS=-I. -I${LOCALBASE}/include -I${LOCALBASE}/include/freetype
+.if defined(WITH_X11)
+INCLUDEDIRS+=-I${X11BASE}/include/X11 -I${X11BASE}/include
+.endif
#Typical install locations for freetype, zlib, xpm and libpng libraries.
#If yours are somewhere else, other than a standard location
@@ -48,16 +57,19 @@
#-L. as this allows the gd library itself to be found.
#Put -L. first so that old versions of the gd library elsewhere
#on your system can't cause conflicts while building a new one.
-LIBDIRS=-L. -L/usr/local/lib -L/usr/lib/X11 -L/usr/X11R6/lib
+LIBDIRS=-L. -L$(LOCALBASE)/lib
+.if defined(WITH_X11)
+LIBDIRS+=-L$(X11BASE)/lib
+.endif
#Location where libgd.a should be installed by "make install".
-INSTALL_LIB=/usr/local/lib
+INSTALL_LIB=$(PREFIX)/lib
#Location where .h files should be installed by "make install".
-INSTALL_INCLUDE=/usr/local/include
+INSTALL_INCLUDE=$(PREFIX)/include/gd
#Location where useful non-test programs should be installed by "make install".
-INSTALL_BIN=/usr/local/bin
+INSTALL_BIN=$(PREFIX)/bin
#
#
@@ -65,36 +77,43 @@
#
#
-VERSION=1.8.1
+VERSION=1.8.2
-CC=$(COMPILER) $(INCLUDEDIRS)
-LINK=$(CC) $(LIBDIRS) $(LIBS)
+CC+= $(INCLUDEDIRS)
+#LINK=$(CC) $(LIBDIRS) $(LIBS)
PROGRAMS=$(BIN_PROGRAMS) $(TEST_PROGRAMS)
BIN_PROGRAMS=pngtogd pngtogd2 gdtopng gd2topng gd2copypal gdparttopng webpng
TEST_PROGRAMS=gdtest gddemo gd2time gdtestttf
-all: libgd.a $(PROGRAMS)
+.SUFFIXES: .c .so .o
+
+.c.so:
+ ${CC} -fpic -DPIC ${CFLAGS} -c ${.IMPSRC} -o ${.TARGET}
+
+all: libgd.a libgd.so.1 $(PROGRAMS)
install: libgd.a $(BIN_PROGRAMS)
- sh ./install-item 644 libgd.a $(INSTALL_LIB)/libgd.a
- sh ./install-item 755 pngtogd $(INSTALL_BIN)/pngtogd
- sh ./install-item 755 pngtogd2 $(INSTALL_BIN)/pngtogd2
- sh ./install-item 755 gdtopng $(INSTALL_BIN)/gdtopng
- sh ./install-item 755 gd2topng $(INSTALL_BIN)/gd2topng
- sh ./install-item 755 gd2copypal $(INSTALL_BIN)/gd2copypal
- sh ./install-item 755 gdparttopng $(INSTALL_BIN)/gdparttopng
- sh ./install-item 755 webpng $(INSTALL_BIN)/webpng
- sh ./install-item 755 bdftogd $(INSTALL_BIN)/bdftogd
- sh ./install-item 644 gd.h $(INSTALL_INCLUDE)/gd.h
- sh ./install-item 644 gdcache.h $(INSTALL_INCLUDE)/gdcache.h
- sh ./install-item 644 gd_io.h $(INSTALL_INCLUDE)/gd_io.h
- sh ./install-item 644 gdfontg.h $(INSTALL_INCLUDE)/gdfontg.h
- sh ./install-item 644 gdfontl.h $(INSTALL_INCLUDE)/gdfontl.h
- sh ./install-item 644 gdfontmb.h $(INSTALL_INCLUDE)/gdfontmb.h
- sh ./install-item 644 gdfonts.h $(INSTALL_INCLUDE)/gdfonts.h
- sh ./install-item 644 gdfontt.h $(INSTALL_INCLUDE)/gdfontt.h
+ $(INSTALL) -c -m 644 libgd.a $(INSTALL_LIB)/libgd.a
+ $(INSTALL) -c -m 755 pngtogd $(INSTALL_BIN)/pngtogd
+ $(INSTALL) -c -m 755 libgd.so.1 $(INSTALL_LIB)/libgd.so.1
+ ln -sf libgd.so.1 $(INSTALL_LIB)/libgd.so
+ $(INSTALL) -c -m 755 pngtogd2 $(INSTALL_BIN)/pngtogd2
+ $(INSTALL) -c -m 755 gdtopng $(INSTALL_BIN)/gdtopng
+ $(INSTALL) -c -m 755 gd2topng $(INSTALL_BIN)/gd2topng
+ $(INSTALL) -c -m 755 gd2copypal $(INSTALL_BIN)/gd2copypal
+ $(INSTALL) -c -m 755 gdparttopng $(INSTALL_BIN)/gdparttopng
+ $(INSTALL) -c -m 755 webpng $(INSTALL_BIN)/webpng
+ $(INSTALL) -c -m 755 bdftogd $(INSTALL_BIN)/bdftogd
+ $(INSTALL) -c -m 644 gd.h $(INSTALL_INCLUDE)/gd.h
+ $(INSTALL) -c -m 644 gdcache.h $(INSTALL_INCLUDE)/gdcache.h
+ $(INSTALL) -c -m 644 gd_io.h $(INSTALL_INCLUDE)/gd_io.h
+ $(INSTALL) -c -m 644 gdfontg.h $(INSTALL_INCLUDE)/gdfontg.h
+ $(INSTALL) -c -m 644 gdfontl.h $(INSTALL_INCLUDE)/gdfontl.h
+ $(INSTALL) -c -m 644 gdfontmb.h $(INSTALL_INCLUDE)/gdfontmb.h
+ $(INSTALL) -c -m 644 gdfonts.h $(INSTALL_INCLUDE)/gdfonts.h
+ $(INSTALL) -c -m 644 gdfontt.h $(INSTALL_INCLUDE)/gdfontt.h
gddemo: gddemo.o libgd.a
$(CC) gddemo.o -o gddemo $(LIBDIRS) $(LIBS)
@@ -129,16 +148,19 @@
gdtestttf: gdtestttf.o libgd.a
$(CC) gdtestttf.o -o gdtestttf $(LIBDIRS) $(LIBS)
-libgd.a: gd.o gd_gd.o gd_gd2.o gd_io.o gd_io_dp.o gd_io_file.o gd_ss.o \
+OBJS= gd.o gd_gd.o gd_gd2.o gd_io.o gd_io_dp.o gd_io_file.o gd_ss.o \
gd_io_ss.o gd_png.o gd_jpeg.o gdxpm.o gdfontt.o gdfonts.o gdfontmb.o gdfontl.o \
- gdfontg.o gdtables.o gdttf.o gdcache.o gdkanji.o wbmp.o gd_wbmp.o \
- gd.h gdfontt.h gdfonts.h gdfontmb.h gdfontl.h gdfontg.h
+ gdfontg.o gdtables.o gdttf.o gdcache.o gdkanji.o wbmp.o gd_wbmp.o
+INCS= gd.h gdfontt.h gdfonts.h gdfontmb.h gdfontl.h gdfontg.h
+
+libgd.a: $(INCS) $(OBJS)
rm -f libgd.a
- $(AR) rc libgd.a gd.o gd_gd.o gd_gd2.o gd_io.o gd_io_dp.o \
- gd_io_file.o gd_ss.o gd_io_ss.o gd_png.o gd_jpeg.o gdxpm.o \
- gdfontt.o gdfonts.o gdfontmb.o gdfontl.o gdfontg.o \
- gdtables.o gdttf.o gdcache.o gdkanji.o wbmp.o gd_wbmp.o
+ $(AR) rc libgd.a $(OBJS)
-ranlib libgd.a
+
+libgd.so.1: $(INCS) $(OBJS:.o=.so)
+ $(CC) -shared -Wl,-x -Wl,-assert -Wl,pure-text -Wl,-soname,$@ -o $@ $(OBJS:.o=.so) $(LIBDIRS) $(LIBS)
+ ln -sf libgd.so.1 libgd.so
clean:
rm -f *.o *.a ${PROGRAMS} test/gdtest.jpg test/gdtest.wbmp