2 # "$Id: Makefile 11173 2013-07-23 12:31:34Z msweet $"
4 # Filter 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/".
15 # This file is subject to the Apple OS-Developed Software exception.
39 IMAGEOBJS = error.o interpret.o raster.o
41 commandtops.o gziptoany.o common.o pstops.o \
42 rasterbench.o rastertoepson.o rastertohp.o rastertolabel.o \
43 rastertopwg.o testraster.o
54 # Make library targets...
64 unittests: $(UNITTARGETS)
68 # Clean all object files...
72 $(RM) $(OBJS) $(TARGETS) $(UNITTARGETS)
73 $(RM) libcupsimage.so libcupsimage.sl libcupsimage.dylib
77 # Update dependencies (without system header dependencies...)
81 $(CC) -MM $(ALL_CFLAGS) $(OBJS:.o=.c) >Dependencies
85 # Install all targets...
88 install: all install-data install-headers install-libs install-exec
92 # Install data files...
103 $(INSTALL_DIR) -m 755 $(SERVERBIN)/filter
104 for file in $(FILTERS); do \
105 $(INSTALL_BIN) $$file $(SERVERBIN)/filter; \
107 $(RM) $(SERVERBIN)/filter/rastertodymo
108 $(LN) rastertolabel $(SERVERBIN)/filter/rastertodymo
109 if test "x$(SYMROOT)" != "x"; then \
110 $(INSTALL_DIR) $(SYMROOT); \
111 for file in $(FILTERS); do \
112 cp $$file $(SYMROOT); \
125 # Install libraries...
128 install-libs: $(INSTALLSTATIC)
129 $(INSTALL_DIR) -m 755 $(LIBDIR)
130 $(INSTALL_LIB) $(LIBCUPSIMAGE) $(LIBDIR)
131 -if test $(LIBCUPSIMAGE) = "libcupsimage.so.2" -o $(LIBCUPSIMAGE) = "libcupsimage.sl.2"; then \
132 $(RM) $(LIBDIR)/`basename $(LIBCUPSIMAGE) .2`; \
133 $(LN) $(LIBCUPSIMAGE) $(LIBDIR)/`basename $(LIBCUPSIMAGE) .2`; \
135 -if test $(LIBCUPSIMAGE) = "libcupsimage.2.dylib"; then \
136 $(RM) $(LIBDIR)/libcupsimage.dylib; \
137 $(LN) $(LIBCUPSIMAGE) $(LIBDIR)/libcupsimage.dylib; \
139 if test "x$(SYMROOT)" != "x"; then \
140 $(INSTALL_DIR) $(SYMROOT); \
141 cp $(LIBCUPSIMAGE) $(SYMROOT); \
145 $(INSTALL_DIR) -m 755 $(LIBDIR)
146 $(INSTALL_LIB) -m 755 libcupsimage.a $(LIBDIR)
147 $(RANLIB) $(LIBDIR)/libcupsimage.a
148 $(CHMOD) 555 $(LIBDIR)/libcupsimage.a
152 # Uninstall all targets...
156 for file in $(FILTERS); do \
157 $(RM) $(SERVERBIN)/filter/$$file; \
159 $(RM) $(SERVERBIN)/filter/rastertodymo
160 -$(RMDIR) $(SERVERBIN)/filter
161 -$(RMDIR) $(SERVERBIN)
162 $(RM) $(LIBDIR)/libcupsimage.2.dylib
163 $(RM) $(LIBDIR)/libcupsimage.a
164 $(RM) $(LIBDIR)/libcupsimage.dylib
165 $(RM) $(LIBDIR)/libcupsimage_s.a
166 $(RM) $(LIBDIR)/libcupsimage.sl
167 $(RM) $(LIBDIR)/libcupsimage.sl.2
168 $(RM) $(LIBDIR)/libcupsimage.so
169 $(RM) $(LIBDIR)/libcupsimage.so.2
174 # Automatic API help files...
178 echo Generating CUPS API help files...
179 mxmldoc --section "Programming" --title "Raster API" \
180 --css ../doc/cups-printable.css \
181 --header api-raster.header --intro api-raster.shtml \
183 ../cups/raster.h interpret.c raster.c \
184 >../doc/help/api-raster.html
185 mxmldoc --tokens help/api-raster.html api-raster.xml >../doc/help/api-raster.tokens
187 mxmldoc --section "Programming" \
188 --title "Developing PostScript Printer Drivers" \
189 --css ../doc/cups-printable.css \
190 --header postscript-driver.header \
191 --intro postscript-driver.shtml \
192 >../doc/help/postscript-driver.html
193 mxmldoc --section "Programming" \
194 --title "Introduction to the PPD Compiler" \
195 --css ../doc/cups-printable.css \
196 --header ppd-compiler.header \
197 --intro ppd-compiler.shtml \
198 >../doc/help/ppd-compiler.html
199 mxmldoc --section "Programming" \
200 --title "Developing Raster Printer Drivers" \
201 --css ../doc/cups-printable.css \
202 --header raster-driver.header \
203 --intro raster-driver.shtml \
204 >../doc/help/raster-driver.html
205 mxmldoc --section "Specifications" \
206 --title "CUPS PPD Extensions" \
207 --css ../doc/cups-printable.css \
208 --header spec-ppd.header \
209 --intro spec-ppd.shtml \
210 >../doc/help/spec-ppd.html
213 echo Generating CUPS API help files...
214 mxmldoc --section "Programming" --title "Raster API" \
215 --framed ../cups/api-raster \
216 --css ../doc/cups-printable.css \
217 --header api-raster.header --intro api-raster.shtml \
218 ../cups/raster.h interpret.c raster.c
219 mxmldoc --section "Programming" \
220 --title "Developing PostScript Printer Drivers" \
221 --framed ../cups/postscript-driver \
222 --css ../doc/cups-printable.css \
223 --header postscript-driver.header \
224 --intro postscript-driver.shtml
225 mxmldoc --section "Programming" \
226 --title "Introduction to the PPD Compiler" \
227 --framed ../cups/ppd-compiler \
228 --css ../doc/cups-printable.css \
229 --header ppd-compiler.header \
230 --intro ppd-compiler.shtml
231 mxmldoc --section "Programming" \
232 --title "Developing Raster Printer Drivers" \
233 --framed ../cups/raster-driver \
234 --css ../doc/cups-printable.css \
235 --header raster-driver.header \
236 --intro raster-driver.shtml
237 mxmldoc --section "Specifications" \
238 --title "CUPS PPD Extensions" \
239 --framed ../cups/spec-ppd \
240 --css ../doc/cups-printable.css \
241 --header spec-ppd.header \
242 --intro spec-ppd.shtml \
249 commandtops: commandtops.o ../cups/$(LIBCUPS)
251 $(CC) $(LDFLAGS) -o $@ commandtops.o $(LIBS)
258 gziptoany: gziptoany.o ../Makedefs ../cups/$(LIBCUPS)
260 $(CC) $(LDFLAGS) -o $@ gziptoany.o $(LIBZ) $(LIBS)
264 # libcupsimage.so.2, libcupsimage.sl.2
267 libcupsimage.so.2 libcupsimage.sl.2: $(IMAGEOBJS)
269 $(DSO) $(ARCHFLAGS) $(DSOFLAGS) -o $@ $(IMAGEOBJS) $(DSOLIBS) \
270 -L../cups $(LINKCUPS)
271 $(RM) `basename $@ .2`
272 $(LN) $@ `basename $@ .2`
276 # libcupsimage.2.dylib
279 libcupsimage.2.dylib: $(IMAGEOBJS) $(LIBCUPSIMAGEORDER)
281 $(DSO) $(ARCHFLAGS) $(DSOFLAGS) -o $@ \
282 -install_name $(libdir)/$@ \
283 -current_version 2.3.0 \
284 -compatibility_version 2.0.0 \
285 $(IMAGEOBJS) $(DSOLIBS) -L../cups $(LINKCUPS)
286 $(RM) libcupsimage.dylib
287 $(LN) $@ libcupsimage.dylib
294 libcupsimage_s.a: $(IMAGEOBJS) libcupsimage_s.exp
296 $(DSO) $(DSOFLAGS) -Wl,-berok,-bexport:libcupsimage_s.exp \
297 -o libcupsimage_s.o $(IMAGEOBJS) $(DSOLIBS)
299 $(AR) $(ARFLAGS) $@ libcupsimage_s.o
306 libcupsimage.la: $(IMAGEOBJS)
308 $(DSO) $(ARCHFLAGS) $(DSOFLAGS) -o $@ $(IMAGEOBJS:.o=.lo) $(DSOLIBS) \
309 -L../cups $(LINKCUPS) \
310 -rpath $(LIBDIR) -version-info 2:3
317 libcupsimage.a: $(IMAGEOBJS)
320 $(AR) $(ARFLAGS) $@ $(IMAGEOBJS)
328 pstops: pstops.o common.o ../cups/$(LIBCUPS)
330 $(CC) $(LDFLAGS) -o $@ pstops.o common.o $(LIBS)
337 rastertoepson: rastertoepson.o ../cups/$(LIBCUPS) $(LIBCUPSIMAGE)
339 $(CC) $(LDFLAGS) -o $@ rastertoepson.o $(LINKCUPSIMAGE) $(IMGLIBS) $(LIBS)
346 rastertohp: rastertohp.o ../cups/$(LIBCUPS) $(LIBCUPSIMAGE)
348 $(CC) $(LDFLAGS) -o $@ rastertohp.o $(LINKCUPSIMAGE) $(IMGLIBS) $(LIBS)
355 rastertolabel: rastertolabel.o ../cups/$(LIBCUPS) $(LIBCUPSIMAGE)
357 $(CC) $(LDFLAGS) -o $@ rastertolabel.o $(LINKCUPSIMAGE) $(IMGLIBS) $(LIBS)
364 rastertopwg: rastertopwg.o ../cups/$(LIBCUPS) $(LIBCUPSIMAGE)
366 $(CC) $(LDFLAGS) -o $@ rastertopwg.o $(LINKCUPSIMAGE) $(IMGLIBS) $(LIBS)
373 testraster: testraster.o ../cups/$(LIBCUPSSTATIC) libcupsimage.a
375 $(CC) $(ARCHFLAGS) $(LDFLAGS) -o $@ testraster.o libcupsimage.a \
376 ../cups/$(LIBCUPSSTATIC) $(IMGLIBS) $(DSOLIBS) $(COMMONLIBS) \
377 $(SSLLIBS) $(DNSSDLIBS) $(LIBGSSAPI)
378 echo Running raster API tests...
386 rasterbench: rasterbench.o libcupsimage.a
388 $(CC) $(LDFLAGS) -o $@ rasterbench.o libcupsimage.a $(LIBS)
399 # End of "$Id: Makefile 11173 2013-07-23 12:31:34Z msweet $".