]> git.ipfire.org Git - thirdparty/cups.git/blame - ppdc/Makefile
Update ipp documentation to reflect the behavior of configuring WiFi on IPP USB printers.
[thirdparty/cups.git] / ppdc / Makefile
CommitLineData
ac884b6a 1#
5a1d7a17 2# Makefile for the CUPS PPD Compiler.
ac884b6a 3#
21609267 4# Copyright © 2007-2019 by Apple Inc.
14435106 5# Copyright © 2002-2006 by Easy Software Products.
ac884b6a 6#
14435106
MS
7# Licensed under Apache License v2.0. See the file "LICENSE" for more
8# information.
ac884b6a
MS
9#
10
11#
12# Include standard definitions...
13#
14
15include ../Makedefs
16
17
18#
19# Object files...
20#
21
50fe7201 22LIBOBJS = \
ac884b6a
MS
23 ppdc-array.o \
24 ppdc-attr.o \
25 ppdc-catalog.o \
26 ppdc-choice.o \
27 ppdc-constraint.o \
28 ppdc-driver.o \
29 ppdc-file.o \
30 ppdc-filter.o \
31 ppdc-font.o \
32 ppdc-group.o \
33 ppdc-import.o \
34 ppdc-mediasize.o \
35 ppdc-message.o \
36 ppdc-option.o \
37 ppdc-profile.o \
38 ppdc-shared.o \
39 ppdc-source.o \
40 ppdc-string.o \
41 ppdc-variable.o
50fe7201
MS
42OBJS = \
43 $(LIBOBJS) \
61cf44e2 44 genstrings.o \
ac884b6a
MS
45 ppdc.o \
46 ppdhtml.o \
47 ppdi.o \
48 ppdmerge.o \
4509bb49
MS
49 ppdpo.o \
50 testcatalog.o
c9fc04c6 51LIBTARGETS = \
5f64df29
MS
52 libcupsppdc.a
53UNITTARGETS = \
54 ppdc-static \
f11a948a 55 ppdi-static \
5f64df29 56 testcatalog
61cf44e2 57EXECTARGETS = \
ac884b6a
MS
58 ppdc \
59 ppdhtml \
60 ppdi \
61 ppdmerge \
5f64df29 62 ppdpo
ac884b6a 63
61cf44e2
MS
64TARGETS = \
65 $(LIBTARGETS) \
66 $(EXECTARGETS) \
105922ec 67 $(LOCALTARGET)
61cf44e2 68
ac884b6a
MS
69
70#
71# Make everything...
72#
73
74all: $(TARGETS)
75
76
c9fc04c6
MS
77#
78# Make library targets...
79#
80
78312b3c 81libs:
c9fc04c6
MS
82
83
5f64df29
MS
84#
85# Make unit tests...
86#
87
88unittests: $(UNITTARGETS)
89
90
ac884b6a
MS
91#
92# Clean everything...
93#
94
95clean:
96 $(RM) $(OBJS) core
97 $(RM) *.bak *.bck core.*
105922ec 98 $(RM) $(TARGETS) $(UNITTARGETS) genstrings
f11a948a
MS
99 $(RM) -r ppd ppd2
100 $(RM) sample-import.drv sample.c test.drv
ac884b6a
MS
101
102
103#
104# Update dependencies...
105#
106
107depend:
12f89d24 108 $(CXX) -MM $(ALL_CXXFLAGS) $(OBJS:.o=.cxx) >Dependencies
50fe7201
MS
109
110
111#
112# Install all targets...
113#
114
115install: all install-data install-headers install-libs install-exec
116
117
118#
119# Install data files...
120#
121
122install-data:
123 $(INSTALL_DIR) $(DATADIR)/drv
634763e8 124 $(INSTALL_DATA) sample.drv $(DATADIR)/drv
ac884b6a
MS
125
126
127#
50fe7201 128# Install programs...
ac884b6a
MS
129#
130
50fe7201 131install-exec:
ac884b6a
MS
132 echo Installing PPD compiler programs...
133 $(INSTALL_DIR) $(BINDIR)
61cf44e2
MS
134 for file in $(EXECTARGETS); do \
135 $(INSTALL_BIN) $$file $(BINDIR); \
136 done
50fe7201
MS
137 if test "x$(SYMROOT)" != "x"; then \
138 $(INSTALL_DIR) $(SYMROOT); \
f8b3a85b 139 for file in $(EXECTARGETS); do \
50fe7201 140 cp $$file $(SYMROOT); \
cb7f98ee 141 dsymutil $(SYMROOT)/$$file; \
50fe7201
MS
142 done \
143 fi
144
145
146#
147# Install headers...
148#
149
150install-headers:
50fe7201
MS
151
152
153#
154# Install libraries...
155#
156
78312b3c 157install-libs:
50fe7201 158
ac884b6a
MS
159
160#
161# Uninstall...
162#
163
164uninstall:
61cf44e2
MS
165 for file in $(EXECTARGETS); do \
166 $(RM) $(BINDIR)/$$file; \
167 done
634763e8 168 $(RM) $(DATADIR)/drv/sample.drv
ac884b6a
MS
169 $(RMDIR) $(DATADIR)/drv
170
171
105922ec
MS
172#
173# Local programs (not built when cross-compiling...)
174#
175
176local: genstrings
177
178
61cf44e2
MS
179#
180# genstrings - generate GNU gettext strings.
181#
182
f8b3a85b 183genstrings: genstrings.o libcupsppdc.a ../cups/$(LIBCUPSSTATIC) \
61cf44e2
MS
184 sample.drv ../data/media.defs
185 echo Linking $@...
21609267 186 $(LD_CXX) $(ARCHFLAGS) $(ALL_LDFLAGS) -o genstrings genstrings.o \
3e391a8e 187 libcupsppdc.a $(LINKCUPSSTATIC)
00dbe99f 188 $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
61cf44e2
MS
189 echo Generating localization strings...
190 ./genstrings >sample.c
191
192
ac884b6a
MS
193#
194# ppdc, the PPD compiler.
195#
196
14435106 197ppdc: ppdc.o libcupsppdc.a ../cups/$(LIBCUPS)
ac884b6a 198 echo Linking $@...
3e391a8e 199 $(LD_CXX) $(ALL_LDFLAGS) -o $@ ppdc.o libcupsppdc.a $(COMMONLIBS) $(LINKCUPS)
00dbe99f 200 $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
ac884b6a
MS
201
202
6d2f911b 203ppdc-static: ppdc.o libcupsppdc.a ../cups/$(LIBCUPSSTATIC) foo.drv foo-fr.po
ac884b6a 204 echo Linking $@...
21609267 205 $(LD_CXX) $(ARCHFLAGS) $(ALL_LDFLAGS) -o ppdc-static ppdc.o libcupsppdc.a \
3e391a8e 206 $(LINKCUPSSTATIC)
00dbe99f 207 $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
ac884b6a
MS
208 echo Testing PPD compiler...
209 ./ppdc-static -l en,fr -I ../data foo.drv
210 ./ppdc-static -l en,fr -z -I ../data foo.drv
211
212
213#
214# ppdhtml, the PPD to HTML utility.
215#
216
14435106 217ppdhtml: ppdhtml.o libcupsppdc.a ../cups/$(LIBCUPS)
ac884b6a 218 echo Linking $@...
3e391a8e 219 $(LD_CXX) $(ALL_LDFLAGS) -o $@ ppdhtml.o libcupsppdc.a $(COMMONLIBS) $(LINKCUPS)
00dbe99f 220 $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
ac884b6a
MS
221
222
223#
224# ppdi, import PPD files.
225#
226
14435106 227ppdi: ppdi.o libcupsppdc.a ../cups/$(LIBCUPS)
ac884b6a 228 echo Linking $@...
3e391a8e 229 $(LD_CXX) $(ALL_LDFLAGS) -o $@ ppdi.o libcupsppdc.a $(COMMONLIBS) $(LINKCUPS)
00dbe99f 230 $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
ac884b6a
MS
231
232
14435106 233ppdi-static: ppdc-static ppdi.o libcupsppdc.a ../cups/$(LIBCUPSSTATIC)
f11a948a 234 echo Linking $@...
21609267 235 $(LD_CXX) $(ARCHFLAGS) $(ALL_LDFLAGS) -o ppdi-static ppdi.o libcupsppdc.a \
3e391a8e 236 $(LINKCUPSSTATIC)
00dbe99f 237 $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
f11a948a
MS
238 echo Testing PPD importer...
239 $(RM) -r ppd ppd2 sample-import.drv
be76a973 240 ./ppdc-static -l en -I ../data sample.drv
f11a948a 241 ./ppdi-static -I ../data -o sample-import.drv ppd/*
be76a973 242 ./ppdc-static -l en -I ../data -d ppd2 sample-import.drv
0268488e 243 if diff -r ppd ppd2 >/dev/null; then \
f11a948a
MS
244 echo PPD import OK; \
245 else \
246 echo PPD import FAILED; \
247 exit 1; \
248 fi
249
250
ac884b6a
MS
251#
252# ppdmerge, merge PPD files.
253#
254
255ppdmerge: ppdmerge.o ../cups/$(LIBCUPS)
256 echo Linking $@...
3e391a8e 257 $(LD_CXX) $(ALL_LDFLAGS) -o $@ ppdmerge.o $(LINKCUPS)
00dbe99f 258 $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
ac884b6a
MS
259
260
261#
262# ppdpo, create message catalog files.
263#
264
14435106 265ppdpo: ppdpo.o libcupsppdc.a ../cups/$(LIBCUPS)
ac884b6a 266 echo Linking $@...
3e391a8e 267 $(LD_CXX) $(ALL_LDFLAGS) -o $@ ppdpo.o libcupsppdc.a $(COMMONLIBS) $(LINKCUPS)
00dbe99f 268 $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
ac884b6a
MS
269
270
4509bb49
MS
271#
272# testcatalog, test ppdcCatalog class.
273#
274
f8b3a85b 275testcatalog: testcatalog.o libcupsppdc.a ../cups/$(LIBCUPSSTATIC)
4509bb49 276 echo Linking $@...
21609267 277 $(LD_CXX) $(ALL_LDFLAGS) -o $@ testcatalog.o libcupsppdc.a \
3e391a8e 278 $(LINKCUPSSTATIC)
00dbe99f 279 $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
4509bb49
MS
280
281
50fe7201
MS
282#
283# libcupsppdc.a
284#
285
286libcupsppdc.a: $(LIBOBJS)
287 echo Archiving $@...
ac884b6a 288 $(RM) $@
50fe7201 289 $(AR) $(ARFLAGS) $@ $(LIBOBJS)
ac884b6a
MS
290 $(RANLIB) $@
291
292
293#
294# Include dependencies...
295#
296
297include Dependencies