X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/c6b71bffdf1c57371b048e2b0be04bf88b9e4b3e..974c115dff4da4a370a3569a3576cacb00eef7bb:/src/png/scripts/makefile.darwin diff --git a/src/png/scripts/makefile.darwin b/src/png/scripts/makefile.darwin index 217eb8219c..88e7f06907 100644 --- a/src/png/scripts/makefile.darwin +++ b/src/png/scripts/makefile.darwin @@ -1,13 +1,17 @@ # makefile for libpng on Darwin / Mac OS X -# Copyright (C) 2002 Glenn Randers-Pehrson +# Copyright (C) 2002, 2004, 2006, 2008, 2010 Glenn Randers-Pehrson # Copyright (C) 2001 Christoph Pfisterer # derived from makefile.linux: # Copyright (C) 1998, 1999 Greg Roelofs # Copyright (C) 1996, 1997 Andreas Dilger -# For conditions of distribution and use, see copyright notice in png.h +# +# This code is released under the libpng license. +# For conditions of distribution and use, see the disclaimer +# and license in png.h -# where "make install" puts libpng.a, libpng12.dylib, png.h and pngconf.h +# where "make install" puts libpng.a, libpng14.dylib, png.h and pngconf.h prefix=/usr/local +exec_prefix=$(prefix) # Where the zlib library and include files are located #ZLIBLIB=/usr/local/lib @@ -15,22 +19,32 @@ prefix=/usr/local ZLIBLIB=../zlib ZLIBINC=../zlib -CC=cc -CFLAGS=-I$(ZLIBINC) -Wall -O3 -funroll-loops -LDFLAGS=-L. -L$(ZLIBLIB) -lpng12 -lz +# Library name: +LIBNAME = libpng14 +PNGMAJ = 14 + +# Shared library names: +LIBSO=$(LIBNAME).dylib +LIBSOMAJ=$(LIBNAME).$(PNGMAJ).dylib +LIBSOREL=$(LIBNAME).$(PNGMAJ).$(RELEASE).dylib +OLDSO=libpng.dylib -#RANLIB=echo +# Utilities: +CC=cc +AR_RC=ar rc +MKDIR_P=mkdir -p +LN_SF=ln -sf RANLIB=ranlib +RM_F=/bin/rm -f -PNGMAJ = 0 -PNGMIN = 1.2.4 -PNGVER = $(PNGMAJ).$(PNGMIN) -LIBNAME = libpng12 +# CFLAGS=-I$(ZLIBINC) -W -Wall -O3 -funroll-loops +CFLAGS=-I$(ZLIBINC) -W -Wall -O -funroll-loops +LDFLAGS=-L. -L$(ZLIBLIB) -lpng14 -lz INCPATH=$(prefix)/include -LIBPATH=$(prefix)/lib +LIBPATH=$(exec_prefix)/lib MANPATH=$(prefix)/man -BINPATH=$(prefix)/bin +BINPATH=$(exec_prefix)/bin # override DESTDIR= on the make install command line to easily support # installing into a temporary location. Example: @@ -58,117 +72,122 @@ OBJSDLL = $(OBJS:.o=.pic.o) .c.pic.o: $(CC) -c $(CFLAGS) -fno-common -o $@ $*.c -all: libpng.a $(LIBNAME).dylib pngtest libpng.pc libpng-config +all: libpng.a $(LIBSO) pngtest libpng.pc libpng-config libpng.a: $(OBJS) - ar rc $@ $(OBJS) + $(AR_RC) $@ $(OBJS) $(RANLIB) $@ libpng.pc: - cat scripts/libpng.pc.in | sed -e s\!@PREFIX@!$(prefix)! | \ - sed -e s/-lm// > libpng.pc + cat scripts/libpng.pc.in | sed -e s!@prefix@!$(prefix)! \ + -e s!@exec_prefix@!$(exec_prefix)! \ + -e s!@libdir@!$(LIBPATH)! \ + -e s!@includedir@!$(INCPATH)! \ + -e s!-lpng14!-lpng14\ -lz! > libpng.pc libpng-config: ( cat scripts/libpng-config-head.in; \ echo prefix=\"$(prefix)\"; \ - echo cppflags=\"-I$(INCPATH)/$(LIBNAME)\"; \ - echo cflags=\"\"; \ - echo ldflags=\"-L$(LIBPATH)\"; \ - echo libs=\"-lpng12 -lz\"; \ + echo I_opts=\"-I$(INCPATH)/$(LIBNAME)\"; \ + echo L_opts=\"-L$(LIBPATH)\"; \ + echo libs=\"-lpng14 -lz\"; \ cat scripts/libpng-config-body.in ) > libpng-config chmod +x libpng-config -$(LIBNAME).dylib: $(LIBNAME).$(PNGMAJ).dylib - ln -sf $(LIBNAME).$(PNGMAJ).dylib $(LIBNAME).dylib - -$(LIBNAME).$(PNGMAJ).dylib: $(LIBNAME).$(PNGVER).dylib - ln -sf $(LIBNAME).$(PNGVER).dylib $(LIBNAME).$(PNGMAJ).dylib +$(LIBSO): $(LIBSOMAJ) + $(LN_SF) $(LIBSOMAJ) $(LIBSO) -$(LIBNAME).$(PNGVER).dylib: $(OBJSDLL) +$(LIBSOMAJ): $(OBJSDLL) $(CC) -dynamiclib \ - -install_name $(DL)/$(LIBNAME).$(PNGMAJ).dylib \ - -current_version $(PNGMIN) -compatibility_version $(PNGMIN) \ - -o $(LIBNAME).$(PNGVER).dylib \ + -install_name $(LIBPATH)/$(LIBSOMAJ) \ + -current_version 14 -compatibility_version 14 \ + -o $(LIBSOMAJ) \ $(OBJSDLL) -L$(ZLIBLIB) -lz -pngtest: pngtest.o $(LIBNAME).dylib +pngtest: pngtest.o $(LIBSO) $(CC) -o pngtest $(CFLAGS) pngtest.o $(LDFLAGS) test: pngtest ./pngtest install-headers: png.h pngconf.h - -@if [ ! -d $(DI) ]; then mkdir $(DI); fi - -@if [ ! -d $(DI)/$(LIBNAME) ]; then mkdir $(DI)/$(LIBNAME); fi + -@if [ ! -d $(DI) ]; then $(MKDIR_P) $(DI); fi + -@if [ ! -d $(DI)/$(LIBNAME) ]; then $(MKDIR_P) $(DI)/$(LIBNAME); fi cp png.h pngconf.h $(DI)/$(LIBNAME) chmod 644 $(DI)/$(LIBNAME)/png.h $(DI)/$(LIBNAME)/pngconf.h - -@/bin/rm -f $(DI)/png.h $(DI)/pngconf.h - -@/bin/rm -f $(DI)/libpng - (cd $(DI); ln -sf $(LIBNAME) libpng; ln -sf $(LIBNAME)/* .) + -@$(RM_F) $(DI)/png.h $(DI)/pngconf.h + -@$(RM_F) $(DI)/libpng + (cd $(DI); $(LN_SF) $(LIBNAME) libpng; $(LN_SF) $(LIBNAME)/* .) install-static: install-headers libpng.a - -@if [ ! -d $(DL) ]; then mkdir $(DL); fi + -@if [ ! -d $(DL) ]; then $(MKDIR_P) $(DL); fi cp libpng.a $(DL)/$(LIBNAME).a chmod 644 $(DL)/$(LIBNAME).a - -@/bin/rm -f $(DL)/libpng.a - (cd $(DL); ln -sf $(LIBNAME).a libpng.a) - -install-shared: install-headers $(LIBNAME).dylib libpng.pc - -@if [ ! -d $(DL) ]; then mkdir $(DL); fi - -@/bin/rm -f $(DL)/$(LIBNAME).$(PNGMAJ)*.dylib - -@/bin/rm -f $(DL)/$(LIBNAME).dylib - -@/bin/rm -f $(DL)/libpng.dylib - -@/bin/rm -f $(DL)/libpng.3.dylib - -@/bin/rm -f $(DL)/libpng.3.*.dylib - cp $(LIBNAME).$(PNGVER).dylib $(DL) - chmod 755 $(DL)/$(LIBNAME).$(PNGVER).dylib + $(RANLIB) $(DL)/$(LIBNAME).a + -@$(RM_F) $(DL)/libpng.a + (cd $(DL); $(LN_SF) $(LIBNAME).a libpng.a) + +install-shared: install-headers $(LIBSOMAJ) libpng.pc + -@if [ ! -d $(DL) ]; then $(MKDIR_P) $(DL); fi + -@$(RM_F) $(DL)/$(LIBSO) + -@$(RM_F) $(DL)/$(LIBSOREL) + -@$(RM_F) $(DL)/$(OLDSO) + cp $(LIBSOMAJ) $(DL)/$(LIBSOREL) + chmod 755 $(DL)/$(LIBSOREL) (cd $(DL); \ - ln -sf $(LIBNAME).$(PNGVER).dylib libpng.dylib; \ - ln -sf $(LIBNAME).$(PNGVER).dylib libpng.3.dylib; \ - ln -sf $(LIBNAME).$(PNGVER).dylib libpng.3.$(PNGMIN).dylib; \ - ln -sf $(LIBNAME).$(PNGVER).dylib $(LIBNAME).$(PNGMAJ).dylib; \ - ln -sf $(LIBNAME).$(PNGMAJ).dylib $(LIBNAME).dylib) - -@if [ ! -d $(DL)/pkgconfig ]; then mkdir $(DL)/pkgconfig; fi - -@/bin/rm -f $(DL)/pkgconfig/$(LIBNAME).pc - -@/bin/rm -f $(DL)/pkgconfig/libpng.pc + $(LN_SF) $(LIBSOREL) $(LIBSO); \ + $(LN_SF) $(LIBSO) $(OLDSO)) + -@if [ ! -d $(DL)/pkgconfig ]; then $(MKDIR_P) $(DL)/pkgconfig; fi + -@$(RM_F) $(DL)/pkgconfig/$(LIBNAME).pc + -@$(RM_F) $(DL)/pkgconfig/libpng.pc cp libpng.pc $(DL)/pkgconfig/$(LIBNAME).pc chmod 644 $(DL)/pkgconfig/$(LIBNAME).pc - (cd $(DL)/pkgconfig; ln -sf $(LIBNAME).pc libpng.pc) + (cd $(DL)/pkgconfig; $(LN_SF) $(LIBNAME).pc libpng.pc) install-man: libpng.3 libpngpf.3 png.5 - -@if [ ! -d $(DM) ]; then mkdir $(DM); fi - -@if [ ! -d $(DM)/man3 ]; then mkdir $(DM)/man3; fi - -@/bin/rm -f $(DM)/man3/libpng.3 - -@/bin/rm -f $(DM)/man3/libpngpf.3 + -@if [ ! -d $(DM) ]; then $(MKDIR_P) $(DM); fi + -@if [ ! -d $(DM)/man3 ]; then $(MKDIR_P) $(DM)/man3; fi + -@$(RM_F) $(DM)/man3/libpng.3 + -@$(RM_F) $(DM)/man3/libpngpf.3 cp libpng.3 $(DM)/man3 cp libpngpf.3 $(DM)/man3 - -@if [ ! -d $(DM)/man5 ]; then mkdir $(DM)/man5; fi - -@/bin/rm -f $(DM)/man5/png.5 + -@if [ ! -d $(DM)/man5 ]; then $(MKDIR_P) $(DM)/man5; fi + -@$(RM_F) $(DM)/man5/png.5 cp png.5 $(DM)/man5 install-config: libpng-config - -@if [ ! -d $(DB) ]; then mkdir $(DB); fi - -@/bin/rm -f $(DB)/libpng-config - -@/bin/rm -f $(DB)/$(LIBNAME)-config + -@if [ ! -d $(DB) ]; then $(MKDIR_P) $(DB); fi + -@$(RM_F) $(DB)/libpng-config + -@$(RM_F) $(DB)/$(LIBNAME)-config cp libpng-config $(DB)/$(LIBNAME)-config chmod 755 $(DB)/$(LIBNAME)-config - (cd $(DB); ln -sf $(LIBNAME)-config libpng-config) + (cd $(DB); $(LN_SF) $(LIBNAME)-config libpng-config) install: install-static install-shared install-man install-config # If you installed in $(DESTDIR), test-installed won't work until you -# move the library to its final location. +# move the library to its final location. Use test-dd to test it +# before then. + +test-dd: + echo + echo Testing installed dynamic shared library in $(DL). + $(CC) -I$(DI) -I$(ZLIBINC) \ + `$(BINPATH)/$(LIBNAME)-config --cflags` pngtest.c \ + -L$(DL) -L$(ZLIBLIB) \ + -o pngtestd `$(BINPATH)/$(LIBNAME)-config --ldflags` + ./pngtestd pngtest.png test-installed: $(CC) $(CFLAGS) \ - `$(BINPATH)/libpng12-config --cppflags --cflags` pngtest.c \ + `$(BINPATH)/$(LIBNAME)-config --cflags` pngtest.c \ -L$(ZLIBLIB) \ - -o pngtesti `$(BINPATH)/libpng12-config --ldflags --libs` + -o pngtesti `$(BINPATH)/$(LIBNAME)-config --ldflags` ./pngtesti pngtest.png clean: - rm -f *.o libpng.a pngtest pngout.png libpng.pc libpng-config \ - $(LIBNAME).*dylib pngtesti + $(RM_F) *.o libpng.a pngtest pngout.png libpng-config \ + libpng.pc $(LIBNAME).*dylib pngtesti DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO writelock: @@ -176,20 +195,20 @@ writelock: # DO NOT DELETE THIS LINE -- make depend depends on it. -png.o png.pic.o: png.h pngconf.h -pngerror.o pngerror.pic.o: png.h pngconf.h -pngrio.o pngrio.pic.o: png.h pngconf.h -pngwio.o pngwio.pic.o: png.h pngconf.h -pngmem.o pngmem.pic.o: png.h pngconf.h -pngset.o pngset.pic.o: png.h pngconf.h -pngget.o pngget.pic.o: png.h pngconf.h -pngread.o pngread.pic.o: png.h pngconf.h -pngrtran.o pngrtran.pic.o: png.h pngconf.h -pngrutil.o pngrutil.pic.o: png.h pngconf.h -pngtrans.o pngtrans.pic.o: png.h pngconf.h -pngwrite.o pngwrite.pic.o: png.h pngconf.h -pngwtran.o pngwtran.pic.o: png.h pngconf.h -pngwutil.o pngwutil.pic.o: png.h pngconf.h -pngpread.o pngpread.pic.o: png.h pngconf.h +png.o png.pic.o: png.h pngconf.h pngpriv.h +pngerror.o pngerror.pic.o: png.h pngconf.h pngpriv.h +pngrio.o pngrio.pic.o: png.h pngconf.h pngpriv.h +pngwio.o pngwio.pic.o: png.h pngconf.h pngpriv.h +pngmem.o pngmem.pic.o: png.h pngconf.h pngpriv.h +pngset.o pngset.pic.o: png.h pngconf.h pngpriv.h +pngget.o pngget.pic.o: png.h pngconf.h pngpriv.h +pngread.o pngread.pic.o: png.h pngconf.h pngpriv.h +pngrtran.o pngrtran.pic.o: png.h pngconf.h pngpriv.h +pngrutil.o pngrutil.pic.o: png.h pngconf.h pngpriv.h +pngtrans.o pngtrans.pic.o: png.h pngconf.h pngpriv.h +pngwrite.o pngwrite.pic.o: png.h pngconf.h pngpriv.h +pngwtran.o pngwtran.pic.o: png.h pngconf.h pngpriv.h +pngwutil.o pngwutil.pic.o: png.h pngconf.h pngpriv.h +pngpread.o pngpread.pic.o: png.h pngconf.h pngpriv.h pngtest.o: png.h pngconf.h