]> git.ipfire.org Git - thirdparty/cups.git/blobdiff - cups/Makefile
Save work on documentation.
[thirdparty/cups.git] / cups / Makefile
index 4ac6ae3c1fe9fef3487ac9e6b5c884dc278b3eb5..962bee636ca3c59f5bf3b550d002e906db7cc252 100644 (file)
@@ -1,16 +1,14 @@
 #
-# "$Id$"
-#
 # API library Makefile for CUPS.
 #
-# Copyright 2007-2014 by Apple Inc.
+# Copyright 2007-2016 by Apple Inc.
 # Copyright 1997-2006 by Easy Software Products, all rights reserved.
 #
 # These coded instructions, statements, and computer programs are the
 # property of Apple Inc. and are protected by Federal copyright
 # law.  Distribution and use rights are outlined in the file "LICENSE.txt"
 # which should have been included with this file.  If this file is
-# file is missing or damaged, see the license at "http://www.cups.org/".
+# missing or damaged, see the license at "http://www.cups.org/".
 #
 # This file is subject to the Apple OS-Developed Software exception.
 #
@@ -32,25 +30,22 @@ OPTIONS     =       -D_CUPS_NO_DEPRECATED=1 -D_PPD_DEPRECATED=""
 LIBOBJS        =       \
                adminutil.o \
                array.o \
-               attr.o \
                auth.o \
                backchannel.o \
                backend.o \
-               conflicts.o \
-               custom.o \
                debug.o \
                dest.o \
                dest-job.o \
                dest-localization.o \
                dest-options.o \
                dir.o \
-               emit.o \
                encode.o \
                file.o \
                getdevices.o \
                getifaddrs.o \
                getputfile.o \
                globals.o \
+               hash.o \
                http.o \
                http-addr.o \
                http-addrlist.o \
@@ -59,15 +54,20 @@ LIBOBJS     =       \
                ipp-support.o \
                langprintf.o \
                language.o \
-               localize.o \
-               mark.o \
                md5.o \
                md5passwd.o \
                notify.o \
                options.o \
-               page.o \
                ppd.o \
+               ppd-attr.o \
                ppd-cache.o \
+               ppd-conflicts.o \
+               ppd-custom.o \
+               ppd-emit.o \
+               ppd-localize.o \
+               ppd-mark.o \
+               ppd-page.o \
+               ppd-util.o \
                pwg-media.o \
                request.o \
                sidechannel.o \
@@ -83,7 +83,9 @@ LIBOBJS       =       \
 TESTOBJS       = \
                testadmin.o \
                testarray.o \
+               testcache.o \
                testconflicts.o \
+               testcreds.o \
                testcups.o \
                testdest.o \
                testfile.o \
@@ -94,7 +96,8 @@ TESTOBJS      = \
                testlang.o \
                testppd.o \
                testpwg.o \
-               testsnmp.o
+               testsnmp.o \
+               tlscheck.o
 OBJS   =       \
                $(LIBOBJS) \
                $(TESTOBJS)
@@ -151,6 +154,7 @@ UNITTARGETS =       \
                testarray \
                testcache \
                testconflicts \
+               testcreds \
                testcups \
                testdest \
                testfile \
@@ -161,7 +165,8 @@ UNITTARGETS =       \
                testoptions \
                testppd \
                testpwg \
-               testsnmp
+               testsnmp \
+               tlscheck
 
 TARGETS        =       \
                $(LIBTARGETS)
@@ -317,13 +322,14 @@ libcups.so.2:     $(LIBOBJS)
 
 libcups.2.dylib:       $(LIBOBJS) $(LIBCUPSORDER)
        echo Creating export list for $@...
-       nm $(LIBOBJS) 2>/dev/null | grep "T _" | awk '{print $$3}' | \
-               grep -v -e '^(_cupsConnect|_cupsCharset|_cupsEncodingName|_cupsSetDefaults|_cupsSetHTTPError|_cupsUserDefault|_httpWait)$$' | \
+       nm -gm $(LIBOBJS) 2>/dev/null | grep "__text" | grep -v weak | \
+               awk '{print $$NF}' | \
+               grep -v -E -e '^(_cupsConnect|_cupsCharset|_cupsEncodingName|_cupsSetDefaults|_cupsSetHTTPError|_cupsUserDefault)$$' | \
                sort >t.exp
        echo Linking $@...
        $(DSO) $(ARCHFLAGS) $(DSOFLAGS) -o $@ \
                -install_name $(libdir)/$@ \
-               -current_version 2.11.0 \
+               -current_version 2.12.0 \
                -compatibility_version 2.0.0 \
                -exported_symbols_list t.exp \
                $(LIBOBJS) $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) \
@@ -339,7 +345,7 @@ libcups.2.dylib:    $(LIBOBJS) $(LIBCUPSORDER)
 libcups.la:    $(LIBOBJS)
        echo Linking $@...
        $(CC) $(ARCHFLAGS) $(DSOFLAGS) -o $@ $(LIBOBJS:.o=.lo) \
-               -rpath $(LIBDIR) -version-info 2:11 $(LIBGSSAPI) $(SSLLIBS) \
+               -rpath $(LIBDIR) -version-info 2:12 $(LIBGSSAPI) $(SSLLIBS) \
                $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
 
 
@@ -354,6 +360,23 @@ libcups.a: $(LIBOBJS)
        $(RANLIB) $@
 
 
+#
+# libcups2.def (Windows DLL exports file...)
+#
+
+libcups2.def: $(LIBOBJS) Makefile
+       echo Generating $@...
+       echo "LIBRARY libcups2" >libcups2.def
+       echo "VERSION 2.12" >>libcups2.def
+       echo "EXPORTS" >>libcups2.def
+       (nm $(LIBOBJS) 2>/dev/null | grep "T _" | awk '{print $$3}'; \
+        echo __cups_strcpy; echo __cups_strlcat; echo __cups_strlcpy) | \
+               grep -v -E \
+                   -e 'cups_debug|Apple|BackChannel|Backend|FileCheck|Filter|GSSService|SetNegotiate|SideChannel' \
+                   -e 'Block$$' | \
+               sed -e '1,$$s/^_//' | sort >>libcups2.def
+
+
 #
 # testadmin (dependency on static CUPS library is intentional)
 #
@@ -396,6 +419,16 @@ testconflicts:     testconflicts.o $(LIBCUPSSTATIC)
                $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
 
 
+#
+# testcreds (dependency on static CUPS library is intentional)
+#
+
+testcreds:     testcreds.o $(LIBCUPSSTATIC)
+       echo Linking $@...
+       $(CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testcreds.o $(LIBCUPSSTATIC) \
+               $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+
+
 #
 # testcups (dependency on static CUPS library is intentional)
 #
@@ -522,57 +555,43 @@ testsnmp: testsnmp.o $(LIBCUPSSTATIC)
                $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
 
 
+#
+# tlscheck (dependency on static CUPS library is intentional)
+#
+
+tlscheck:      tlscheck.o $(LIBCUPSSTATIC)
+       echo Linking $@...
+       $(CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ tlscheck.o $(LIBCUPSSTATIC) \
+               $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+
+
 #
 # Automatic API help files...
 #
 
 apihelp:
        echo Generating CUPS API help files...
-       mxmldoc --section "Programming" \
-               --title "Introduction to CUPS Programming" \
+       $(RM) cupspm.xml
+       mxmldoc --section "Programming" --body cupspm.md \
+               cupspm.xml \
+               auth.c cups.h dest*.c encode.c http.h http*.c ipp.h ipp*.c \
+               options.c tls-darwin.c usersys.c util.c \
+               --coverimage cupspm.png \
+               --epub ../doc/help/cupspm.epub
+       mxmldoc --section "Programming" --body cupspm.md \
+               cupspm.xml > ../doc/help/cupspm.html
+       $(RM) cupspm.xml
+       mxmldoc --section "Programming" --title "Administration APIs" \
                --css ../doc/cups-printable.css \
-               --header api-overview.header --intro api-overview.shtml \
-               >../doc/help/api-overview.html
-       mxmldoc --section "Programming" --title "Array API" \
-               --css ../doc/cups-printable.css \
-               --header api-array.header --intro api-array.shtml \
-               api-array.xml \
-               array.h array.c >../doc/help/api-array.html
-       mxmldoc --tokens help/api-array.html api-array.xml >../doc/help/api-array.tokens
-       $(RM) api-array.xml
-       mxmldoc --section "Programming" --title "CUPS API" \
-               --css ../doc/cups-printable.css \
-               --header api-cups.header --intro api-cups.shtml \
-               api-cups.xml \
-               cups.h pwg.h adminutil.c dest*.c language.c notify.c \
-               options.c pwg-media.c tempfile.c usersys.c \
-               util.c >../doc/help/api-cups.html
-       mxmldoc --tokens help/api-cups.html api-cups.xml >../doc/help/api-cups.tokens
-       $(RM) api-cups.xml
-       mxmldoc --section "Programming" --title "File and Directory APIs" \
-               --css ../doc/cups-printable.css \
-               --header api-filedir.header --intro api-filedir.shtml \
-               api-filedir.xml \
-               file.h file.c dir.h dir.c >../doc/help/api-filedir.html
-       mxmldoc --tokens api-filedir.xml >../doc/help/api-filedir.tokens
-       $(RM) api-filedir.xml
+               --header api-admin.header --intro api-admin.shtml \
+               api-admin.xml \
+               adminutil.c adminutil.h getdevices.c >../doc/help/api-admin.html
+       $(RM) api-admin.xml
        mxmldoc --section "Programming" --title "PPD API (DEPRECATED)" \
                --css ../doc/cups-printable.css \
                --header api-ppd.header --intro api-ppd.shtml \
-               api-ppd.xml \
-               ppd.h attr.c conflicts.c custom.c emit.c localize.c mark.c page.c \
-               ppd.c >../doc/help/api-ppd.html
-       mxmldoc --tokens help/api-ppd.html api-ppd.xml >../doc/help/api-ppd.tokens
+               api-ppd.xml ppd.h ppd-*.c >../doc/help/api-ppd.html
        $(RM) api-ppd.xml
-       mxmldoc --section "Programming" --title "HTTP and IPP APIs" \
-               --css ../doc/cups-printable.css \
-               --header api-httpipp.header --intro api-httpipp.shtml \
-               api-httpipp.xml \
-               http.h ipp.h auth.c getdevices.c getputfile.c encode.c \
-               http.c http-addr.c http-support.c ipp.c ipp-support.c \
-               md5passwd.c request.c >../doc/help/api-httpipp.html
-       mxmldoc --tokens help/api-httpipp.html api-httpipp.xml >../doc/help/api-httpipp.tokens
-       $(RM) api-httpipp.xml
        mxmldoc --section "Programming" \
                --title "Filter and Backend Programming" \
                --css ../doc/cups-printable.css \
@@ -580,61 +599,14 @@ apihelp:
                api-filter.xml \
                backchannel.c backend.h backend.c sidechannel.c sidechannel.h \
                >../doc/help/api-filter.html
-       mxmldoc --tokens help/api-filter.html api-filter.xml >../doc/help/api-filter.tokens
        $(RM) api-filter.xml
 
-framedhelp:
-       echo Generating CUPS API help files...
-       mxmldoc --framed api-overview \
-               --section "Programming" \
-               --title "Introduction to CUPS Programming" \
-               --css ../doc/cups-printable.css \
-               --header api-overview.header --intro api-overview.shtml
-       mxmldoc --framed api-array \
-               --section "Programming" --title "Array API" \
-               --css ../doc/cups-printable.css \
-               --header api-array.header --intro api-array.shtml \
-               array.h array.c
-       mxmldoc --framed api-cups \
-               --section "Programming" --title "CUPS API" \
-               --css ../doc/cups-printable.css \
-               --header api-cups.header --intro api-cups.shtml \
-               cups.h adminutil.c dest*.c language.c notify.c \
-               options.c tempfile.c usersys.c \
-               util.c
-       mxmldoc --framed api-filedir \
-               --section "Programming" --title "File and Directory APIs" \
-               --css ../doc/cups-printable.css \
-               --header api-filedir.header --intro api-filedir.shtml \
-               file.h file.c dir.h dir.c
-       mxmldoc --framed api-ppd \
-               --section "Programming" --title "PPD API (DEPRECATED)" \
-               --css ../doc/cups-printable.css \
-               --header api-ppd.header --intro api-ppd.shtml \
-               ppd.h attr.c conflicts.c custom.c emit.c localize.c mark.c \
-               page.c ppd.c
-       mxmldoc --framed api-httpipp \
-               --section "Programming" --title "HTTP and IPP APIs" \
-               --css ../doc/cups-printable.css \
-               --header api-httpipp.header --intro api-httpipp.shtml \
-               http.h ipp.h auth.c getdevices.c getputfile.c encode.c \
-               http.c http-addr.c http-support.c ipp.c ipp-support.c \
-               md5passwd.c request.c
-       mxmldoc --framed api-filter \
-               --section "Programming" \
-               --title "Filter and Backend Programming" \
-               --css ../doc/cups-printable.css \
-               --header api-filter.header --intro api-filter.shtml \
-               backchannel.c backend.h backend.c sidechannel.c sidechannel.h
-
 
 #
 # Lines of code computation...
 #
 
 sloc:
-       echo "libcupslite: \c"
-       sloccount $(LITEOBJS:.o=.c) 2>/dev/null | grep "Total Physical" | awk '{print $$9}'
        echo "libcups: \c"
        sloccount $(LIBOBJS:.o=.c) 2>/dev/null | grep "Total Physical" | awk '{print $$9}'
 
@@ -645,8 +617,3 @@ sloc:
 
 include Dependencies
 tls.o: tls-darwin.c tls-gnutls.c tls-sspi.c
-
-
-#
-# End of "$Id$".
-#