]> git.ipfire.org Git - thirdparty/cups.git/blame - scheduler/Makefile
Merge changes from CUPS trunk, r7566.
[thirdparty/cups.git] / scheduler / Makefile
CommitLineData
ef416fc2 1#
2e4ff8af 2# "$Id: Makefile 6801 2007-08-16 18:42:49Z mike $"
ef416fc2 3#
4# Scheduler Makefile for the Common UNIX Printing System (CUPS).
5#
50fe7201 6# Copyright 2007-2008 by Apple Inc.
f7deaa1a 7# Copyright 1997-2007 by Easy Software Products, all rights reserved.
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
18CUPSDOBJS = \
19 auth.o \
20 banners.o \
21 cert.o \
22 classes.o \
23 client.o \
24 conf.o \
25 dirsvc.o \
26 env.o \
27 main.o \
28 ipp.o \
29 listen.o \
30 job.o \
31 log.o \
32 network.o \
33 policy.o \
34 printers.o \
35 process.o \
36 quotas.o \
cc0d019f 37 removefile.o \
f7deaa1a 38 select.o \
ef416fc2 39 server.o \
40 statbuf.o \
09ec0018 41 subscriptions.o \
42 sysman.o
50fe7201 43LIBOBJS = \
ef416fc2 44 filter.o \
45 mime.o \
46 type.o
50fe7201
MS
47LIB32OBJS = $(LIBOBJS:.o=.32.o)
48LIB64OBJS = $(LIBOBJS:.o=.64.o)
ef416fc2 49OBJS = \
50 $(CUPSDOBJS) \
50fe7201
MS
51 $(LIBOBJS) \
52 $(LIB32OBJS) \
53 $(LIB64OBJS) \
bc44d920 54 cupsfilter.o \
ef416fc2 55 cups-deviced.o \
56 cups-driverd.o \
57 cups-lpd.o \
58 cups-polld.o \
59 testdirsvc.o \
d09495fa 60 testlpd.o \
ef416fc2 61 testmime.o \
62 testspeed.o \
07725fee 63 testsub.o \
ef416fc2 64 util.o
c9fc04c6
MS
65
66LIBTARGETS = \
67 $(LIBCUPSMIME) \
68 $(LIB32CUPSMIME) \
69 $(LIB64CUPSMIME) \
70 libcupsmime.a \
71 testmime
72
ef416fc2 73TARGETS = \
c9fc04c6 74 $(LIBTARGETS) \
ef416fc2 75 cupsd \
bc44d920 76 cupsfilter \
ef416fc2 77 cups-deviced \
78 cups-driverd \
79 cups-lpd \
80 cups-polld \
ef416fc2 81 testdirsvc \
d09495fa 82 testlpd \
07725fee 83 testspeed \
84 testsub
ef416fc2 85
86
87#
88# Make everything...
89#
90
91all: $(TARGETS)
92
93
c9fc04c6
MS
94#
95# Make library targets...
96#
97
98libs: $(LIBTARGETS)
99
100
ef416fc2 101#
102# Clean all object files...
103#
104
105clean:
106 $(RM) $(OBJS)
cc0d019f 107 $(RM) $(TARGETS) convert
50fe7201
MS
108 $(RM) libcupsmime.so libcupsmime.sl libcupsmime.dylib
109 $(RM) -r 32bit 64bit
ef416fc2 110
111
112#
113# Update dependencies (without system header dependencies...)
114#
115
116depend:
50fe7201
MS
117 touch Dependencies.tmp
118 makedepend -Y -I.. -fDependencies.tmp $(OBJS:.o=.c) >/dev/null 2>&1
119 $(RM) Dependencies
120 cp Dependencies.tmp Dependencies
121 sed -E -e '1,$$s/^([^.]+)\.o:/\1\.32.o: \1\.c /' Dependencies.tmp >>Dependencies
122 sed -E -e '1,$$s/^([^.]+)\.o:/\1\.64.o: \1\.c /' Dependencies.tmp >>Dependencies
123 $(RM) Dependencies.tmp
ef416fc2 124
125
126#
50fe7201 127# Install all targets...
ef416fc2 128#
129
50fe7201
MS
130install: all install-data install-headers install-libs install-exec
131
132
133#
134# Install data files...
135#
136
137install-data:
ef416fc2 138 echo Creating $(SERVERBIN)/driver...
923edb68 139 $(INSTALL_DIR) -m 755 $(SERVERBIN)/driver
ef416fc2 140 echo Creating $(SERVERROOT)...
923edb68 141 $(INSTALL_DIR) -m 755 $(SERVERROOT)
bd7854cb 142 -chgrp $(CUPS_GROUP) $(SERVERROOT)
ef416fc2 143 echo Creating $(SERVERROOT)/interfaces...
bd7854cb 144 $(INSTALL_DIR) -m 755 $(SERVERROOT)/interfaces
145 -chgrp $(CUPS_GROUP) $(SERVERROOT)/interfaces
ef416fc2 146 echo Creating $(SERVERROOT)/ppd...
bd7854cb 147 $(INSTALL_DIR) -m 755 $(SERVERROOT)/ppd
148 -chgrp $(CUPS_GROUP) $(SERVERROOT)/ppd
50fe7201 149 -if test "x`uname`" != xDarwin; then \
bc44d920 150 echo Creating $(SERVERROOT)/ssl...; \
151 $(INSTALL_DIR) -m 700 $(SERVERROOT)/ssl; \
db1f069b 152 chgrp $(CUPS_GROUP) $(SERVERROOT)/ssl || true; \
09a101d6 153 echo Creating $(STATEDIR)...; \
154 $(INSTALL_DIR) -m 755 $(STATEDIR); \
155 echo Creating $(STATEDIR)/certs...; \
156 $(INSTALL_DIR) -m 511 $(STATEDIR)/certs; \
db1f069b 157 chgrp $(CUPS_PRIMARY_SYSTEM_GROUP) $(STATEDIR)/certs || true; \
09a101d6 158 fi
ef416fc2 159 echo Creating $(LOGDIR)...
923edb68 160 $(INSTALL_DIR) -m 755 $(LOGDIR)
ef416fc2 161 echo Creating $(REQUESTS)...
bd7854cb 162 $(INSTALL_DIR) -m 710 $(REQUESTS)
163 -chgrp $(CUPS_GROUP) $(REQUESTS)
923edb68 164 echo Creating $(REQUESTS)/tmp...
bd7854cb 165 $(INSTALL_DIR) -m 1770 $(REQUESTS)/tmp
166 -chgrp $(CUPS_GROUP) $(REQUESTS)/tmp
ef416fc2 167 echo Creating $(CACHEDIR)...
bd7854cb 168 $(INSTALL_DIR) -m 775 $(CACHEDIR)
169 -chgrp $(CUPS_GROUP) $(CACHEDIR)
923edb68 170# echo Creating $(CACHEDIR)/ppd...
171# $(INSTALL_DIR) -m 755 $(CACHEDIR)/ppd
bd7854cb 172# -chgrp $(CUPS_GROUP) $(CACHEDIR)/ppd
50fe7201
MS
173
174
175#
176# Install programs...
177#
178
179install-exec:
180 echo Installing programs in $(SBINDIR)...
181 $(INSTALL_DIR) -m 755 $(SBINDIR)
182 $(INSTALL_BIN) cupsd $(SBINDIR)
183 $(INSTALL_BIN) cupsfilter $(SBINDIR)
184 -if test "x`uname`" = xDarwin; then \
185 $(INSTALL_DIR) $(BUILDROOT)/System/Library/Printers/Libraries; \
186 $(LN) $(sbindir)/cupsfilter $(BUILDROOT)/System/Library/Printers/Libraries/convert; \
187 fi
188 echo Installing programs in $(SERVERBIN)/daemon...
189 $(INSTALL_DIR) -m 755 $(SERVERBIN)
190 $(INSTALL_DIR) -m 755 $(SERVERBIN)/daemon
191 $(INSTALL_BIN) cups-deviced $(SERVERBIN)/daemon
192 $(INSTALL_BIN) cups-driverd $(SERVERBIN)/daemon
193 $(INSTALL_BIN) cups-lpd $(SERVERBIN)/daemon
194 $(INSTALL_BIN) cups-polld $(SERVERBIN)/daemon
09a101d6 195 if test "x$(SYMROOT)" != "x"; then \
196 $(INSTALL_DIR) $(SYMROOT); \
197 for file in $(TARGETS); do \
198 cp $$file $(SYMROOT); \
199 done \
200 fi
ef416fc2 201
202
50fe7201
MS
203#
204# Install headers...
205#
206
207install-headers:
208 echo Installing header files in $(INCLUDEDIR)/cups...
209 $(INSTALL_DIR) -m 755 $(INCLUDEDIR)/cups
210 $(INSTALL_DATA) mime.h $(INCLUDEDIR)/cups
211
212
213#
214# Install libraries...
215#
216
217install-libs: $(INSTALLSTATIC) $(INSTALL32) $(INSTALL64)
218 echo Installing libraries in $(LIBDIR)...
219 $(INSTALL_DIR) -m 755 $(LIBDIR)
220 $(INSTALL_LIB) $(LIBCUPSMIME) $(LIBDIR)
221 if test $(LIBCUPSMIME) = "libcupsmime.so.1" -o $(LIBCUPSMIME) = "libcupsmime.sl.1"; then \
222 $(RM) $(LIBDIR)/`basename $(LIBCUPSMIME) .1`; \
223 $(LN) $(LIBCUPSMIME) $(LIBDIR)/`basename $(LIBCUPSMIME) .1`; \
224 fi
225 if test $(LIBCUPSMIME) = "libcupsmime.1.dylib"; then \
50fe7201
MS
226 $(RM) $(LIBDIR)/libcupsmime.dylib; \
227 $(LN) $(LIBCUPSMIME) $(LIBDIR)/libcupsmime.dylib; \
228 fi
229 if test "x$(SYMROOT)" != "x"; then \
230 $(INSTALL_DIR) $(SYMROOT); \
231 cp $(LIBCUPSMIME) $(SYMROOT); \
232 fi
233
234installstatic:
235 $(INSTALL_DIR) -m 755 $(LIBDIR)
236 $(INSTALL_LIB) libcupsmime.a $(LIBDIR)
237 $(RANLIB) $(LIBDIR)/libcupsmime.a
238
239install32bit:
240 echo Installing libraries in $(LIB32DIR)...
241 $(INSTALL_DIR) -m 755 $(LIB32DIR)
242 $(INSTALL_LIB) 32bit/libcupsmime.so.1 $(LIB32DIR)/libcupsmime.so.1
243 $(LN) libcupsmime.so.1 $(LIB32DIR)/libcupsmime.so
244
245install64bit:
246 echo Installing libraries in $(LIB64DIR)...
247 $(INSTALL_DIR) -m 755 $(LIB64DIR)
248 $(INSTALL_LIB) 64bit/libcupsmime.so.1 $(LIB64DIR)/libcupsmime.so.1
249 $(LN) libcupsmime.so.1 $(LIB64DIR)/libcupsmime.so
250
251
757d2cad 252#
253# Uninstall the scheduler...
254#
255
50fe7201 256uninstall: $(UNINSTALL32) $(UNINSTALL64)
757d2cad 257 $(RM) $(SBINDIR)/cupsd
cc0d019f 258 $(RM) $(SBINDIR)/cupsfilter
757d2cad 259 $(RM) $(SERVERBIN)/daemon/cups-deviced
260 $(RM) $(SERVERBIN)/daemon/cups-driverd
261 $(RM) $(SERVERBIN)/daemon/cups-lpd
262 $(RM) $(SERVERBIN)/daemon/cups-polld
cc0d019f 263 $(RM) $(BUILDROOT)/System/Library/Printers/Libraries/convert
757d2cad 264 -$(RMDIR) $(STATEDIR)/certs
265 -$(RMDIR) $(STATEDIR)
266 -$(RMDIR) $(SERVERROOT)/ppd
267 -$(RMDIR) $(SERVERROOT)/interfaces
268 -$(RMDIR) $(SERVERROOT)
269 -$(RMDIR) $(SERVERBIN)/driver
270 -$(RMDIR) $(SERVERBIN)/daemon
271 -$(RMDIR) $(SERVERBIN)
272 -$(RMDIR) $(SBINDIR)
273 -$(RMDIR) $(REQUESTS)/tmp
274 -$(RMDIR) $(REQUESTS)
275 -$(RMDIR) $(LOGDIR)
276 -$(RMDIR) $(CACHEDIR)
50fe7201
MS
277 $(RM) $(LIBDIR)/libcupsmime.1.dylib
278 $(RM) $(LIBDIR)/libcupsmime.a
279 $(RM) $(LIBDIR)/libcupsmime.dylib
280 $(RM) $(LIBDIR)/libcupsmime_s.a
281 $(RM) $(LIBDIR)/libcupsmime.sl
282 $(RM) $(LIBDIR)/libcupsmime.sl.1
283 $(RM) $(LIBDIR)/libcupsmime.so
284 $(RM) $(LIBDIR)/libcupsmime.so.1
285 -$(RMDIR) $(LIBDIR)
286 $(RM) $(INCLUDEDIR)/cups/mime.h
287 -$(RMDIR) $(INCLUDEDIR)/cups
288
289uninstall32bit:
290 $(RM) $(LIB32DIR)/libcupsmime.so
291 $(RM) $(LIB32DIR)/libcupsmime.so.1
292 -$(RMDIR) $(LIB32DIR)
293
294uninstall64bit:
295 $(RM) $(LIB64DIR)/libcupsmime.so
296 $(RM) $(LIB64DIR)/libcupsmime.so.1
297 -$(RMDIR) $(LIB64DIR)
298
299
300#
301# Automatic API help files...
302#
303
304apihelp:
305 mxmldoc --section "Programming" \
306 --title "MIME API" \
307 --css ../doc/cups-printable.css \
308 --header api-mime.header --intro api-mime.shtml \
309 mime.h $(LIBOBJS:.o=.c) >../doc/help/api-mime.html
310
311framedhelp:
312 mxmldoc --framed api-mime \
313 --section "Programming" \
314 --title "MIME API" \
315 --css ../doc/cups-printable.css \
316 --header api-mime.header --intro api-mime.shtml \
317 mime.h $(LIBOBJS:.o=.c)
757d2cad 318
319
ef416fc2 320#
321# Make the scheduler executable, "cupsd".
322#
323
50fe7201 324cupsd: $(CUPSDOBJS) $(LIBCUPSMIME) ../cups/$(LIBCUPS)
ef416fc2 325 echo Linking $@...
50fe7201 326 $(CC) $(LDFLAGS) -o cupsd $(CUPSDOBJS) -L. -lcupsmime \
b423cd4c 327 $(LIBZ) $(SSLLIBS) $(LIBSLP) $(LIBLDAP) $(PAMLIBS) \
f7deaa1a 328 $(LIBPAPER) $(LIBMALLOC) $(CUPSDLIBS) $(DNSSDLIBS) $(LIBS) \
329 $(LIBGSSAPI)
ef416fc2 330
50fe7201 331cupsd-static: $(CUPSDOBJS) libcupsmime.a ../cups/libcups.a
ef416fc2 332 echo Linking $@...
50fe7201 333 $(CC) $(LDFLAGS) -o cupsd-static $(CUPSDOBJS) libcupsmime.a \
b423cd4c 334 $(LIBZ) $(SSLLIBS) $(LIBSLP) $(LIBLDAP) $(PAMLIBS) \
335 ../cups/libcups.a $(COMMONLIBS) $(LIBZ) $(LIBPAPER) \
f7deaa1a 336 $(LIBMALLOC) $(CUPSDLIBS) $(DNSSDLIBS) $(LIBGSSAPI)
ef416fc2 337
338
bc44d920 339#
340# Make the cupsfilter utility.
341#
342
50fe7201 343cupsfilter: cupsfilter.o $(LIBCUPSMIME) ../cups/$(LIBCUPS)
bc44d920 344 echo Linking $@...
50fe7201 345 $(CC) $(LDFLAGS) -o cupsfilter cupsfilter.o -L. -lcupsmime $(LIBS)
cc0d019f
MS
346 $(RM) convert
347 $(LN) cupsfilter convert
bc44d920 348
349
ef416fc2 350#
351# Make the device daemon, "cups-deviced".
352#
353
354cups-deviced: cups-deviced.o util.o ../cups/$(LIBCUPS)
355 echo Linking $@...
356 $(CC) $(LDFLAGS) -o cups-deviced cups-deviced.o util.o $(LIBS)
357
358
359#
360# Make the driver daemon, "cups-driverd".
361#
362
363cups-driverd: cups-driverd.o util.o ../cups/$(LIBCUPS)
364 echo Linking $@...
365 $(CC) $(LDFLAGS) -o cups-driverd cups-driverd.o util.o $(LIBS)
366
367
368#
369# Make the line printer daemon, "cups-lpd".
370#
371
372cups-lpd: cups-lpd.o ../cups/$(LIBCUPS)
373 echo Linking $@...
374 $(CC) $(LDFLAGS) -o cups-lpd cups-lpd.o $(LIBS)
375
376
377#
378# Make the polling daemon, "cups-polld".
379#
380
381cups-polld: cups-polld.o ../cups/$(LIBCUPS)
382 echo Linking $@...
383 $(CC) $(LDFLAGS) -o cups-polld cups-polld.o $(LIBS)
384
385
386#
50fe7201
MS
387# libcupsmime.so.1, libcupsmime.sl.1
388#
389
390libcupsmime.so.1 libcupsmime.sl.1: $(LIBOBJS)
391 echo Linking $@...
392 $(DSO) $(ARCHFLAGS) $(DSOFLAGS) -o $@ $(LIBOBJS) $(LIBS)
393 $(RM) `basename $@ .1`
394 $(LN) $@ `basename $@ .1`
395
396
397#
398# 32bit/libcupsmime.so.1
399#
400
40132bit/libcupsmime.so.1: $(LIB32OBJS)
402 echo Linking 32-bit $@...
403 -mkdir 32bit
404 $(DSO) $(ARCH32FLAGS) $(DSO32FLAGS) -o $@ $(LIB32OBJS) $(LIBS)
405 $(RM) 32bit/libcupsmime.so
406 $(LN) libcupsmime.so.1 32bit/libcupsmime.so
407
408
409#
410# 64bit/libcupsmime.so.1
411#
412
41364bit/libcupsmime.so.1: $(LIB64OBJS)
414 echo Linking 64-bit $@...
415 -mkdir 64bit
416 $(DSO) $(ARCH64FLAGS) $(DSO64FLAGS) -o $@ $(LIB64OBJS) $(LIBS)
417 $(RM) 64bit/libcupsmime.so
418 $(LN) libcupsmime.so.1 64bit/libcupsmime.so
419
420
421#
422# libcupsmime.1.dylib
423#
424
425libcupsmime.1.dylib: $(LIBOBJS) libcupsmime.exp
426 echo Linking $@...
427 $(DSO) $(ARCHFLAGS) $(DSOFLAGS) -o $@ \
428 -install_name $(libdir)/$@ \
429 -current_version 1.0.0 \
430 -compatibility_version 1.0.0 \
431 -exported_symbols_list libcupsmime.exp \
432 $(LIBOBJS) $(LIBS)
433 $(RM) libcupsmime.dylib
434 $(LN) $@ libcupsmime.dylib
435
436
437#
438# libcupsmime_s.a
439#
440
441libcupsmime_s.a: $(LIBOBJS)
442 echo Creating $@...
443 $(DSO) $(DSOFLAGS) -o libcupsmime_s.o $(LIBOBJS) $(LIBS)
444 $(RM) $@
445 $(AR) $(ARFLAGS) $@ libcupsmime_s.o
446
447
448#
449# libcupsmime.la
450#
451
452libcupsmime.la: $(LIBOBJS)
453 echo Linking $@...
454 $(CC) $(ARCHFLAGS) $(DSOFLAGS) -o $@ $(LIBOBJS:.o=.lo) -rpath $(LIBDIR) \
455 -version-info 1:0 $(LIBS)
456
457
458#
459# libcupsmime.a
ef416fc2 460#
461
50fe7201 462libcupsmime.a: $(LIBOBJS)
ef416fc2 463 echo Archiving $@...
464 $(RM) $@
50fe7201 465 $(AR) $(ARFLAGS) $@ $(LIBOBJS)
ef416fc2 466 $(RANLIB) $@
467
468
469#
470# Make the test program, "testdirsvc".
471#
472
473testdirsvc: testdirsvc.o
474 echo Linking $@...
475 $(CC) $(LDFLAGS) -o testdirsvc testdirsvc.o $(COMMONLIBS) $(NETLIBS)
476
477
d09495fa 478#
479# Make the test program, "testlpd".
480#
481
482testlpd: testlpd.o ../cups/libcups.a cups-lpd
483 echo Linking $@...
484 $(CC) $(LDFLAGS) -o testlpd testlpd.o ../cups/libcups.a \
f7deaa1a 485 $(COMMONLIBS) $(LIBZ) $(SSLLIBS) $(LIBGSSAPI)
d09495fa 486
487
ef416fc2 488#
489# testmime
490#
491
50fe7201 492testmime: testmime.o libcupsmime.a ../cups/libcups.a
ef416fc2 493 echo Linking $@...
c9fc04c6
MS
494 $(CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testmime.o libcupsmime.a \
495 ../cups/libcups.a $(COMMONLIBS) $(LIBZ) $(SSLLIBS) $(LIBGSSAPI)
496 echo Running MIME tests...
497 ./testmime
ef416fc2 498
499
500#
501# Make the test program, "testspeed".
502#
503
d09495fa 504testspeed: testspeed.o ../cups/libcups.a
ef416fc2 505 echo Linking $@...
d09495fa 506 $(CC) $(LDFLAGS) -o testspeed testspeed.o ../cups/libcups.a \
f7deaa1a 507 $(SSLLIBS) $(COMMONLIBS) $(LIBZ) $(LIBGSSAPI)
ef416fc2 508
509
07725fee 510#
511# Make the test program, "testsub".
512#
513
514testsub: testsub.o ../cups/libcups.a
515 echo Linking $@...
516 $(CC) $(LDFLAGS) -o testsub testsub.o ../cups/libcups.a \
f7deaa1a 517 $(SSLLIBS) $(COMMONLIBS) $(LIBZ) $(LIBGSSAPI)
07725fee 518
519
ef416fc2 520#
521# Dependencies...
522#
523
524include Dependencies
525
526
527#
2e4ff8af 528# End of "$Id: Makefile 6801 2007-08-16 18:42:49Z mike $".
ef416fc2 529#