]> git.ipfire.org Git - thirdparty/cups.git/blobdiff - cups/Makefile
Stop accepting attributes in collections (Issue #5630)
[thirdparty/cups.git] / cups / Makefile
index 7c31019e695eb60e5d96dd50a9667a47c81eb991..87d85babc654534a720a5f0b0f3bf8227f7d6b44 100644 (file)
@@ -1,8 +1,8 @@
 #
 # Library Makefile for CUPS.
 #
-# Copyright 2007-2018 by Apple Inc.
-# Copyright 1997-2006 by Easy Software Products, all rights reserved.
+# Copyright © 2007-2019 by Apple Inc.
+# Copyright © 1997-2006 by Easy Software Products, all rights reserved.
 #
 # Licensed under Apache License v2.0.  See the file "LICENSE" for more
 # information.
@@ -15,12 +15,9 @@ include ../Makedefs
 # Object files...
 #
 
-LIBOBJS        =       \
-               adminutil.o \
+COREOBJS       =       \
                array.o \
                auth.o \
-               backchannel.o \
-               backend.o \
                debug.o \
                dest.o \
                dest-job.o \
@@ -29,8 +26,6 @@ LIBOBJS       =       \
                dir.o \
                encode.o \
                file.o \
-               getdevices.o \
-               getifaddrs.o \
                getputfile.o \
                globals.o \
                hash.o \
@@ -48,23 +43,11 @@ LIBOBJS     =       \
                md5passwd.o \
                notify.o \
                options.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 \
                raster-error.o \
-               raster-interpret.o \
                raster-stream.o \
+               raster-stubs.o \
                request.o \
-               sidechannel.o \
-               snmp.o \
                snprintf.o \
                string.o \
                tempfile.o \
@@ -73,9 +56,35 @@ LIBOBJS      =       \
                transcode.o \
                usersys.o \
                util.o
+
+DRIVEROBJS     =       \
+               adminutil.o \
+               backchannel.o \
+               backend.o \
+               getdevices.o \
+               getifaddrs.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 \
+               raster-interpret.o \
+               raster-interstub.o \
+               sidechannel.o \
+               snmp.o
+
+LIBOBJS                = \
+               $(LIBCUPSOBJS)
+
 IMAGEOBJS      = \
                raster-interstub.o \
                raster-stubs.o
+
 TESTOBJS       = \
                rasterbench.o \
                testadmin.o \
@@ -108,24 +117,29 @@ OBJS      =       \
 # Header files to install...
 #
 
-HEADERS        =       \
-               adminutil.h \
+COREHEADERS    =       \
                array.h \
-               backend.h \
                cups.h \
                dir.h \
                file.h \
                http.h \
                ipp.h \
                language.h \
-               ppd.h \
                pwg.h \
                raster.h \
-               sidechannel.h \
                transcode.h \
                versioning.h
 
-HEADERSPRIV =  \
+DRIVERHEADERS  =       \
+               adminutil.h \
+               backend.h \
+               ppd.h \
+               sidechannel.h
+
+HEADERS                =       \
+               $(LIBHEADERS)
+
+COREHEADERSPRIV =      \
                array-private.h \
                cups-private.h \
                debug-private.h \
@@ -133,13 +147,18 @@ HEADERSPRIV =     \
                http-private.h \
                ipp-private.h \
                language-private.h \
-               ppd-private.h \
                pwg-private.h \
                raster-private.h \
-               snmp-private.h \
                string-private.h \
                thread-private.h
 
+DRIVERHEADERSPRIV      =       \
+               ppd-private.h \
+               snmp-private.h
+
+HEADERSPRIV    =       \
+               $(LIBHEADERSPRIV)
+
 
 #
 # Targets in this directory...
@@ -281,23 +300,25 @@ install-libs: $(LIBTARGETS) $(INSTALLSTATIC)
                $(RM) $(LIBDIR)/libcups.dylib; \
                $(LN) $(LIBCUPS) $(LIBDIR)/libcups.dylib; \
        fi
-       $(INSTALL_DIR) -m 755 $(LIBDIR)
-       $(INSTALL_LIB) $(LIBCUPSIMAGE) $(LIBDIR)
-       -if test $(LIBCUPSIMAGE) = "libcupsimage.so.2" -o $(LIBCUPSIMAGE) = "libcupsimage.sl.2"; then \
+       -if test "x$(LIBCUPSIMAGE)" != x; then \
+               $(INSTALL_LIB) $(LIBCUPSIMAGE) $(LIBDIR); \
+       fi
+       -if test "x$(LIBCUPSIMAGE)" = "xlibcupsimage.so.2"; then \
                $(RM) $(LIBDIR)/`basename $(LIBCUPSIMAGE) .2`; \
                $(LN) $(LIBCUPSIMAGE) $(LIBDIR)/`basename $(LIBCUPSIMAGE) .2`; \
        fi
-       -if test $(LIBCUPSIMAGE) = "libcupsimage.2.dylib"; then \
+       -if test "x$(LIBCUPSIMAGE)" = "xlibcupsimage.2.dylib"; then \
                $(RM) $(LIBDIR)/libcupsimage.dylib; \
                $(LN) $(LIBCUPSIMAGE) $(LIBDIR)/libcupsimage.dylib; \
        fi
        if test "x$(SYMROOT)" != "x"; then \
-               $(INSTALL_DIR) $(SYMROOT); \
                $(INSTALL_DIR) $(SYMROOT); \
                cp $(LIBCUPS) $(SYMROOT); \
                dsymutil $(SYMROOT)/$(LIBCUPS); \
-               cp $(LIBCUPSIMAGE) $(SYMROOT); \
-               dsymutil $(SYMROOT)/$(LIBCUPSIMAGE); \
+               if test "x$(LIBCUPSIMAGE)" != x; then \
+                       cp $(LIBCUPSIMAGE) $(SYMROOT); \
+                       dsymutil $(SYMROOT)/$(LIBCUPSIMAGE); \
+               fi; \
        fi
 
 installstatic:
@@ -316,7 +337,7 @@ installstatic:
 
 uninstall:
        $(RM) $(LIBDIR)/libcups.2.dylib
-       $(RM) $(LIBDIR)/$(LIBCUPSSTATIC)
+       $(RM) $(LIBDIR)/libcups.a
        $(RM) $(LIBDIR)/libcups.dylib
        $(RM) $(LIBDIR)/libcups.so
        $(RM) $(LIBDIR)/libcups.so.2
@@ -330,16 +351,21 @@ uninstall:
                $(RM) $(INCLUDEDIR)/cups/$$file; \
        done
        -$(RMDIR) $(INCLUDEDIR)/cups
+       if test "x$(privateinclude)" != x; then \
+               for file in $(HEADERSPRIV); do \
+                       $(RM) $(PRIVATEINCLUDE)/cups/$$file; \
+               done
+               $(RMDIR) $(PRIVATEINCLUDE)/cups; \
+       fi
 
 
 #
 # libcups.so.2
 #
 
-libcups.so.2:  $(LIBOBJS) $(IMAGEOBJS)
+libcups.so.2:  $(LIBOBJS)
        echo Linking $@...
-       $(DSO) $(ARCHFLAGS) $(LDFLAGS) $(DSOFLAGS) -o $@ $(LIBOBJS) $(IMAGEOBJS) \
-               $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+       $(DSO) $(ARCHFLAGS) $(ALL_DSOFLAGS) -o $@ $(LIBOBJS) $(LIBS)
        $(RM) `basename $@ .2`
        $(LN) $@ `basename $@ .2`
 
@@ -348,14 +374,13 @@ libcups.so.2:     $(LIBOBJS) $(IMAGEOBJS)
 # libcups.2.dylib
 #
 
-libcups.2.dylib:       $(LIBOBJS) $(IMAGEOBJS)
+libcups.2.dylib:       $(LIBOBJS)
        echo Linking $@...
-       $(DSO) $(ARCHFLAGS) $(LDFLAGS) $(DSOFLAGS) -o $@ \
+       $(DSO) $(ARCHFLAGS) $(ALL_DSOFLAGS) -o $@ \
                -install_name $(libdir)/$@ \
                -current_version 2.14.0 \
                -compatibility_version 2.0.0 \
-               $(LIBOBJS) $(IMAGEOBJS) \
-               $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+               $(LIBOBJS) $(LIBS)
        $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
        $(RM) libcups.dylib
        $(LN) $@ libcups.dylib
@@ -365,22 +390,20 @@ libcups.2.dylib:  $(LIBOBJS) $(IMAGEOBJS)
 # libcups.la
 #
 
-libcups.la:    $(LIBOBJS) $(IMAGEOBJS)
+libcups.la:    $(LIBOBJS)
        echo Linking $@...
-       $(LD_CC) $(ARCHFLAGS) $(LDFLAGS) $(DSOFLAGS) -o $@ \
-               $(LIBOBJS:.o=.lo) $(IMAGEOBJS:.o=.lo) \
-               -rpath $(LIBDIR) -version-info 2:14 $(LIBGSSAPI) $(SSLLIBS) \
-               $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+       $(LD_CC) $(ARCHFLAGS) $(ALL_DSOFLAGS) -o $@ $(LIBOBJS:.o=.lo) \
+               -rpath $(LIBDIR) -version-info 2:14 $(LIBS)
 
 
 #
 # libcups.a
 #
 
-libcups.a:     $(LIBOBJS) $(IMAGEOBJS)
+libcups.a:     $(LIBOBJS)
        echo Archiving $@...
        $(RM) $@
-       $(AR) $(ARFLAGS) $@ $(LIBOBJS) $(IMAGEOBJS)
+       $(AR) $(ARFLAGS) $@ $(LIBOBJS)
        $(RANLIB) $@
 
 
@@ -394,7 +417,8 @@ libcups2.def: $(LIBOBJS) $(IMAGEOBJS) Makefile
        echo "VERSION 2.14" >>libcups2.def
        echo "EXPORTS" >>libcups2.def
        (nm $(LIBOBJS) $(IMAGEOBJS) 2>/dev/null | grep "T _" | awk '{print $$3}'; \
-        echo __cups_strcpy; echo __cups_strlcat; echo __cups_strlcpy) | \
+        echo __cups_strcpy; echo __cups_strlcat; echo __cups_strlcpy; \
+        echo __cups_snprintf; echo __cups_vsnprintf; echo __cups_gettimeofday) | \
                grep -v -E \
                    -e 'cups_debug|Apple|BackChannel|Backend|FileCheck|Filter|GSSService|SetNegotiate|SideChannel|SNMP' \
                    -e 'Block$$' | \
@@ -407,8 +431,7 @@ libcups2.def: $(LIBOBJS) $(IMAGEOBJS) Makefile
 
 libcupsimage.so.2:     $(IMAGEOBJS) libcups.so.2
        echo Linking $@...
-       $(DSO) $(ARCHFLAGS) $(LDFLAGS) $(DSOFLAGS) -o $@ $(IMAGEOBJS) $(DSOLIBS) \
-               -L../cups $(LINKCUPS)
+       $(DSO) $(ARCHFLAGS) $(ALL_DSOFLAGS) -o $@ $(IMAGEOBJS) $(LINKCUPS)
        $(RM) `basename $@ .2`
        $(LN) $@ `basename $@ .2`
 
@@ -419,11 +442,11 @@ libcupsimage.so.2:        $(IMAGEOBJS) libcups.so.2
 
 libcupsimage.2.dylib:  $(IMAGEOBJS) libcups.2.dylib
        echo Linking $@...
-       $(DSO) $(ARCHFLAGS) $(LDFLAGS) $(DSOFLAGS) -o $@ \
+       $(DSO) $(ARCHFLAGS) $(ALL_DSOFLAGS) -o $@ \
                -install_name $(libdir)/$@ \
                -current_version 2.3.0 \
                -compatibility_version 2.0.0 \
-               $(IMAGEOBJS) $(DSOLIBS) -L../cups $(LINKCUPS)
+               $(IMAGEOBJS) $(LINKCUPS)
        $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
        $(RM) libcupsimage.dylib
        $(LN) $@ libcupsimage.dylib
@@ -435,9 +458,8 @@ libcupsimage.2.dylib:       $(IMAGEOBJS) libcups.2.dylib
 
 libcupsimage.la:       $(IMAGEOBJS) libcups.la
        echo Linking $@...
-       $(DSO) $(ARCHFLAGS) $(LDFLAGS) $(DSOFLAGS) -o $@ $(IMAGEOBJS:.o=.lo) $(DSOLIBS) \
-               -L../cups $(LINKCUPS) \
-               -rpath $(LIBDIR) -version-info 2:3
+       $(DSO) $(ARCHFLAGS) $(ALL_DSOFLAGS) -o $@ $(IMAGEOBJS:.o=.lo) \
+               $(LINKCUPS) -rpath $(LIBDIR) -version-info 2:3
 
 
 #
@@ -457,8 +479,7 @@ libcupsimage.a:     $(IMAGEOBJS)
 
 rasterbench:   rasterbench.o $(LIBCUPSSTATIC)
        echo Linking $@...
-       $(LD_CC) $(LDFLAGS) -o $@ rasterbench.o $(LIBCUPSSTATIC) \
-               $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+       $(LD_CC) $(ALL_LDFLAGS) -o $@ rasterbench.o $(LINKCUPSSTATIC)
        $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
 
 
@@ -468,8 +489,7 @@ rasterbench:        rasterbench.o $(LIBCUPSSTATIC)
 
 testadmin:     testadmin.o $(LIBCUPSSTATIC)
        echo Linking $@...
-       $(LD_CC) $(LDFLAGS) -o $@ testadmin.o $(LIBCUPSSTATIC) \
-               $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+       $(LD_CC) $(ALL_LDFLAGS) -o $@ testadmin.o $(LINKCUPSSTATIC)
        $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
 
 
@@ -479,8 +499,7 @@ testadmin:  testadmin.o $(LIBCUPSSTATIC)
 
 testarray:     testarray.o $(LIBCUPSSTATIC)
        echo Linking $@...
-       $(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testarray.o $(LIBCUPSSTATIC) \
-               $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+       $(LD_CC) $(ARCHFLAGS) $(ALL_LDFLAGS) -o $@ testarray.o $(LINKCUPSSTATIC)
        $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
        echo Running array API tests...
        ./testarray
@@ -492,8 +511,7 @@ testarray:  testarray.o $(LIBCUPSSTATIC)
 
 testcache:     testcache.o $(LIBCUPSSTATIC)
        echo Linking $@...
-       $(LD_CC) $(LDFLAGS) -o $@ testcache.o $(LIBCUPSSTATIC) \
-               $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+       $(LD_CC) $(ALL_LDFLAGS) -o $@ testcache.o $(LINKCUPSSTATIC)
        $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
 
 
@@ -503,8 +521,7 @@ testcache:  testcache.o $(LIBCUPSSTATIC)
 
 testclient:    testclient.o $(LIBCUPSSTATIC)
        echo Linking $@...
-       $(LD_CC) $(LDFLAGS) -o $@ testclient.o $(LIBCUPSSTATIC) \
-               $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+       $(LD_CC) $(ALL_LDFLAGS) -o $@ testclient.o $(LINKCUPSSTATIC)
        $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
 
 
@@ -514,8 +531,7 @@ testclient: testclient.o $(LIBCUPSSTATIC)
 
 testconflicts: testconflicts.o $(LIBCUPSSTATIC)
        echo Linking $@...
-       $(LD_CC) $(LDFLAGS) -o $@ testconflicts.o $(LIBCUPSSTATIC) \
-               $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+       $(LD_CC) $(ALL_LDFLAGS) -o $@ testconflicts.o $(LINKCUPSSTATIC)
        $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
 
 
@@ -525,8 +541,7 @@ testconflicts:      testconflicts.o $(LIBCUPSSTATIC)
 
 testcreds:     testcreds.o $(LIBCUPSSTATIC)
        echo Linking $@...
-       $(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testcreds.o $(LIBCUPSSTATIC) \
-               $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+       $(LD_CC) $(ARCHFLAGS) $(ALL_LDFLAGS) -o $@ testcreds.o $(LINKCUPSSTATIC)
        $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
 
 
@@ -536,8 +551,7 @@ testcreds:  testcreds.o $(LIBCUPSSTATIC)
 
 testcups:      testcups.o $(LIBCUPSSTATIC)
        echo Linking $@...
-       $(LD_CC) $(LDFLAGS) -o $@ testcups.o $(LIBCUPSSTATIC) \
-               $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+       $(LD_CC) $(ALL_LDFLAGS) -o $@ testcups.o $(LINKCUPSSTATIC)
        $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
 
 
@@ -547,8 +561,7 @@ testcups:   testcups.o $(LIBCUPSSTATIC)
 
 testdest:      testdest.o $(LIBCUPSSTATIC)
        echo Linking $@...
-       $(LD_CC) $(LDFLAGS) -o $@ testdest.o $(LIBCUPSSTATIC) \
-               $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+       $(LD_CC) $(ALL_LDFLAGS) -o $@ testdest.o $(LINKCUPSSTATIC)
        $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
 
 
@@ -558,8 +571,7 @@ testdest:   testdest.o $(LIBCUPSSTATIC)
 
 testfile:      testfile.o $(LIBCUPSSTATIC)
        echo Linking $@...
-       $(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testfile.o $(LIBCUPSSTATIC) \
-               $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+       $(LD_CC) $(ARCHFLAGS) $(ALL_LDFLAGS) -o $@ testfile.o $(LINKCUPSSTATIC)
        $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
        echo Running file API tests...
        ./testfile
@@ -571,8 +583,7 @@ testfile:   testfile.o $(LIBCUPSSTATIC)
 
 testgetdests:  testgetdests.o $(LIBCUPSSTATIC)
        echo Linking $@...
-       $(LD_CC) $(LDFLAGS) -o $@ testgetdests.o $(LIBCUPSSTATIC) \
-               $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+       $(LD_CC) $(ALL_LDFLAGS) -o $@ testgetdests.o $(LINKCUPSSTATIC)
        $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
 
 
@@ -582,8 +593,7 @@ testgetdests:       testgetdests.o $(LIBCUPSSTATIC)
 
 testhttp:      testhttp.o $(LIBCUPSSTATIC)
        echo Linking $@...
-       $(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testhttp.o $(LIBCUPSSTATIC) \
-               $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+       $(LD_CC) $(ARCHFLAGS) $(ALL_LDFLAGS) -o $@ testhttp.o $(LINKCUPSSTATIC)
        $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
        echo Running HTTP API tests...
        ./testhttp
@@ -595,8 +605,7 @@ testhttp:   testhttp.o $(LIBCUPSSTATIC)
 
 testipp:       testipp.o $(LIBCUPSSTATIC)
        echo Linking $@...
-       $(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testipp.o $(LIBCUPSSTATIC) \
-               $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+       $(LD_CC) $(ARCHFLAGS) $(ALL_LDFLAGS) -o $@ testipp.o $(LINKCUPSSTATIC)
        $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
        echo Running IPP API tests...
        ./testipp
@@ -608,8 +617,7 @@ testipp:    testipp.o $(LIBCUPSSTATIC)
 
 testi18n:      testi18n.o $(LIBCUPSSTATIC)
        echo Linking $@...
-       $(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testi18n.o $(LIBCUPSSTATIC) \
-               $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+       $(LD_CC) $(ARCHFLAGS) $(ALL_LDFLAGS) -o $@ testi18n.o $(LINKCUPSSTATIC)
        $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
        echo Running internationalization API tests...
        ./testi18n
@@ -621,16 +629,10 @@ testi18n: testi18n.o $(LIBCUPSSTATIC)
 
 testlang:      testlang.o $(LIBCUPSSTATIC)
        echo Linking $@...
-       $(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testlang.o $(LIBCUPSSTATIC) \
-               $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+       $(LD_CC) $(ARCHFLAGS) $(ALL_LDFLAGS) -o $@ testlang.o $(LINKCUPSSTATIC)
        $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
        echo Creating locale directory structure...
        $(RM) -r locale
-       $(MKDIR) locale/en
-       echo 'msgid "No"' > locale/en/cups_en.po
-       echo 'msgstr "No"' >> locale/en/cups_en.po
-       echo 'msgid "Yes"' >> locale/en/cups_en.po
-       echo 'msgstr "Yes"' >> locale/en/cups_en.po
        for po in ../locale/cups_*.po; do \
                lang=`basename $$po .po | sed -e '1,$$s/^cups_//'`; \
                $(MKDIR) locale/$$lang; \
@@ -646,8 +648,7 @@ testlang:   testlang.o $(LIBCUPSSTATIC)
 
 testoptions:   testoptions.o $(LIBCUPSSTATIC)
        echo Linking $@...
-       $(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testoptions.o $(LIBCUPSSTATIC) \
-               $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+       $(LD_CC) $(ARCHFLAGS) $(ALL_LDFLAGS) -o $@ testoptions.o $(LINKCUPSSTATIC)
        $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
        echo Running option API tests...
        ./testoptions
@@ -659,8 +660,7 @@ testoptions:        testoptions.o $(LIBCUPSSTATIC)
 
 testppd:       testppd.o $(LIBCUPSSTATIC) test.ppd test2.ppd
        echo Linking $@...
-       $(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testppd.o $(LIBCUPSSTATIC) \
-               $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+       $(LD_CC) $(ARCHFLAGS) $(ALL_LDFLAGS) -o $@ testppd.o $(LINKCUPSSTATIC)
        $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
        echo Running PPD API tests...
        ./testppd
@@ -672,8 +672,7 @@ testppd:    testppd.o $(LIBCUPSSTATIC) test.ppd test2.ppd
 
 testpwg:       testpwg.o $(LIBCUPSSTATIC) test.ppd
        echo Linking $@...
-       $(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testpwg.o $(LIBCUPSSTATIC) \
-               $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+       $(LD_CC) $(ARCHFLAGS) $(ALL_LDFLAGS) -o $@ testpwg.o $(LINKCUPSSTATIC)
        $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
        echo Running PWG API tests...
        ./testpwg test.ppd
@@ -685,9 +684,7 @@ testpwg:    testpwg.o $(LIBCUPSSTATIC) test.ppd
 
 testraster:    testraster.o $(LIBCUPSSTATIC)
        echo Linking $@...
-       $(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testraster.o \
-               $(LIBCUPSSTATIC) $(IMGLIBS) $(DSOLIBS) $(COMMONLIBS) \
-               $(SSLLIBS) $(DNSSDLIBS) $(LIBGSSAPI)
+       $(LD_CC) $(ARCHFLAGS) $(ALL_LDFLAGS) -o $@ testraster.o $(LINKCUPSSTATIC)
        $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
        echo Running raster API tests...
        ./testraster
@@ -699,8 +696,7 @@ testraster: testraster.o $(LIBCUPSSTATIC)
 
 testsnmp:      testsnmp.o $(LIBCUPSSTATIC)
        echo Linking $@...
-       $(LD_CC) $(LDFLAGS) -o $@ testsnmp.o $(LIBCUPSSTATIC) \
-               $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+       $(LD_CC) $(ALL_LDFLAGS) -o $@ testsnmp.o $(LINKCUPSSTATIC)
        $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
 
 
@@ -710,8 +706,7 @@ testsnmp:   testsnmp.o $(LIBCUPSSTATIC)
 
 tlscheck:      tlscheck.o $(LIBCUPSSTATIC)
        echo Linking $@...
-       $(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ tlscheck.o $(LIBCUPSSTATIC) \
-               $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+       $(LD_CC) $(ARCHFLAGS) $(ALL_LDFLAGS) -o $@ tlscheck.o $(LINKCUPSSTATIC)
        $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
 
 
@@ -722,42 +717,34 @@ tlscheck: tlscheck.o $(LIBCUPSSTATIC)
 apihelp:
        echo Generating CUPS API help files...
        $(RM) cupspm.xml
-       mxmldoc --section "Programming" --body cupspm.md \
+       codedoc --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 \
+       codedoc --section "Programming" --body cupspm.md \
                cupspm.xml > ../doc/help/cupspm.html
        $(RM) cupspm.xml
-       mxmldoc --section "Programming" --title "Administration APIs" \
+       codedoc --section "Programming" --title "Administration APIs" \
                --css ../doc/cups-printable.css \
-               --header api-admin.header --intro api-admin.shtml \
-               api-admin.xml \
+               --header api-admin.header --body api-admin.shtml \
                adminutil.c adminutil.h getdevices.c >../doc/help/api-admin.html
-       $(RM) api-admin.xml
-       mxmldoc --section "Programming" --title "PPD API (DEPRECATED)" \
+       codedoc --section "Programming" --title "PPD API (DEPRECATED)" \
                --css ../doc/cups-printable.css \
-               --header api-ppd.header --intro api-ppd.shtml \
-               api-ppd.xml ppd.h ppd-*.c >../doc/help/api-ppd.html
-       $(RM) api-ppd.xml
-       mxmldoc --section "Programming" --title "Raster API" \
+               --header api-ppd.header --body api-ppd.shtml \
+               ppd.h ppd-*.c raster-interstub.c >../doc/help/api-ppd.html
+       codedoc --section "Programming" --title "Raster API" \
                --css ../doc/cups-printable.css \
-               --header api-raster.header --intro api-raster.shtml \
-               api-raster.xml \
-               ../cups/raster.h interpret.c raster.c \
+               --header api-raster.header --body api-raster.shtml \
+               ../cups/raster.h raster-stubs.c \
                >../doc/help/api-raster.html
-       mxmldoc --tokens help/api-raster.html api-raster.xml >../doc/help/api-raster.tokens
-       $(RM) api-raster.xml
-       mxmldoc --section "Programming" \
+       codedoc --section "Programming" \
                --title "Filter and Backend Programming" \
                --css ../doc/cups-printable.css \
-               --header api-filter.header --intro api-filter.shtml \
-               api-filter.xml \
+               --header api-filter.header --body api-filter.shtml \
                backchannel.c backend.h backend.c sidechannel.c sidechannel.h \
                >../doc/help/api-filter.html
-       $(RM) api-filter.xml
 
 
 #