4 # CGI makefile for CUPS.
6 # Copyright 2007-2012 by Apple Inc.
7 # Copyright 1997-2006 by Easy Software Products.
9 # These coded instructions, statements, and computer programs are the
10 # property of Apple Inc. and are protected by Federal copyright
11 # law. Distribution and use rights are outlined in the file "LICENSE.txt"
12 # which should have been included with this file. If this file is
13 # file is missing or damaged, see the license at "http://www.cups.org/".
66 # Make library targets...
69 libs
: $(LIBTARGETS
) $(UNITTESTS
)
76 unittests
: $(UNITTARGETS
)
80 # Clean all object files...
84 $(RM
) $(OBJS
) $(TARGETS
) $(UNITTARGETS
) makedocset
85 $(RM
) libcupscgi.so libcupscgi.sl libcupscgi.dylib
89 # Update dependencies (without system header dependencies...)
93 $(CC
) -MM
$(ALL_CFLAGS
) $(OBJS
:.o
=.c
) >Dependencies
97 # Install all targets...
100 install: all install-data install-headers install-libs install-exec
104 # Install data files...
111 # Install programs...
115 $(INSTALL_DIR
) -m
755 $(SERVERBIN
)/cgi-bin
116 for file in
$(CGIS
); do \
117 $(INSTALL_BIN
) $$file $(SERVERBIN
)/cgi-bin
; \
119 if
test "x$(SYMROOT)" != "x"; then \
120 $(INSTALL_DIR
) $(SYMROOT
); \
121 for file in
$(CGIS
); do \
122 cp
$$file $(SYMROOT
); \
123 dsymutil
$(SYMROOT
)/$$file; \
133 echo Installing header files in
$(INCLUDEDIR
)/cups...
134 $(INSTALL_DIR
) -m
755 $(INCLUDEDIR
)/cups
135 $(INSTALL_DATA
) cgi.h
$(INCLUDEDIR
)/cups
136 $(INSTALL_DATA
) help-index.h
$(INCLUDEDIR
)/cups
140 # Install libraries...
143 install-libs
: $(INSTALLSTATIC
)
144 echo Installing libraries in
$(LIBDIR
)...
145 $(INSTALL_DIR
) -m
755 $(LIBDIR
)
146 $(INSTALL_LIB
) $(LIBCUPSCGI
) $(LIBDIR
)
147 if
test $(LIBCUPSCGI
) = "libcupscgi.so.1" -o
$(LIBCUPSCGI
) = "libcupscgi.sl.1"; then \
148 $(RM
) $(LIBDIR
)/`basename $(LIBCUPSCGI) .1`; \
149 $(LN
) $(LIBCUPSCGI
) $(LIBDIR
)/`basename $(LIBCUPSCGI) .1`; \
151 if
test $(LIBCUPSCGI
) = "libcupscgi.1.dylib"; then \
152 $(RM
) $(LIBDIR
)/libcupscgi.dylib
; \
153 $(LN
) $(LIBCUPSCGI
) $(LIBDIR
)/libcupscgi.dylib
; \
155 if
test "x$(SYMROOT)" != "x"; then \
156 $(INSTALL_DIR
) $(SYMROOT
); \
157 cp
$(LIBCUPSCGI
) $(SYMROOT
); \
158 dsymutil
$(SYMROOT
)/$(LIBCUPSCGI
); \
162 $(INSTALL_DIR
) -m
755 $(LIBDIR
)
163 $(INSTALL_LIB
) -m
755 libcupscgi.a
$(LIBDIR
)
164 $(RANLIB
) $(LIBDIR
)/libcupscgi.a
165 $(CHMOD
) 555 $(LIBDIR
)/libcupscgi.a
169 # Uninstall all targets...
173 for file in
$(CGIS
); do \
174 $(RM
) $(SERVERBIN
)/cgi-bin
/$$file; \
176 -$(RMDIR
) $(SERVERBIN
)/cgi-bin
177 $(RM
) $(LIBDIR
)/libcupscgi
.1.dylib
178 $(RM
) $(LIBDIR
)/libcupscgi.a
179 $(RM
) $(LIBDIR
)/libcupscgi.dylib
180 $(RM
) $(LIBDIR
)/libcupscgi_s.a
181 $(RM
) $(LIBDIR
)/libcupscgi.sl
182 $(RM
) $(LIBDIR
)/libcupscgi.sl
.1
183 $(RM
) $(LIBDIR
)/libcupscgi.so
184 $(RM
) $(LIBDIR
)/libcupscgi.so
.1
186 $(RM
) $(INCLUDEDIR
)/cups
/cgi.h
187 $(RM
) $(INCLUDEDIR
)/cups
/help-index.h
188 -$(RMDIR
) $(INCLUDEDIR
)/cups
192 # Automatic API help files...
196 mxmldoc
--section
"Programming" \
198 --css ..
/doc
/cups-printable.css \
199 --header api-cgi.header
--intro api-cgi.shtml \
200 cgi.h help-index.h
$(LIBOBJS
:.o
=.c
) >..
/doc
/help
/api-cgi.html
201 mxmldoc
--tokens help
/api-cgi.html api-cgi.xml
>..
/doc
/help
/api-cgi.tokens
205 mxmldoc
--framed api-cgi \
206 --section
"Programming" \
208 --css ..
/doc
/cups-printable.css \
209 --header api-cgi.header
--intro api-cgi.shtml \
210 cgi.h help-index.h
$(LIBOBJS
:.o
=.c
)
214 # libcupscgi.so.1, libcupscgi.sl.1
217 libcupscgi.so
.1 libcupscgi.sl
.1: $(LIBOBJS
)
219 $(DSO
) $(ARCHFLAGS
) $(DSOFLAGS
) -o
$@
$(LIBOBJS
) $(LIBS
)
220 $(RM
) `basename $@ .1`
221 $(LN
) $@
`basename $@ .1`
228 libcupscgi
.1.dylib
: $(LIBOBJS
) libcupscgi.exp
230 $(DSO
) $(ARCHFLAGS
) $(DSOFLAGS
) -o
$@ \
231 -install_name
$(libdir)/$@ \
232 -current_version
1.0.0 \
233 -compatibility_version
1.0.0 \
234 -exported_symbols_list libcupscgi.exp \
236 $(RM
) libcupscgi.dylib
237 $(LN
) $@ libcupscgi.dylib
244 libcupscgi_s.a
: $(LIBOBJS
)
246 $(DSO
) $(DSOFLAGS
) -o libcupscgi_s.o
$(LIBOBJS
) $(LIBS
)
248 $(AR
) $(ARFLAGS
) $@ libcupscgi_s.o
255 libcupscgi.la
: $(LIBOBJS
)
257 $(CC
) $(ARCHFLAGS
) $(DSOFLAGS
) -o
$@
$(LIBOBJS
:.o
=.lo
) -rpath
$(LIBDIR
) \
258 -version-info
1:0 $(LIBS
)
265 libcupscgi.a
: $(LIBOBJS
)
268 $(AR
) $(ARFLAGS
) $@
$(LIBOBJS
)
276 admin.cgi
: admin.o ..
/Makedefs ..
/cups
/$(LIBCUPS
) $(LIBCUPSCGI
)
278 $(CC
) $(LDFLAGS
) -o
$@ admin.o
-lcupscgi
$(LIBS
)
285 classes.cgi
: classes.o ..
/Makedefs ..
/cups
/$(LIBCUPS
) $(LIBCUPSCGI
)
287 $(CC
) $(LDFLAGS
) -o
$@ classes.o
-lcupscgi
$(LIBS
)
294 help.cgi
: help.o ..
/Makedefs ..
/cups
/$(LIBCUPS
) $(LIBCUPSCGI
)
296 $(CC
) $(LDFLAGS
) -o
$@ help.o
-lcupscgi
$(LIBS
)
303 jobs.cgi
: jobs.o ..
/Makedefs ..
/cups
/$(LIBCUPS
) $(LIBCUPSCGI
)
305 $(CC
) $(LDFLAGS
) -o
$@ jobs.o
-lcupscgi
$(LIBS
)
312 makedocset
: makedocset.o ..
/Makedefs libcupscgi.a ..
/cups
/$(LIBCUPSSTATIC
)
314 $(CC
) $(ARCHFLAGS
) $(LDFLAGS
) -o
$@ makedocset.o libcupscgi.a \
315 ..
/cups
/$(LIBCUPSSTATIC
) $(COMMONLIBS
) $(SSLLIBS
) $(DNSSDLIBS
) \
323 printers.cgi
: printers.o ..
/Makedefs ..
/cups
/$(LIBCUPS
) $(LIBCUPSCGI
)
325 $(CC
) $(LDFLAGS
) -o
$@ printers.o
-L.
-lcupscgi
$(LIBS
)
332 testcgi
: testcgi.o ..
/Makedefs libcupscgi.a ..
/cups
/$(LIBCUPSSTATIC
)
334 $(CC
) $(ARCHFLAGS
) $(LDFLAGS
) -o
$@ testcgi.o libcupscgi.a \
335 ..
/cups
/$(LIBCUPSSTATIC
) $(COMMONLIBS
) $(SSLLIBS
) $(DNSSDLIBS
) \
337 echo Testing CGI API...
345 testhi
: testhi.o ..
/Makedefs libcupscgi.a ..
/cups
/$(LIBCUPSSTATIC
)
347 $(CC
) $(ARCHFLAGS
) $(LDFLAGS
) -o
$@ testhi.o libcupscgi.a \
348 ..
/cups
/$(LIBCUPSSTATIC
) $(COMMONLIBS
) $(SSLLIBS
) $(DNSSDLIBS
) \
350 echo Testing help index API...
358 testtemplate
: testtemplate.o ..
/Makedefs libcupscgi.a ..
/cups
/$(LIBCUPSSTATIC
)
360 $(CC
) $(LDFLAGS
) -o
$@ testtemplate.o libcupscgi.a ..
/cups
/$(LIBCUPSSTATIC
) \
361 $(COMMONLIBS
) $(SSLLIBS
) $(DNSSDLIBS
) $(LIBZ
) $(LIBGSSAPI
)
368 websearch
: websearch.o ..
/Makedefs libcupscgi.a ..
/cups
/$(LIBCUPSSTATIC
)
370 $(CC
) $(ARCHFLAGS
) $(LDFLAGS
) -o
$@ websearch.o libcupscgi.a \
371 ..
/cups
/$(LIBCUPSSTATIC
) $(COMMONLIBS
) $(SSLLIBS
) $(DNSSDLIBS
) \