]> git.ipfire.org Git - thirdparty/cups.git/blame - cgi-bin/Makefile
<rdar://problem/5792631> dependency cycle in cups-144 / PrintingCore-250 / Applicatio...
[thirdparty/cups.git] / cgi-bin / Makefile
CommitLineData
ef416fc2 1#
bc44d920 2# "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $"
ef416fc2 3#
4# CGI makefile for the Common UNIX Printing System (CUPS).
5#
50fe7201 6# Copyright 2007-2008 by Apple Inc.
bd7854cb 7# Copyright 1997-2006 by Easy Software Products.
ef416fc2 8#
9# These coded instructions, statements, and computer programs are the
bc44d920 10# property of Apple Inc. and are protected by Federal copyright
11# law. Distribution and use rights are outlined in the file "LICENSE.txt"
12# which should have been included with this file. If this file is
13# file is missing or damaged, see the license at "http://www.cups.org/".
ef416fc2 14#
15
16include ../Makedefs
17
50fe7201
MS
18LIBOBJS = \
19 help-index.o \
20 html.o \
21 ipp-var.o \
22 search.o \
23 template.o \
24 var.o
25LIB32OBJS = $(LIBOBJS:.o=.32.o)
26LIB64OBJS = $(LIBOBJS:.o=.64.o)
27OBJS = \
28 $(LIBOBJS) \
29 $(LIB32OBJS) \
30 $(LIB64OBJS) \
31 admin.o \
32 classes.o \
33 help.o \
34 jobs.o \
35 printers.o \
36 testcgi.o \
37 testhi.o \
38 testtemplate.o
39CGIS = \
40 admin.cgi \
41 classes.cgi \
42 help.cgi \
43 jobs.cgi \
44 printers.cgi
45TARGETS = \
46 libcupscgi.a \
47 $(LIBCUPSCGI) \
48 $(LIB32CUPSCGI) \
49 $(LIB32CUPSCGI) \
50 $(CGIS) \
51 testcgi \
52 testhi \
53 testtemplate
ef416fc2 54
55
56#
57# Make all targets...
58#
59
60all: $(TARGETS)
61
62
63#
64# Clean all object files...
65#
66
67clean:
68 $(RM) $(OBJS) $(TARGETS)
50fe7201
MS
69 $(RM) libcupscgi.so libcupscgi.sl libcupscgi.dylib
70 $(RM) -r 32bit 64bit
ef416fc2 71
72
73#
74# Update dependencies (without system header dependencies...)
75#
76
77depend:
50fe7201
MS
78 touch Dependencies.tmp
79 makedepend -Y -I.. -fDependencies.tmp $(OBJS:.o=.c) >/dev/null 2>&1
80 $(RM) Dependencies
81 cp Dependencies.tmp Dependencies
82 sed -E -e '1,$$s/^([^.]+)\.o:/\1\.32.o: \1\.c /' Dependencies.tmp >>Dependencies
83 sed -E -e '1,$$s/^([^.]+)\.o:/\1\.64.o: \1\.c /' Dependencies.tmp >>Dependencies
84 $(RM) Dependencies.tmp
ef416fc2 85
86
87#
88# Install all targets...
89#
90
50fe7201
MS
91install: all install-data install-headers install-libs install-exec
92
93
94#
95# Install data files...
96#
97
98install-data:
99
100
101#
102# Install programs...
103#
104
105install-exec:
bd7854cb 106 $(INSTALL_DIR) -m 755 $(SERVERBIN)/cgi-bin
ef416fc2 107 for file in $(CGIS); do \
108 $(INSTALL_BIN) $$file $(SERVERBIN)/cgi-bin; \
109 done
09a101d6 110 if test "x$(SYMROOT)" != "x"; then \
111 $(INSTALL_DIR) $(SYMROOT); \
112 for file in $(TARGETS); do \
113 cp $$file $(SYMROOT); \
114 done \
115 fi
ef416fc2 116
117
50fe7201
MS
118#
119# Install headers...
120#
121
122install-headers:
123 echo Installing header files in $(INCLUDEDIR)/cups...
124 $(INSTALL_DIR) -m 755 $(INCLUDEDIR)/cups
125 $(INSTALL_DATA) cgi.h $(INCLUDEDIR)/cups
126 $(INSTALL_DATA) help-index.h $(INCLUDEDIR)/cups
127
128
129#
130# Install libraries...
131#
132
133install-libs: $(INSTALLSTATIC) $(INSTALL32) $(INSTALL64)
134 echo Installing libraries in $(LIBDIR)...
135 $(INSTALL_DIR) -m 755 $(LIBDIR)
136 $(INSTALL_LIB) $(LIBCUPSCGI) $(LIBDIR)
137 if test $(LIBCUPSCGI) = "libcupscgi.so.1" -o $(LIBCUPSCGI) = "libcupscgi.sl.1"; then \
138 $(RM) $(LIBDIR)/`basename $(LIBCUPSCGI) .1`; \
139 $(LN) $(LIBCUPSCGI) $(LIBDIR)/`basename $(LIBCUPSCGI) .1`; \
140 fi
141 if test $(LIBCUPSCGI) = "libcupscgi.1.dylib"; then \
142 $(STRIP) -x $(LIBDIR)/$(LIBCUPSCGI); \
143 $(RM) $(LIBDIR)/libcupscgi.dylib; \
144 $(LN) $(LIBCUPSCGI) $(LIBDIR)/libcupscgi.dylib; \
145 fi
146 if test "x$(SYMROOT)" != "x"; then \
147 $(INSTALL_DIR) $(SYMROOT); \
148 cp $(LIBCUPSCGI) $(SYMROOT); \
149 fi
150
151installstatic:
152 $(INSTALL_DIR) -m 755 $(LIBDIR)
153 $(INSTALL_LIB) libcupscgi.a $(LIBDIR)
154 $(RANLIB) $(LIBDIR)/libcupscgi.a
155
156install32bit:
157 echo Installing libraries in $(LIB32DIR)...
158 $(INSTALL_DIR) -m 755 $(LIB32DIR)
159 $(INSTALL_LIB) 32bit/libcupscgi.so.1 $(LIB32DIR)/libcupscgi.so.1
160 $(LN) libcupscgi.so.1 $(LIB32DIR)/libcupscgi.so
161
162install64bit:
163 echo Installing libraries in $(LIB64DIR)...
164 $(INSTALL_DIR) -m 755 $(LIB64DIR)
165 $(INSTALL_LIB) 64bit/libcupscgi.so.1 $(LIB64DIR)/libcupscgi.so.1
166 $(LN) libcupscgi.so.1 $(LIB64DIR)/libcupscgi.so
167
168
757d2cad 169#
170# Uninstall all targets...
171#
172
50fe7201 173uninstall: $(UNINSTALL32) $(UNINSTALL64)
757d2cad 174 for file in $(CGIS); do \
175 $(RM) $(SERVERBIN)/cgi-bin/$$file; \
176 done
177 -$(RMDIR) $(SERVERBIN)/cgi-bin
50fe7201
MS
178 $(RM) $(LIBDIR)/libcupscgi.1.dylib
179 $(RM) $(LIBDIR)/libcupscgi.a
180 $(RM) $(LIBDIR)/libcupscgi.dylib
181 $(RM) $(LIBDIR)/libcupscgi_s.a
182 $(RM) $(LIBDIR)/libcupscgi.sl
183 $(RM) $(LIBDIR)/libcupscgi.sl.1
184 $(RM) $(LIBDIR)/libcupscgi.so
185 $(RM) $(LIBDIR)/libcupscgi.so.1
186 -$(RMDIR) $(LIBDIR)
187 $(RM) $(INCLUDEDIR)/cups/cgi.h
188 $(RM) $(INCLUDEDIR)/cups/help-index.h
189 -$(RMDIR) $(INCLUDEDIR)/cups
190
191uninstall32bit:
192 $(RM) $(LIB32DIR)/libcupscgi.so
193 $(RM) $(LIB32DIR)/libcupscgi.so.1
194 -$(RMDIR) $(LIB32DIR)
195
196uninstall64bit:
197 $(RM) $(LIB64DIR)/libcupscgi.so
198 $(RM) $(LIB64DIR)/libcupscgi.so.1
199 -$(RMDIR) $(LIB64DIR)
200
201
202#
203# Automatic API help files...
204#
205
206apihelp:
207 mxmldoc --section "Programming" \
208 --title "CGI API" \
209 --css ../doc/cups-printable.css \
210 --header api-cgi.header --intro api-cgi.shtml \
211 cgi.h help-index.h $(LIBOBJS:.o=.c) >../doc/help/api-cgi.html
212
213framedhelp:
214 mxmldoc --framed api-cgi \
215 --section "Programming" \
216 --title "CGI API" \
217 --css ../doc/cups-printable.css \
218 --header api-cgi.header --intro api-cgi.shtml \
219 cgi.h help-index.h $(LIBOBJS:.o=.c)
220
221
222#
223# libcupscgi.so.1, libcupscgi.sl.1
224#
225
226libcupscgi.so.1 libcupscgi.sl.1: $(LIBOBJS)
227 echo Linking $@...
228 $(DSO) $(ARCHFLAGS) $(DSOFLAGS) -o $@ $(LIBOBJS) $(LIBS)
229 $(RM) `basename $@ .1`
230 $(LN) $@ `basename $@ .1`
231
232
233#
234# 32bit/libcupscgi.so.1
235#
236
23732bit/libcupscgi.so.1: $(LIB32OBJS)
238 echo Linking 32-bit $@...
239 -mkdir 32bit
240 $(DSO) $(ARCH32FLAGS) $(DSO32FLAGS) -o $@ $(LIB32OBJS) $(LIBS)
241 $(RM) 32bit/libcupscgi.so
242 $(LN) libcupscgi.so.1 32bit/libcupscgi.so
243
244
245#
246# 64bit/libcupscgi.so.1
247#
248
24964bit/libcupscgi.so.1: $(LIB64OBJS)
250 echo Linking 64-bit $@...
251 -mkdir 64bit
252 $(DSO) $(ARCH64FLAGS) $(DSO64FLAGS) -o $@ $(LIB64OBJS) $(LIBS)
253 $(RM) 64bit/libcupscgi.so
254 $(LN) libcupscgi.so.1 64bit/libcupscgi.so
255
256
257#
258# libcupscgi.1.dylib
259#
260
261libcupscgi.1.dylib: $(LIBOBJS) libcupscgi.exp
262 echo Linking $@...
263 $(DSO) $(ARCHFLAGS) $(DSOFLAGS) -o $@ \
264 -install_name $(libdir)/$@ \
265 -current_version 1.0.0 \
266 -compatibility_version 1.0.0 \
267 -exported_symbols_list libcupscgi.exp \
268 $(LIBOBJS) $(LIBS)
269 $(RM) libcupscgi.dylib
270 $(LN) $@ libcupscgi.dylib
271
272
273#
274# libcupscgi_s.a
275#
276
277libcupscgi_s.a: $(LIBOBJS)
278 echo Creating $@...
279 $(DSO) $(DSOFLAGS) -o libcupscgi_s.o $(LIBOBJS) $(LIBS)
280 $(RM) $@
281 $(AR) $(ARFLAGS) $@ libcupscgi_s.o
282
283
284#
285# libcupscgi.la
286#
287
288libcupscgi.la: $(LIBOBJS)
289 echo Linking $@...
290 $(CC) $(ARCHFLAGS) $(DSOFLAGS) -o $@ $(LIBOBJS:.o=.lo) -rpath $(LIBDIR) \
291 -version-info 1:0 $(LIBS)
757d2cad 292
293
ef416fc2 294#
50fe7201 295# libcupscgi.a
ef416fc2 296#
297
50fe7201 298libcupscgi.a: $(LIBOBJS)
ef416fc2 299 echo Archiving $@...
300 $(RM) $@
301 $(AR) $(ARFLAGS) $@ $(LIBOBJS)
302 $(RANLIB) $@
303
304
305#
306# admin.cgi
307#
308
50fe7201 309admin.cgi: admin.o ../Makedefs ../cups/$(LIBCUPS) $(LIBCUPSCGI)
ef416fc2 310 echo Linking $@...
50fe7201 311 $(CC) $(LDFLAGS) -o $@ admin.o -L. -lcupscgi $(LIBS)
ef416fc2 312
313
314#
315# classes.cgi
316#
317
50fe7201 318classes.cgi: classes.o ../Makedefs ../cups/$(LIBCUPS) $(LIBCUPSCGI)
ef416fc2 319 echo Linking $@...
50fe7201 320 $(CC) $(LDFLAGS) -o $@ classes.o -L. -lcupscgi $(LIBS)
ef416fc2 321
322
323#
324# help.cgi
325#
326
50fe7201 327help.cgi: help.o ../Makedefs ../cups/$(LIBCUPS) $(LIBCUPSCGI)
ef416fc2 328 echo Linking $@...
50fe7201 329 $(CC) $(LDFLAGS) -o $@ help.o -L. -lcupscgi $(LIBS)
ef416fc2 330
331
332#
333# jobs.cgi
334#
335
50fe7201 336jobs.cgi: jobs.o ../Makedefs ../cups/$(LIBCUPS) $(LIBCUPSCGI)
ef416fc2 337 echo Linking $@...
50fe7201 338 $(CC) $(LDFLAGS) -o $@ jobs.o -L. -lcupscgi $(LIBS)
ef416fc2 339
340
341#
342# printers.cgi
343#
344
50fe7201 345printers.cgi: printers.o ../Makedefs ../cups/$(LIBCUPS) $(LIBCUPSCGI)
ef416fc2 346 echo Linking $@...
50fe7201 347 $(CC) $(LDFLAGS) -o $@ printers.o -L. -lcupscgi $(LIBS)
ef416fc2 348
349
350#
351# testcgi
352#
353
50fe7201 354testcgi: testcgi.o ../Makedefs libcupscgi.a ../cups/libcups.a
ef416fc2 355 echo Linking $@...
50fe7201 356 $(CC) $(LDFLAGS) -o $@ testcgi.o libcupscgi.a ../cups/libcups.a \
f7deaa1a 357 $(COMMONLIBS) $(SSLLIBS) $(LIBZ) $(LIBGSSAPI)
ef416fc2 358
359
360#
361# testhi
362#
363
50fe7201 364testhi: testhi.o ../Makedefs libcupscgi.a ../cups/libcups.a
ef416fc2 365 echo Linking $@...
50fe7201 366 $(CC) $(LDFLAGS) -o $@ testhi.o libcupscgi.a ../cups/libcups.a \
f7deaa1a 367 $(COMMONLIBS) $(SSLLIBS) $(LIBZ) $(LIBGSSAPI)
ef416fc2 368
369
bd7854cb 370#
371# testtemplate
372#
373
50fe7201 374testtemplate: testtemplate.o ../Makedefs libcupscgi.a ../cups/libcups.a
bd7854cb 375 echo Linking $@...
50fe7201 376 $(CC) $(LDFLAGS) -o $@ testtemplate.o libcupscgi.a ../cups/libcups.a \
f7deaa1a 377 $(COMMONLIBS) $(SSLLIBS) $(LIBZ) $(LIBGSSAPI)
bd7854cb 378
379
ef416fc2 380#
381# Dependencies...
382#
383
384include Dependencies
385
386
387#
bc44d920 388# End of "$Id: Makefile 6649 2007-07-11 21:46:42Z mike $".
ef416fc2 389#