]> git.ipfire.org Git - thirdparty/cups.git/blame - cups/Makefile
Add cupsManualCopies as needed (Issue #5433)
[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
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
120HEADERS = \
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 137HEADERSPRIV = \
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 157LIBTARGETS = \
123979a9 158 $(LIBCUPSIMAGE) \
f8b3a85b 159 $(LIBCUPSSTATIC) \
123979a9
MS
160 $(LIBCUPS) \
161 libcupsimage.a
5f64df29
MS
162
163UNITTARGETS = \
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
186TARGETS = \
5f64df29 187 $(LIBTARGETS)
ef416fc2 188
189
190#
191# Make all targets...
192#
193
f8b3a85b 194all: $(TARGETS)
ef416fc2 195
196
c9fc04c6
MS
197#
198# Make library targets...
199#
200
201libs: $(LIBTARGETS)
202
203
5f64df29
MS
204#
205# Make unit tests...
206#
207
208unittests: $(UNITTARGETS)
209
210
ef416fc2 211#
212# Remove object and target files...
213#
214
215clean:
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
225depend:
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
233oclint:
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
241install: all install-data install-headers install-libs install-exec
242
243
244#
245# Install data files...
246#
247
248install-data:
249
250
251#
252# Install programs...
253#
254
255install-exec:
256
257
258#
259# Install headers...
260#
261
262install-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 281install-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
314installstatic:
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 328uninstall:
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 356libcups.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 368libcups.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 385libcups.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 397libcups.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 408libcups2.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
425libcupsimage.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
437libcupsimage.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
453libcupsimage.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
464libcupsimage.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 475rasterbench: 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 486testadmin: 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 497testarray: 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
510testcache: 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 521testclient: 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 532testconflicts: 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
543testcreds: 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 554testcups: 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
565testdest: 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 576testfile: 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
589testgetdests: 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 600testhttp: 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 613testipp: 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 626testi18n: 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 639testlang: 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 664testoptions: 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 677testppd: 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
690testpwg: 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 703testraster: 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 717testsnmp: 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
728tlscheck: 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
739apihelp:
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
784sloc:
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
795include Dependencies
25731360 796tls.o: tls-darwin.c tls-gnutls.c tls-sspi.c