]> git.ipfire.org Git - thirdparty/cups.git/blobdiff - cups/Makefile
Remove all of the Subversion keywords from various source files.
[thirdparty/cups.git] / cups / Makefile
index 56b74192f5e84584ffb3a6868d1aaf132d3bc105..593113abccfa06113324b847a695760855f6d1ba 100644 (file)
@@ -1,22 +1,28 @@
 #
-# "$Id: Makefile 7871 2008-08-27 21:12:43Z mike $"
+# API library Makefile for CUPS.
 #
-#   API library Makefile for CUPS.
+# Copyright 2007-2015 by Apple Inc.
+# Copyright 1997-2006 by Easy Software Products, all rights reserved.
 #
-#   Copyright 2007-2012 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/".
 #
-#   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/".
-#
-#   This file is subject to the Apple OS-Developed Software exception.
+# This file is subject to the Apple OS-Developed Software exception.
 #
 
 include ../Makedefs
 
+
+#
+# Options to build libcups without the use of deprecated APIs...
+#
+
+OPTIONS        =       -D_CUPS_NO_DEPRECATED=1 -D_PPD_DEPRECATED=""
+
+
 #
 # Object files...
 #
@@ -24,25 +30,22 @@ include ../Makedefs
 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 \
@@ -51,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 \
@@ -68,14 +76,17 @@ LIBOBJS     =       \
                string.o \
                tempfile.o \
                thread.o \
+               tls.o \
                transcode.o \
                usersys.o \
                util.o
 TESTOBJS       = \
                testadmin.o \
                testarray.o \
+               testcache.o \
                testconflicts.o \
                testcups.o \
+               testdest.o \
                testfile.o \
                testhttp.o \
                testi18n.o \
@@ -84,7 +95,8 @@ TESTOBJS      = \
                testlang.o \
                testppd.o \
                testpwg.o \
-               testsnmp.o
+               testsnmp.o \
+               tlscheck.o
 OBJS   =       \
                $(LIBOBJS) \
                $(TESTOBJS)
@@ -105,6 +117,7 @@ HEADERS     =       \
                ipp.h \
                language.h \
                ppd.h \
+               pwg.h \
                raster.h \
                sidechannel.h \
                transcode.h \
@@ -138,8 +151,10 @@ LIBTARGETS =       \
 UNITTARGETS =  \
                testadmin \
                testarray \
+               testcache \
                testconflicts \
                testcups \
+               testdest \
                testfile \
                testhttp \
                testi18n \
@@ -148,7 +163,8 @@ UNITTARGETS =       \
                testoptions \
                testppd \
                testpwg \
-               testsnmp
+               testsnmp \
+               tlscheck
 
 TARGETS        =       \
                $(LIBTARGETS)
@@ -181,7 +197,7 @@ unittests:  $(UNITTARGETS)
 
 clean:
        $(RM) $(OBJS) $(TARGETS) $(UNITTARGETS)
-       $(RM) libcups.so libcups.sl libcups.dylib
+       $(RM) libcups.so libcups.dylib
 
 
 #
@@ -192,6 +208,14 @@ depend:
        $(CC) -MM $(ALL_CFLAGS) $(OBJS:.o=.c) >Dependencies
 
 
+#
+# Run oclint to check code coverage...
+#
+
+oclint:
+       oclint -o=oclint.html -html $(LIBOBJS:.o=.c) -- $(ALL_CFLAGS)
+
+
 #
 # Install all targets...
 #
@@ -240,7 +264,7 @@ install-libs: $(INSTALLSTATIC)
        echo Installing libraries in $(LIBDIR)...
        $(INSTALL_DIR) -m 755 $(LIBDIR)
        $(INSTALL_LIB) $(LIBCUPS) $(LIBDIR)
-       if test $(LIBCUPS) = "libcups.so.2" -o $(LIBCUPS) = "libcups.sl.2"; then \
+       if test $(LIBCUPS) = "libcups.so.2"; then \
                $(RM) $(LIBDIR)/`basename $(LIBCUPS) .2`; \
                $(LN) $(LIBCUPS) $(LIBDIR)/`basename $(LIBCUPS) .2`; \
        fi
@@ -251,6 +275,7 @@ install-libs: $(INSTALLSTATIC)
        if test "x$(SYMROOT)" != "x"; then \
                $(INSTALL_DIR) $(SYMROOT); \
                cp $(LIBCUPS) $(SYMROOT); \
+               dsymutil $(SYMROOT)/$(LIBCUPS); \
        fi
 
 installstatic:
@@ -268,9 +293,6 @@ uninstall:
        $(RM) $(LIBDIR)/libcups.2.dylib
        $(RM) $(LIBDIR)/$(LIBCUPSSTATIC)
        $(RM) $(LIBDIR)/libcups.dylib
-       $(RM) $(LIBDIR)/libcups_s.a
-       $(RM) $(LIBDIR)/libcups.sl
-       $(RM) $(LIBDIR)/libcups.sl.2
        $(RM) $(LIBDIR)/libcups.so
        $(RM) $(LIBDIR)/libcups.so.2
        -$(RMDIR) $(LIBDIR)
@@ -281,10 +303,10 @@ uninstall:
 
 
 #
-# libcups.so.2, libcups.sl.2
+# libcups.so.2
 #
 
-libcups.so.2 libcups.sl.2:     $(LIBOBJS)
+libcups.so.2:  $(LIBOBJS)
        echo Linking $@...
        $(DSO) $(ARCHFLAGS) $(DSOFLAGS) -o $@ $(LIBOBJS) $(LIBGSSAPI) \
                $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
@@ -298,13 +320,14 @@ libcups.so.2 libcups.sl.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.9.0 \
+               -current_version 2.12.0 \
                -compatibility_version 2.0.0 \
                -exported_symbols_list t.exp \
                $(LIBOBJS) $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) \
@@ -313,19 +336,6 @@ libcups.2.dylib:   $(LIBOBJS) $(LIBCUPSORDER)
        $(LN) $@ libcups.dylib
 
 
-#
-# libcups_s.a
-#
-
-libcups_s.a:   $(LIBOBJS) libcups_s.exp
-       echo Creating $@...
-       $(DSO) $(DSOFLAGS) -Wl,-bexport:libcups_s.exp -o libcups_s.o \
-               $(LIBOBJS) $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) \
-               $(COMMONLIBS) $(LIBZ)
-       $(RM) $@
-       $(AR) $(ARFLAGS) $@ libcups_s.o
-
-
 #
 # libcups.la
 #
@@ -333,7 +343,7 @@ libcups_s.a:        $(LIBOBJS) libcups_s.exp
 libcups.la:    $(LIBOBJS)
        echo Linking $@...
        $(CC) $(ARCHFLAGS) $(DSOFLAGS) -o $@ $(LIBOBJS:.o=.lo) \
-               -rpath $(LIBDIR) -version-info 2:9 $(LIBGSSAPI) $(SSLLIBS) \
+               -rpath $(LIBDIR) -version-info 2:12 $(LIBGSSAPI) $(SSLLIBS) \
                $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
 
 
@@ -348,6 +358,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.11" >>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)
 #
@@ -370,6 +397,16 @@ testarray: testarray.o $(LIBCUPSSTATIC)
        ./testarray
 
 
+#
+# testcache (dependency on static CUPS library is intentional)
+#
+
+testcache:     testcache.o $(LIBCUPSSTATIC)
+       echo Linking $@...
+       $(CC) $(LDFLAGS) -o $@ testcache.o $(LIBCUPSSTATIC) \
+               $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+
+
 #
 # testconflicts (dependency on static CUPS library is intentional)
 #
@@ -390,6 +427,16 @@ testcups:  testcups.o $(LIBCUPSSTATIC)
                $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
 
 
+#
+# testdest (dependency on static CUPS library is intentional)
+#
+
+testdest:      testdest.o $(LIBCUPSSTATIC)
+       echo Linking $@...
+       $(CC) $(LDFLAGS) -o $@ testdest.o $(LIBCUPSSTATIC) \
+               $(LIBGSSAPI) $(SSLLIBS) $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ)
+
+
 #
 # testfile (dependency on static CUPS library is intentional)
 #
@@ -496,6 +543,16 @@ 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...
 #
@@ -518,8 +575,8 @@ apihelp:
                --css ../doc/cups-printable.css \
                --header api-cups.header --intro api-cups.shtml \
                api-cups.xml \
-               cups.h adminutil.c dest.c language.c notify.c \
-               options.c tempfile.c usersys.c \
+               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
@@ -533,9 +590,7 @@ apihelp:
        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
+               api-ppd.xml ppd.h ppd-*.c >../doc/help/api-ppd.html
        mxmldoc --tokens help/api-ppd.html api-ppd.xml >../doc/help/api-ppd.tokens
        $(RM) api-ppd.xml
        mxmldoc --section "Programming" --title "HTTP and IPP APIs" \
@@ -573,7 +628,7 @@ framedhelp:
                --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 \
+               cups.h adminutil.c dest*.c language.c notify.c \
                options.c tempfile.c usersys.c \
                util.c
        mxmldoc --framed api-filedir \
@@ -618,8 +673,4 @@ sloc:
 #
 
 include Dependencies
-
-
-#
-# End of "$Id: Makefile 7871 2008-08-27 21:12:43Z mike $".
-#
+tls.o: tls-darwin.c tls-gnutls.c tls-sspi.c