1cb93a386Sopenharmony_ci# makefile for libpng on HP-UX using GCC with the HP ANSI/C linker. 2cb93a386Sopenharmony_ci# Copyright (C) 2002, 2006-2008, 2010-2014 Glenn Randers-Pehrson 3cb93a386Sopenharmony_ci# Copyright (C) 2001, Laurent faillie 4cb93a386Sopenharmony_ci# Copyright (C) 1998, 1999 Greg Roelofs 5cb93a386Sopenharmony_ci# Copyright (C) 1996, 1997 Andreas Dilger 6cb93a386Sopenharmony_ci# 7cb93a386Sopenharmony_ci# This code is released under the libpng license. 8cb93a386Sopenharmony_ci# For conditions of distribution and use, see the disclaimer 9cb93a386Sopenharmony_ci# and license in png.h 10cb93a386Sopenharmony_ci 11cb93a386Sopenharmony_ci# Library name: 12cb93a386Sopenharmony_ciLIBNAME = libpng16 13cb93a386Sopenharmony_ciPNGMAJ = 16 14cb93a386Sopenharmony_ci 15cb93a386Sopenharmony_ci# Shared library names: 16cb93a386Sopenharmony_ciLIBSO=$(LIBNAME).sl 17cb93a386Sopenharmony_ciLIBSOMAJ=$(LIBNAME).sl.$(PNGMAJ) 18cb93a386Sopenharmony_ciLIBSOREL=$(LIBSOMAJ).$(RELEASE) 19cb93a386Sopenharmony_ciOLDSO=libpng.sl 20cb93a386Sopenharmony_ci 21cb93a386Sopenharmony_ci# Utilities: 22cb93a386Sopenharmony_ciCC=gcc 23cb93a386Sopenharmony_ciLD=ld 24cb93a386Sopenharmony_ciAR_RC=ar rc 25cb93a386Sopenharmony_ciMKDIR_P=mkdir -p 26cb93a386Sopenharmony_ciLN_SF=ln -sf 27cb93a386Sopenharmony_ciRANLIB=ranlib 28cb93a386Sopenharmony_ciCP=cp 29cb93a386Sopenharmony_ciRM_F=/bin/rm -f 30cb93a386Sopenharmony_ci 31cb93a386Sopenharmony_ci# where "make install" puts libpng.a, $(OLDSO)*, png.h, pngconf.h 32cb93a386Sopenharmony_ci# and pnglibconf.h 33cb93a386Sopenharmony_ciprefix=/usr/local 34cb93a386Sopenharmony_ciexec_prefix=$(prefix) 35cb93a386Sopenharmony_ci 36cb93a386Sopenharmony_ci# Where the zlib library and include files are located 37cb93a386Sopenharmony_ciZLIBLIB=/opt/zlib/lib 38cb93a386Sopenharmony_ciZLIBINC=/opt/zlib/include 39cb93a386Sopenharmony_ci 40cb93a386Sopenharmony_ci# Note that if you plan to build a libpng shared library, zlib must also 41cb93a386Sopenharmony_ci# be a shared library, which zlib's configure does not do. After running 42cb93a386Sopenharmony_ci# zlib's configure, edit the appropriate lines of makefile to read: 43cb93a386Sopenharmony_ci# CFLAGS=-O1 -DHAVE_UNISTD -DUSE_MAP -fPIC \ 44cb93a386Sopenharmony_ci# LDSHARED=ld -b 45cb93a386Sopenharmony_ci# SHAREDLIB=libz.sl 46cb93a386Sopenharmony_ci 47cb93a386Sopenharmony_ciALIGN= 48cb93a386Sopenharmony_ci# for i386: 49cb93a386Sopenharmony_ci#ALIGN=-malign-loops=2 -malign-functions=2 50cb93a386Sopenharmony_ci 51cb93a386Sopenharmony_ciWARNMORE=-Wwrite-strings -Wpointer-arith -Wshadow \ 52cb93a386Sopenharmony_ci -Wmissing-declarations -Wtraditional -Wcast-align \ 53cb93a386Sopenharmony_ci -Wstrict-prototypes -Wmissing-prototypes #-Wconversion 54cb93a386Sopenharmony_ci 55cb93a386Sopenharmony_ci# for pgcc version 2.95.1, -O3 is buggy; don't use it. 56cb93a386Sopenharmony_ci 57cb93a386Sopenharmony_ciCPPFLAGS=-I$(ZLIBINC) # -DPNG_DEBUG=5 58cb93a386Sopenharmony_ciCFLAGS=-W -Wall -O3 -funroll-loops $(ALIGN) # $(WARNMORE) -g 59cb93a386Sopenharmony_ci#LDFLAGS=-L. -Wl,-rpath,. -L$(ZLIBLIB) -Wl,-rpath,$(ZLIBLIB) -lpng16 -lz -lm 60cb93a386Sopenharmony_ciLDFLAGS=-L. -L$(ZLIBLIB) -lpng16 -lz -lm 61cb93a386Sopenharmony_ci 62cb93a386Sopenharmony_ciINCPATH=$(prefix)/include 63cb93a386Sopenharmony_ciLIBPATH=$(exec_prefix)/lib 64cb93a386Sopenharmony_ciMANPATH=$(prefix)/man 65cb93a386Sopenharmony_ciBINPATH=$(exec_prefix)/bin 66cb93a386Sopenharmony_ci 67cb93a386Sopenharmony_ci# override DESTDIR= on the make install command line to easily support 68cb93a386Sopenharmony_ci# installing into a temporary location. Example: 69cb93a386Sopenharmony_ci# 70cb93a386Sopenharmony_ci# make install DESTDIR=/tmp/build/libpng 71cb93a386Sopenharmony_ci# 72cb93a386Sopenharmony_ci# If you're going to install into a temporary location 73cb93a386Sopenharmony_ci# via DESTDIR, $(DESTDIR)$(prefix) must already exist before 74cb93a386Sopenharmony_ci# you execute make install. 75cb93a386Sopenharmony_ciDESTDIR= 76cb93a386Sopenharmony_ci 77cb93a386Sopenharmony_ciDB=$(DESTDIR)$(BINPATH) 78cb93a386Sopenharmony_ciDI=$(DESTDIR)$(INCPATH) 79cb93a386Sopenharmony_ciDL=$(DESTDIR)$(LIBPATH) 80cb93a386Sopenharmony_ciDM=$(DESTDIR)$(MANPATH) 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_ciOBJSDLL = $(OBJS:.o=.pic.o) 87cb93a386Sopenharmony_ci 88cb93a386Sopenharmony_ci.SUFFIXES: .c .o .pic.o 89cb93a386Sopenharmony_ci 90cb93a386Sopenharmony_ci.c.o: 91cb93a386Sopenharmony_ci $(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $< 92cb93a386Sopenharmony_ci 93cb93a386Sopenharmony_ci.c.pic.o: 94cb93a386Sopenharmony_ci $(CC) -c $(CPPFLAGS) $(CFLAGS) -fPIC -o $@ $*.c 95cb93a386Sopenharmony_ci 96cb93a386Sopenharmony_ciall: libpng.a $(LIBSO) pngtest libpng.pc libpng-config 97cb93a386Sopenharmony_ci 98cb93a386Sopenharmony_cilibpng.a: $(OBJS) 99cb93a386Sopenharmony_ci $(AR_RC) $@ $(OBJS) 100cb93a386Sopenharmony_ci $(RANLIB) $@ 101cb93a386Sopenharmony_ci 102cb93a386Sopenharmony_cilibpng.pc: 103cb93a386Sopenharmony_ci cat scripts/libpng.pc.in | sed -e s!@prefix@!$(prefix)! \ 104cb93a386Sopenharmony_ci -e s!@exec_prefix@!$(exec_prefix)! \ 105cb93a386Sopenharmony_ci -e s!@libdir@!$(LIBPATH)! \ 106cb93a386Sopenharmony_ci -e s!@includedir@!$(INCPATH)! \ 107cb93a386Sopenharmony_ci -e s!-lpng16!-lpng16\ -lz\ -lm! > libpng.pc 108cb93a386Sopenharmony_ci 109cb93a386Sopenharmony_cilibpng-config: 110cb93a386Sopenharmony_ci ( cat scripts/libpng-config-head.in; \ 111cb93a386Sopenharmony_ci echo prefix=\"$(prefix)\"; \ 112cb93a386Sopenharmony_ci echo I_opts=\"-I$(INCPATH)/$(LIBNAME)\"; \ 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): $(OBJSDLL) 121cb93a386Sopenharmony_ci $(LD) -b +s \ 122cb93a386Sopenharmony_ci +h $(LIBSOMAJ) -o $(LIBSOMAJ) $(OBJSDLL) 123cb93a386Sopenharmony_ci 124cb93a386Sopenharmony_cipngtest: pngtest.o $(LIBSO) 125cb93a386Sopenharmony_ci $(CC) -o pngtest $(CFLAGS) pngtest.o $(LDFLAGS) 126cb93a386Sopenharmony_ci 127cb93a386Sopenharmony_citest: pngtest 128cb93a386Sopenharmony_ci ./pngtest 129cb93a386Sopenharmony_ci 130cb93a386Sopenharmony_ci 131cb93a386Sopenharmony_ciinstall-headers: png.h pngconf.h pnglibconf.h 132cb93a386Sopenharmony_ci -@if [ ! -d $(DI) ]; then $(MKDIR_P) $(DI); fi 133cb93a386Sopenharmony_ci -@if [ ! -d $(DI)/$(LIBNAME) ]; then $(MKDIR_P) $(DI)/$(LIBNAME); fi 134cb93a386Sopenharmony_ci cp png.h pngconf.h pnglibconf.h $(DI)/$(LIBNAME) 135cb93a386Sopenharmony_ci chmod 644 $(DI)/$(LIBNAME)/png.h $(DI)/$(LIBNAME)/pngconf.h $(DI)/$(LIBNAME)/pnglibconf.h 136cb93a386Sopenharmony_ci -@$(RM_F) $(DI)/png.h $(DI)/pngconf.h $(DI)/pnglibconf.h 137cb93a386Sopenharmony_ci -@$(RM_F) $(DI)/libpng 138cb93a386Sopenharmony_ci (cd $(DI); $(LN_SF) $(LIBNAME) libpng; $(LN_SF) $(LIBNAME)/* .) 139cb93a386Sopenharmony_ci 140cb93a386Sopenharmony_ciinstall-static: install-headers libpng.a 141cb93a386Sopenharmony_ci -@if [ ! -d $(DL) ]; then $(MKDIR_P) $(DL); fi 142cb93a386Sopenharmony_ci cp libpng.a $(DL)/$(LIBNAME).a 143cb93a386Sopenharmony_ci chmod 644 $(DL)/$(LIBNAME).a 144cb93a386Sopenharmony_ci -@$(RM_F) $(DL)/libpng.a 145cb93a386Sopenharmony_ci (cd $(DL); $(LN_SF) $(LIBNAME).a libpng.a) 146cb93a386Sopenharmony_ci 147cb93a386Sopenharmony_ciinstall-shared: install-headers $(LIBSOMAJ) libpng.pc 148cb93a386Sopenharmony_ci -@if [ ! -d $(DL) ]; then $(MKDIR_P) $(DL); fi 149cb93a386Sopenharmony_ci -@$(RM_F) $(DL)/$(LIBSO) 150cb93a386Sopenharmony_ci -@$(RM_F) $(DL)/$(LIBSOREL) 151cb93a386Sopenharmony_ci -@$(RM_F) $(DL)/$(OLDSO) 152cb93a386Sopenharmony_ci cp $(LIBSOMAJ) $(DL)/$(LIBSOREL) 153cb93a386Sopenharmony_ci chmod 755 $(DL)/$(LIBSOREL) 154cb93a386Sopenharmony_ci (cd $(DL); \ 155cb93a386Sopenharmony_ci $(LN_SF) $(LIBSOREL) $(LIBSO); \ 156cb93a386Sopenharmony_ci $(LN_SF) $(LIBSO) $(OLDSO)) 157cb93a386Sopenharmony_ci -@if [ ! -d $(DL)/pkgconfig ]; then $(MKDIR_P) $(DL)/pkgconfig; fi 158cb93a386Sopenharmony_ci -@$(RM_F) $(DL)/pkgconfig/$(LIBNAME).pc 159cb93a386Sopenharmony_ci -@$(RM_F) $(DL)/pkgconfig/libpng.pc 160cb93a386Sopenharmony_ci cp libpng.pc $(DL)/pkgconfig/$(LIBNAME).pc 161cb93a386Sopenharmony_ci chmod 644 $(DL)/pkgconfig/$(LIBNAME).pc 162cb93a386Sopenharmony_ci (cd $(DL)/pkgconfig; $(LN_SF) $(LIBNAME).pc libpng.pc) 163cb93a386Sopenharmony_ci 164cb93a386Sopenharmony_ciinstall-man: libpng.3 libpngpf.3 png.5 165cb93a386Sopenharmony_ci -@if [ ! -d $(DM) ]; then $(MKDIR_P) $(DM); fi 166cb93a386Sopenharmony_ci -@if [ ! -d $(DM)/man3 ]; then $(MKDIR_P) $(DM)/man3; fi 167cb93a386Sopenharmony_ci -@$(RM_F) $(DM)/man3/libpng.3 168cb93a386Sopenharmony_ci -@$(RM_F) $(DM)/man3/libpngpf.3 169cb93a386Sopenharmony_ci cp libpng.3 $(DM)/man3 170cb93a386Sopenharmony_ci cp libpngpf.3 $(DM)/man3 171cb93a386Sopenharmony_ci -@if [ ! -d $(DM)/man5 ]; then $(MKDIR_P) $(DM)/man5; fi 172cb93a386Sopenharmony_ci -@$(RM_F) $(DM)/man5/png.5 173cb93a386Sopenharmony_ci cp png.5 $(DM)/man5 174cb93a386Sopenharmony_ci 175cb93a386Sopenharmony_ciinstall-config: libpng-config 176cb93a386Sopenharmony_ci -@if [ ! -d $(DB) ]; then $(MKDIR_P) $(DB); fi 177cb93a386Sopenharmony_ci -@$(RM_F) $(DB)/libpng-config 178cb93a386Sopenharmony_ci -@$(RM_F) $(DB)/$(LIBNAME)-config 179cb93a386Sopenharmony_ci cp libpng-config $(DB)/$(LIBNAME)-config 180cb93a386Sopenharmony_ci chmod 755 $(DB)/$(LIBNAME)-config 181cb93a386Sopenharmony_ci (cd $(DB); $(LN_SF) $(LIBNAME)-config libpng-config) 182cb93a386Sopenharmony_ci 183cb93a386Sopenharmony_ciinstall: install-static install-shared install-man install-config 184cb93a386Sopenharmony_ci 185cb93a386Sopenharmony_ci# If you installed in $(DESTDIR), test-installed won't work until you 186cb93a386Sopenharmony_ci# move the library to its final location. Use test-dd to test it 187cb93a386Sopenharmony_ci# before then. 188cb93a386Sopenharmony_ci 189cb93a386Sopenharmony_citest-dd: 190cb93a386Sopenharmony_ci echo 191cb93a386Sopenharmony_ci echo Testing installed dynamic shared library in $(DL). 192cb93a386Sopenharmony_ci $(CC) -I$(DI) $(CPPFLAGS) \ 193cb93a386Sopenharmony_ci `$(BINPATH)/$(LIBNAME)-config --cflags` pngtest.c \ 194cb93a386Sopenharmony_ci -L$(DL) -L$(ZLIBLIB) -Wl,-rpath,$(DL) -Wl,-rpath,$(ZLIBLIB) \ 195cb93a386Sopenharmony_ci -o pngtestd `$(BINPATH)/$(LIBNAME)-config --ldflags` 196cb93a386Sopenharmony_ci ./pngtestd pngtest.png 197cb93a386Sopenharmony_ci 198cb93a386Sopenharmony_citest-installed: 199cb93a386Sopenharmony_ci echo 200cb93a386Sopenharmony_ci echo Testing installed dynamic shared library. 201cb93a386Sopenharmony_ci $(CC) $(CPPFLAGS) \ 202cb93a386Sopenharmony_ci `$(BINPATH)/$(LIBNAME)-config --cflags` pngtest.c \ 203cb93a386Sopenharmony_ci -L$(ZLIBLIB) -Wl,-rpath,$(ZLIBLIB) \ 204cb93a386Sopenharmony_ci -o pngtesti `$(BINPATH)/$(LIBNAME)-config --ldflags` 205cb93a386Sopenharmony_ci ./pngtesti pngtest.png 206cb93a386Sopenharmony_ci 207cb93a386Sopenharmony_ciclean: 208cb93a386Sopenharmony_ci $(RM_F) *.o libpng.a pngtest pngtesti pngout.png \ 209cb93a386Sopenharmony_ci libpng-config $(LIBSO) $(LIBSOMAJ)* \ 210cb93a386Sopenharmony_ci libpng.pc pnglibconf.h 211cb93a386Sopenharmony_ci 212cb93a386Sopenharmony_ciDOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO 213cb93a386Sopenharmony_ciwritelock: 214cb93a386Sopenharmony_ci chmod a-w *.[ch35] $(DOCS) scripts/* 215cb93a386Sopenharmony_ci 216cb93a386Sopenharmony_ci# DO NOT DELETE THIS LINE -- make depend depends on it. 217cb93a386Sopenharmony_ci 218cb93a386Sopenharmony_cipng.o png.pic.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 219cb93a386Sopenharmony_cipngerror.o pngerror.pic.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 220cb93a386Sopenharmony_cipngrio.o pngrio.pic.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 221cb93a386Sopenharmony_cipngwio.o pngwio.pic.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 222cb93a386Sopenharmony_cipngmem.o pngmem.pic.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 223cb93a386Sopenharmony_cipngset.o pngset.pic.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 224cb93a386Sopenharmony_cipngget.o pngget.pic.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 225cb93a386Sopenharmony_cipngread.o pngread.pic.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 226cb93a386Sopenharmony_cipngrtran.o pngrtran.pic.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 227cb93a386Sopenharmony_cipngrutil.o pngrutil.pic.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 228cb93a386Sopenharmony_cipngtrans.o pngtrans.pic.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 229cb93a386Sopenharmony_cipngwrite.o pngwrite.pic.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 230cb93a386Sopenharmony_cipngwtran.o pngwtran.pic.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 231cb93a386Sopenharmony_cipngwutil.o pngwutil.pic.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 232cb93a386Sopenharmony_cipngpread.o pngpread.pic.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h 233cb93a386Sopenharmony_ci 234cb93a386Sopenharmony_cipngtest.o: png.h pngconf.h pnglibconf.h 235