]>
Commit | Line | Data |
---|---|---|
ef416fc2 | 1 | # |
9964a31a | 2 | # Library Makefile for CUPS. |
ef416fc2 | 3 | # |
123979a9 | 4 | # Copyright 2007-2018 by Apple Inc. |
5a1d7a17 | 5 | # Copyright 1997-2006 by Easy Software Products, all rights reserved. |
ef416fc2 | 6 | # |
123979a9 MS |
7 | # Licensed under Apache License v2.0. See the file "LICENSE" for more |
8 | # information. | |
ef416fc2 | 9 | # |
10 | ||
11 | include ../Makedefs | |
12 | ||
cb7f98ee | 13 | |
ef416fc2 | 14 | # |
15 | # Object files... | |
16 | # | |
17 | ||
58b64dbb | 18 | COREOBJS = \ |
ef416fc2 | 19 | array.o \ |
ef416fc2 | 20 | auth.o \ |
ae71f5de | 21 | debug.o \ |
ef416fc2 | 22 | dest.o \ |
dcb445bc MS |
23 | dest-job.o \ |
24 | dest-localization.o \ | |
25 | dest-options.o \ | |
ef416fc2 | 26 | dir.o \ |
ef416fc2 | 27 | encode.o \ |
28 | file.o \ | |
29 | getputfile.o \ | |
30 | globals.o \ | |
5ae9fbb3 | 31 | hash.o \ |
ef416fc2 | 32 | http.o \ |
33 | http-addr.o \ | |
34 | http-addrlist.o \ | |
35 | http-support.o \ | |
36 | ipp.o \ | |
fd96ad89 MS |
37 | ipp-file.o \ |
38 | ipp-vars.o \ | |
ef416fc2 | 39 | ipp-support.o \ |
40 | langprintf.o \ | |
41 | language.o \ | |
ef416fc2 | 42 | md5.o \ |
43 | md5passwd.o \ | |
fa73b229 | 44 | notify.o \ |
ef416fc2 | 45 | options.o \ |
54afec33 | 46 | pwg-media.o \ |
dd204f7a | 47 | raster-error.o \ |
dd204f7a | 48 | raster-stream.o \ |
58b64dbb | 49 | raster-stubs.o \ |
ecdc0628 | 50 | request.o \ |
ef416fc2 | 51 | snprintf.o \ |
52 | string.o \ | |
53 | tempfile.o \ | |
6d2f911b | 54 | thread.o \ |
25731360 | 55 | tls.o \ |
ef416fc2 | 56 | transcode.o \ |
57 | usersys.o \ | |
58 | util.o | |
58b64dbb MS |
59 | |
60 | DRIVEROBJS = \ | |
61 | adminutil.o \ | |
62 | backchannel.o \ | |
63 | backend.o \ | |
64 | getdevices.o \ | |
65 | getifaddrs.o \ | |
66 | ppd.o \ | |
67 | ppd-attr.o \ | |
68 | ppd-cache.o \ | |
69 | ppd-conflicts.o \ | |
70 | ppd-custom.o \ | |
71 | ppd-emit.o \ | |
72 | ppd-localize.o \ | |
73 | ppd-mark.o \ | |
74 | ppd-page.o \ | |
75 | ppd-util.o \ | |
76 | raster-interpret.o \ | |
77 | raster-interstub.o \ | |
78 | sidechannel.o \ | |
79 | snmp.o | |
80 | ||
81 | LIBOBJS = \ | |
82 | $(LIBCUPSOBJS) | |
83 | ||
123979a9 | 84 | IMAGEOBJS = \ |
dd204f7a MS |
85 | raster-interstub.o \ |
86 | raster-stubs.o | |
58b64dbb | 87 | |
dcb445bc | 88 | TESTOBJS = \ |
123979a9 | 89 | rasterbench.o \ |
757d2cad | 90 | testadmin.o \ |
ef416fc2 | 91 | testarray.o \ |
5315d269 | 92 | testcache.o \ |
123979a9 | 93 | testclient.o \ |
06d4e77b | 94 | testconflicts.o \ |
fe33927d | 95 | testcreds.o \ |
09a101d6 | 96 | testcups.o \ |
104fd4ae | 97 | testdest.o \ |
ef416fc2 | 98 | testfile.o \ |
86390cbf | 99 | testgetdests.o \ |
ef416fc2 | 100 | testhttp.o \ |
101 | testi18n.o \ | |
102 | testipp.o \ | |
20fbc903 | 103 | testoptions.o \ |
ef416fc2 | 104 | testlang.o \ |
fa73b229 | 105 | testppd.o \ |
54afec33 | 106 | testpwg.o \ |
123979a9 | 107 | testraster.o \ |
79a37326 MS |
108 | testsnmp.o \ |
109 | tlscheck.o | |
dcb445bc MS |
110 | OBJS = \ |
111 | $(LIBOBJS) \ | |
123979a9 | 112 | $(IMAGEOBJS) \ |
dcb445bc MS |
113 | $(TESTOBJS) |
114 | ||
ef416fc2 | 115 | |
116 | # | |
117 | # Header files to install... | |
118 | # | |
119 | ||
120 | HEADERS = \ | |
757d2cad | 121 | adminutil.h \ |
ef416fc2 | 122 | array.h \ |
d09495fa | 123 | backend.h \ |
ef416fc2 | 124 | cups.h \ |
125 | dir.h \ | |
126 | file.h \ | |
127 | http.h \ | |
ef416fc2 | 128 | ipp.h \ |
129 | language.h \ | |
ef416fc2 | 130 | ppd.h \ |
6961465f | 131 | pwg.h \ |
ac884b6a | 132 | raster.h \ |
f7deaa1a | 133 | sidechannel.h \ |
a41f09e2 MS |
134 | transcode.h \ |
135 | versioning.h | |
ef416fc2 | 136 | |
71e16022 | 137 | HEADERSPRIV = \ |
eac3a0a0 | 138 | array-private.h \ |
71e16022 | 139 | cups-private.h \ |
82428176 | 140 | debug-private.h \ |
71e16022 MS |
141 | file-private.h \ |
142 | http-private.h \ | |
143 | ipp-private.h \ | |
144 | language-private.h \ | |
71e16022 MS |
145 | ppd-private.h \ |
146 | pwg-private.h \ | |
a4845881 | 147 | raster-private.h \ |
71e16022 | 148 | snmp-private.h \ |
6d2f911b MS |
149 | string-private.h \ |
150 | thread-private.h | |
151 | ||
ef416fc2 | 152 | |
153 | # | |
154 | # Targets in this directory... | |
155 | # | |
156 | ||
c9fc04c6 | 157 | LIBTARGETS = \ |
123979a9 | 158 | $(LIBCUPSIMAGE) \ |
f8b3a85b | 159 | $(LIBCUPSSTATIC) \ |
123979a9 MS |
160 | $(LIBCUPS) \ |
161 | libcupsimage.a | |
5f64df29 MS |
162 | |
163 | UNITTARGETS = \ | |
123979a9 | 164 | rasterbench \ |
5f64df29 | 165 | testadmin \ |
ef416fc2 | 166 | testarray \ |
b2b9911d | 167 | testcache \ |
123979a9 | 168 | testclient \ |
5f64df29 | 169 | testconflicts \ |
fe33927d | 170 | testcreds \ |
5f64df29 | 171 | testcups \ |
104fd4ae | 172 | testdest \ |
ef416fc2 | 173 | testfile \ |
86390cbf | 174 | testgetdests \ |
ef416fc2 | 175 | testhttp \ |
176 | testi18n \ | |
177 | testipp \ | |
fa73b229 | 178 | testlang \ |
20fbc903 | 179 | testoptions \ |
5f64df29 | 180 | testppd \ |
54afec33 | 181 | testpwg \ |
123979a9 | 182 | testraster \ |
79a37326 MS |
183 | testsnmp \ |
184 | tlscheck | |
c9fc04c6 MS |
185 | |
186 | TARGETS = \ | |
5f64df29 | 187 | $(LIBTARGETS) |
ef416fc2 | 188 | |
189 | ||
190 | # | |
191 | # Make all targets... | |
192 | # | |
193 | ||
f8b3a85b | 194 | all: $(TARGETS) |
ef416fc2 | 195 | |
196 | ||
c9fc04c6 MS |
197 | # |
198 | # Make library targets... | |
199 | # | |
200 | ||
201 | libs: $(LIBTARGETS) | |
202 | ||
203 | ||
5f64df29 MS |
204 | # |
205 | # Make unit tests... | |
206 | # | |
207 | ||
208 | unittests: $(UNITTARGETS) | |
209 | ||
210 | ||
ef416fc2 | 211 | # |
212 | # Remove object and target files... | |
213 | # | |
214 | ||
215 | clean: | |
5f64df29 | 216 | $(RM) $(OBJS) $(TARGETS) $(UNITTARGETS) |
5a1d7a17 | 217 | $(RM) libcups.so libcups.dylib |
e28345e7 | 218 | $(RM) libcupsimage.so libcupsimage.dylib |
ef416fc2 | 219 | |
220 | ||
221 | # | |
222 | # Update dependencies (without system header dependencies...) | |
223 | # | |
224 | ||
225 | depend: | |
12f89d24 | 226 | $(CC) -MM $(ALL_CFLAGS) $(OBJS:.o=.c) >Dependencies |
ef416fc2 | 227 | |
228 | ||
6961465f MS |
229 | # |
230 | # Run oclint to check code coverage... | |
231 | # | |
232 | ||
233 | oclint: | |
234 | oclint -o=oclint.html -html $(LIBOBJS:.o=.c) -- $(ALL_CFLAGS) | |
235 | ||
236 | ||
ef416fc2 | 237 | # |
50fe7201 | 238 | # Install all targets... |
ef416fc2 | 239 | # |
240 | ||
50fe7201 MS |
241 | install: all install-data install-headers install-libs install-exec |
242 | ||
243 | ||
244 | # | |
245 | # Install data files... | |
246 | # | |
247 | ||
248 | install-data: | |
249 | ||
250 | ||
251 | # | |
252 | # Install programs... | |
253 | # | |
254 | ||
255 | install-exec: | |
256 | ||
257 | ||
258 | # | |
259 | # Install headers... | |
260 | # | |
261 | ||
262 | install-headers: | |
263 | echo Installing header files into $(INCLUDEDIR)/cups... | |
264 | $(INSTALL_DIR) -m 755 $(INCLUDEDIR)/cups | |
265 | for file in $(HEADERS); do \ | |
266 | $(INSTALL_DATA) $$file $(INCLUDEDIR)/cups; \ | |
267 | done | |
71e16022 MS |
268 | if test "x$(privateinclude)" != x; then \ |
269 | echo Installing private header files into $(PRIVATEINCLUDE)...; \ | |
5180a04c | 270 | $(INSTALL_DIR) -m 755 $(PRIVATEINCLUDE); \ |
71e16022 | 271 | for file in $(HEADERSPRIV); do \ |
5180a04c | 272 | $(INSTALL_DATA) $$file $(PRIVATEINCLUDE)/$$file; \ |
71e16022 MS |
273 | done; \ |
274 | fi | |
50fe7201 MS |
275 | |
276 | ||
277 | # | |
278 | # Install libraries... | |
279 | # | |
280 | ||
e4b72d7e | 281 | install-libs: $(LIBTARGETS) $(INSTALLSTATIC) |
50fe7201 | 282 | echo Installing libraries in $(LIBDIR)... |
bd7854cb | 283 | $(INSTALL_DIR) -m 755 $(LIBDIR) |
ef416fc2 | 284 | $(INSTALL_LIB) $(LIBCUPS) $(LIBDIR) |
5a1d7a17 | 285 | if test $(LIBCUPS) = "libcups.so.2"; then \ |
ef416fc2 | 286 | $(RM) $(LIBDIR)/`basename $(LIBCUPS) .2`; \ |
287 | $(LN) $(LIBCUPS) $(LIBDIR)/`basename $(LIBCUPS) .2`; \ | |
288 | fi | |
289 | if test $(LIBCUPS) = "libcups.2.dylib"; then \ | |
ef416fc2 | 290 | $(RM) $(LIBDIR)/libcups.dylib; \ |
291 | $(LN) $(LIBCUPS) $(LIBDIR)/libcups.dylib; \ | |
292 | fi | |
bafe8fce | 293 | -if test "x$(LIBCUPSIMAGE)" != x; then \ |
58b64dbb MS |
294 | $(INSTALL_LIB) $(LIBCUPSIMAGE) $(LIBDIR); \ |
295 | fi | |
296 | -if test "x$(LIBCUPSIMAGE)" = "xlibcupsimage.so.2"; then \ | |
123979a9 MS |
297 | $(RM) $(LIBDIR)/`basename $(LIBCUPSIMAGE) .2`; \ |
298 | $(LN) $(LIBCUPSIMAGE) $(LIBDIR)/`basename $(LIBCUPSIMAGE) .2`; \ | |
299 | fi | |
58b64dbb | 300 | -if test "x$(LIBCUPSIMAGE)" = "xlibcupsimage.2.dylib"; then \ |
123979a9 MS |
301 | $(RM) $(LIBDIR)/libcupsimage.dylib; \ |
302 | $(LN) $(LIBCUPSIMAGE) $(LIBDIR)/libcupsimage.dylib; \ | |
303 | fi | |
09a101d6 | 304 | if test "x$(SYMROOT)" != "x"; then \ |
305 | $(INSTALL_DIR) $(SYMROOT); \ | |
50fe7201 | 306 | cp $(LIBCUPS) $(SYMROOT); \ |
c1420c87 | 307 | dsymutil $(SYMROOT)/$(LIBCUPS); \ |
bafe8fce | 308 | if test "x$(LIBCUPSIMAGE)" != x; then \ |
58b64dbb MS |
309 | cp $(LIBCUPSIMAGE) $(SYMROOT); \ |
310 | dsymutil $(SYMROOT)/$(LIBCUPSIMAGE); \ | |
bafe8fce | 311 | fi; \ |
09a101d6 | 312 | fi |
923edb68 | 313 | |
314 | installstatic: | |
315 | $(INSTALL_DIR) -m 755 $(LIBDIR) | |
f8b3a85b MS |
316 | $(INSTALL_LIB) -m 755 $(LIBCUPSSTATIC) $(LIBDIR) |
317 | $(RANLIB) $(LIBDIR)/$(LIBCUPSSTATIC) | |
b94f7488 | 318 | $(CHMOD) 555 $(LIBDIR)/$(LIBCUPSSTATIC) |
123979a9 MS |
319 | $(INSTALL_LIB) -m 755 libcupsimage.a $(LIBDIR) |
320 | $(RANLIB) $(LIBDIR)/libcupsimage.a | |
321 | $(CHMOD) 555 $(LIBDIR)/libcupsimage.a | |
ef416fc2 | 322 | |
ef416fc2 | 323 | |
757d2cad | 324 | # |
325 | # Uninstall object and target files... | |
326 | # | |
327 | ||
12f89d24 | 328 | uninstall: |
757d2cad | 329 | $(RM) $(LIBDIR)/libcups.2.dylib |
58b64dbb | 330 | $(RM) $(LIBDIR)/libcups.a |
757d2cad | 331 | $(RM) $(LIBDIR)/libcups.dylib |
757d2cad | 332 | $(RM) $(LIBDIR)/libcups.so |
333 | $(RM) $(LIBDIR)/libcups.so.2 | |
123979a9 MS |
334 | $(RM) $(LIBDIR)/libcupsimage.2.dylib |
335 | $(RM) $(LIBDIR)/libcupsimage.a | |
336 | $(RM) $(LIBDIR)/libcupsimage.dylib | |
337 | $(RM) $(LIBDIR)/libcupsimage.so | |
338 | $(RM) $(LIBDIR)/libcupsimage.so.2 | |
757d2cad | 339 | -$(RMDIR) $(LIBDIR) |
340 | for file in $(HEADERS); do \ | |
341 | $(RM) $(INCLUDEDIR)/cups/$$file; \ | |
342 | done | |
343 | -$(RMDIR) $(INCLUDEDIR)/cups | |
58b64dbb MS |
344 | if test "x$(privateinclude)" != x; then \ |
345 | for file in $(HEADERSPRIV); do \ | |
346 | $(RM) $(PRIVATEINCLUDE)/cups/$$file; \ | |
347 | done | |
348 | $(RMDIR) $(PRIVATEINCLUDE)/cups; \ | |
349 | fi | |
757d2cad | 350 | |
351 | ||
ef416fc2 | 352 | # |
5a1d7a17 | 353 | # libcups.so.2 |
ef416fc2 | 354 | # |
355 | ||
58b64dbb | 356 | libcups.so.2: $(LIBOBJS) |
ef416fc2 | 357 | echo Linking $@... |
58b64dbb | 358 | $(DSO) $(ARCHFLAGS) $(LDFLAGS) $(DSOFLAGS) -o $@ $(LIBOBJS) \ |
dd204f7a | 359 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) |
ef416fc2 | 360 | $(RM) `basename $@ .2` |
361 | $(LN) $@ `basename $@ .2` | |
362 | ||
363 | ||
364 | # | |
365 | # libcups.2.dylib | |
366 | # | |
367 | ||
58b64dbb | 368 | libcups.2.dylib: $(LIBOBJS) |
ef416fc2 | 369 | echo Linking $@... |
c8c5ec3b | 370 | $(DSO) $(ARCHFLAGS) $(LDFLAGS) $(DSOFLAGS) -o $@ \ |
fa73b229 | 371 | -install_name $(libdir)/$@ \ |
0c7f533a | 372 | -current_version 2.14.0 \ |
ef416fc2 | 373 | -compatibility_version 2.0.0 \ |
58b64dbb | 374 | $(LIBOBJS) \ |
dd204f7a | 375 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) |
00dbe99f | 376 | $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@ |
e3586875 | 377 | $(RM) libcups.dylib |
ef416fc2 | 378 | $(LN) $@ libcups.dylib |
379 | ||
380 | ||
ef416fc2 | 381 | # |
382 | # libcups.la | |
383 | # | |
384 | ||
58b64dbb | 385 | libcups.la: $(LIBOBJS) |
ef416fc2 | 386 | echo Linking $@... |
c8c5ec3b | 387 | $(LD_CC) $(ARCHFLAGS) $(LDFLAGS) $(DSOFLAGS) -o $@ \ |
58b64dbb | 388 | $(LIBOBJS:.o=.lo) \ |
0c7f533a | 389 | -rpath $(LIBDIR) -version-info 2:14 $(LIBGSSAPI) $(SSLLIBS) \ |
b94f7488 | 390 | $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) |
ef416fc2 | 391 | |
392 | ||
393 | # | |
394 | # libcups.a | |
395 | # | |
396 | ||
58b64dbb | 397 | libcups.a: $(LIBOBJS) |
ef416fc2 | 398 | echo Archiving $@... |
399 | $(RM) $@ | |
58b64dbb | 400 | $(AR) $(ARFLAGS) $@ $(LIBOBJS) |
ef416fc2 | 401 | $(RANLIB) $@ |
402 | ||
403 | ||
4128527f MS |
404 | # |
405 | # libcups2.def (Windows DLL exports file...) | |
406 | # | |
407 | ||
123979a9 | 408 | libcups2.def: $(LIBOBJS) $(IMAGEOBJS) Makefile |
4128527f MS |
409 | echo Generating $@... |
410 | echo "LIBRARY libcups2" >libcups2.def | |
0c7f533a | 411 | echo "VERSION 2.14" >>libcups2.def |
4128527f | 412 | echo "EXPORTS" >>libcups2.def |
123979a9 | 413 | (nm $(LIBOBJS) $(IMAGEOBJS) 2>/dev/null | grep "T _" | awk '{print $$3}'; \ |
4128527f MS |
414 | echo __cups_strcpy; echo __cups_strlcat; echo __cups_strlcpy) | \ |
415 | grep -v -E \ | |
ace3ea0a | 416 | -e 'cups_debug|Apple|BackChannel|Backend|FileCheck|Filter|GSSService|SetNegotiate|SideChannel|SNMP' \ |
4128527f MS |
417 | -e 'Block$$' | \ |
418 | sed -e '1,$$s/^_//' | sort >>libcups2.def | |
419 | ||
420 | ||
123979a9 MS |
421 | # |
422 | # libcupsimage.so.2 | |
423 | # | |
424 | ||
425 | libcupsimage.so.2: $(IMAGEOBJS) libcups.so.2 | |
426 | echo Linking $@... | |
c8c5ec3b | 427 | $(DSO) $(ARCHFLAGS) $(LDFLAGS) $(DSOFLAGS) -o $@ $(IMAGEOBJS) $(DSOLIBS) \ |
123979a9 MS |
428 | -L../cups $(LINKCUPS) |
429 | $(RM) `basename $@ .2` | |
430 | $(LN) $@ `basename $@ .2` | |
431 | ||
432 | ||
433 | # | |
434 | # libcupsimage.2.dylib | |
435 | # | |
436 | ||
437 | libcupsimage.2.dylib: $(IMAGEOBJS) libcups.2.dylib | |
438 | echo Linking $@... | |
c8c5ec3b | 439 | $(DSO) $(ARCHFLAGS) $(LDFLAGS) $(DSOFLAGS) -o $@ \ |
123979a9 MS |
440 | -install_name $(libdir)/$@ \ |
441 | -current_version 2.3.0 \ | |
442 | -compatibility_version 2.0.0 \ | |
443 | $(IMAGEOBJS) $(DSOLIBS) -L../cups $(LINKCUPS) | |
00dbe99f | 444 | $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@ |
123979a9 MS |
445 | $(RM) libcupsimage.dylib |
446 | $(LN) $@ libcupsimage.dylib | |
447 | ||
448 | ||
449 | # | |
450 | # libcupsimage.la | |
451 | # | |
452 | ||
453 | libcupsimage.la: $(IMAGEOBJS) libcups.la | |
454 | echo Linking $@... | |
c8c5ec3b | 455 | $(DSO) $(ARCHFLAGS) $(LDFLAGS) $(DSOFLAGS) -o $@ $(IMAGEOBJS:.o=.lo) $(DSOLIBS) \ |
123979a9 MS |
456 | -L../cups $(LINKCUPS) \ |
457 | -rpath $(LIBDIR) -version-info 2:3 | |
458 | ||
459 | ||
460 | # | |
461 | # libcupsimage.a | |
462 | # | |
463 | ||
464 | libcupsimage.a: $(IMAGEOBJS) | |
465 | echo Archiving $@... | |
466 | $(RM) $@ | |
467 | $(AR) $(ARFLAGS) $@ $(IMAGEOBJS) | |
468 | $(RANLIB) $@ | |
469 | ||
470 | ||
471 | # | |
6f1c647d | 472 | # rasterbench (dependency on static CUPS library is intentional) |
123979a9 MS |
473 | # |
474 | ||
dd204f7a | 475 | rasterbench: rasterbench.o $(LIBCUPSSTATIC) |
123979a9 | 476 | echo Linking $@... |
dd204f7a | 477 | $(LD_CC) $(LDFLAGS) -o $@ rasterbench.o $(LIBCUPSSTATIC) \ |
6f1c647d | 478 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) |
00dbe99f | 479 | $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@ |
123979a9 MS |
480 | |
481 | ||
757d2cad | 482 | # |
483 | # testadmin (dependency on static CUPS library is intentional) | |
484 | # | |
485 | ||
f8b3a85b | 486 | testadmin: testadmin.o $(LIBCUPSSTATIC) |
757d2cad | 487 | echo Linking $@... |
a621d151 | 488 | $(LD_CC) $(LDFLAGS) -o $@ testadmin.o $(LIBCUPSSTATIC) \ |
b94f7488 | 489 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) |
00dbe99f | 490 | $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@ |
757d2cad | 491 | |
492 | ||
ef416fc2 | 493 | # |
494 | # testarray (dependency on static CUPS library is intentional) | |
495 | # | |
496 | ||
f8b3a85b | 497 | testarray: testarray.o $(LIBCUPSSTATIC) |
ef416fc2 | 498 | echo Linking $@... |
a621d151 | 499 | $(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testarray.o $(LIBCUPSSTATIC) \ |
b94f7488 | 500 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) |
00dbe99f | 501 | $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@ |
c9fc04c6 MS |
502 | echo Running array API tests... |
503 | ./testarray | |
ef416fc2 | 504 | |
505 | ||
b2b9911d MS |
506 | # |
507 | # testcache (dependency on static CUPS library is intentional) | |
508 | # | |
509 | ||
510 | testcache: testcache.o $(LIBCUPSSTATIC) | |
511 | echo Linking $@... | |
a621d151 | 512 | $(LD_CC) $(LDFLAGS) -o $@ testcache.o $(LIBCUPSSTATIC) \ |
b94f7488 | 513 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) |
00dbe99f | 514 | $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@ |
b2b9911d MS |
515 | |
516 | ||
123979a9 MS |
517 | # |
518 | # testclient (dependency on static libraries is intentional) | |
519 | # | |
520 | ||
dcd7f90e | 521 | testclient: testclient.o $(LIBCUPSSTATIC) |
123979a9 | 522 | echo Linking $@... |
dcd7f90e | 523 | $(LD_CC) $(LDFLAGS) -o $@ testclient.o $(LIBCUPSSTATIC) \ |
123979a9 | 524 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) |
00dbe99f | 525 | $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@ |
123979a9 MS |
526 | |
527 | ||
06d4e77b MS |
528 | # |
529 | # testconflicts (dependency on static CUPS library is intentional) | |
530 | # | |
531 | ||
f8b3a85b | 532 | testconflicts: testconflicts.o $(LIBCUPSSTATIC) |
06d4e77b | 533 | echo Linking $@... |
a621d151 | 534 | $(LD_CC) $(LDFLAGS) -o $@ testconflicts.o $(LIBCUPSSTATIC) \ |
b94f7488 | 535 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) |
00dbe99f | 536 | $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@ |
06d4e77b MS |
537 | |
538 | ||
fe33927d MS |
539 | # |
540 | # testcreds (dependency on static CUPS library is intentional) | |
541 | # | |
542 | ||
543 | testcreds: testcreds.o $(LIBCUPSSTATIC) | |
544 | echo Linking $@... | |
a621d151 | 545 | $(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testcreds.o $(LIBCUPSSTATIC) \ |
b94f7488 | 546 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) |
00dbe99f | 547 | $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@ |
fe33927d MS |
548 | |
549 | ||
09a101d6 | 550 | # |
551 | # testcups (dependency on static CUPS library is intentional) | |
552 | # | |
553 | ||
f8b3a85b | 554 | testcups: testcups.o $(LIBCUPSSTATIC) |
09a101d6 | 555 | echo Linking $@... |
a621d151 | 556 | $(LD_CC) $(LDFLAGS) -o $@ testcups.o $(LIBCUPSSTATIC) \ |
b94f7488 | 557 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) |
00dbe99f | 558 | $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@ |
09a101d6 | 559 | |
560 | ||
104fd4ae MS |
561 | # |
562 | # testdest (dependency on static CUPS library is intentional) | |
563 | # | |
564 | ||
565 | testdest: testdest.o $(LIBCUPSSTATIC) | |
566 | echo Linking $@... | |
a621d151 | 567 | $(LD_CC) $(LDFLAGS) -o $@ testdest.o $(LIBCUPSSTATIC) \ |
b94f7488 | 568 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) |
00dbe99f | 569 | $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@ |
104fd4ae MS |
570 | |
571 | ||
ef416fc2 | 572 | # |
573 | # testfile (dependency on static CUPS library is intentional) | |
574 | # | |
575 | ||
f8b3a85b | 576 | testfile: testfile.o $(LIBCUPSSTATIC) |
ef416fc2 | 577 | echo Linking $@... |
a621d151 | 578 | $(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testfile.o $(LIBCUPSSTATIC) \ |
b94f7488 | 579 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) |
00dbe99f | 580 | $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@ |
c9fc04c6 MS |
581 | echo Running file API tests... |
582 | ./testfile | |
ef416fc2 | 583 | |
584 | ||
86390cbf MS |
585 | # |
586 | # testgetdests (dependency on static CUPS library is intentional) | |
587 | # | |
588 | ||
589 | testgetdests: testgetdests.o $(LIBCUPSSTATIC) | |
590 | echo Linking $@... | |
591 | $(LD_CC) $(LDFLAGS) -o $@ testgetdests.o $(LIBCUPSSTATIC) \ | |
592 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) | |
00dbe99f | 593 | $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@ |
86390cbf MS |
594 | |
595 | ||
ef416fc2 | 596 | # |
597 | # testhttp (dependency on static CUPS library is intentional) | |
598 | # | |
599 | ||
f8b3a85b | 600 | testhttp: testhttp.o $(LIBCUPSSTATIC) |
ef416fc2 | 601 | echo Linking $@... |
a621d151 | 602 | $(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testhttp.o $(LIBCUPSSTATIC) \ |
b94f7488 | 603 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) |
00dbe99f | 604 | $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@ |
c9fc04c6 MS |
605 | echo Running HTTP API tests... |
606 | ./testhttp | |
ef416fc2 | 607 | |
608 | ||
609 | # | |
610 | # testipp (dependency on static CUPS library is intentional) | |
611 | # | |
612 | ||
f8b3a85b | 613 | testipp: testipp.o $(LIBCUPSSTATIC) |
ef416fc2 | 614 | echo Linking $@... |
a621d151 | 615 | $(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testipp.o $(LIBCUPSSTATIC) \ |
b94f7488 | 616 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) |
00dbe99f | 617 | $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@ |
c9fc04c6 MS |
618 | echo Running IPP API tests... |
619 | ./testipp | |
ef416fc2 | 620 | |
621 | ||
622 | # | |
623 | # testi18n (dependency on static CUPS library is intentional) | |
624 | # | |
625 | ||
f8b3a85b | 626 | testi18n: testi18n.o $(LIBCUPSSTATIC) |
ef416fc2 | 627 | echo Linking $@... |
a621d151 | 628 | $(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testi18n.o $(LIBCUPSSTATIC) \ |
b94f7488 | 629 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) |
00dbe99f | 630 | $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@ |
c9fc04c6 MS |
631 | echo Running internationalization API tests... |
632 | ./testi18n | |
ef416fc2 | 633 | |
634 | ||
635 | # | |
636 | # testlang (dependency on static CUPS library is intentional) | |
637 | # | |
638 | ||
f8b3a85b | 639 | testlang: testlang.o $(LIBCUPSSTATIC) |
ef416fc2 | 640 | echo Linking $@... |
a621d151 | 641 | $(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testlang.o $(LIBCUPSSTATIC) \ |
b94f7488 | 642 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) |
00dbe99f | 643 | $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@ |
9964a31a MS |
644 | echo Creating locale directory structure... |
645 | $(RM) -r locale | |
b10aebb1 | 646 | $(MKDIR) locale/en |
5b6caf71 MS |
647 | echo 'msgid "No"' > locale/en/cups_en.po |
648 | echo 'msgstr "No"' >> locale/en/cups_en.po | |
649 | echo 'msgid "Yes"' >> locale/en/cups_en.po | |
650 | echo 'msgstr "Yes"' >> locale/en/cups_en.po | |
9964a31a MS |
651 | for po in ../locale/cups_*.po; do \ |
652 | lang=`basename $$po .po | sed -e '1,$$s/^cups_//'`; \ | |
653 | $(MKDIR) locale/$$lang; \ | |
5b6caf71 | 654 | $(LN) ../../$$po locale/$$lang; \ |
9964a31a | 655 | done |
c9fc04c6 | 656 | echo Running language API tests... |
9964a31a | 657 | LOCALEDIR=locale ./testlang |
ef416fc2 | 658 | |
659 | ||
20fbc903 MS |
660 | # |
661 | # testoptions (dependency on static CUPS library is intentional) | |
662 | # | |
663 | ||
f8b3a85b | 664 | testoptions: testoptions.o $(LIBCUPSSTATIC) |
20fbc903 | 665 | echo Linking $@... |
a621d151 | 666 | $(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testoptions.o $(LIBCUPSSTATIC) \ |
b94f7488 | 667 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) |
00dbe99f | 668 | $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@ |
20fbc903 MS |
669 | echo Running option API tests... |
670 | ./testoptions | |
671 | ||
672 | ||
fa73b229 | 673 | # |
674 | # testppd (dependency on static CUPS library is intentional) | |
675 | # | |
676 | ||
f8b3a85b | 677 | testppd: testppd.o $(LIBCUPSSTATIC) test.ppd test2.ppd |
fa73b229 | 678 | echo Linking $@... |
a621d151 | 679 | $(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testppd.o $(LIBCUPSSTATIC) \ |
b94f7488 | 680 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) |
00dbe99f | 681 | $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@ |
c9fc04c6 MS |
682 | echo Running PPD API tests... |
683 | ./testppd | |
fa73b229 | 684 | |
685 | ||
54afec33 MS |
686 | # |
687 | # testpwg (dependency on static CUPS library is intentional) | |
688 | # | |
689 | ||
690 | testpwg: testpwg.o $(LIBCUPSSTATIC) test.ppd | |
691 | echo Linking $@... | |
a621d151 | 692 | $(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testpwg.o $(LIBCUPSSTATIC) \ |
b94f7488 | 693 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) |
00dbe99f | 694 | $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@ |
54afec33 MS |
695 | echo Running PWG API tests... |
696 | ./testpwg test.ppd | |
697 | ||
698 | ||
123979a9 | 699 | # |
6f1c647d | 700 | # testraster (dependency on static CUPS library is intentional) |
123979a9 MS |
701 | # |
702 | ||
dd204f7a | 703 | testraster: testraster.o $(LIBCUPSSTATIC) |
123979a9 | 704 | echo Linking $@... |
dd204f7a | 705 | $(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testraster.o \ |
123979a9 MS |
706 | $(LIBCUPSSTATIC) $(IMGLIBS) $(DSOLIBS) $(COMMONLIBS) \ |
707 | $(SSLLIBS) $(DNSSDLIBS) $(LIBGSSAPI) | |
00dbe99f | 708 | $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@ |
123979a9 MS |
709 | echo Running raster API tests... |
710 | ./testraster | |
711 | ||
712 | ||
91c84a35 MS |
713 | # |
714 | # testsnmp (dependency on static CUPS library is intentional) | |
715 | # | |
716 | ||
f8b3a85b | 717 | testsnmp: testsnmp.o $(LIBCUPSSTATIC) |
91c84a35 | 718 | echo Linking $@... |
a621d151 | 719 | $(LD_CC) $(LDFLAGS) -o $@ testsnmp.o $(LIBCUPSSTATIC) \ |
b94f7488 | 720 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) |
00dbe99f | 721 | $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@ |
91c84a35 MS |
722 | |
723 | ||
79a37326 MS |
724 | # |
725 | # tlscheck (dependency on static CUPS library is intentional) | |
726 | # | |
727 | ||
728 | tlscheck: tlscheck.o $(LIBCUPSSTATIC) | |
729 | echo Linking $@... | |
a621d151 | 730 | $(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ tlscheck.o $(LIBCUPSSTATIC) \ |
b94f7488 | 731 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) |
00dbe99f | 732 | $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@ |
79a37326 MS |
733 | |
734 | ||
ef416fc2 | 735 | # |
736 | # Automatic API help files... | |
737 | # | |
738 | ||
739 | apihelp: | |
740 | echo Generating CUPS API help files... | |
53af7f21 | 741 | $(RM) cupspm.xml |
798d6e29 MS |
742 | mxmldoc --section "Programming" --body cupspm.md \ |
743 | cupspm.xml \ | |
98d88c8d MS |
744 | auth.c cups.h dest*.c encode.c http.h http*.c ipp.h ipp*.c \ |
745 | options.c tls-darwin.c usersys.c util.c \ | |
e1c797ef | 746 | --coverimage cupspm.png \ |
798d6e29 MS |
747 | --epub ../doc/help/cupspm.epub |
748 | mxmldoc --section "Programming" --body cupspm.md \ | |
749 | cupspm.xml > ../doc/help/cupspm.html | |
750 | $(RM) cupspm.xml | |
dffa3c74 MS |
751 | mxmldoc --section "Programming" --title "Administration APIs" \ |
752 | --css ../doc/cups-printable.css \ | |
753 | --header api-admin.header --intro api-admin.shtml \ | |
754 | api-admin.xml \ | |
755 | adminutil.c adminutil.h getdevices.c >../doc/help/api-admin.html | |
dffa3c74 | 756 | $(RM) api-admin.xml |
a2326b5b | 757 | mxmldoc --section "Programming" --title "PPD API (DEPRECATED)" \ |
5a738aea MS |
758 | --css ../doc/cups-printable.css \ |
759 | --header api-ppd.header --intro api-ppd.shtml \ | |
6e5a57e8 | 760 | api-ppd.xml ppd.h ppd-*.c >../doc/help/api-ppd.html |
f11a948a | 761 | $(RM) api-ppd.xml |
123979a9 MS |
762 | mxmldoc --section "Programming" --title "Raster API" \ |
763 | --css ../doc/cups-printable.css \ | |
764 | --header api-raster.header --intro api-raster.shtml \ | |
765 | api-raster.xml \ | |
766 | ../cups/raster.h interpret.c raster.c \ | |
767 | >../doc/help/api-raster.html | |
768 | mxmldoc --tokens help/api-raster.html api-raster.xml >../doc/help/api-raster.tokens | |
769 | $(RM) api-raster.xml | |
5a738aea MS |
770 | mxmldoc --section "Programming" \ |
771 | --title "Filter and Backend Programming" \ | |
772 | --css ../doc/cups-printable.css \ | |
773 | --header api-filter.header --intro api-filter.shtml \ | |
f11a948a | 774 | api-filter.xml \ |
ac884b6a | 775 | backchannel.c backend.h backend.c sidechannel.c sidechannel.h \ |
7a14d768 | 776 | >../doc/help/api-filter.html |
f11a948a | 777 | $(RM) api-filter.xml |
5a738aea | 778 | |
ef416fc2 | 779 | |
84315f46 MS |
780 | # |
781 | # Lines of code computation... | |
782 | # | |
783 | ||
784 | sloc: | |
84315f46 MS |
785 | echo "libcups: \c" |
786 | sloccount $(LIBOBJS:.o=.c) 2>/dev/null | grep "Total Physical" | awk '{print $$9}' | |
123979a9 MS |
787 | echo "libcupsimage: \c" |
788 | sloccount $(IMAGEOBJS:.o=.c) 2>/dev/null | grep "Total Physical" | awk '{print $$9}' | |
84315f46 MS |
789 | |
790 | ||
ef416fc2 | 791 | # |
792 | # Dependencies... | |
793 | # | |
794 | ||
795 | include Dependencies | |
25731360 | 796 | tls.o: tls-darwin.c tls-gnutls.c tls-sspi.c |