]> git.ipfire.org Git - thirdparty/cups.git/blame - cups/Makefile
Need to install debug-private.h as a private header.
[thirdparty/cups.git] / cups / Makefile
CommitLineData
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
11include ../Makedefs
12
cb7f98ee 13
ef416fc2 14#
15# Object files...
16#
17
18LIBOBJS = \
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 76IMAGEOBJS = \
dd204f7a
MS
77 raster-interstub.o \
78 raster-stubs.o
dcb445bc 79TESTOBJS = \
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
101OBJS = \
102 $(LIBOBJS) \
123979a9 103 $(IMAGEOBJS) \
dcb445bc
MS
104 $(TESTOBJS)
105
ef416fc2 106
107#
108# Header files to install...
109#
110
111HEADERS = \
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 128HEADERSPRIV = \
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 148LIBTARGETS = \
123979a9 149 $(LIBCUPSIMAGE) \
f8b3a85b 150 $(LIBCUPSSTATIC) \
123979a9
MS
151 $(LIBCUPS) \
152 libcupsimage.a
5f64df29
MS
153
154UNITTARGETS = \
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
177TARGETS = \
5f64df29 178 $(LIBTARGETS)
ef416fc2 179
180
181#
182# Make all targets...
183#
184
f8b3a85b 185all: $(TARGETS)
ef416fc2 186
187
c9fc04c6
MS
188#
189# Make library targets...
190#
191
192libs: $(LIBTARGETS)
193
194
5f64df29
MS
195#
196# Make unit tests...
197#
198
199unittests: $(UNITTARGETS)
200
201
ef416fc2 202#
203# Remove object and target files...
204#
205
206clean:
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
216depend:
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
224oclint:
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
232install: all install-data install-headers install-libs install-exec
233
234
235#
236# Install data files...
237#
238
239install-data:
240
241
242#
243# Install programs...
244#
245
246install-exec:
247
248
249#
250# Install headers...
251#
252
253install-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 272install-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
303installstatic:
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 317uninstall:
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 339libcups.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 351libcups.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 368libcups.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 380libcups.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 391libcups2.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
408libcupsimage.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
420libcupsimage.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
436libcupsimage.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
447libcupsimage.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 458rasterbench: 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 469testadmin: 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 480testarray: 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
493testcache: 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 504testclient: 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 515testconflicts: 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
526testcreds: 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 537testcups: 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
548testdest: 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 559testfile: 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
572testgetdests: 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 583testhttp: 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 596testipp: 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 609testi18n: 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 622testlang: 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 647testoptions: 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 660testppd: 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
673testpwg: 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 686testraster: 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 700testsnmp: 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
711tlscheck: 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
722apihelp:
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
767sloc:
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
778include Dependencies
25731360 779tls.o: tls-darwin.c tls-gnutls.c tls-sspi.c