]> rtime.felk.cvut.cz Git - l4.git/blob - l4/pkg/libpng/lib/dist/scripts/makefile.std
update
[l4.git] / l4 / pkg / libpng / lib / dist / scripts / makefile.std
1 # makefile for libpng
2 # Copyright (C) 2002, 2006 Glenn Randers-Pehrson
3 # Copyright (C) 1995 Guy Eric Schalnat, Group 42, Inc.
4 #
5 # This code is released under the libpng license.
6 # For conditions of distribution and use, see the disclaimer
7 # and license in png.h
8
9 # where make install puts libpng.a and png.h
10 prefix=/usr/local
11 INCPATH=$(prefix)/include
12 LIBPATH=$(prefix)/lib
13
14 # override DESTDIR= on the make install command line to easily support
15 # installing into a temporary location.  Example:
16 #
17 #    make install DESTDIR=/tmp/build/libpng
18 #
19 # If you're going to install into a temporary location
20 # via DESTDIR, $(DESTDIR)$(prefix) must already exist before
21 # you execute make install.
22 DESTDIR=
23
24 # Where the zlib library and include files are located
25 #ZLIBLIB=/usr/local/lib
26 #ZLIBINC=/usr/local/include
27 ZLIBLIB=../zlib
28 ZLIBINC=../zlib
29
30 CC=cc
31 AR_RC=ar rc
32 MKDIR_P=mkdir
33 LN_SF=ln -sf
34 RANLIB=ranlib
35 RM_F=rm -f
36 AWK = awk
37 SED = sed
38 CPP = $(CC) -E
39 ECHO = echo
40
41 DFNFLAGS = # DFNFLAGS contains -D options to use in the libpng build
42 CFLAGS=-I$(ZLIBINC) -O # -g -DPNG_DEBUG=5
43 LDFLAGS=-L. -L$(ZLIBLIB) -lpng -lz -lm
44
45 OBJS = png.o pngset.o pngget.o pngrutil.o pngtrans.o pngwutil.o \
46         pngread.o pngrio.o pngwio.o pngwrite.o pngrtran.o \
47         pngwtran.o pngmem.o pngerror.o pngpread.o
48
49 all: libpng.a pngtest
50
51 # The standard pnglibconf.h exists as scripts/pnglibconf.h.prebuilt,
52 # copy this if the following doesn't work.
53 pnglibconf.dfn: scripts/pnglibconf.dfa scripts/options.awk
54         $(RM_F) $@ dfn?.out
55         $(AWK) -f scripts/options.awk out=dfn1.out\
56             scripts/pnglibconf.dfa $(DFA_XTRA) 1>&2
57         $(AWK) -f scripts/options.awk out=dfn2.out dfn1.out 1>&2
58         cp dfn2.out $@
59         $(RM_F) dfn?.out
60
61 pnglibconf.h: pnglibconf.dfn
62         $(RM_F) $@ dfn.c dfn?.out
63         $(ECHO) '#include "pnglibconf.dfn"' >dfn.c
64         $(CPP) $(DFNFLAGS) dfn.c >dfn1.out
65         $(SED) -n -e 's|^.*PNG_DEFN_MAGIC-\(.*\)-PNG_DEFN_END.*$$|\1|p'\
66             dfn1.out >dfn2.out
67         $(SED) -e 's| *@@@ *||g' -e 's| *$$||' dfn2.out >dfn3.out
68         cp dfn3.out $@
69         $(RM_F) dfn.c dfn?.out
70
71 libpng.a: $(OBJS)
72         $(AR_RC) $@  $(OBJS)
73         $(RANLIB) $@
74
75 pngtest: pngtest.o libpng.a
76         $(CC) -o pngtest $(CFLAGS) pngtest.o $(LDFLAGS)
77
78 test: pngtest
79         ./pngtest
80
81 install: libpng.a pnglibconf.h
82         -@$(MKDIR_P) $(DESTDIR)$(INCPATH)
83         -@$(MKDIR_P) $(DESTDIR)$(INCPATH)/libpng
84         -@$(MKDIR_P) $(DESTDIR)$(LIBPATH)
85         -@$(RM_F) $(DESTDIR)$(INCPATH)/png.h
86         -@$(RM_F) $(DESTDIR)$(INCPATH)/pngconf.h
87         -@$(RM_F) $(DESTDIR)$(INCPATH)/pnglibconf.h
88         cp png.h $(DESTDIR)$(INCPATH)/libpng
89         cp pngconf.h $(DESTDIR)$(INCPATH)/libpng
90         cp pnglibconf.h $(DESTDIR)$(INCPATH)/libpng
91         chmod 644 $(DESTDIR)$(INCPATH)/libpng/png.h
92         chmod 644 $(DESTDIR)$(INCPATH)/libpng/pngconf.h
93         chmod 644 $(DESTDIR)$(INCPATH)/libpng/pnglibconf.h
94         (cd $(DESTDIR)$(INCPATH); ln -f -s libpng/* .)
95         cp libpng.a $(DESTDIR)$(LIBPATH)
96         chmod 644 $(DESTDIR)$(LIBPATH)/libpng.a
97
98 clean:
99         $(RM_F) *.o libpng.a pngtest pngout.png pnglibconf.* dfn.c dfn?.out
100
101 DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO
102 writelock:
103         chmod a-w *.[ch35] $(DOCS) scripts/*
104
105 # DO NOT DELETE THIS LINE -- make depend depends on it.
106
107 png.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
108 pngerror.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
109 pngrio.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
110 pngwio.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
111 pngmem.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
112 pngset.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
113 pngget.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
114 pngread.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
115 pngrtran.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
116 pngrutil.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
117 pngtrans.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
118 pngwrite.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
119 pngwtran.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
120 pngwutil.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
121 pngpread.o: png.h pngconf.h pnglibconf.h pngpriv.h pngstruct.h pnginfo.h pngdebug.h
122
123 pngtest.o: png.h pngconf.h pnglibconf.h