]>
Commit | Line | Data |
---|---|---|
1 | # | |
2 | # "$Id: Makefile 12032 2014-07-15 20:37:32Z msweet $" | |
3 | # | |
4 | # API library Makefile for CUPS. | |
5 | # | |
6 | # Copyright 2007-2014 by Apple Inc. | |
7 | # Copyright 1997-2006 by Easy Software Products, all rights reserved. | |
8 | # | |
9 | # These coded instructions, statements, and computer programs are the | |
10 | # property of Apple Inc. and are protected by Federal copyright | |
11 | # law. Distribution and use rights are outlined in the file "LICENSE.txt" | |
12 | # which should have been included with this file. If this file is | |
13 | # file is missing or damaged, see the license at "http://www.cups.org/". | |
14 | # | |
15 | # This file is subject to the Apple OS-Developed Software exception. | |
16 | # | |
17 | ||
18 | include ../Makedefs | |
19 | ||
20 | ||
21 | # | |
22 | # Options to build libcups without the use of deprecated APIs... | |
23 | # | |
24 | ||
25 | OPTIONS = -D_CUPS_NO_DEPRECATED=1 -D_PPD_DEPRECATED="" | |
26 | ||
27 | ||
28 | # | |
29 | # Object files... | |
30 | # | |
31 | ||
32 | LIBOBJS = \ | |
33 | adminutil.o \ | |
34 | array.o \ | |
35 | attr.o \ | |
36 | auth.o \ | |
37 | backchannel.o \ | |
38 | backend.o \ | |
39 | conflicts.o \ | |
40 | custom.o \ | |
41 | debug.o \ | |
42 | dest.o \ | |
43 | dest-job.o \ | |
44 | dest-localization.o \ | |
45 | dest-options.o \ | |
46 | dir.o \ | |
47 | emit.o \ | |
48 | encode.o \ | |
49 | file.o \ | |
50 | getdevices.o \ | |
51 | getifaddrs.o \ | |
52 | getputfile.o \ | |
53 | globals.o \ | |
54 | http.o \ | |
55 | http-addr.o \ | |
56 | http-addrlist.o \ | |
57 | http-support.o \ | |
58 | ipp.o \ | |
59 | ipp-support.o \ | |
60 | langprintf.o \ | |
61 | language.o \ | |
62 | localize.o \ | |
63 | mark.o \ | |
64 | md5.o \ | |
65 | md5passwd.o \ | |
66 | notify.o \ | |
67 | options.o \ | |
68 | page.o \ | |
69 | ppd.o \ | |
70 | ppd-cache.o \ | |
71 | pwg-media.o \ | |
72 | request.o \ | |
73 | sidechannel.o \ | |
74 | snmp.o \ | |
75 | snprintf.o \ | |
76 | string.o \ | |
77 | tempfile.o \ | |
78 | thread.o \ | |
79 | tls.o \ | |
80 | transcode.o \ | |
81 | usersys.o \ | |
82 | util.o | |
83 | TESTOBJS = \ | |
84 | testadmin.o \ | |
85 | testarray.o \ | |
86 | testconflicts.o \ | |
87 | testcups.o \ | |
88 | testdest.o \ | |
89 | testfile.o \ | |
90 | testhttp.o \ | |
91 | testi18n.o \ | |
92 | testipp.o \ | |
93 | testoptions.o \ | |
94 | testlang.o \ | |
95 | testppd.o \ | |
96 | testpwg.o \ | |
97 | testsnmp.o | |
98 | OBJS = \ | |
99 | $(LIBOBJS) \ | |
100 | $(TESTOBJS) | |
101 | ||
102 | ||
103 | # | |
104 | # Header files to install... | |
105 | # | |
106 | ||
107 | HEADERS = \ | |
108 | adminutil.h \ | |
109 | array.h \ | |
110 | backend.h \ | |
111 | cups.h \ | |
112 | dir.h \ | |
113 | file.h \ | |
114 | http.h \ | |
115 | ipp.h \ | |
116 | language.h \ | |
117 | ppd.h \ | |
118 | pwg.h \ | |
119 | raster.h \ | |
120 | sidechannel.h \ | |
121 | transcode.h \ | |
122 | versioning.h | |
123 | ||
124 | HEADERSPRIV = \ | |
125 | array-private.h \ | |
126 | cups-private.h \ | |
127 | debug-private.h \ | |
128 | file-private.h \ | |
129 | http-private.h \ | |
130 | ipp-private.h \ | |
131 | language-private.h \ | |
132 | md5-private.h \ | |
133 | ppd-private.h \ | |
134 | pwg-private.h \ | |
135 | raster-private.h \ | |
136 | snmp-private.h \ | |
137 | string-private.h \ | |
138 | thread-private.h | |
139 | ||
140 | ||
141 | # | |
142 | # Targets in this directory... | |
143 | # | |
144 | ||
145 | LIBTARGETS = \ | |
146 | $(LIBCUPSSTATIC) \ | |
147 | $(LIBCUPS) | |
148 | ||
149 | UNITTARGETS = \ | |
150 | testadmin \ | |
151 | testarray \ | |
152 | testcache \ | |
153 | testconflicts \ | |
154 | testcups \ | |
155 | testdest \ | |
156 | testfile \ | |
157 | testhttp \ | |
158 | testi18n \ | |
159 | testipp \ | |
160 | testlang \ | |
161 | testoptions \ | |
162 | testppd \ | |
163 | testpwg \ | |
164 | testsnmp | |
165 | ||
166 | TARGETS = \ | |
167 | $(LIBTARGETS) | |
168 | ||
169 | ||
170 | # | |
171 | # Make all targets... | |
172 | # | |
173 | ||
174 | all: $(TARGETS) | |
175 | ||
176 | ||
177 | # | |
178 | # Make library targets... | |
179 | # | |
180 | ||
181 | libs: $(LIBTARGETS) | |
182 | ||
183 | ||
184 | # | |
185 | # Make unit tests... | |
186 | # | |
187 | ||
188 | unittests: $(UNITTARGETS) | |
189 | ||
190 | ||
191 | # | |
192 | # Remove object and target files... | |
193 | # | |
194 | ||
195 | clean: | |
196 | $(RM) $(OBJS) $(TARGETS) $(UNITTARGETS) | |
197 | $(RM) libcups.so libcups.dylib | |
198 | ||
199 | ||
200 | # | |
201 | # Update dependencies (without system header dependencies...) | |
202 | # | |
203 | ||
204 | depend: | |
205 | $(CC) -MM $(ALL_CFLAGS) $(OBJS:.o=.c) >Dependencies | |
206 | ||
207 | ||
208 | # | |
209 | # Run oclint to check code coverage... | |
210 | # | |
211 | ||
212 | oclint: | |
213 | oclint -o=oclint.html -html $(LIBOBJS:.o=.c) -- $(ALL_CFLAGS) | |
214 | ||
215 | ||
216 | # | |
217 | # Install all targets... | |
218 | # | |
219 | ||
220 | install: all install-data install-headers install-libs install-exec | |
221 | ||
222 | ||
223 | # | |
224 | # Install data files... | |
225 | # | |
226 | ||
227 | install-data: | |
228 | ||
229 | ||
230 | # | |
231 | # Install programs... | |
232 | # | |
233 | ||
234 | install-exec: | |
235 | ||
236 | ||
237 | # | |
238 | # Install headers... | |
239 | # | |
240 | ||
241 | install-headers: | |
242 | echo Installing header files into $(INCLUDEDIR)/cups... | |
243 | $(INSTALL_DIR) -m 755 $(INCLUDEDIR)/cups | |
244 | for file in $(HEADERS); do \ | |
245 | $(INSTALL_DATA) $$file $(INCLUDEDIR)/cups; \ | |
246 | done | |
247 | if test "x$(privateinclude)" != x; then \ | |
248 | echo Installing private header files into $(PRIVATEINCLUDE)...; \ | |
249 | $(INSTALL_DIR) -m 755 $(PRIVATEINCLUDE); \ | |
250 | for file in $(HEADERSPRIV); do \ | |
251 | $(INSTALL_DATA) $$file $(PRIVATEINCLUDE)/$$file; \ | |
252 | done; \ | |
253 | fi | |
254 | ||
255 | ||
256 | # | |
257 | # Install libraries... | |
258 | # | |
259 | ||
260 | install-libs: $(INSTALLSTATIC) | |
261 | echo Installing libraries in $(LIBDIR)... | |
262 | $(INSTALL_DIR) -m 755 $(LIBDIR) | |
263 | $(INSTALL_LIB) $(LIBCUPS) $(LIBDIR) | |
264 | if test $(LIBCUPS) = "libcups.so.2"; then \ | |
265 | $(RM) $(LIBDIR)/`basename $(LIBCUPS) .2`; \ | |
266 | $(LN) $(LIBCUPS) $(LIBDIR)/`basename $(LIBCUPS) .2`; \ | |
267 | fi | |
268 | if test $(LIBCUPS) = "libcups.2.dylib"; then \ | |
269 | $(RM) $(LIBDIR)/libcups.dylib; \ | |
270 | $(LN) $(LIBCUPS) $(LIBDIR)/libcups.dylib; \ | |
271 | fi | |
272 | if test "x$(SYMROOT)" != "x"; then \ | |
273 | $(INSTALL_DIR) $(SYMROOT); \ | |
274 | cp $(LIBCUPS) $(SYMROOT); \ | |
275 | dsymutil $(SYMROOT)/$(LIBCUPS); \ | |
276 | fi | |
277 | ||
278 | installstatic: | |
279 | $(INSTALL_DIR) -m 755 $(LIBDIR) | |
280 | $(INSTALL_LIB) -m 755 $(LIBCUPSSTATIC) $(LIBDIR) | |
281 | $(RANLIB) $(LIBDIR)/$(LIBCUPSSTATIC) | |
282 | $(CHMOD) 555 $(LIBDIR)/$(LIBCUPSSTATIC) | |
283 | ||
284 | ||
285 | # | |
286 | # Uninstall object and target files... | |
287 | # | |
288 | ||
289 | uninstall: | |
290 | $(RM) $(LIBDIR)/libcups.2.dylib | |
291 | $(RM) $(LIBDIR)/$(LIBCUPSSTATIC) | |
292 | $(RM) $(LIBDIR)/libcups.dylib | |
293 | $(RM) $(LIBDIR)/libcups.so | |
294 | $(RM) $(LIBDIR)/libcups.so.2 | |
295 | -$(RMDIR) $(LIBDIR) | |
296 | for file in $(HEADERS); do \ | |
297 | $(RM) $(INCLUDEDIR)/cups/$$file; \ | |
298 | done | |
299 | -$(RMDIR) $(INCLUDEDIR)/cups | |
300 | ||
301 | ||
302 | # | |
303 | # libcups.so.2 | |
304 | # | |
305 | ||
306 | libcups.so.2: $(LIBOBJS) | |
307 | echo Linking $@... | |
308 | $(DSO) $(ARCHFLAGS) $(DSOFLAGS) -o $@ $(LIBOBJS) $(LIBGSSAPI) \ | |
309 | $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) | |
310 | $(RM) `basename $@ .2` | |
311 | $(LN) $@ `basename $@ .2` | |
312 | ||
313 | ||
314 | # | |
315 | # libcups.2.dylib | |
316 | # | |
317 | ||
318 | libcups.2.dylib: $(LIBOBJS) $(LIBCUPSORDER) | |
319 | echo Creating export list for $@... | |
320 | nm $(LIBOBJS) 2>/dev/null | grep "T _" | awk '{print $$3}' | \ | |
321 | grep -v -e '^(_cupsConnect|_cupsCharset|_cupsEncodingName|_cupsSetDefaults|_cupsSetHTTPError|_cupsUserDefault|_httpWait)$$' | \ | |
322 | sort >t.exp | |
323 | echo Linking $@... | |
324 | $(DSO) $(ARCHFLAGS) $(DSOFLAGS) -o $@ \ | |
325 | -install_name $(libdir)/$@ \ | |
326 | -current_version 2.11.0 \ | |
327 | -compatibility_version 2.0.0 \ | |
328 | -exported_symbols_list t.exp \ | |
329 | $(LIBOBJS) $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) \ | |
330 | $(COMMONLIBS) $(LIBZ) | |
331 | $(RM) libcups.dylib t.exp | |
332 | $(LN) $@ libcups.dylib | |
333 | ||
334 | ||
335 | # | |
336 | # libcups.la | |
337 | # | |
338 | ||
339 | libcups.la: $(LIBOBJS) | |
340 | echo Linking $@... | |
341 | $(CC) $(ARCHFLAGS) $(DSOFLAGS) -o $@ $(LIBOBJS:.o=.lo) \ | |
342 | -rpath $(LIBDIR) -version-info 2:11 $(LIBGSSAPI) $(SSLLIBS) \ | |
343 | $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) | |
344 | ||
345 | ||
346 | # | |
347 | # libcups.a | |
348 | # | |
349 | ||
350 | libcups.a: $(LIBOBJS) | |
351 | echo Archiving $@... | |
352 | $(RM) $@ | |
353 | $(AR) $(ARFLAGS) $@ $(LIBOBJS) | |
354 | $(RANLIB) $@ | |
355 | ||
356 | ||
357 | # | |
358 | # libcups2.def (Windows DLL exports file...) | |
359 | # | |
360 | ||
361 | libcups2.def: $(LIBOBJS) Makefile | |
362 | echo Generating $@... | |
363 | echo "LIBRARY libcups2" >libcups2.def | |
364 | echo "VERSION 2.11" >>libcups2.def | |
365 | echo "EXPORTS" >>libcups2.def | |
366 | (nm $(LIBOBJS) 2>/dev/null | grep "T _" | awk '{print $$3}'; \ | |
367 | echo __cups_strcpy; echo __cups_strlcat; echo __cups_strlcpy) | \ | |
368 | grep -v -E \ | |
369 | -e 'cups_debug|Apple|BackChannel|Backend|FileCheck|Filter|GSSService|SetNegotiate|SideChannel' \ | |
370 | -e 'Block$$' | \ | |
371 | sed -e '1,$$s/^_//' | sort >>libcups2.def | |
372 | ||
373 | ||
374 | # | |
375 | # testadmin (dependency on static CUPS library is intentional) | |
376 | # | |
377 | ||
378 | testadmin: testadmin.o $(LIBCUPSSTATIC) | |
379 | echo Linking $@... | |
380 | $(CC) $(LDFLAGS) -o $@ testadmin.o $(LIBCUPSSTATIC) \ | |
381 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) | |
382 | ||
383 | ||
384 | # | |
385 | # testarray (dependency on static CUPS library is intentional) | |
386 | # | |
387 | ||
388 | testarray: testarray.o $(LIBCUPSSTATIC) | |
389 | echo Linking $@... | |
390 | $(CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testarray.o $(LIBCUPSSTATIC) \ | |
391 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) | |
392 | echo Running array API tests... | |
393 | ./testarray | |
394 | ||
395 | ||
396 | # | |
397 | # testcache (dependency on static CUPS library is intentional) | |
398 | # | |
399 | ||
400 | testcache: testcache.o $(LIBCUPSSTATIC) | |
401 | echo Linking $@... | |
402 | $(CC) $(LDFLAGS) -o $@ testcache.o $(LIBCUPSSTATIC) \ | |
403 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) | |
404 | ||
405 | ||
406 | # | |
407 | # testconflicts (dependency on static CUPS library is intentional) | |
408 | # | |
409 | ||
410 | testconflicts: testconflicts.o $(LIBCUPSSTATIC) | |
411 | echo Linking $@... | |
412 | $(CC) $(LDFLAGS) -o $@ testconflicts.o $(LIBCUPSSTATIC) \ | |
413 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) | |
414 | ||
415 | ||
416 | # | |
417 | # testcups (dependency on static CUPS library is intentional) | |
418 | # | |
419 | ||
420 | testcups: testcups.o $(LIBCUPSSTATIC) | |
421 | echo Linking $@... | |
422 | $(CC) $(LDFLAGS) -o $@ testcups.o $(LIBCUPSSTATIC) \ | |
423 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) | |
424 | ||
425 | ||
426 | # | |
427 | # testdest (dependency on static CUPS library is intentional) | |
428 | # | |
429 | ||
430 | testdest: testdest.o $(LIBCUPSSTATIC) | |
431 | echo Linking $@... | |
432 | $(CC) $(LDFLAGS) -o $@ testdest.o $(LIBCUPSSTATIC) \ | |
433 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) | |
434 | ||
435 | ||
436 | # | |
437 | # testfile (dependency on static CUPS library is intentional) | |
438 | # | |
439 | ||
440 | testfile: testfile.o $(LIBCUPSSTATIC) | |
441 | echo Linking $@... | |
442 | $(CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testfile.o $(LIBCUPSSTATIC) \ | |
443 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) | |
444 | echo Running file API tests... | |
445 | ./testfile | |
446 | ||
447 | ||
448 | # | |
449 | # testhttp (dependency on static CUPS library is intentional) | |
450 | # | |
451 | ||
452 | testhttp: testhttp.o $(LIBCUPSSTATIC) | |
453 | echo Linking $@... | |
454 | $(CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testhttp.o $(LIBCUPSSTATIC) \ | |
455 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) | |
456 | echo Running HTTP API tests... | |
457 | ./testhttp | |
458 | ||
459 | ||
460 | # | |
461 | # testipp (dependency on static CUPS library is intentional) | |
462 | # | |
463 | ||
464 | testipp: testipp.o $(LIBCUPSSTATIC) | |
465 | echo Linking $@... | |
466 | $(CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testipp.o $(LIBCUPSSTATIC) \ | |
467 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) | |
468 | echo Running IPP API tests... | |
469 | ./testipp | |
470 | ||
471 | ||
472 | # | |
473 | # testi18n (dependency on static CUPS library is intentional) | |
474 | # | |
475 | ||
476 | testi18n: testi18n.o $(LIBCUPSSTATIC) | |
477 | echo Linking $@... | |
478 | $(CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testi18n.o $(LIBCUPSSTATIC) \ | |
479 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) | |
480 | echo Running internationalization API tests... | |
481 | ./testi18n | |
482 | ||
483 | ||
484 | # | |
485 | # testlang (dependency on static CUPS library is intentional) | |
486 | # | |
487 | ||
488 | testlang: testlang.o $(LIBCUPSSTATIC) | |
489 | echo Linking $@... | |
490 | $(CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testlang.o $(LIBCUPSSTATIC) \ | |
491 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) | |
492 | echo Running language API tests... | |
493 | ./testlang | |
494 | ||
495 | ||
496 | # | |
497 | # testoptions (dependency on static CUPS library is intentional) | |
498 | # | |
499 | ||
500 | testoptions: testoptions.o $(LIBCUPSSTATIC) | |
501 | echo Linking $@... | |
502 | $(CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testoptions.o $(LIBCUPSSTATIC) \ | |
503 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) | |
504 | echo Running option API tests... | |
505 | ./testoptions | |
506 | ||
507 | ||
508 | # | |
509 | # testppd (dependency on static CUPS library is intentional) | |
510 | # | |
511 | ||
512 | testppd: testppd.o $(LIBCUPSSTATIC) test.ppd test2.ppd | |
513 | echo Linking $@... | |
514 | $(CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testppd.o $(LIBCUPSSTATIC) \ | |
515 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) | |
516 | echo Running PPD API tests... | |
517 | ./testppd | |
518 | ||
519 | ||
520 | # | |
521 | # testpwg (dependency on static CUPS library is intentional) | |
522 | # | |
523 | ||
524 | testpwg: testpwg.o $(LIBCUPSSTATIC) test.ppd | |
525 | echo Linking $@... | |
526 | $(CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testpwg.o $(LIBCUPSSTATIC) \ | |
527 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) | |
528 | echo Running PWG API tests... | |
529 | ./testpwg test.ppd | |
530 | ||
531 | ||
532 | # | |
533 | # testsnmp (dependency on static CUPS library is intentional) | |
534 | # | |
535 | ||
536 | testsnmp: testsnmp.o $(LIBCUPSSTATIC) | |
537 | echo Linking $@... | |
538 | $(CC) $(LDFLAGS) -o $@ testsnmp.o $(LIBCUPSSTATIC) \ | |
539 | $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) | |
540 | ||
541 | ||
542 | # | |
543 | # Automatic API help files... | |
544 | # | |
545 | ||
546 | apihelp: | |
547 | echo Generating CUPS API help files... | |
548 | mxmldoc --section "Programming" \ | |
549 | --title "Introduction to CUPS Programming" \ | |
550 | --css ../doc/cups-printable.css \ | |
551 | --header api-overview.header --intro api-overview.shtml \ | |
552 | >../doc/help/api-overview.html | |
553 | mxmldoc --section "Programming" --title "Array API" \ | |
554 | --css ../doc/cups-printable.css \ | |
555 | --header api-array.header --intro api-array.shtml \ | |
556 | api-array.xml \ | |
557 | array.h array.c >../doc/help/api-array.html | |
558 | mxmldoc --tokens help/api-array.html api-array.xml >../doc/help/api-array.tokens | |
559 | $(RM) api-array.xml | |
560 | mxmldoc --section "Programming" --title "CUPS API" \ | |
561 | --css ../doc/cups-printable.css \ | |
562 | --header api-cups.header --intro api-cups.shtml \ | |
563 | api-cups.xml \ | |
564 | cups.h pwg.h adminutil.c dest*.c language.c notify.c \ | |
565 | options.c pwg-media.c tempfile.c usersys.c \ | |
566 | util.c >../doc/help/api-cups.html | |
567 | mxmldoc --tokens help/api-cups.html api-cups.xml >../doc/help/api-cups.tokens | |
568 | $(RM) api-cups.xml | |
569 | mxmldoc --section "Programming" --title "File and Directory APIs" \ | |
570 | --css ../doc/cups-printable.css \ | |
571 | --header api-filedir.header --intro api-filedir.shtml \ | |
572 | api-filedir.xml \ | |
573 | file.h file.c dir.h dir.c >../doc/help/api-filedir.html | |
574 | mxmldoc --tokens api-filedir.xml >../doc/help/api-filedir.tokens | |
575 | $(RM) api-filedir.xml | |
576 | mxmldoc --section "Programming" --title "PPD API (DEPRECATED)" \ | |
577 | --css ../doc/cups-printable.css \ | |
578 | --header api-ppd.header --intro api-ppd.shtml \ | |
579 | api-ppd.xml \ | |
580 | ppd.h attr.c conflicts.c custom.c emit.c localize.c mark.c page.c \ | |
581 | ppd.c >../doc/help/api-ppd.html | |
582 | mxmldoc --tokens help/api-ppd.html api-ppd.xml >../doc/help/api-ppd.tokens | |
583 | $(RM) api-ppd.xml | |
584 | mxmldoc --section "Programming" --title "HTTP and IPP APIs" \ | |
585 | --css ../doc/cups-printable.css \ | |
586 | --header api-httpipp.header --intro api-httpipp.shtml \ | |
587 | api-httpipp.xml \ | |
588 | http.h ipp.h auth.c getdevices.c getputfile.c encode.c \ | |
589 | http.c http-addr.c http-support.c ipp.c ipp-support.c \ | |
590 | md5passwd.c request.c >../doc/help/api-httpipp.html | |
591 | mxmldoc --tokens help/api-httpipp.html api-httpipp.xml >../doc/help/api-httpipp.tokens | |
592 | $(RM) api-httpipp.xml | |
593 | mxmldoc --section "Programming" \ | |
594 | --title "Filter and Backend Programming" \ | |
595 | --css ../doc/cups-printable.css \ | |
596 | --header api-filter.header --intro api-filter.shtml \ | |
597 | api-filter.xml \ | |
598 | backchannel.c backend.h backend.c sidechannel.c sidechannel.h \ | |
599 | >../doc/help/api-filter.html | |
600 | mxmldoc --tokens help/api-filter.html api-filter.xml >../doc/help/api-filter.tokens | |
601 | $(RM) api-filter.xml | |
602 | ||
603 | framedhelp: | |
604 | echo Generating CUPS API help files... | |
605 | mxmldoc --framed api-overview \ | |
606 | --section "Programming" \ | |
607 | --title "Introduction to CUPS Programming" \ | |
608 | --css ../doc/cups-printable.css \ | |
609 | --header api-overview.header --intro api-overview.shtml | |
610 | mxmldoc --framed api-array \ | |
611 | --section "Programming" --title "Array API" \ | |
612 | --css ../doc/cups-printable.css \ | |
613 | --header api-array.header --intro api-array.shtml \ | |
614 | array.h array.c | |
615 | mxmldoc --framed api-cups \ | |
616 | --section "Programming" --title "CUPS API" \ | |
617 | --css ../doc/cups-printable.css \ | |
618 | --header api-cups.header --intro api-cups.shtml \ | |
619 | cups.h adminutil.c dest*.c language.c notify.c \ | |
620 | options.c tempfile.c usersys.c \ | |
621 | util.c | |
622 | mxmldoc --framed api-filedir \ | |
623 | --section "Programming" --title "File and Directory APIs" \ | |
624 | --css ../doc/cups-printable.css \ | |
625 | --header api-filedir.header --intro api-filedir.shtml \ | |
626 | file.h file.c dir.h dir.c | |
627 | mxmldoc --framed api-ppd \ | |
628 | --section "Programming" --title "PPD API (DEPRECATED)" \ | |
629 | --css ../doc/cups-printable.css \ | |
630 | --header api-ppd.header --intro api-ppd.shtml \ | |
631 | ppd.h attr.c conflicts.c custom.c emit.c localize.c mark.c \ | |
632 | page.c ppd.c | |
633 | mxmldoc --framed api-httpipp \ | |
634 | --section "Programming" --title "HTTP and IPP APIs" \ | |
635 | --css ../doc/cups-printable.css \ | |
636 | --header api-httpipp.header --intro api-httpipp.shtml \ | |
637 | http.h ipp.h auth.c getdevices.c getputfile.c encode.c \ | |
638 | http.c http-addr.c http-support.c ipp.c ipp-support.c \ | |
639 | md5passwd.c request.c | |
640 | mxmldoc --framed api-filter \ | |
641 | --section "Programming" \ | |
642 | --title "Filter and Backend Programming" \ | |
643 | --css ../doc/cups-printable.css \ | |
644 | --header api-filter.header --intro api-filter.shtml \ | |
645 | backchannel.c backend.h backend.c sidechannel.c sidechannel.h | |
646 | ||
647 | ||
648 | # | |
649 | # Lines of code computation... | |
650 | # | |
651 | ||
652 | sloc: | |
653 | echo "libcupslite: \c" | |
654 | sloccount $(LITEOBJS:.o=.c) 2>/dev/null | grep "Total Physical" | awk '{print $$9}' | |
655 | echo "libcups: \c" | |
656 | sloccount $(LIBOBJS:.o=.c) 2>/dev/null | grep "Total Physical" | awk '{print $$9}' | |
657 | ||
658 | ||
659 | # | |
660 | # Dependencies... | |
661 | # | |
662 | ||
663 | include Dependencies | |
664 | tls.o: tls-darwin.c tls-gnutls.c tls-sspi.c | |
665 | ||
666 | ||
667 | # | |
668 | # End of "$Id: Makefile 12032 2014-07-15 20:37:32Z msweet $". | |
669 | # |