1 # makefile for libpng using gcc (generic, static library)
2 # Copyright (C) 2002, 2006-2009 Glenn Randers-Pehrson
3 # Copyright (C) 2000 Cosmin Truta
4 # Copyright (C) 2000 Marc O. Gloor (AIX support added, from makefile.gcc)
5 # Copyright (C) 1995 Guy Eric Schalnat, Group 42, Inc.
7 # This code is released under the libpng license.
8 # For conditions of distribution and use, see the disclaimer
11 # Location of the zlib library and include files
15 # Compiler, linker, lib and other tools
28 INCPATH=$(prefix)/include
31 # override DESTDIR= on the make install command line to easily support
32 # installing into a temporary location. Example:
34 # make install DESTDIR=/tmp/build/libpng
36 # If you're going to install into a temporary location
37 # via DESTDIR, $(DESTDIR)$(prefix) must already exist before
38 # you execute make install.
41 DI=$(DESTDIR)$(INCPATH)
42 DL=$(DESTDIR)$(LIBPATH)
44 CDEBUG = -g -DPNG_DEBUG=5
49 CFLAGS = -I$(ZLIBINC) $(WARNMORE) $(CRELEASE)
50 LDFLAGS = -L. -L$(ZLIBLIB) -lpng16 -lz -lm $(LDRELEASE)
58 OBJS = png$(O) pngerror$(O) pngget$(O) pngmem$(O) pngpread$(O) \
59 pngread$(O) pngrio$(O) pngrtran$(O) pngrutil$(O) pngset$(O) \
60 pngtrans$(O) pngwio$(O) pngwrite$(O) pngwtran$(O) pngwutil$(O)
63 all: $(LIBNAME)$(A) pngtest$(E)
65 include scripts/pnglibconf.mak
67 DFNFLAGS = $(DEFS) $(CPPFLAGS)
69 $(LIBNAME)$(A): $(OBJS)
76 pngtest$(E): pngtest$(O) $(LIBNAME)$(A)
77 $(LD) -o $@ pngtest$(O) $(LDFLAGS)
79 install: $(LIBNAME)$(A)
80 -@if [ ! -d $(DI) ]; then $(MKDIR_P) $(DI); fi
81 -@if [ ! -d $(DI)/$(LIBNAME) ]; then $(MKDIR_P) $(DI)/$(LIBNAME); fi
82 -@if [ ! -d $(DL) ]; then $(MKDIR_P) $(DL); fi
83 -@$(RM_F) $(DI)/$(LIBNAME)/png.h
84 -@$(RM_F) $(DI)/$(LIBNAME)/pngconf.h
85 -@$(RM_F) $(DI)/$(LIBNAME)/pnglibconf.h
87 -@$(RM_F) $(DI)/pngconf.h
88 -@$(RM_F) $(DI)/pnglibconf.h
89 cp png.h pngconf.h pnglibconf.h $(DI)/$(LIBNAME)
90 chmod 644 $(DI)/$(LIBNAME)/png.h \
91 $(DI)/$(LIBNAME)/pngconf.h \
92 $(DI)/$(LIBNAME)/pnglibconf.h
93 -@$(RM_F) -r $(DI)/libpng
94 (cd $(DI); $(LN_SF) $(LIBNAME) libpng; $(LN_SF) $(LIBNAME)/* .)
95 -@$(RM_F) $(DL)/$(LIBNAME)$(A)
96 -@$(RM_F) $(DL)/libpng$(A)
97 cp $(LIBNAME)$(A) $(DL)/$(LIBNAME)$(A)
98 chmod 644 $(DL)/$(LIBNAME)$(A)
99 (cd $(DL); $(LN_SF) $(LIBNAME)$(A) libpng$(A))
100 (cd $(DI); $(LN_SF) libpng/* .;)
103 $(RM_F) *.o $(LIBNAME)$(A) pngtest pngout.png pnglibconf.h
105 png$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
106 pngerror$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
107 pngget$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
108 pngmem$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
109 pngpread$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
110 pngread$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
111 pngrio$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
112 pngrtran$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
113 pngrutil$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
114 pngset$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
115 pngtrans$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
116 pngwio$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
117 pngwrite$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
118 pngwtran$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
119 pngwutil$(O): png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
121 pngtest$(O): png.h pngconf.h pnglibconf.h