1cb93a386Sopenharmony_ci# makefile for libpng.a and libpng16.so, SGI IRIX with 'cc' 2cb93a386Sopenharmony_ci# Copyright (C) 2001-2002, 2006, 2007, 2010-2014 Glenn Randers-Pehrson 3cb93a386Sopenharmony_ci# Copyright (C) 1995 Guy Eric Schalnat, Group 42, Inc. 4cb93a386Sopenharmony_ci# 5cb93a386Sopenharmony_ci# This code is released under the libpng license. 6cb93a386Sopenharmony_ci# For conditions of distribution and use, see the disclaimer 7cb93a386Sopenharmony_ci# and license in png.h 8cb93a386Sopenharmony_ci 9cb93a386Sopenharmony_ci# Library name: 10cb93a386Sopenharmony_ciLIBNAME=libpng16 11cb93a386Sopenharmony_ciPNGMAJ = 16 12cb93a386Sopenharmony_ci 13cb93a386Sopenharmony_ci# Shared library names: 14cb93a386Sopenharmony_ciLIBSO=$(LIBNAME).so 15cb93a386Sopenharmony_ciLIBSOMAJ=$(LIBNAME).so.$(PNGMAJ) 16cb93a386Sopenharmony_ciLIBSOREL=$(LIBSOMAJ).$(RELEASE) 17cb93a386Sopenharmony_ciOLDSO=libpng.so 18cb93a386Sopenharmony_ci 19cb93a386Sopenharmony_ci# Utilities: 20cb93a386Sopenharmony_ciAR_RC=ar rc 21cb93a386Sopenharmony_ciCC=cc 22cb93a386Sopenharmony_ciMKDIR_P=mkdir -p 23cb93a386Sopenharmony_ciLN_SF=ln -sf 24cb93a386Sopenharmony_ciRANLIB=echo 25cb93a386Sopenharmony_ciCP=cp 26cb93a386Sopenharmony_ciRM_F=/bin/rm -f 27cb93a386Sopenharmony_ci 28cb93a386Sopenharmony_ci# Where make install puts libpng.a, libpng16.so, and libpng16/png.h 29cb93a386Sopenharmony_ci# Prefix must be a full pathname. 30cb93a386Sopenharmony_ci 31cb93a386Sopenharmony_ciprefix=/usr/local 32cb93a386Sopenharmony_ciexec_prefix=$(prefix) 33cb93a386Sopenharmony_ci 34cb93a386Sopenharmony_ci# Where the zlib library and include files are located 35cb93a386Sopenharmony_ci#ZLIBLIB=/usr/local/lib32 36cb93a386Sopenharmony_ci#ZLIBINC=/usr/local/include 37cb93a386Sopenharmony_ci#ZLIBLIB=/usr/local/lib 38cb93a386Sopenharmony_ci#ZLIBINC=/usr/local/include 39cb93a386Sopenharmony_ciZLIBLIB=../zlib 40cb93a386Sopenharmony_ciZLIBINC=../zlib 41cb93a386Sopenharmony_ci 42cb93a386Sopenharmony_ci# ABI can be blank to use default for your system, -32, -o32, -n32, or -64 43cb93a386Sopenharmony_ci# See "man abi". zlib must be built with the same ABI. 44cb93a386Sopenharmony_ciABI= 45cb93a386Sopenharmony_ci 46cb93a386Sopenharmony_ciWARNMORE=-fullwarn 47cb93a386Sopenharmony_ci# Note: -KPIC is the default anyhow 48cb93a386Sopenharmony_ciCPPFLAGS=-I$(ZLIBINC) # -DPNG_DEBUG=5 49cb93a386Sopenharmony_ci#CFLAGS= $(ABI) -O $(WARNMORE) -KPIC # -g 50cb93a386Sopenharmony_ciCFLAGS=$(ABI) -O $(WARNMORE) 51cb93a386Sopenharmony_ciLDFLAGS_A=$(ABI) -L. -L$(ZLIBLIB) -lpng16 -lz -lm 52cb93a386Sopenharmony_ciLDFLAGS=$(ABI) -L. -L$(ZLIBLIB) -lpng -lz -lm 53cb93a386Sopenharmony_ciLDSHARED=cc $(ABI) -shared -soname $(LIBSOMAJ) \ 54cb93a386Sopenharmony_ci -set_version sgi$(PNGMAJ).0 55cb93a386Sopenharmony_ci# See "man dso" for info about shared objects 56cb93a386Sopenharmony_ci 57cb93a386Sopenharmony_ciINCPATH=$(prefix)/include 58cb93a386Sopenharmony_ciLIBPATH=$(exec_prefix)/lib 59cb93a386Sopenharmony_ci#LIBPATH=$(exec_prefix)/lib32 60cb93a386Sopenharmony_ciMANPATH=$(prefix)/man 61cb93a386Sopenharmony_ciBINPATH=$(exec_prefix)/bin 62cb93a386Sopenharmony_ci 63cb93a386Sopenharmony_ci# override DESTDIR= on the make install command line to easily support 64cb93a386Sopenharmony_ci# installing into a temporary location. Example: 65cb93a386Sopenharmony_ci# 66cb93a386Sopenharmony_ci# make install DESTDIR=/tmp/build/libpng 67cb93a386Sopenharmony_ci# 68cb93a386Sopenharmony_ci# If you're going to install into a temporary location 69cb93a386Sopenharmony_ci# via DESTDIR, $(DESTDIR)$(prefix) must already exist before 70cb93a386Sopenharmony_ci# you execute make install. 71cb93a386Sopenharmony_ciDESTDIR= 72cb93a386Sopenharmony_ci 73cb93a386Sopenharmony_ciDB=$(DESTDIR)$(BINPATH) 74cb93a386Sopenharmony_ciDI=$(DESTDIR)$(INCPATH) 75cb93a386Sopenharmony_ciDL=$(DESTDIR)$(LIBPATH) 76cb93a386Sopenharmony_ciDM=$(DESTDIR)$(MANPATH) 77cb93a386Sopenharmony_ci 78cb93a386Sopenharmony_ci# Pre-built configuration 79cb93a386Sopenharmony_ci# See scripts/pnglibconf.mak for more options 80cb93a386Sopenharmony_ciPNGLIBCONF_H_PREBUILT = scripts/pnglibconf.h.prebuilt 81cb93a386Sopenharmony_ci 82cb93a386Sopenharmony_ciOBJS = png.o pngset.o pngget.o pngrutil.o pngtrans.o pngwutil.o \ 83cb93a386Sopenharmony_ci pngread.o pngrio.o pngwio.o pngwrite.o pngrtran.o \ 84cb93a386Sopenharmony_ci pngwtran.o pngmem.o pngerror.o pngpread.o 85cb93a386Sopenharmony_ci 86cb93a386Sopenharmony_ci.c.o: 87cb93a386Sopenharmony_ci $(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $< 88cb93a386Sopenharmony_ci 89cb93a386Sopenharmony_ciall: libpng.a pngtest shared libpng.pc libpng-config 90cb93a386Sopenharmony_ci 91cb93a386Sopenharmony_cipnglibconf.h: $(PNGLIBCONF_H_PREBUILT) 92cb93a386Sopenharmony_ci $(CP) $(PNGLIBCONF_H_PREBUILT) $@ 93cb93a386Sopenharmony_ci 94cb93a386Sopenharmony_cilibpng.a: $(OBJS) 95cb93a386Sopenharmony_ci $(AR_RC) $@ $(OBJS) 96cb93a386Sopenharmony_ci $(RANLIB) $@ 97cb93a386Sopenharmony_ci 98cb93a386Sopenharmony_cilibpng.pc: 99cb93a386Sopenharmony_ci cat scripts/libpng.pc.in | sed -e s!@prefix@!$(prefix)! \ 100cb93a386Sopenharmony_ci -e s!@exec_prefix@!$(exec_prefix)! \ 101cb93a386Sopenharmony_ci -e s!@libdir@!$(LIBPATH)! \ 102cb93a386Sopenharmony_ci -e s!@includedir@!$(INCPATH)! \ 103cb93a386Sopenharmony_ci -e s!-lpng16!-lpng16\ -lz\ -lm! > libpng.pc 104cb93a386Sopenharmony_ci 105cb93a386Sopenharmony_cilibpng-config: 106cb93a386Sopenharmony_ci ( cat scripts/libpng-config-head.in; \ 107cb93a386Sopenharmony_ci echo prefix=\"$(prefix)\"; \ 108cb93a386Sopenharmony_ci echo I_opts=\"-I$(INCPATH)/$(LIBNAME)\"; \ 109cb93a386Sopenharmony_ci echo ccopts=\"$(ABI)\"; \ 110cb93a386Sopenharmony_ci echo ldopts=\"$(ABI)\"; \ 111cb93a386Sopenharmony_ci echo L_opts=\"-L$(LIBPATH)\"; \ 112cb93a386Sopenharmony_ci echo libdir=\"$(LIBPATH)\"; \ 113cb93a386Sopenharmony_ci echo libs=\"-lpng16 -lz -lm\"; \ 114cb93a386Sopenharmony_ci cat scripts/libpng-config-body.in ) > libpng-config 115cb93a386Sopenharmony_ci chmod +x libpng-config 116cb93a386Sopenharmony_ci 117cb93a386Sopenharmony_ci$(LIBSO): $(LIBSOMAJ) 118cb93a386Sopenharmony_ci $(LN_SF) $(LIBSOMAJ) $(LIBSO) 119cb93a386Sopenharmony_ci 120cb93a386Sopenharmony_ci$(LIBSOMAJ): $(OBJS) 121cb93a386Sopenharmony_ci $(LDSHARED) -o $@ $(OBJS) 122cb93a386Sopenharmony_ci $(RM_F) $(LIBSO) $(LIBSOMAJ) 123cb93a386Sopenharmony_ci 124cb93a386Sopenharmony_cipngtest: pngtest.o libpng.a 125cb93a386Sopenharmony_ci $(CC) -o pngtest $(CFLAGS) pngtest.o $(LDFLAGS) 126cb93a386Sopenharmony_ci 127cb93a386Sopenharmony_citest: pngtest 128cb93a386Sopenharmony_ci echo 129cb93a386Sopenharmony_ci echo Testing local static library. 130cb93a386Sopenharmony_ci ./pngtest 131cb93a386Sopenharmony_ci 132cb93a386Sopenharmony_ciinstall-headers: png.h pngconf.h pnglibconf.h 133cb93a386Sopenharmony_ci -@if [ ! -d $(DI) ]; then $(MKDIR_P) $(DI); fi 134cb93a386Sopenharmony_ci -@if [ ! -d $(DI)/$(LIBNAME) ]; then $(MKDIR_P) $(DI)/$(LIBNAME); fi 135cb93a386Sopenharmony_ci cp png.h pngconf.h pnglibconf.h $(DI)/$(LIBNAME) 136cb93a386Sopenharmony_ci chmod 644 $(DI)/$(LIBNAME)/png.h $(DI)/$(LIBNAME)/pngconf.h $(DI)/$(LIBNAME)/pnglibconf.h 137cb93a386Sopenharmony_ci -@$(RM_F) $(DI)/png.h $(DI)/pngconf.h $(DI)/pnglibconf.h 138cb93a386Sopenharmony_ci -@$(RM_F) $(DI)/libpng 139cb93a386Sopenharmony_ci (cd $(DI); $(LN_SF) $(LIBNAME) libpng; $(LN_SF) $(LIBNAME)/* .) 140cb93a386Sopenharmony_ci 141cb93a386Sopenharmony_ciinstall-static: install-headers libpng.a 142cb93a386Sopenharmony_ci -@if [ ! -d $(DL) ]; then $(MKDIR_P) $(DL); fi 143cb93a386Sopenharmony_ci cp libpng.a $(DL)/$(LIBNAME).a 144cb93a386Sopenharmony_ci chmod 644 $(DL)/$(LIBNAME).a 145cb93a386Sopenharmony_ci -@$(RM_F) $(DL)/libpng.a 146cb93a386Sopenharmony_ci (cd $(DL); $(LN_SF) $(LIBNAME).a libpng.a) 147cb93a386Sopenharmony_ci 148cb93a386Sopenharmony_ciinstall-shared: install-headers $(LIBSOMAJ) libpng.pc 149cb93a386Sopenharmony_ci -@if [ ! -d $(DL) ]; then $(MKDIR_P) $(DL); fi 150cb93a386Sopenharmony_ci -@$(RM_F) $(DL)/$(LIBSO) 151cb93a386Sopenharmony_ci -@$(RM_F) $(DL)/$(LIBSOREL) 152cb93a386Sopenharmony_ci -@$(RM_F) $(DL)/$(OLDSO) 153cb93a386Sopenharmony_ci cp $(LIBSOMAJ) $(DL)/$(LIBSOREL) 154cb93a386Sopenharmony_ci chmod 755 $(DL)/$(LIBSOREL) 155cb93a386Sopenharmony_ci (cd $(DL); \ 156cb93a386Sopenharmony_ci $(LN_SF) $(LIBSOREL) $(LIBSO); \ 157cb93a386Sopenharmony_ci $(LN_SF) $(LIBSO) $(OLDSO)) 158cb93a386Sopenharmony_ci -@if [ ! -d $(DL)/pkgconfig ]; then $(MKDIR_P) $(DL)/pkgconfig; fi 159cb93a386Sopenharmony_ci -@$(RM_F) $(DL)/pkgconfig/$(LIBNAME).pc 160cb93a386Sopenharmony_ci -@$(RM_F) $(DL)/pkgconfig/libpng.pc 161cb93a386Sopenharmony_ci cp libpng.pc $(DL)/pkgconfig/$(LIBNAME).pc 162cb93a386Sopenharmony_ci chmod 644 $(DL)/pkgconfig/$(LIBNAME).pc 163cb93a386Sopenharmony_ci (cd $(DL)/pkgconfig; $(LN_SF) $(LIBNAME).pc libpng.pc) 164cb93a386Sopenharmony_ci 165cb93a386Sopenharmony_ciinstall-man: libpng.3 libpngpf.3 png.5 166cb93a386Sopenharmony_ci -@if [ ! -d $(DM) ]; then $(MKDIR_P) $(DM); fi 167cb93a386Sopenharmony_ci -@if [ ! -d $(DM)/man3 ]; then $(MKDIR_P) $(DM)/man3; fi 168cb93a386Sopenharmony_ci -@$(RM_F) $(DM)/man3/libpng.3 169cb93a386Sopenharmony_ci -@$(RM_F) $(DM)/man3/libpngpf.3 170cb93a386Sopenharmony_ci cp libpng.3 $(DM)/man3 171cb93a386Sopenharmony_ci cp libpngpf.3 $(DM)/man3 172cb93a386Sopenharmony_ci -@if [ ! -d $(DM)/man5 ]; then $(MKDIR_P) $(DM)/man5; fi 173cb93a386Sopenharmony_ci -@$(RM_F) $(DM)/man5/png.5 174cb93a386Sopenharmony_ci cp png.5 $(DM)/man5 175cb93a386Sopenharmony_ci 176cb93a386Sopenharmony_ciinstall-config: libpng-config 177cb93a386Sopenharmony_ci -@if [ ! -d $(DB) ]; then $(MKDIR_P) $(DB); fi 178cb93a386Sopenharmony_ci -@$(RM_F) $(DB)/libpng-config 179cb93a386Sopenharmony_ci -@$(RM_F) $(DB)/$(LIBNAME)-config 180cb93a386Sopenharmony_ci cp libpng-config $(DB)/$(LIBNAME)-config 181cb93a386Sopenharmony_ci chmod 755 $(DB)/$(LIBNAME)-config 182cb93a386Sopenharmony_ci (cd $(DB); $(LN_SF) $(LIBNAME)-config libpng-config) 183cb93a386Sopenharmony_ci 184cb93a386Sopenharmony_ciinstall: install-static install-shared install-man install-config 185cb93a386Sopenharmony_ci 186cb93a386Sopenharmony_ci# If you installed in $(DESTDIR), test-installed won't work until you 187cb93a386Sopenharmony_ci# move the library to its final location. Use test-dd to test it 188cb93a386Sopenharmony_ci# before then. 189cb93a386Sopenharmony_ci 190cb93a386Sopenharmony_citest-dd: 191cb93a386Sopenharmony_ci echo 192cb93a386Sopenharmony_ci echo Testing installed dynamic shared library in $(DL). 193cb93a386Sopenharmony_ci $(CC) -I$(DI) $(CPPFLAGS) \ 194cb93a386Sopenharmony_ci `$(BINPATH)/$(LIBNAME)-config --cflags` pngtest.c \ 195cb93a386Sopenharmony_ci -L$(DL) -L$(ZLIBLIB) \ 196cb93a386Sopenharmony_ci -rpath $(ZLIBLIB):$(DL) \ 197cb93a386Sopenharmony_ci -o pngtestd `$(BINPATH)/$(LIBNAME)-config --ldflags` 198cb93a386Sopenharmony_ci ./pngtestd pngtest.png 199cb93a386Sopenharmony_ci 200cb93a386Sopenharmony_citest-installed: 201cb93a386Sopenharmony_ci echo 202cb93a386Sopenharmony_ci echo Testing installed dynamic shared library. 203cb93a386Sopenharmony_ci $(CC) $(CPPFLAGS) \ 204cb93a386Sopenharmony_ci `$(BINPATH)/$(LIBNAME)-config --cflags` pngtest.c \ 205cb93a386Sopenharmony_ci -L$(ZLIBLIB) \ 206cb93a386Sopenharmony_ci -rpath $(ZLIBLIB):`$(BINPATH)/$(LIBNAME)-config --libdir` \ 207cb93a386Sopenharmony_ci -o pngtesti `$(BINPATH)/$(LIBNAME)-config --ldflags` 208cb93a386Sopenharmony_ci ./pngtesti pngtest.png 209cb93a386Sopenharmony_ci 210cb93a386Sopenharmony_ciclean: 211cb93a386Sopenharmony_ci $(RM_F) *.o libpng.a pngtest pngtesti pngout.png libpng.pc libpng-config \ 212cb93a386Sopenharmony_ci $(LIBSO) $(LIBSOMAJ)* \ 213cb93a386Sopenharmony_ci so_locations pnglibconf.h 214cb93a386Sopenharmony_ci 215cb93a386Sopenharmony_ciDOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO 216cb93a386Sopenharmony_ciwritelock: 217cb93a386Sopenharmony_ci chmod a-w *.[ch35] $(DOCS) scripts/* 218cb93a386Sopenharmony_ci 219cb93a386Sopenharmony_ci# DO NOT DELETE THIS LINE -- make depend depends on it. 220cb93a386Sopenharmony_ci 221cb93a386Sopenharmony_cipng.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 222cb93a386Sopenharmony_cipngerror.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 223cb93a386Sopenharmony_cipngrio.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 224cb93a386Sopenharmony_cipngwio.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 225cb93a386Sopenharmony_cipngmem.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 226cb93a386Sopenharmony_cipngset.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 227cb93a386Sopenharmony_cipngget.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 228cb93a386Sopenharmony_cipngread.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 229cb93a386Sopenharmony_cipngrtran.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 230cb93a386Sopenharmony_cipngrutil.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 231cb93a386Sopenharmony_cipngtrans.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 232cb93a386Sopenharmony_cipngwrite.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 233cb93a386Sopenharmony_cipngwtran.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 234cb93a386Sopenharmony_cipngwutil.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 235cb93a386Sopenharmony_cipngpread.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 236cb93a386Sopenharmony_ci 237cb93a386Sopenharmony_cipngtest.o: png.h pngconf.h pnglibconf.h 238