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