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