]>
Commit | Line | Data |
---|---|---|
1 | # makefile for libpng using gcc (generic, static library) | |
2 | # Copyright (C) 2002, 2006 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. | |
6 | # For conditions of distribution and use, see copyright notice in png.h | |
7 | ||
8 | # Location of the zlib library and include files | |
9 | ZLIBINC = ../zlib | |
10 | ZLIBLIB = ../zlib | |
11 | ||
12 | # Compiler, linker, lib and other tools | |
13 | CC = gcc | |
14 | LD = $(CC) | |
15 | AR_RC = ar rcs | |
16 | MKDIR_P = mkdir -p | |
17 | RANLIB = ranlib | |
18 | RM_F = rm -f | |
19 | LN_SF = ln -f -s | |
20 | ||
21 | LIBNAME=libpng12 | |
22 | PNGMAJ = 0 | |
23 | PNGMIN = 1.2.20 | |
24 | PNGVER = $(PNGMAJ).$(PNGMIN) | |
25 | ||
26 | prefix=/usr/local | |
27 | INCPATH=$(prefix)/include | |
28 | LIBPATH=$(prefix)/lib | |
29 | ||
30 | # override DESTDIR= on the make install command line to easily support | |
31 | # installing into a temporary location. Example: | |
32 | # | |
33 | # make install DESTDIR=/tmp/build/libpng | |
34 | # | |
35 | # If you're going to install into a temporary location | |
36 | # via DESTDIR, $(DESTDIR)$(prefix) must already exist before | |
37 | # you execute make install. | |
38 | DESTDIR= | |
39 | ||
40 | DI=$(DESTDIR)$(INCPATH) | |
41 | DL=$(DESTDIR)$(LIBPATH) | |
42 | ||
43 | CDEBUG = -g -DPNG_DEBUG=5 | |
44 | LDDEBUG = | |
45 | CRELEASE = -O2 | |
46 | LDRELEASE = -s | |
47 | WARNMORE=-Wall | |
48 | CFLAGS = -I$(ZLIBINC) $(WARNMORE) $(CRELEASE) | |
49 | LDFLAGS = -L. -L$(ZLIBLIB) -lpng12 -lz -lm $(LDRELEASE) | |
50 | ||
51 | # File extensions | |
52 | O=.o | |
53 | A=.a | |
54 | E= | |
55 | ||
56 | # Variables | |
57 | OBJS = png$(O) pngerror$(O) pngget$(O) pngmem$(O) pngpread$(O) \ | |
58 | pngread$(O) pngrio$(O) pngrtran$(O) pngrutil$(O) pngset$(O) \ | |
59 | pngtrans$(O) pngwio$(O) pngwrite$(O) pngwtran$(O) pngwutil$(O) | |
60 | ||
61 | # Targets | |
62 | all: $(LIBNAME)$(A) pngtest$(E) | |
63 | ||
64 | $(LIBNAME)$(A): $(OBJS) | |
65 | $(AR_RC) $@ $(OBJS) | |
66 | $(RANLIB) $@ | |
67 | ||
68 | test: pngtest$(E) | |
69 | ./pngtest$(E) | |
70 | ||
71 | pngtest$(E): pngtest$(O) $(LIBNAME)$(A) | |
72 | $(LD) -o $@ pngtest$(O) $(LDFLAGS) | |
73 | ||
74 | install: $(LIBNAME)$(A) | |
75 | -@if [ ! -d $(DI) ]; then $(MKDIR_P) $(DI); fi | |
76 | -@if [ ! -d $(DI)/$(LIBNAME) ]; then $(MKDIR_P) $(DI)/$(LIBNAME); fi | |
77 | -@if [ ! -d $(DL) ]; then $(MKDIR_P) $(DL); fi | |
78 | -@$(RM_F) $(DI)/$(LIBNAME)/png.h | |
79 | -@$(RM_F) $(DI)/$(LIBNAME)/pngconf.h | |
80 | -@$(RM_F) $(DI)/png.h | |
81 | -@$(RM_F) $(DI)/pngconf.h | |
82 | cp png.h pngconf.h $(DI)/$(LIBNAME) | |
83 | chmod 644 $(DI)/$(LIBNAME)/png.h \ | |
84 | $(DI)/$(LIBNAME)/pngconf.h | |
85 | -@$(RM_F) -r $(DI)/libpng | |
86 | (cd $(DI); $(LN_SF) $(LIBNAME) libpng; $(LN_SF) $(LIBNAME)/* .) | |
87 | -@$(RM_F) $(DL)/$(LIBNAME)$(A) | |
88 | -@$(RM_F) $(DL)/libpng$(A) | |
89 | cp $(LIBNAME)$(A) $(DL)/$(LIBNAME)$(A) | |
90 | chmod 644 $(DL)/$(LIBNAME)$(A) | |
91 | (cd $(DL); $(LN_SF) $(LIBNAME)$(A) libpng$(A)) | |
92 | (cd $(DI); $(LN_SF) libpng/* .;) | |
93 | ||
94 | clean: | |
95 | $(RM_F) *.o $(LIBNAME)$(A) pngtest pngout.png | |
96 | ||
97 | png$(O): png.h pngconf.h | |
98 | pngerror$(O): png.h pngconf.h | |
99 | pngget$(O): png.h pngconf.h | |
100 | pngmem$(O): png.h pngconf.h | |
101 | pngpread$(O): png.h pngconf.h | |
102 | pngread$(O): png.h pngconf.h | |
103 | pngrio$(O): png.h pngconf.h | |
104 | pngrtran$(O): png.h pngconf.h | |
105 | pngrutil$(O): png.h pngconf.h | |
106 | pngset$(O): png.h pngconf.h | |
107 | pngtest$(O): png.h pngconf.h | |
108 | pngtrans$(O): png.h pngconf.h | |
109 | pngwio$(O): png.h pngconf.h | |
110 | pngwrite$(O): png.h pngconf.h | |
111 | pngwtran$(O): png.h pngconf.h | |
112 | pngwutil$(O): png.h pngconf.h | |
113 |