~ubuntu-branches/ubuntu/intrepid/libpng/intrepid-security

« back to all changes in this revision

Viewing changes to scripts/makefile.linux

  • Committer: Bazaar Package Importer
  • Author(s): Anibal Monsalve Salazar
  • Date: 2006-11-21 19:07:43 UTC
  • mfrom: (1.1.3 upstream)
  • Revision ID: james.westby@ubuntu.com-20061121190743-wkt0yzs5uq2xoq10
Tags: 1.2.13-4
Removed drop_pass_width patch. Closes: #399499.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
# makefile for libpng.a and libpng12.so on Linux ELF with gcc
2
 
# Copyright (C) 1998, 1999, 2002 Greg Roelofs and Glenn Randers-Pehrson
 
2
# Copyright (C) 1998, 1999, 2002, 2006 Greg Roelofs and Glenn Randers-Pehrson
3
3
# Copyright (C) 1996, 1997 Andreas Dilger
4
4
# For conditions of distribution and use, see copyright notice in png.h
5
5
 
 
6
# Library name:
6
7
LIBNAME = libpng12
7
8
PNGMAJ = 0
8
 
PNGMIN = 1.2.8
 
9
PNGMIN = 1.2.13
9
10
PNGVER = $(PNGMAJ).$(PNGMIN)
10
11
 
 
12
# Shared library names:
 
13
LIBSO=$(LIBNAME).so
 
14
LIBSOMAJ=$(LIBNAME).so.$(PNGMAJ)
 
15
LIBSOVER=$(LIBNAME).so.$(PNGVER)
 
16
OLDSO=libpng.so
 
17
OLDSOMAJ=libpng.so.3
 
18
OLDSOVER=libpng.so.3.$(PNGMIN)
 
19
 
 
20
# Utilities:
 
21
AR_RC=ar rc
11
22
CC=gcc
 
23
MKDIR_P=mkdir -p
 
24
LN_SF=ln -sf
 
25
RANLIB=ranlib
 
26
RM_F=/bin/rm -f
12
27
 
13
28
# where "make install" puts libpng12.a, libpng12.so*,
14
29
# libpng12/png.h and libpng12/pngconf.h
15
30
# Prefix must be a full pathname.
16
31
prefix=/usr/local
 
32
exec_prefix=$(prefix)
17
33
 
18
34
# Where the zlib library and include files are located.
19
35
#ZLIBLIB=/usr/local/lib
37
53
LDFLAGS=-L. -Wl,-rpath,. -L$(ZLIBLIB) -Wl,-rpath,$(ZLIBLIB) -lpng12 -lz -lm
38
54
LDFLAGS_A=-L$(ZLIBLIB) -Wl,-rpath,$(ZLIBLIB) libpng.a -lz -lm
39
55
 
40
 
RANLIB=ranlib
41
 
#RANLIB=echo
42
 
 
43
56
INCPATH=$(prefix)/include
44
 
LIBPATH=$(prefix)/lib
 
57
LIBPATH=$(exec_prefix)/lib
45
58
MANPATH=$(prefix)/man
46
 
BINPATH=$(prefix)/bin
 
59
BINPATH=$(exec_prefix)/bin
47
60
 
48
61
# override DESTDIR= on the make install command line to easily support
49
62
# installing into a temporary location.  Example:
71
84
.c.pic.o:
72
85
        $(CC) -c $(CFLAGS) -fPIC -o $@ $*.c
73
86
 
74
 
all: libpng.a $(LIBNAME).so pngtest pngtest-static libpng.pc libpng-config
 
87
all: libpng.a $(LIBSO) pngtest pngtest-static libpng.pc libpng-config
75
88
 
76
89
libpng.a: $(OBJS)
77
 
        ar rc $@ $(OBJS)
 
90
        $(AR_RC) $@ $(OBJS)
78
91
        $(RANLIB) $@
79
92
 
80
93
libpng.pc:
90
103
        cat scripts/libpng-config-body.in ) > libpng-config
91
104
        chmod +x libpng-config
92
105
 
93
 
$(LIBNAME).so: $(LIBNAME).so.$(PNGMAJ)
94
 
        ln -sf $(LIBNAME).so.$(PNGMAJ) $(LIBNAME).so
95
 
 
96
 
$(LIBNAME).so.$(PNGMAJ): $(LIBNAME).so.$(PNGVER)
97
 
        ln -sf $(LIBNAME).so.$(PNGVER) $(LIBNAME).so.$(PNGMAJ)
98
 
 
99
 
$(LIBNAME).so.$(PNGVER): $(OBJSDLL)
100
 
        $(CC) -shared -Wl,-soname,$(LIBNAME).so.$(PNGMAJ) \
101
 
        -o $(LIBNAME).so.$(PNGVER) \
102
 
        $(OBJSDLL)
103
 
 
104
 
libpng.so.3.$(PNGMIN): $(OBJSDLL)
105
 
        $(CC) -shared -Wl,-soname,libpng.so.3 \
106
 
        -o libpng.so.3.$(PNGMIN) \
107
 
        $(OBJSDLL)
108
 
 
109
 
pngtest: pngtest.o $(LIBNAME).so
 
106
$(LIBSO): $(LIBSOMAJ)
 
107
        $(LN_SF) $(LIBSOMAJ) $(LIBSO)
 
108
 
 
109
$(LIBSOMAJ): $(LIBSOVER)
 
110
        $(LN_SF) $(LIBSOVER) $(LIBSOMAJ)
 
111
 
 
112
$(LIBSOVER): $(OBJSDLL)
 
113
        $(CC) -shared -Wl,-soname,$(LIBSOMAJ) -o $(LIBSOVER) $(OBJSDLL)
 
114
 
 
115
$(OLDSOVER): $(OBJSDLL)
 
116
        $(CC) -shared -Wl,-soname,$(OLDSOMAJ) \
 
117
        -o $(OLDSOVER) \
 
118
        $(OBJSDLL)
 
119
 
 
120
pngtest: pngtest.o $(LIBSO)
110
121
        $(CC) -o pngtest $(CFLAGS) pngtest.o $(LDFLAGS)
111
122
 
112
123
pngtest-static: pngtest.o libpng.a
114
125
 
115
126
test: pngtest pngtest-static
116
127
        @echo ""
117
 
        @echo "   Running pngtest dynamically linked with $(LIBNAME).so:"
 
128
        @echo "   Running pngtest dynamically linked with $(LIBSO):"
118
129
        @echo ""
119
130
        ./pngtest
120
131
        @echo ""
123
134
        ./pngtest-static
124
135
 
125
136
install-headers: png.h pngconf.h
126
 
        -@if [ ! -d $(DI) ]; then mkdir $(DI); fi
127
 
        -@if [ ! -d $(DI)/$(LIBNAME) ]; then mkdir $(DI)/$(LIBNAME); fi
 
137
        -@if [ ! -d $(DI) ]; then $(MKDIR_P) $(DI); fi
 
138
        -@if [ ! -d $(DI)/$(LIBNAME) ]; then $(MKDIR_P) $(DI)/$(LIBNAME); fi
128
139
        cp png.h pngconf.h $(DI)/$(LIBNAME)
129
140
        chmod 644 $(DI)/$(LIBNAME)/png.h $(DI)/$(LIBNAME)/pngconf.h
130
 
        -@/bin/rm -f $(DI)/png.h $(DI)/pngconf.h
131
 
        -@/bin/rm -f $(DI)/libpng
132
 
        (cd $(DI); ln -sf $(LIBNAME) libpng; ln -sf $(LIBNAME)/* .)
 
141
        -@$(RM_F) $(DI)/png.h $(DI)/pngconf.h
 
142
        -@$(RM_F) $(DI)/libpng
 
143
        (cd $(DI); $(LN_SF) $(LIBNAME) libpng; $(LN_SF) $(LIBNAME)/* .)
133
144
 
134
145
install-static: install-headers libpng.a
135
 
        -@if [ ! -d $(DL) ]; then mkdir $(DL); fi
 
146
        -@if [ ! -d $(DL) ]; then $(MKDIR_P) $(DL); fi
136
147
        cp libpng.a $(DL)/$(LIBNAME).a
137
148
        chmod 644 $(DL)/$(LIBNAME).a
138
 
        -@/bin/rm -f $(DL)/libpng.a
139
 
        (cd $(DL); ln -sf $(LIBNAME).a libpng.a)
 
149
        -@$(RM_F) $(DL)/libpng.a
 
150
        (cd $(DL); $(LN_SF) $(LIBNAME).a libpng.a)
140
151
 
141
 
install-shared: install-headers $(LIBNAME).so.$(PNGVER) libpng.pc \
142
 
        libpng.so.3.$(PNGMIN)
143
 
        -@if [ ! -d $(DL) ]; then mkdir $(DL); fi
144
 
        -@/bin/rm -f $(DL)/$(LIBNAME).so.$(PNGVER)* $(DL)/$(LIBNAME).so
145
 
        -@/bin/rm -f $(DL)/$(LIBNAME).so.$(PNGMAJ)
146
 
        -@/bin/rm -f $(DL)/libpng.so
147
 
        -@/bin/rm -f $(DL)/libpng.so.3
148
 
        -@/bin/rm -f $(DL)/libpng.so.3.$(PNGMIN)*
149
 
        cp $(LIBNAME).so.$(PNGVER) $(DL)
150
 
        cp libpng.so.3.$(PNGMIN) $(DL)
151
 
        chmod 755 $(DL)/$(LIBNAME).so.$(PNGVER)
152
 
        chmod 755 $(DL)/libpng.so.3.$(PNGMIN)
 
152
install-shared: install-headers $(LIBSOVER) libpng.pc \
 
153
        $(OLDSOVER)
 
154
        -@if [ ! -d $(DL) ]; then $(MKDIR_P) $(DL); fi
 
155
        -@$(RM_F) $(DL)/$(LIBSOVER)* $(DL)/$(LIBSO)
 
156
        -@$(RM_F) $(DL)/$(LIBSOMAJ)
 
157
        -@$(RM_F) $(DL)/$(OLDSO)
 
158
        -@$(RM_F) $(DL)/$(OLDSOMAJ)
 
159
        -@$(RM_F) $(DL)/$(OLDSOVER)*
 
160
        cp $(LIBSOVER) $(DL)
 
161
        cp $(OLDSOVER) $(DL)
 
162
        chmod 755 $(DL)/$(LIBSOVER)
 
163
        chmod 755 $(DL)/$(OLDSOVER)
153
164
        (cd $(DL); \
154
 
        ln -sf libpng.so.3.$(PNGMIN) libpng.so.3; \
155
 
        ln -sf libpng.so.3 libpng.so; \
156
 
        ln -sf $(LIBNAME).so.$(PNGVER) $(LIBNAME).so.$(PNGMAJ); \
157
 
        ln -sf $(LIBNAME).so.$(PNGMAJ) $(LIBNAME).so)
158
 
        -@if [ ! -d $(DL)/pkgconfig ]; then mkdir $(DL)/pkgconfig; fi
159
 
        -@/bin/rm -f $(DL)/pkgconfig/$(LIBNAME).pc
160
 
        -@/bin/rm -f $(DL)/pkgconfig/libpng.pc
 
165
        $(LN_SF) $(OLDSOVER) $(OLDSOMAJ); \
 
166
        $(LN_SF) $(OLDSOMAJ) $(OLDSO); \
 
167
        $(LN_SF) $(LIBSOVER) $(LIBSOMAJ); \
 
168
        $(LN_SF) $(LIBSOMAJ) $(LIBSO))
 
169
        -@if [ ! -d $(DL)/pkgconfig ]; then $(MKDIR_P) $(DL)/pkgconfig; fi
 
170
        -@$(RM_F) $(DL)/pkgconfig/$(LIBNAME).pc
 
171
        -@$(RM_F) $(DL)/pkgconfig/libpng.pc
161
172
        cp libpng.pc $(DL)/pkgconfig/$(LIBNAME).pc
162
173
        chmod 644 $(DL)/pkgconfig/$(LIBNAME).pc
163
 
        (cd $(DL)/pkgconfig; ln -sf $(LIBNAME).pc libpng.pc)
 
174
        (cd $(DL)/pkgconfig; $(LN_SF) $(LIBNAME).pc libpng.pc)
164
175
 
165
176
install-man: libpng.3 libpngpf.3 png.5
166
 
        -@if [ ! -d $(DM) ]; then mkdir $(DM); fi
167
 
        -@if [ ! -d $(DM)/man3 ]; then mkdir $(DM)/man3; fi
168
 
        -@/bin/rm -f $(DM)/man3/libpng.3
169
 
        -@/bin/rm -f $(DM)/man3/libpngpf.3
 
177
        -@if [ ! -d $(DM) ]; then $(MKDIR_P) $(DM); fi
 
178
        -@if [ ! -d $(DM)/man3 ]; then $(MKDIR_P) $(DM)/man3; fi
 
179
        -@$(RM_F) $(DM)/man3/libpng.3
 
180
        -@$(RM_F) $(DM)/man3/libpngpf.3
170
181
        cp libpng.3 $(DM)/man3
171
182
        cp libpngpf.3 $(DM)/man3
172
 
        -@if [ ! -d $(DM)/man5 ]; then mkdir $(DM)/man5; fi
173
 
        -@/bin/rm -f $(DM)/man5/png.5
 
183
        -@if [ ! -d $(DM)/man5 ]; then $(MKDIR_P) $(DM)/man5; fi
 
184
        -@$(RM_F) $(DM)/man5/png.5
174
185
        cp png.5 $(DM)/man5
175
186
 
176
187
install-config: libpng-config
177
 
        -@if [ ! -d $(DB) ]; then mkdir $(DB); fi
178
 
        -@/bin/rm -f $(DB)/libpng-config
179
 
        -@/bin/rm -f $(DB)/$(LIBNAME)-config
 
188
        -@if [ ! -d $(DB) ]; then $(MKDIR_P) $(DB); fi
 
189
        -@$(RM_F) $(DB)/libpng-config
 
190
        -@$(RM_F) $(DB)/$(LIBNAME)-config
180
191
        cp libpng-config $(DB)/$(LIBNAME)-config
181
192
        chmod 755 $(DB)/$(LIBNAME)-config
182
 
        (cd $(DB); ln -sf $(LIBNAME)-config libpng-config)
 
193
        (cd $(DB); $(LN_SF) $(LIBNAME)-config libpng-config)
183
194
 
184
195
install: install-static install-shared install-man install-config
185
196
 
191
202
        echo
192
203
        echo Testing installed dynamic shared library in $(DL).
193
204
        $(CC) -I$(DI) -I$(ZLIBINC) \
194
 
           `$(BINPATH)/libpng12-config --cflags` pngtest.c \
195
 
           -L$(DL) -L$(ZLIBLIB) -W1, -rpath,$(DL) -Wl,-rpath,$(ZLIBLIB) \
196
 
           -o pngtestd `$(BINPATH)/libpng12-config --ldflags`
 
205
           `$(BINPATH)/$(LIBNAME)-config --cflags` pngtest.c \
 
206
           -L$(DL) -L$(ZLIBLIB) -Wl, -rpath,$(DL) -Wl,-rpath,$(ZLIBLIB) \
 
207
           -o pngtestd `$(BINPATH)/$(LIBNAME)-config --ldflags`
197
208
        ./pngtestd pngtest.png
198
209
 
199
210
test-installed:
200
211
        $(CC) -I$(ZLIBINC) \
201
 
           `$(BINPATH)/libpng12-config --cflags` pngtest.c \
 
212
           `$(BINPATH)/$(LIBNAME)-config --cflags` pngtest.c \
202
213
           -L$(ZLIBLIB) -Wl,-rpath,$(ZLIBLIB) \
203
 
           -o pngtesti `$(BINPATH)/libpng12-config --ldflags`
 
214
           -o pngtesti `$(BINPATH)/$(LIBNAME)-config --ldflags`
204
215
        ./pngtesti pngtest.png
205
216
 
206
217
clean:
207
 
        /bin/rm -f *.o libpng.a pngtest pngout.png libpng-config \
208
 
        $(LIBNAME).so $(LIBNAME).so.$(PNGMAJ)* pngtest-static pngtesti \
209
 
        libpng.so.3.$(PNGMIN) \
 
218
        $(RM_F) *.o libpng.a pngtest pngout.png libpng-config \
 
219
        $(LIBSO) $(LIBSOMAJ)* pngtest-static pngtesti \
 
220
        $(OLDSOVER) \
210
221
        libpng.pc
211
222
 
212
223
DOCS = ANNOUNCE CHANGES INSTALL KNOWNBUG LICENSE README TODO Y2KINFO