]> git.ipfire.org Git - thirdparty/cups.git/blob - filter/Makefile
Merge changes from CUPS 1.6svn-r10310.
[thirdparty/cups.git] / filter / Makefile
1 #
2 # "$Id: Makefile 7871 2008-08-27 21:12:43Z mike $"
3 #
4 # Filter makefile for CUPS.
5 #
6 # Copyright 2007-2012 by Apple Inc.
7 # Copyright 1997-2006 by Easy Software Products.
8 #
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/".
14 #
15 # This file is subject to the Apple OS-Developed Software exception.
16 #
17
18 include ../Makedefs
19
20
21 FILTERS = \
22 commandtops \
23 gziptoany \
24 pstops \
25 rastertoepson \
26 rastertohp \
27 rastertolabel \
28 rastertopwg
29 LIBTARGETS = \
30 $(LIBCUPSIMAGE) \
31 libcupsimage.a
32 UNITTARGETS = \
33 rasterbench \
34 testraster
35 TARGETS = \
36 $(LIBTARGETS) \
37 $(FILTERS)
38
39 IMAGEOBJS = error.o interpret.o raster.o
40 OBJS = $(IMAGEOBJS) \
41 commandtops.o gziptoany.o common.o pstops.o \
42 rasterbench.o rastertoepson.o rastertohp.o rastertolabel.o \
43 rastertopwg.o testraster.o
44
45
46 #
47 # Make all targets...
48 #
49
50 all: $(TARGETS)
51
52
53 #
54 # Make library targets...
55 #
56
57 libs: $(LIBTARGETS)
58
59
60 #
61 # Make unit tests...
62 #
63
64 unittests: $(UNITTARGETS)
65
66
67 #
68 # Clean all object files...
69 #
70
71 clean:
72 $(RM) $(OBJS) $(TARGETS) $(UNITTARGETS)
73 $(RM) libcupsimage.so libcupsimage.sl libcupsimage.dylib
74
75
76 #
77 # Update dependencies (without system header dependencies...)
78 #
79
80 depend:
81 $(CC) -MM $(ALL_CFLAGS) $(OBJS:.o=.c) >Dependencies
82
83
84 #
85 # Install all targets...
86 #
87
88 install: all install-data install-headers install-libs install-exec
89
90
91 #
92 # Install data files...
93 #
94
95 install-data:
96
97
98 #
99 # Install programs...
100 #
101
102 install-exec:
103 $(INSTALL_DIR) -m 755 $(SERVERBIN)/filter
104 for file in $(FILTERS); do \
105 $(INSTALL_BIN) $$file $(SERVERBIN)/filter; \
106 done
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); \
113 done \
114 fi
115
116
117 #
118 # Install headers...
119 #
120
121 install-headers:
122
123
124 #
125 # Install libraries...
126 #
127
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`; \
134 fi
135 -if test $(LIBCUPSIMAGE) = "libcupsimage.2.dylib"; then \
136 $(RM) $(LIBDIR)/libcupsimage.dylib; \
137 $(LN) $(LIBCUPSIMAGE) $(LIBDIR)/libcupsimage.dylib; \
138 fi
139 if test "x$(SYMROOT)" != "x"; then \
140 $(INSTALL_DIR) $(SYMROOT); \
141 cp $(LIBCUPSIMAGE) $(SYMROOT); \
142 fi
143
144 installstatic:
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
149
150
151 #
152 # Uninstall all targets...
153 #
154
155 uninstall:
156 for file in $(FILTERS); do \
157 $(RM) $(SERVERBIN)/filter/$$file; \
158 done
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
170 -$(RMDIR) $(LIBDIR)
171
172
173 #
174 # Automatic API help files...
175 #
176
177 apihelp:
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 \
182 api-raster.xml \
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
186 $(RM) api-raster.xml
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
211
212 framedhelp:
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 \
243
244
245 #
246 # commandtops
247 #
248
249 commandtops: commandtops.o ../cups/$(LIBCUPS)
250 echo Linking $@...
251 $(CC) $(LDFLAGS) -o $@ commandtops.o $(LIBS)
252
253
254 #
255 # gziptoany
256 #
257
258 gziptoany: gziptoany.o ../Makedefs ../cups/$(LIBCUPS)
259 echo Linking $@...
260 $(CC) $(LDFLAGS) -o $@ gziptoany.o $(LIBZ) $(LIBS)
261
262
263 #
264 # libcupsimage.so.2, libcupsimage.sl.2
265 #
266
267 libcupsimage.so.2 libcupsimage.sl.2: $(IMAGEOBJS)
268 echo Linking $@...
269 $(DSO) $(ARCHFLAGS) $(DSOFLAGS) -o $@ $(IMAGEOBJS) $(DSOLIBS) \
270 -L../cups $(LINKCUPS)
271 $(RM) `basename $@ .2`
272 $(LN) $@ `basename $@ .2`
273
274
275 #
276 # libcupsimage.2.dylib
277 #
278
279 libcupsimage.2.dylib: $(IMAGEOBJS) $(LIBCUPSIMAGEORDER)
280 echo Linking $@...
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
288
289
290 #
291 # libcupsimage_s.a
292 #
293
294 libcupsimage_s.a: $(IMAGEOBJS) libcupsimage_s.exp
295 echo Linking $@...
296 $(DSO) $(DSOFLAGS) -Wl,-berok,-bexport:libcupsimage_s.exp \
297 -o libcupsimage_s.o $(IMAGEOBJS) $(DSOLIBS)
298 $(RM) $@
299 $(AR) $(ARFLAGS) $@ libcupsimage_s.o
300
301
302 #
303 # libcupsimage.la
304 #
305
306 libcupsimage.la: $(IMAGEOBJS)
307 echo Linking $@...
308 $(DSO) $(ARCHFLAGS) $(DSOFLAGS) -o $@ $(IMAGEOBJS:.o=.lo) $(DSOLIBS) \
309 -L../cups $(LINKCUPS) \
310 -rpath $(LIBDIR) -version-info 2:3
311
312
313 #
314 # libcupsimage.a
315 #
316
317 libcupsimage.a: $(IMAGEOBJS)
318 echo Archiving $@...
319 $(RM) $@
320 $(AR) $(ARFLAGS) $@ $(IMAGEOBJS)
321 $(RANLIB) $@
322
323
324 #
325 # pstops
326 #
327
328 pstops: pstops.o common.o ../cups/$(LIBCUPS)
329 echo Linking $@...
330 $(CC) $(LDFLAGS) -o $@ pstops.o common.o $(LIBS)
331
332
333 #
334 # rastertoepson
335 #
336
337 rastertoepson: rastertoepson.o ../cups/$(LIBCUPS) $(LIBCUPSIMAGE)
338 echo Linking $@...
339 $(CC) $(LDFLAGS) -o $@ rastertoepson.o $(LINKCUPSIMAGE) $(IMGLIBS) $(LIBS)
340
341
342 #
343 # rastertohp
344 #
345
346 rastertohp: rastertohp.o ../cups/$(LIBCUPS) $(LIBCUPSIMAGE)
347 echo Linking $@...
348 $(CC) $(LDFLAGS) -o $@ rastertohp.o $(LINKCUPSIMAGE) $(IMGLIBS) $(LIBS)
349
350
351 #
352 # rastertolabel
353 #
354
355 rastertolabel: rastertolabel.o ../cups/$(LIBCUPS) $(LIBCUPSIMAGE)
356 echo Linking $@...
357 $(CC) $(LDFLAGS) -o $@ rastertolabel.o $(LINKCUPSIMAGE) $(IMGLIBS) $(LIBS)
358
359
360 #
361 # rastertopwg
362 #
363
364 rastertopwg: rastertopwg.o ../cups/$(LIBCUPS) $(LIBCUPSIMAGE)
365 echo Linking $@...
366 $(CC) $(LDFLAGS) -o $@ rastertopwg.o $(LINKCUPSIMAGE) $(IMGLIBS) $(LIBS)
367
368
369 #
370 # testraster
371 #
372
373 testraster: testraster.o ../cups/$(LIBCUPSSTATIC) libcupsimage.a
374 echo Linking $@...
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...
379 ./testraster
380
381
382 #
383 # rasterbench
384 #
385
386 rasterbench: rasterbench.o libcupsimage.a
387 echo Linking $@...
388 $(CC) $(LDFLAGS) -o $@ rasterbench.o libcupsimage.a $(LIBS)
389
390
391 #
392 # Dependencies...
393 #
394
395 include Dependencies
396
397
398 #
399 # End of "$Id: Makefile 7871 2008-08-27 21:12:43Z mike $".
400 #