#
-# "$Id: Makefile 4869 2005-12-06 02:43:40Z mike $"
+# CGI makefile for CUPS.
#
-# CGI makefile for the Common UNIX Printing System (CUPS).
+# Copyright 2007-2017 by Apple Inc.
+# Copyright 1997-2006 by Easy Software Products.
#
-# Copyright 1997-2005 by Easy Software Products.
-#
-# 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
+# Licensed under Apache License v2.0. See the file "LICENSE" for more information.
#
include ../Makedefs
-CGIS = admin.cgi classes.cgi help.cgi jobs.cgi printers.cgi
-TARGETS = libcgi.a $(CGIS) testcgi testhi
-LIBOBJS = help-index.o html.o ipp-var.o search.o template.o var.o
-OBJS = $(LIBOBJS) admin.o classes.o help.o \
- jobs.o printers.o testcgi.o testhi.o
+LIBOBJS = \
+ help-index.o \
+ html.o \
+ ipp-var.o \
+ search.o \
+ template.o \
+ var.o
+OBJS = \
+ $(LIBOBJS) \
+ admin.o \
+ classes.o \
+ help.o \
+ jobs.o \
+ makedocset.o \
+ printers.o \
+ testcgi.o \
+ testhi.o \
+ testtemplate.o
+CGIS = \
+ admin.cgi \
+ classes.cgi \
+ help.cgi \
+ jobs.cgi \
+ printers.cgi
+LIBTARGETS = \
+ libcupscgi.a \
+ $(LIBCUPSCGI)
+
+UNITTARGETS = \
+ testcgi \
+ testhi \
+ testtemplate
+
+TARGETS = \
+ $(LIBTARGETS) \
+ $(CGIS)
#
all: $(TARGETS)
+#
+# Make library targets...
+#
+
+libs: $(LIBTARGETS) $(UNITTESTS)
+
+
+#
+# Make unit tests...
+#
+
+unittests: $(UNITTARGETS)
+
+
#
# Clean all object files...
#
clean:
- $(RM) $(OBJS) $(TARGETS)
+ $(RM) $(OBJS) $(TARGETS) $(UNITTARGETS) makedocset
+ $(RM) libcupscgi.so libcupscgi.dylib
#
#
depend:
- makedepend -Y -I.. -fDependencies $(OBJS:.o=.c) >/dev/null 2>&1
+ $(CC) -MM $(ALL_CFLAGS) $(OBJS:.o=.c) >Dependencies
#
# Install all targets...
#
-install: all
- $(INSTALL_DIR) $(SERVERBIN)/cgi-bin
+install: all install-data install-headers install-libs install-exec
+
+
+#
+# Install data files...
+#
+
+install-data:
+
+
+#
+# Install programs...
+#
+
+install-exec:
+ $(INSTALL_DIR) -m 755 $(SERVERBIN)/cgi-bin
for file in $(CGIS); do \
$(INSTALL_BIN) $$file $(SERVERBIN)/cgi-bin; \
done
+ if test "x$(SYMROOT)" != "x"; then \
+ $(INSTALL_DIR) $(SYMROOT); \
+ for file in $(CGIS); do \
+ cp $$file $(SYMROOT); \
+ dsymutil $(SYMROOT)/$$file; \
+ done \
+ fi
+
+
+#
+# Install headers...
+#
+
+install-headers:
+ if test "x$(privateinclude)" != x; then \
+ echo Installing private header files into $(PRIVATEINCLUDE)...; \
+ $(INSTALL_DIR) -m 755 $(PRIVATEINCLUDE); \
+ for file in cgi.h help-index.h; do \
+ $(INSTALL_DATA) $$file $(PRIVATEINCLUDE); \
+ done; \
+ fi
#
-# libcgi.a
+# Install libraries...
#
-libcgi.a: $(LIBOBJS)
+install-libs: $(INSTALLSTATIC)
+ echo Installing libraries in $(LIBDIR)...
+ $(INSTALL_DIR) -m 755 $(LIBDIR)
+ $(INSTALL_LIB) $(LIBCUPSCGI) $(LIBDIR)
+ if test $(LIBCUPSCGI) = "libcupscgi.so.1"; then \
+ $(RM) $(LIBDIR)/`basename $(LIBCUPSCGI) .1`; \
+ $(LN) $(LIBCUPSCGI) $(LIBDIR)/`basename $(LIBCUPSCGI) .1`; \
+ fi
+ if test $(LIBCUPSCGI) = "libcupscgi.1.dylib"; then \
+ $(RM) $(LIBDIR)/libcupscgi.dylib; \
+ $(LN) $(LIBCUPSCGI) $(LIBDIR)/libcupscgi.dylib; \
+ fi
+ if test "x$(SYMROOT)" != "x"; then \
+ $(INSTALL_DIR) $(SYMROOT); \
+ cp $(LIBCUPSCGI) $(SYMROOT); \
+ dsymutil $(SYMROOT)/$(LIBCUPSCGI); \
+ fi
+
+installstatic:
+ $(INSTALL_DIR) -m 755 $(LIBDIR)
+ $(INSTALL_LIB) -m 755 libcupscgi.a $(LIBDIR)
+ $(RANLIB) $(LIBDIR)/libcupscgi.a
+ $(CHMOD) 555 $(LIBDIR)/libcupscgi.a
+
+
+#
+# Uninstall all targets...
+#
+
+uninstall:
+ for file in $(CGIS); do \
+ $(RM) $(SERVERBIN)/cgi-bin/$$file; \
+ done
+ -$(RMDIR) $(SERVERBIN)/cgi-bin
+ $(RM) $(LIBDIR)/libcupscgi.1.dylib
+ $(RM) $(LIBDIR)/libcupscgi.a
+ $(RM) $(LIBDIR)/libcupscgi.dylib
+ $(RM) $(LIBDIR)/libcupscgi.so
+ $(RM) $(LIBDIR)/libcupscgi.so.1
+ -$(RMDIR) $(LIBDIR)
+ -if test "x$(privateinclude)" != x; then \
+ $(RM) $(PRIVATEINCLUDE)/cgi.h; \
+ $(RM) $(PRIVATEINCLUDE)/help-index.h; \
+ $(RMDIR) $(PRIVATEINCLUDE); \
+ fi
+
+
+#
+# libcupscgi.so.1
+#
+
+libcupscgi.so.1: $(LIBOBJS)
+ echo Linking $@...
+ $(DSO) $(ARCHFLAGS) $(DSOFLAGS) -o $@ $(LIBOBJS) $(LIBS)
+ $(RM) `basename $@ .1`
+ $(LN) $@ `basename $@ .1`
+
+
+#
+# libcupscgi.1.dylib
+#
+
+libcupscgi.1.dylib: $(LIBOBJS) libcupscgi.exp
+ echo Linking $@...
+ $(DSO) $(ARCHFLAGS) $(DSOFLAGS) -o $@ \
+ -install_name $(libdir)/$@ \
+ -current_version 1.0.0 \
+ -compatibility_version 1.0.0 \
+ -exported_symbols_list libcupscgi.exp \
+ $(LIBOBJS) $(LIBS)
+ $(RM) libcupscgi.dylib
+ $(LN) $@ libcupscgi.dylib
+
+
+#
+# libcupscgi.la
+#
+
+libcupscgi.la: $(LIBOBJS)
+ echo Linking $@...
+ $(LD_CC) $(ARCHFLAGS) $(DSOFLAGS) -o $@ $(LIBOBJS:.o=.lo) -rpath $(LIBDIR) \
+ -version-info 1:0 $(LIBS)
+
+
+#
+# libcupscgi.a
+#
+
+libcupscgi.a: $(LIBOBJS)
echo Archiving $@...
$(RM) $@
$(AR) $(ARFLAGS) $@ $(LIBOBJS)
# admin.cgi
#
-admin.cgi: admin.o ../Makedefs ../cups/$(LIBCUPS) libcgi.a
+admin.cgi: admin.o ../Makedefs ../cups/$(LIBCUPS) $(LIBCUPSCGI)
echo Linking $@...
- $(CC) $(LDFLAGS) -o $@ admin.o libcgi.a $(LIBS)
+ $(LD_CC) $(LDFLAGS) -o $@ admin.o -lcupscgi $(LIBS)
#
# classes.cgi
#
-classes.cgi: classes.o ../Makedefs ../cups/$(LIBCUPS) libcgi.a
+classes.cgi: classes.o ../Makedefs ../cups/$(LIBCUPS) $(LIBCUPSCGI)
echo Linking $@...
- $(CC) $(LDFLAGS) -o $@ classes.o libcgi.a $(LIBS)
+ $(LD_CC) $(LDFLAGS) -o $@ classes.o -lcupscgi $(LIBS)
#
# help.cgi
#
-help.cgi: help.o ../Makedefs libcgi.a
+help.cgi: help.o ../Makedefs ../cups/$(LIBCUPS) $(LIBCUPSCGI)
echo Linking $@...
- $(CC) $(LDFLAGS) -o $@ help.o libcgi.a $(LIBS)
+ $(LD_CC) $(LDFLAGS) -o $@ help.o -lcupscgi $(LIBS)
#
# jobs.cgi
#
-jobs.cgi: jobs.o ../Makedefs ../cups/$(LIBCUPS) libcgi.a
+jobs.cgi: jobs.o ../Makedefs ../cups/$(LIBCUPS) $(LIBCUPSCGI)
echo Linking $@...
- $(CC) $(LDFLAGS) -o $@ jobs.o libcgi.a $(LIBS)
+ $(LD_CC) $(LDFLAGS) -o $@ jobs.o -lcupscgi $(LIBS)
+
+
+#
+# makedocset
+#
+
+makedocset: makedocset.o ../Makedefs libcupscgi.a ../cups/$(LIBCUPSSTATIC)
+ echo Linking $@...
+ $(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ makedocset.o libcupscgi.a \
+ ../cups/$(LIBCUPSSTATIC) $(COMMONLIBS) $(SSLLIBS) $(DNSSDLIBS) \
+ $(LIBZ) $(LIBGSSAPI)
#
# printers.cgi
#
-printers.cgi: printers.o ../Makedefs ../cups/$(LIBCUPS) libcgi.a
+printers.cgi: printers.o ../Makedefs ../cups/$(LIBCUPS) $(LIBCUPSCGI)
echo Linking $@...
- $(CC) $(LDFLAGS) -o $@ printers.o libcgi.a $(LIBS)
+ $(LD_CC) $(LDFLAGS) -o $@ printers.o -L. -lcupscgi $(LIBS)
#
# testcgi
#
-testcgi: testcgi.o ../Makedefs libcgi.a
+testcgi: testcgi.o ../Makedefs libcupscgi.a ../cups/$(LIBCUPSSTATIC)
echo Linking $@...
- $(CC) $(LDFLAGS) -o $@ testcgi.o libcgi.a $(LIBS)
+ $(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testcgi.o libcupscgi.a \
+ ../cups/$(LIBCUPSSTATIC) $(COMMONLIBS) $(SSLLIBS) $(DNSSDLIBS) \
+ $(LIBZ) $(LIBGSSAPI)
+ echo Testing CGI API...
+ ./testcgi
#
# testhi
#
-testhi: testhi.o ../Makedefs libcgi.a
+testhi: testhi.o ../Makedefs libcupscgi.a ../cups/$(LIBCUPSSTATIC)
echo Linking $@...
- $(CC) $(LDFLAGS) -o $@ testhi.o libcgi.a $(LIBS)
+ $(LD_CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testhi.o libcupscgi.a \
+ ../cups/$(LIBCUPSSTATIC) $(COMMONLIBS) $(SSLLIBS) $(DNSSDLIBS) \
+ $(LIBZ) $(LIBGSSAPI)
+ echo Testing help index API...
+ ./testhi
#
-# Dependencies...
+# testtemplate
#
-include Dependencies
+testtemplate: testtemplate.o ../Makedefs libcupscgi.a ../cups/$(LIBCUPSSTATIC)
+ echo Linking $@...
+ $(LD_CC) $(LDFLAGS) -o $@ testtemplate.o libcupscgi.a ../cups/$(LIBCUPSSTATIC) \
+ $(COMMONLIBS) $(SSLLIBS) $(DNSSDLIBS) $(LIBZ) $(LIBGSSAPI)
#
-# End of "$Id: Makefile 4869 2005-12-06 02:43:40Z mike $".
+# Dependencies...
#
+
+include Dependencies