2 # "$Id: Makefile 7875 2008-08-27 22:53:31Z mike $"
4 # Scheduler Makefile for the Common UNIX Printing System (CUPS).
6 # Copyright 2007-2008 by Apple Inc.
7 # Copyright 1997-2007 by Easy Software Products, all rights reserved.
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/".
94 # Make library targets...
104 unittests
: $(UNITTARGETS
)
108 # Clean all object files...
113 $(RM
) $(TARGETS
) $(UNITTARGETS
) convert
114 $(RM
) libcupsmime.so libcupsmime.sl libcupsmime.dylib
118 # Update dependencies (without system header dependencies...)
122 makedepend
-Y
-I..
-fDependencies
$(COBJS
:.o
=.c
) \
123 $(CXXOBJS
:.o
=.
cxx) >/dev
/null
2>&1
127 # Install all targets...
130 install: all install-data install-headers install-libs install-exec
134 # Install data files...
138 echo Creating
$(SERVERBIN
)/driver...
139 $(INSTALL_DIR
) -m
755 $(SERVERBIN
)/driver
140 echo Creating
$(SERVERROOT
)...
141 $(INSTALL_DIR
) -m
755 $(SERVERROOT
)
142 -chgrp
$(CUPS_GROUP
) $(SERVERROOT
)
143 echo Creating
$(SERVERROOT
)/interfaces...
144 $(INSTALL_DIR
) -m
755 $(SERVERROOT
)/interfaces
145 -chgrp
$(CUPS_GROUP
) $(SERVERROOT
)/interfaces
146 echo Creating
$(SERVERROOT
)/ppd...
147 $(INSTALL_DIR
) -m
755 $(SERVERROOT
)/ppd
148 -chgrp
$(CUPS_GROUP
) $(SERVERROOT
)/ppd
149 -if
test "x`uname`" != xDarwin
; then \
150 echo Creating
$(SERVERROOT
)/ssl...
; \
151 $(INSTALL_DIR
) -m
700 $(SERVERROOT
)/ssl
; \
152 chgrp
$(CUPS_GROUP
) $(SERVERROOT
)/ssl || true
; \
153 echo Creating
$(STATEDIR
)...
; \
154 $(INSTALL_DIR
) -m
755 $(STATEDIR
); \
155 echo Creating
$(STATEDIR
)/certs...
; \
156 $(INSTALL_DIR
) -m
511 $(STATEDIR
)/certs
; \
157 chgrp
$(CUPS_PRIMARY_SYSTEM_GROUP
) $(STATEDIR
)/certs || true
; \
159 echo Creating
$(LOGDIR
)...
160 $(INSTALL_DIR
) -m
755 $(LOGDIR
)
161 echo Creating
$(REQUESTS
)...
162 $(INSTALL_DIR
) -m
710 $(REQUESTS
)
163 -chgrp
$(CUPS_GROUP
) $(REQUESTS
)
164 echo Creating
$(REQUESTS
)/tmp...
165 $(INSTALL_DIR
) -m
1770 $(REQUESTS
)/tmp
166 -chgrp
$(CUPS_GROUP
) $(REQUESTS
)/tmp
167 echo Creating
$(CACHEDIR
)...
168 $(INSTALL_DIR
) -m
775 $(CACHEDIR
)
169 -chgrp
$(CUPS_GROUP
) $(CACHEDIR
)
170 # echo Creating $(CACHEDIR)/ppd...
171 # $(INSTALL_DIR) -m 755 $(CACHEDIR)/ppd
172 # -chgrp $(CUPS_GROUP) $(CACHEDIR)/ppd
176 # Install programs...
180 echo Installing programs in
$(SBINDIR
)...
181 $(INSTALL_DIR
) -m
755 $(SBINDIR
)
182 $(INSTALL_BIN
) cupsd
$(SBINDIR
)
183 $(INSTALL_BIN
) cupsfilter
$(SBINDIR
)
184 -if
test "x`uname`" = xDarwin
; then \
185 $(INSTALL_DIR
) $(BUILDROOT
)/System
/Library
/Printers
/Libraries
; \
186 $(LN
) $(sbindir
)/cupsfilter
$(BUILDROOT
)/System
/Library
/Printers
/Libraries
/convert
; \
188 echo Installing programs in
$(SERVERBIN
)/daemon...
189 $(INSTALL_DIR
) -m
755 $(SERVERBIN
)
190 $(INSTALL_DIR
) -m
755 $(SERVERBIN
)/daemon
191 $(INSTALL_BIN
) cups-deviced
$(SERVERBIN
)/daemon
192 $(INSTALL_BIN
) cups-driverd
$(SERVERBIN
)/daemon
193 $(INSTALL_BIN
) cups-lpd
$(SERVERBIN
)/daemon
194 $(INSTALL_BIN
) cups-polld
$(SERVERBIN
)/daemon
195 if
test "x$(SYMROOT)" != "x"; then \
196 $(INSTALL_DIR
) $(SYMROOT
); \
197 for file in
$(TARGETS
); do \
198 cp
$$file $(SYMROOT
); \
208 echo Installing header files in
$(INCLUDEDIR
)/cups...
209 $(INSTALL_DIR
) -m
755 $(INCLUDEDIR
)/cups
210 $(INSTALL_DATA
) mime.h
$(INCLUDEDIR
)/cups
214 # Install libraries...
217 install-libs
: $(INSTALLSTATIC
)
218 echo Installing libraries in
$(LIBDIR
)...
219 $(INSTALL_DIR
) -m
755 $(LIBDIR
)
220 $(INSTALL_LIB
) $(LIBCUPSMIME
) $(LIBDIR
)
221 if
test $(LIBCUPSMIME
) = "libcupsmime.so.1" -o
$(LIBCUPSMIME
) = "libcupsmime.sl.1"; then \
222 $(RM
) $(LIBDIR
)/`basename $(LIBCUPSMIME) .1`; \
223 $(LN
) $(LIBCUPSMIME
) $(LIBDIR
)/`basename $(LIBCUPSMIME) .1`; \
225 if
test $(LIBCUPSMIME
) = "libcupsmime.1.dylib"; then \
226 $(RM
) $(LIBDIR
)/libcupsmime.dylib
; \
227 $(LN
) $(LIBCUPSMIME
) $(LIBDIR
)/libcupsmime.dylib
; \
229 if
test "x$(SYMROOT)" != "x"; then \
230 $(INSTALL_DIR
) $(SYMROOT
); \
231 cp
$(LIBCUPSMIME
) $(SYMROOT
); \
235 $(INSTALL_DIR
) -m
755 $(LIBDIR
)
236 $(INSTALL_LIB
) libcupsmime.a
$(LIBDIR
)
237 $(RANLIB
) $(LIBDIR
)/libcupsmime.a
241 # Uninstall the scheduler...
245 $(RM
) $(SBINDIR
)/cupsd
246 $(RM
) $(SBINDIR
)/cupsfilter
247 $(RM
) $(SERVERBIN
)/daemon
/cups-deviced
248 $(RM
) $(SERVERBIN
)/daemon
/cups-driverd
249 $(RM
) $(SERVERBIN
)/daemon
/cups-lpd
250 $(RM
) $(SERVERBIN
)/daemon
/cups-polld
251 $(RM
) $(BUILDROOT
)/System
/Library
/Printers
/Libraries
/convert
252 -$(RMDIR
) $(STATEDIR
)/certs
253 -$(RMDIR
) $(STATEDIR
)
254 -$(RMDIR
) $(SERVERROOT
)/ppd
255 -$(RMDIR
) $(SERVERROOT
)/interfaces
256 -$(RMDIR
) $(SERVERROOT
)
257 -$(RMDIR
) $(SERVERBIN
)/driver
258 -$(RMDIR
) $(SERVERBIN
)/daemon
259 -$(RMDIR
) $(SERVERBIN
)
261 -$(RMDIR
) $(REQUESTS
)/tmp
262 -$(RMDIR
) $(REQUESTS
)
264 -$(RMDIR
) $(CACHEDIR
)
265 $(RM
) $(LIBDIR
)/libcupsmime
.1.dylib
266 $(RM
) $(LIBDIR
)/libcupsmime.a
267 $(RM
) $(LIBDIR
)/libcupsmime.dylib
268 $(RM
) $(LIBDIR
)/libcupsmime_s.a
269 $(RM
) $(LIBDIR
)/libcupsmime.sl
270 $(RM
) $(LIBDIR
)/libcupsmime.sl
.1
271 $(RM
) $(LIBDIR
)/libcupsmime.so
272 $(RM
) $(LIBDIR
)/libcupsmime.so
.1
274 $(RM
) $(INCLUDEDIR
)/cups
/mime.h
275 -$(RMDIR
) $(INCLUDEDIR
)/cups
279 # Automatic API help files...
283 mxmldoc
--section
"Programming" \
285 --css ..
/doc
/cups-printable.css \
286 --header api-mime.header
--intro api-mime.shtml \
287 mime.h
$(LIBOBJS
:.o
=.c
) >..
/doc
/help
/api-mime.html
290 mxmldoc
--framed api-mime \
291 --section
"Programming" \
293 --css ..
/doc
/cups-printable.css \
294 --header api-mime.header
--intro api-mime.shtml \
295 mime.h
$(LIBOBJS
:.o
=.c
)
299 # Make the scheduler executable, "cupsd".
302 cupsd
: $(CUPSDOBJS
) $(LIBCUPSMIME
) ..
/cups
/$(LIBCUPS
)
304 $(CC
) $(LDFLAGS
) -o cupsd
$(CUPSDOBJS
) -L.
-lcupsmime \
305 $(LIBZ
) $(SSLLIBS
) $(LIBSLP
) $(LIBLDAP
) $(PAMLIBS
) \
306 $(LIBPAPER
) $(LIBMALLOC
) $(CUPSDLIBS
) $(DNSSDLIBS
) $(LIBS
) \
307 $(LIBGSSAPI
) $(LIBWRAP
)
309 cupsd-static
: $(CUPSDOBJS
) libcupsmime.a ..
/cups
/libcups.a
311 $(CC
) $(LDFLAGS
) -o cupsd-static
$(CUPSDOBJS
) libcupsmime.a \
312 $(LIBZ
) $(SSLLIBS
) $(LIBSLP
) $(LIBLDAP
) $(PAMLIBS
) \
313 ..
/cups
/libcups.a
$(COMMONLIBS
) $(LIBZ
) $(LIBPAPER
) \
314 $(LIBMALLOC
) $(CUPSDLIBS
) $(DNSSDLIBS
) $(LIBGSSAPI
) \
319 # Make the cupsfilter utility.
322 cupsfilter
: cupsfilter.o
$(LIBCUPSMIME
) ..
/cups
/$(LIBCUPS
)
324 $(CC
) $(LDFLAGS
) -o cupsfilter cupsfilter.o
-L.
-lcupsmime
$(LIBS
)
326 $(LN
) cupsfilter convert
330 # Make the device daemon, "cups-deviced".
333 cups-deviced
: cups-deviced.o util.o ..
/cups
/$(LIBCUPS
)
335 $(CC
) $(LDFLAGS
) -o cups-deviced cups-deviced.o util.o
$(LIBS
)
339 # Make the driver daemon, "cups-driverd".
342 cups-driverd
: cups-driverd.o util.o ..
/cups
/$(LIBCUPS
) ..
/ppdc
/$(LIBCUPSPPDC
)
344 $(CXX
) $(LDFLAGS
) -o cups-driverd cups-driverd.o util.o \
345 -L..
/ppdc
-lcupsppdc
$(LIBS
)
349 # Make the line printer daemon, "cups-lpd".
352 cups-lpd
: cups-lpd.o ..
/cups
/$(LIBCUPS
)
354 $(CC
) $(LDFLAGS
) -o cups-lpd cups-lpd.o
$(LIBS
)
358 # Make the polling daemon, "cups-polld".
361 cups-polld
: cups-polld.o ..
/cups
/$(LIBCUPS
)
363 $(CC
) $(LDFLAGS
) -o cups-polld cups-polld.o
$(LIBS
)
367 # libcupsmime.so.1, libcupsmime.sl.1
370 libcupsmime.so
.1 libcupsmime.sl
.1: $(LIBOBJS
)
372 $(DSO
) $(ARCHFLAGS
) $(DSOFLAGS
) -o
$@
$(LIBOBJS
) $(LIBS
)
373 $(RM
) `basename $@ .1`
374 $(LN
) $@
`basename $@ .1`
378 # libcupsmime.1.dylib
381 libcupsmime
.1.dylib
: $(LIBOBJS
) libcupsmime.exp
383 $(DSO
) $(ARCHFLAGS
) $(DSOFLAGS
) -o
$@ \
384 -install_name
$(libdir)/$@ \
385 -current_version
1.0.0 \
386 -compatibility_version
1.0.0 \
387 -exported_symbols_list libcupsmime.exp \
389 $(RM
) libcupsmime.dylib
390 $(LN
) $@ libcupsmime.dylib
397 libcupsmime_s.a
: $(LIBOBJS
)
399 $(DSO
) $(DSOFLAGS
) -o libcupsmime_s.o
$(LIBOBJS
) $(LIBS
)
401 $(AR
) $(ARFLAGS
) $@ libcupsmime_s.o
408 libcupsmime.la
: $(LIBOBJS
)
410 $(CC
) $(ARCHFLAGS
) $(DSOFLAGS
) -o
$@
$(LIBOBJS
:.o
=.lo
) -rpath
$(LIBDIR
) \
411 -version-info
1:0 $(LIBS
)
418 libcupsmime.a
: $(LIBOBJS
)
421 $(AR
) $(ARFLAGS
) $@
$(LIBOBJS
)
426 # Make the test program, "testdirsvc".
429 testdirsvc
: testdirsvc.o
431 $(CC
) $(LDFLAGS
) -o testdirsvc testdirsvc.o
$(COMMONLIBS
) $(NETLIBS
)
435 # Make the test program, "testlpd".
438 testlpd
: testlpd.o ..
/cups
/libcups.a cups-lpd
440 $(CC
) $(LDFLAGS
) -o testlpd testlpd.o ..
/cups
/libcups.a \
441 $(COMMONLIBS
) $(LIBZ
) $(SSLLIBS
) $(LIBGSSAPI
)
448 testmime
: testmime.o libcupsmime.a ..
/cups
/libcups.a
450 $(CC
) $(ARCHFLAGS
) $(LDFLAGS
) -o
$@ testmime.o libcupsmime.a \
451 ..
/cups
/libcups.a
$(COMMONLIBS
) $(LIBZ
) $(SSLLIBS
) $(LIBGSSAPI
)
452 echo Running MIME tests...
457 # Make the test program, "testspeed".
460 testspeed
: testspeed.o ..
/cups
/libcups.a
462 $(CC
) $(LDFLAGS
) -o testspeed testspeed.o ..
/cups
/libcups.a \
463 $(SSLLIBS
) $(COMMONLIBS
) $(LIBZ
) $(LIBGSSAPI
)
467 # Make the test program, "testsub".
470 testsub
: testsub.o ..
/cups
/libcups.a
472 $(CC
) $(LDFLAGS
) -o testsub testsub.o ..
/cups
/libcups.a \
473 $(SSLLIBS
) $(COMMONLIBS
) $(LIBZ
) $(LIBGSSAPI
)
484 # End of "$Id: Makefile 7875 2008-08-27 22:53:31Z mike $".