]> git.ipfire.org Git - thirdparty/cups.git/blobdiff - cups/Makefile
Merge changes from CUPS 1.4svn-r7961.
[thirdparty/cups.git] / cups / Makefile
index 36c170baa1b4a3bded6cc4e018179179ed415126..3710985e5c6c8a43e15449004d3b8b8735b9d657 100644 (file)
@@ -1,25 +1,16 @@
 #
-# "$Id: Makefile 6304 2007-02-22 22:06:23Z mike $"
+# "$Id: Makefile 7871 2008-08-27 21:12:43Z mike $"
 #
 #   API library Makefile for the Common UNIX Printing System (CUPS).
 #
+#   Copyright 2007-2008 by Apple Inc.
 #   Copyright 1997-2006 by Easy Software Products, all rights reserved.
 #
 #   These coded instructions, statements, and computer programs are the
-#   property of Easy Software Products 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 missing or damaged please contact Easy Software Products
-#   at:
-#
-#       Attn: CUPS Licensing Information
-#       Easy Software Products
-#       44141 Airport View Drive, Suite 204
-#       Hollywood, Maryland 20636 USA
-#
-#       Voice: (301) 373-9600
-#       EMail: cups-info@cups.org
-#         WWW: http://www.cups.org
+#   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.
 #
@@ -37,12 +28,15 @@ LIBOBJS     =       \
                auth.o \
                backchannel.o \
                backend.o \
+               conflicts.o \
                custom.o \
+               debug.o \
                dest.o \
                dir.o \
                emit.o \
                encode.o \
                file.o \
+               getdevices.o \
                getifaddrs.o \
                getputfile.o \
                globals.o \
@@ -64,6 +58,7 @@ LIBOBJS       =       \
                ppd.o \
                request.o \
                sidechannel.o \
+               snmp.o \
                snprintf.o \
                string.o \
                tempfile.o \
@@ -78,12 +73,16 @@ OBJS        =       \
                $(LIB64OBJS) \
                testadmin.o \
                testarray.o \
+               testconflicts.o \
+               testcups.o \
                testfile.o \
                testhttp.o \
                testi18n.o \
                testipp.o \
+               testoptions.o \
                testlang.o \
                testppd.o \
+               testsnmp.o \
                php_cups_wrap.o
 
 
@@ -99,31 +98,41 @@ HEADERS     =       \
                dir.h \
                file.h \
                http.h \
-               i18n.h \
                ipp.h \
                language.h \
                ppd.h \
+               raster.h \
                sidechannel.h \
-               transcode.h
+               transcode.h \
+               versioning.h
 
 
 #
 # Targets in this directory...
 #
 
-TARGETS        =       \
+LIBTARGETS =   \
                $(LIBCUPS) \
                $(LIB32CUPS) \
                $(LIB64CUPS) \
-               libcups.a \
+               libcups.a
+
+UNITTARGETS =  \
                testadmin \
                testarray \
+               testconflicts \
+               testcups \
                testfile \
                testhttp \
                testi18n \
                testipp \
                testlang \
-               testppd
+               testoptions \
+               testppd \
+               testsnmp
+
+TARGETS        =       \
+               $(LIBTARGETS)
 
 
 #
@@ -133,12 +142,26 @@ TARGETS   =       \
 all:   $(TARGETS)
 
 
+#
+# Make library targets...
+#
+
+libs:          $(LIBTARGETS)
+
+
+#
+# Make unit tests...
+#
+
+unittests:     $(UNITTARGETS)
+
+
 #
 # Remove object and target files...
 #
 
 clean:
-       $(RM) $(OBJS) $(TARGETS)
+       $(RM) $(OBJS) $(TARGETS) $(UNITTARGETS)
        $(RM) libcups.so libcups.sl libcups.dylib
        $(RM) -r 32bit 64bit
 
@@ -152,16 +175,50 @@ depend:
        makedepend -Y -I.. -fDependencies.tmp $(OBJS:.o=.c) >/dev/null 2>&1
        $(RM) Dependencies
        cp Dependencies.tmp Dependencies
-       sed -r -e '1,$$s/^([^.]+)\.o:/\1\.32.o: \1\.c /' Dependencies.tmp >>Dependencies
-       sed -r -e '1,$$s/^([^.]+)\.o:/\1\.64.o: \1\.c /' Dependencies.tmp >>Dependencies
+       sed -E -e '1,$$s/^([^.]+)\.o:/\1\.32.o: \1\.c /' Dependencies.tmp >>Dependencies
+       sed -E -e '1,$$s/^([^.]+)\.o:/\1\.64.o: \1\.c /' Dependencies.tmp >>Dependencies
        $(RM) Dependencies.tmp
 
 
 #
-# Install object and target files...
+# Install all targets...
+#
+
+install:       all install-data install-headers install-libs install-exec
+
+
+#
+# Install data files...
+#
+
+install-data:
+
+
+#
+# Install programs...
+#
+
+install-exec:
+
+
+#
+# Install headers...
+#
+
+install-headers:
+       echo Installing header files into $(INCLUDEDIR)/cups...
+       $(INSTALL_DIR) -m 755 $(INCLUDEDIR)/cups
+       for file in $(HEADERS); do \
+               $(INSTALL_DATA) $$file $(INCLUDEDIR)/cups; \
+       done
+
+
+#
+# Install libraries...
 #
 
-install:       all installhdrs $(INSTALLSTATIC) $(INSTALL32) $(INSTALL64)
+install-libs: $(INSTALLSTATIC) $(INSTALL32) $(INSTALL64)
+       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 \
@@ -169,28 +226,27 @@ install:  all installhdrs $(INSTALLSTATIC) $(INSTALL32) $(INSTALL64)
                $(LN) $(LIBCUPS) $(LIBDIR)/`basename $(LIBCUPS) .2`; \
        fi
        if test $(LIBCUPS) = "libcups.2.dylib"; then \
-               $(STRIP) -x $(LIBDIR)/$(LIBCUPS); \
                $(RM) $(LIBDIR)/libcups.dylib; \
                $(LN) $(LIBCUPS) $(LIBDIR)/libcups.dylib; \
        fi
+       if test "x$(SYMROOT)" != "x"; then \
+               $(INSTALL_DIR) $(SYMROOT); \
+               cp $(LIBCUPS) $(SYMROOT); \
+       fi
 
 installstatic:
        $(INSTALL_DIR) -m 755 $(LIBDIR)
        $(INSTALL_LIB) libcups.a $(LIBDIR)
        $(RANLIB) $(LIBDIR)/libcups.a
 
-installhdrs:
-       $(INSTALL_DIR) -m 755 $(INCLUDEDIR)/cups
-       for file in $(HEADERS); do \
-               $(INSTALL_DATA) $$file $(INCLUDEDIR)/cups; \
-       done
-
 install32bit:
+       echo Installing libraries in $(LIB32DIR)...
        $(INSTALL_DIR) -m 755 $(LIB32DIR)
        $(INSTALL_LIB) 32bit/libcups.so.2 $(LIB32DIR)/libcups.so.2
        $(LN) libcups.so.2 $(LIB32DIR)/libcups.so
 
 install64bit:
+       echo Installing libraries in $(LIB64DIR)...
        $(INSTALL_DIR) -m 755 $(LIB64DIR)
        $(INSTALL_LIB) 64bit/libcups.so.2 $(LIB64DIR)/libcups.so.2
        $(LN) libcups.so.2 $(LIB64DIR)/libcups.so
@@ -265,12 +321,14 @@ libcups.so.2 libcups.sl.2:        $(LIBOBJS)
 # libcups.2.dylib
 #
 
-libcups.2.dylib:       $(LIBOBJS)
+libcups.2.dylib:       $(LIBOBJS) $(LIBCUPSORDER) libcups.exp
        echo Linking $@...
        $(DSO) $(ARCHFLAGS) $(DSOFLAGS) -o $@ \
                -install_name $(libdir)/$@ \
                -current_version 2.8.0 \
                -compatibility_version 2.0.0 \
+               -exported_symbols_list libcups.exp \
+               -sectorder __TEXT __text $(LIBCUPSORDER) \
                $(LIBOBJS) $(LIBGSSAPI) $(SSLLIBS) $(COMMONLIBS) $(LIBZ)
        $(RM) libcups.dylib
        $(LN) $@ libcups.dylib
@@ -348,7 +406,29 @@ testadmin: testadmin.o libcups.a
 
 testarray:     testarray.o libcups.a
        echo Linking $@...
-       $(CC) $(LDFLAGS) -o $@ testarray.o libcups.a \
+       $(CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testarray.o libcups.a \
+               $(LIBGSSAPI) $(SSLLIBS) $(COMMONLIBS) $(LIBZ)
+       echo Running array API tests...
+       ./testarray
+
+
+#
+# testconflicts (dependency on static CUPS library is intentional)
+#
+
+testconflicts: testconflicts.o libcups.a
+       echo Linking $@...
+       $(CC) $(LDFLAGS) -o $@ testconflicts.o libcups.a \
+               $(LIBGSSAPI) $(SSLLIBS) $(COMMONLIBS) $(LIBZ)
+
+
+#
+# testcups (dependency on static CUPS library is intentional)
+#
+
+testcups:      testcups.o libcups.a
+       echo Linking $@...
+       $(CC) $(LDFLAGS) -o $@ testcups.o libcups.a \
                $(LIBGSSAPI) $(SSLLIBS) $(COMMONLIBS) $(LIBZ)
 
 
@@ -358,8 +438,10 @@ testarray: testarray.o libcups.a
 
 testfile:      testfile.o libcups.a
        echo Linking $@...
-       $(CC) $(LDFLAGS) -o $@ testfile.o libcups.a \
+       $(CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testfile.o libcups.a \
                $(LIBGSSAPI) $(SSLLIBS) $(COMMONLIBS) $(LIBZ)
+       echo Running file API tests...
+       ./testfile
 
 
 #
@@ -368,8 +450,10 @@ testfile:  testfile.o libcups.a
 
 testhttp:      testhttp.o libcups.a
        echo Linking $@...
-       $(CC) $(LDFLAGS) -o $@ testhttp.o libcups.a \
+       $(CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testhttp.o libcups.a \
                $(LIBGSSAPI) $(SSLLIBS) $(COMMONLIBS) $(LIBZ)
+       echo Running HTTP API tests...
+       ./testhttp
 
 
 #
@@ -378,8 +462,10 @@ testhttp:  testhttp.o libcups.a
 
 testipp:       testipp.o libcups.a
        echo Linking $@...
-       $(CC) $(LDFLAGS) -o $@ testipp.o libcups.a \
+       $(CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testipp.o libcups.a \
                $(LIBGSSAPI) $(SSLLIBS) $(COMMONLIBS) $(LIBZ)
+       echo Running IPP API tests...
+       ./testipp
 
 
 #
@@ -388,8 +474,10 @@ testipp:   testipp.o libcups.a
 
 testi18n:      testi18n.o libcups.a
        echo Linking $@...
-       $(CC) $(LDFLAGS) -o $@ testi18n.o libcups.a \
+       $(CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testi18n.o libcups.a \
                $(LIBGSSAPI) $(SSLLIBS) $(COMMONLIBS) $(LIBZ)
+       echo Running internationalization API tests...
+       ./testi18n
 
 
 #
@@ -398,8 +486,22 @@ testi18n:  testi18n.o libcups.a
 
 testlang:      testlang.o libcups.a
        echo Linking $@...
-       $(CC) $(LDFLAGS) -o $@ testlang.o libcups.a \
+       $(CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testlang.o libcups.a \
+               $(LIBGSSAPI) $(SSLLIBS) $(COMMONLIBS) $(LIBZ)
+       echo Running language API tests...
+       ./testlang
+
+
+#
+# testoptions (dependency on static CUPS library is intentional)
+#
+
+testoptions:   testoptions.o libcups.a
+       echo Linking $@...
+       $(CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testoptions.o libcups.a \
                $(LIBGSSAPI) $(SSLLIBS) $(COMMONLIBS) $(LIBZ)
+       echo Running option API tests...
+       ./testoptions
 
 
 #
@@ -408,7 +510,19 @@ testlang:  testlang.o libcups.a
 
 testppd:       testppd.o libcups.a
        echo Linking $@...
-       $(CC) $(LDFLAGS) -o $@ testppd.o libcups.a \
+       $(CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testppd.o libcups.a \
+               $(LIBGSSAPI) $(SSLLIBS) $(COMMONLIBS) $(LIBZ)
+       echo Running PPD API tests...
+       ./testppd
+
+
+#
+# testsnmp (dependency on static CUPS library is intentional)
+#
+
+testsnmp:      testsnmp.o libcups.a
+       echo Linking $@...
+       $(CC) $(LDFLAGS) -o $@ testsnmp.o libcups.a \
                $(LIBGSSAPI) $(SSLLIBS) $(COMMONLIBS) $(LIBZ)
 
 
@@ -418,29 +532,86 @@ testppd:  testppd.o libcups.a
 
 apihelp:
        echo Generating CUPS API help files...
+       mxmldoc --section "Programming" \
+               --title "Introduction to CUPS Programming" \
+               --css ../doc/cups-printable.css \
+               --header api-overview.header --intro api-overview.shtml \
+               >../doc/help/api-overview.html
        mxmldoc --section "Programming" --title "Array API" \
-               --intro api-array.shtml \
+               --css ../doc/cups-printable.css \
+               --header api-array.header --intro api-array.shtml \
                array.h array.c >../doc/help/api-array.html
        mxmldoc --section "Programming" --title "CUPS API" \
-               --intro api-cups.shtml \
-               cups.h dest.c getputfile.c language.c notify.c \
+               --css ../doc/cups-printable.css \
+               --header api-cups.header --intro api-cups.shtml \
+               cups.h dest.c language.c notify.c \
                options.c tempfile.c usersys.c \
                util.c >../doc/help/api-cups.html
        mxmldoc --section "Programming" --title "File and Directory APIs" \
-               --intro api-filedir.shtml \
+               --css ../doc/cups-printable.css \
+               --header api-filedir.header --intro api-filedir.shtml \
                file.h file.c dir.h dir.c >../doc/help/api-filedir.html
        mxmldoc --section "Programming" --title "PPD API" \
-               --intro api-ppd.shtml \
-               ppd.h attr.c custom.c emit.c localize.c mark.c page.c \
+               --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 >../doc/help/api-ppd.html
        mxmldoc --section "Programming" --title "HTTP and IPP APIs" \
-               --intro api-httpipp.shtml \
-               http.h ipp.h auth.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 --section "Programming" --title "Filter and Backend APIs" \
-               --intro api-filter.shtml \
-               backchannel.c sidechannel.c sidechannel.h >../doc/help/api-filter.html
+               --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 >../doc/help/api-httpipp.html
+       mxmldoc --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 \
+               >../doc/help/api-filter.html
+
+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 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" \
+               --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
 
 
 #
@@ -451,5 +622,5 @@ include Dependencies
 
 
 #
-# End of "$Id: Makefile 6304 2007-02-22 22:06:23Z mike $".
+# End of "$Id: Makefile 7871 2008-08-27 21:12:43Z mike $".
 #