1# Copyright (C) 2001-2012 Artifex Software, Inc.
2# All Rights Reserved.
3#
4# This software is provided AS-IS with no warranty, either express or
5# implied.
6#
7# This software is distributed under license and may not be copied,
8# modified or distributed except as expressly authorized under the terms
9# of the license contained in the file LICENSE in this distribution.
10#
11# Refer to licensing information at http://www.artifex.com or contact
12# Artifex Software, Inc.,  7 Mt. Lassen Drive - Suite A-134, San Rafael,
13# CA  94903, U.S.A., +1(415)492-9861, for further information.
14#
15#
16# makefile for freetype as part of the monolithic gs build.
17#
18# Users of this makefile must define the following:
19#	FTSRCDIR    - the source directory
20#	FTGENDIR    - the generated intermediate file directory
21#	FTOBJDIR    - the object file directory
22#	FT_CFLAGS   - The include options for the freetype library
23#	SHARE_FT - 0 to compile in freetype, 1 to link a shared library
24#	FT_LIBS  - if SHARE_FT=1, the link options for the shared library
25
26# (Rename directories.)
27FTSRC=$(FTSRCDIR)$(D)src$(D)
28FTGEN=$(FTGENDIR)$(D)
29FTOBJ=$(FTOBJDIR)$(D)
30FTO_=$(O_)$(FTOBJ)
31
32# Define our local compiler alias
33# we must define FT2_BUILD_LIBRARY to get internal declarations
34# If GS is using the system zlib, freetype should also do so,
35# FT_CONFIG_SYSTEM_ZLIB is set by the top makefile.
36FTCC=$(CC_) $(I_)$(FTSRCDIR)$(D)include$(_I) -DFT2_BUILD_LIBRARY -DDARWIN_NO_CARBON $(FT_CONFIG_SYSTEM_ZLIB)
37
38# Define the name of this makefile.
39FT_MAK=$(GLSRC)freetype.mak
40
41# file complements for each component
42ft_autofit=\
43	$(FTOBJ)afangles.$(OBJ) \
44	$(FTOBJ)afcjk.$(OBJ) \
45	$(FTOBJ)afdummy.$(OBJ) \
46	$(FTOBJ)afglobal.$(OBJ) \
47	$(FTOBJ)afhints.$(OBJ) \
48	$(FTOBJ)afindic.$(OBJ) \
49	$(FTOBJ)aflatin.$(OBJ) \
50	$(FTOBJ)afloader.$(OBJ) \
51	$(FTOBJ)afmodule.$(OBJ) \
52	$(FTOBJ)afwarp.$(OBJ)
53
54ft_base=\
55	$(FTOBJ)ftadvanc.$(OBJ) \
56	$(FTOBJ)ftcalc.$(OBJ) \
57	$(FTOBJ)ftdbgmem.$(OBJ) \
58	$(FTOBJ)ftgloadr.$(OBJ) \
59	$(FTOBJ)ftobjs.$(OBJ) \
60	$(FTOBJ)ftoutln.$(OBJ) \
61	$(FTOBJ)ftrfork.$(OBJ) \
62	$(FTOBJ)ftsnames.$(OBJ) \
63	$(FTOBJ)ftstream.$(OBJ) \
64	$(FTOBJ)fttrigon.$(OBJ) \
65	$(FTOBJ)ftutil.$(OBJ) \
66	$(FTOBJ)ftbbox.$(OBJ) \
67	$(FTOBJ)ftbdf.$(OBJ) \
68	$(FTOBJ)ftbitmap.$(OBJ) \
69	$(FTOBJ)ftdebug.$(OBJ) \
70	$(FTOBJ)ftgasp.$(OBJ) \
71	$(FTOBJ)ftglyph.$(OBJ) \
72	$(FTOBJ)ftgxval.$(OBJ) \
73	$(FTOBJ)ftinit.$(OBJ) \
74	$(FTOBJ)ftlcdfil.$(OBJ) \
75	$(FTOBJ)ftmm.$(OBJ) \
76	$(FTOBJ)ftotval.$(OBJ) \
77	$(FTOBJ)ftpfr.$(OBJ) \
78	$(FTOBJ)ftstroke.$(OBJ) \
79	$(FTOBJ)ftsynth.$(OBJ) \
80	$(FTOBJ)ftsystem.$(OBJ) \
81	$(FTOBJ)fttype1.$(OBJ) \
82	$(FTOBJ)ftwinfnt.$(OBJ) \
83	$(FTOBJ)ftxf86.$(OBJ) \
84	$(FTOBJ)ftpatent.$(OBJ)
85
86ft_bdf=\
87	$(FTOBJ)bdflib.$(OBJ) \
88	$(FTOBJ)bdfdrivr.$(OBJ)
89
90ft_cache=\
91	$(FTOBJ)ftcbasic.$(OBJ) \
92	$(FTOBJ)ft2ccache.$(OBJ) \
93	$(FTOBJ)ftccmap.$(OBJ) \
94	$(FTOBJ)ftcglyph.$(OBJ) \
95	$(FTOBJ)ftcimage.$(OBJ) \
96	$(FTOBJ)ftcmanag.$(OBJ) \
97	$(FTOBJ)ftcmru.$(OBJ) \
98	$(FTOBJ)ftcsbits.$(OBJ)
99
100ft_cff=\
101	$(FTOBJ)cffobjs.$(OBJ) \
102	$(FTOBJ)cffload.$(OBJ) \
103	$(FTOBJ)cffgload.$(OBJ) \
104	$(FTOBJ)cffparse.$(OBJ) \
105	$(FTOBJ)cffcmap.$(OBJ) \
106	$(FTOBJ)cffdrivr.$(OBJ)
107
108ft_cid=\
109	$(FTOBJ)cidparse.$(OBJ) \
110	$(FTOBJ)cidload.$(OBJ) \
111	$(FTOBJ)cidriver.$(OBJ) \
112	$(FTOBJ)cidgload.$(OBJ) \
113	$(FTOBJ)cidobjs.$(OBJ)
114
115ft_gzip=$(FTOBJ)ftgzip.$(OBJ)
116
117ft_lzw=$(FTOBJ)ftlzw.$(OBJ)
118
119ft_pcf=\
120	$(FTOBJ)pcfdrivr.$(OBJ) \
121	$(FTOBJ)pcfread.$(OBJ) \
122	$(FTOBJ)pcfutil.$(OBJ)
123
124ft_pfr=\
125	$(FTOBJ)pfrload.$(OBJ) \
126	$(FTOBJ)pfrgload.$(OBJ) \
127	$(FTOBJ)pfrcmap.$(OBJ) \
128	$(FTOBJ)pfrdrivr.$(OBJ) \
129	$(FTOBJ)pfrsbit.$(OBJ) \
130	$(FTOBJ)pfrobjs.$(OBJ)
131
132ft_psaux=\
133	$(FTOBJ)psobjs.$(OBJ) \
134	$(FTOBJ)t1decode.$(OBJ) \
135	$(FTOBJ)t1cmap.$(OBJ) \
136	$(FTOBJ)afmparse.$(OBJ) \
137	$(FTOBJ)psconv.$(OBJ) \
138	$(FTOBJ)psauxmod.$(OBJ)
139
140ft_pshinter=\
141	$(FTOBJ)pshrec.$(OBJ) \
142	$(FTOBJ)pshglob.$(OBJ) \
143	$(FTOBJ)pshmod.$(OBJ) \
144	$(FTOBJ)pshalgo.$(OBJ)
145
146ft_psnames=\
147	$(FTOBJ)psmodule.$(OBJ) \
148	$(FTOBJ)pspic.$(OBJ)
149
150ft_raster=\
151	$(FTOBJ)ftraster.$(OBJ) \
152	$(FTOBJ)ftrend1.$(OBJ) \
153	$(FTOBJ)rastpic.$(OBJ)
154
155ft_smooth=\
156	$(FTOBJ)ftgrays.$(OBJ) \
157	$(FTOBJ)ftsmooth.$(OBJ) \
158	$(FTOBJ)ftspic.$(OBJ)
159
160ft_sfnt=\
161	$(FTOBJ)sfobjs.$(OBJ) \
162	$(FTOBJ)sfdriver.$(OBJ) \
163	$(FTOBJ)ttcmap.$(OBJ) \
164	$(FTOBJ)ttmtx.$(OBJ) \
165	$(FTOBJ)ttpost.$(OBJ) \
166	$(FTOBJ)ft2ttload.$(OBJ) \
167	$(FTOBJ)ttsbit.$(OBJ) \
168	$(FTOBJ)ttkern.$(OBJ) \
169	$(FTOBJ)ttbdf.$(OBJ) \
170	$(FTOBJ)sfntpic.$(OBJ)
171
172ft_truetype=\
173	$(FTOBJ)ttdriver.$(OBJ) \
174	$(FTOBJ)ft2ttobjs.$(OBJ) \
175	$(FTOBJ)ttpload.$(OBJ) \
176	$(FTOBJ)ttgload.$(OBJ) \
177	$(FTOBJ)ft2ttinterp.$(OBJ) \
178	$(FTOBJ)ttgxvar.$(OBJ) \
179	$(FTOBJ)ttpic.$(OBJ)
180
181ft_type1=\
182	$(FTOBJ)t1afm.$(OBJ) \
183	$(FTOBJ)t1driver.$(OBJ) \
184	$(FTOBJ)t1objs.$(OBJ) \
185	$(FTOBJ)t1load.$(OBJ) \
186	$(FTOBJ)t1gload.$(OBJ) \
187	$(FTOBJ)t1parse.$(OBJ)
188
189ft_type42=\
190	$(FTOBJ)t42objs.$(OBJ) \
191	$(FTOBJ)t42parse.$(OBJ) \
192	$(FTOBJ)t42drivr.$(OBJ)
193
194ft_winfonts=$(FTOBJ)winfnt.$(OBJ)
195
196# instantiate the requested build option (shared or compiled in)
197$(FTGEN)freetype.dev : $(TOP_MAKEFILES) $(FTGEN)freetype_$(SHARE_FT).dev
198	$(CP_) $(FTGEN)freetype_$(SHARE_FT).dev $(FTGEN)freetype.dev
199
200# Define the shared version.
201$(FTGEN)freetype_1.dev : $(TOP_MAKEFILES) $(FT_MAK) $(ECHOGS_XE)
202	$(SETMOD) $(FTGEN)freetype_1 -link $(FT_LIBS)
203
204# Define the non-shared version.
205$(FTGEN)freetype_0.dev : $(TOP_MAKEFILES) $(FT_MAK) $(ECHOGS_XE) \
206    $(ft_autofit) $(ft_base) $(ft_bdf) $(ft_cache) $(ft_cff) $(ft_cid) \
207    $(ft_gzip) $(ft_lzw) $(ft_pcf) $(ft_pfr) $(ft_psaux) $(ft_pshinter) \
208    $(ft_psnames) $(ft_raster) $(ft_smooth) $(ft_sfnt) $(ft_truetype) \
209    $(ft_type1) $(ft_type42) $(ft_winfonts)
210	$(SETMOD) $(FTGEN)freetype_0 $(ft_autofit)
211	$(ADDMOD) $(FTGEN)freetype_0 $(ft_base)
212	$(ADDMOD) $(FTGEN)freetype_0 $(ft_bdf)
213	$(ADDMOD) $(FTGEN)freetype_0 $(ft_cache)
214	$(ADDMOD) $(FTGEN)freetype_0 $(ft_cff)
215	$(ADDMOD) $(FTGEN)freetype_0 $(ft_cid)
216	$(ADDMOD) $(FTGEN)freetype_0 $(ft_gzip)
217	$(ADDMOD) $(FTGEN)freetype_0 $(ft_lzw)
218	$(ADDMOD) $(FTGEN)freetype_0 $(ft_pcf)
219	$(ADDMOD) $(FTGEN)freetype_0 $(ft_pfr)
220	$(ADDMOD) $(FTGEN)freetype_0 $(ft_psaux)
221	$(ADDMOD) $(FTGEN)freetype_0 $(ft_pshinter)
222	$(ADDMOD) $(FTGEN)freetype_0 $(ft_psnames)
223	$(ADDMOD) $(FTGEN)freetype_0 $(ft_raster)
224	$(ADDMOD) $(FTGEN)freetype_0 $(ft_smooth)
225	$(ADDMOD) $(FTGEN)freetype_0 $(ft_sfnt)
226	$(ADDMOD) $(FTGEN)freetype_0 $(ft_truetype)
227	$(ADDMOD) $(FTGEN)freetype_0 $(ft_type1)
228	$(ADDMOD) $(FTGEN)freetype_0 $(ft_type42)
229	$(ADDMOD) $(FTGEN)freetype_0 $(ft_winfonts)
230
231
232# custom build rules for each source file
233
234$(FTOBJ)afangles.$(OBJ) : $(FTSRC)autofit$(D)afangles.c
235	$(FTCC) $(FTO_)afangles.$(OBJ) $(C_) $(FTSRC)autofit$(D)afangles.c
236
237$(FTOBJ)afcjk.$(OBJ) : $(FTSRC)autofit$(D)afcjk.c
238	$(FTCC) $(FTO_)afcjk.$(OBJ) $(C_) $(FTSRC)autofit$(D)afcjk.c
239
240$(FTOBJ)afdummy.$(OBJ) : $(FTSRC)autofit$(D)afdummy.c
241	$(FTCC) $(FTO_)afdummy.$(OBJ) $(C_) $(FTSRC)autofit$(D)afdummy.c
242
243$(FTOBJ)afglobal.$(OBJ) : $(FTSRC)autofit$(D)afglobal.c
244	$(FTCC) $(FTO_)afglobal.$(OBJ) $(C_) $(FTSRC)autofit$(D)afglobal.c
245
246$(FTOBJ)afhints.$(OBJ) : $(FTSRC)autofit$(D)afhints.c
247	$(FTCC) $(FTO_)afhints.$(OBJ) $(C_) $(FTSRC)autofit$(D)afhints.c
248
249$(FTOBJ)afindic.$(OBJ) : $(FTSRC)autofit$(D)afindic.c
250	$(FTCC) $(FTO_)afindic.$(OBJ) $(C_) $(FTSRC)autofit$(D)afindic.c
251
252$(FTOBJ)aflatin.$(OBJ) : $(FTSRC)autofit$(D)aflatin.c
253	$(FTCC) $(FTO_)aflatin.$(OBJ) $(C_) $(FTSRC)autofit$(D)aflatin.c
254
255$(FTOBJ)afloader.$(OBJ) : $(FTSRC)autofit$(D)afloader.c
256	$(FTCC) $(FTO_)afloader.$(OBJ) $(C_) $(FTSRC)autofit$(D)afloader.c
257
258$(FTOBJ)afmodule.$(OBJ) : $(FTSRC)autofit$(D)afmodule.c
259	$(FTCC) $(FTO_)afmodule.$(OBJ) $(C_) $(FTSRC)autofit$(D)afmodule.c
260
261$(FTOBJ)afwarp.$(OBJ) : $(FTSRC)autofit$(D)afwarp.c
262	$(FTCC) $(FTO_)afwarp.$(OBJ) $(C_) $(FTSRC)autofit$(D)afwarp.c
263
264
265$(FTOBJ)ftadvanc.$(OBJ) : $(FTSRC)base$(D)ftadvanc.c
266	$(FTCC) $(FTO_)ftadvanc.$(OBJ) $(C_) $(FTSRC)base$(D)ftadvanc.c
267
268$(FTOBJ)ftcalc.$(OBJ) : $(FTSRC)base$(D)ftcalc.c
269	$(FTCC) $(FTO_)ftcalc.$(OBJ) $(C_) $(FTSRC)base$(D)ftcalc.c
270
271$(FTOBJ)ftdbgmem.$(OBJ) : $(FTSRC)base$(D)ftdbgmem.c
272	$(FTCC) $(FTO_)ftdbgmem.$(OBJ) $(C_) $(FTSRC)base$(D)ftdbgmem.c
273
274$(FTOBJ)ftgloadr.$(OBJ) : $(FTSRC)base$(D)ftgloadr.c
275	$(FTCC) $(FTO_)ftgloadr.$(OBJ) $(C_) $(FTSRC)base$(D)ftgloadr.c
276
277$(FTOBJ)ftobjs.$(OBJ) : $(FTSRC)base$(D)ftobjs.c
278	$(FTCC) $(FTO_)ftobjs.$(OBJ) $(C_) $(FTSRC)base$(D)ftobjs.c
279
280$(FTOBJ)ftoutln.$(OBJ) : $(FTSRC)base$(D)ftoutln.c
281	$(FTCC) $(FTO_)ftoutln.$(OBJ) $(C_) $(FTSRC)base$(D)ftoutln.c
282
283$(FTOBJ)ftrfork.$(OBJ) : $(FTSRC)base$(D)ftrfork.c
284	$(FTCC) $(FTO_)ftrfork.$(OBJ) $(C_) $(FTSRC)base$(D)ftrfork.c
285
286$(FTOBJ)ftsnames.$(OBJ) : $(FTSRC)base$(D)ftsnames.c
287	$(FTCC) $(FTO_)ftsnames.$(OBJ) $(C_) $(FTSRC)base$(D)ftsnames.c
288
289$(FTOBJ)ftstream.$(OBJ) : $(FTSRC)base$(D)ftstream.c
290	$(FTCC) $(FTO_)ftstream.$(OBJ) $(C_) $(FTSRC)base$(D)ftstream.c
291
292$(FTOBJ)fttrigon.$(OBJ) : $(FTSRC)base$(D)fttrigon.c
293	$(FTCC) $(FTO_)fttrigon.$(OBJ) $(C_) $(FTSRC)base$(D)fttrigon.c
294
295$(FTOBJ)ftutil.$(OBJ) : $(FTSRC)base$(D)ftutil.c
296	$(FTCC) $(FTO_)ftutil.$(OBJ) $(C_) $(FTSRC)base$(D)ftutil.c
297
298$(FTOBJ)ftbbox.$(OBJ) : $(FTSRC)base$(D)ftbbox.c
299	$(FTCC) $(FTO_)ftbbox.$(OBJ) $(C_) $(FTSRC)base$(D)ftbbox.c
300
301$(FTOBJ)ftbdf.$(OBJ) : $(FTSRC)base$(D)ftbdf.c
302	$(FTCC) $(FTO_)ftbdf.$(OBJ) $(C_) $(FTSRC)base$(D)ftbdf.c
303
304$(FTOBJ)ftbitmap.$(OBJ) : $(FTSRC)base$(D)ftbitmap.c
305	$(FTCC) $(FTO_)ftbitmap.$(OBJ) $(C_) $(FTSRC)base$(D)ftbitmap.c
306
307$(FTOBJ)ftdebug.$(OBJ) : $(FTSRC)base$(D)ftdebug.c
308	$(FTCC) $(FTO_)ftdebug.$(OBJ) $(C_) $(FTSRC)base$(D)ftdebug.c
309
310$(FTOBJ)ftgasp.$(OBJ) : $(FTSRC)base$(D)ftgasp.c
311	$(FTCC) $(FTO_)ftgasp.$(OBJ) $(C_) $(FTSRC)base$(D)ftgasp.c
312
313$(FTOBJ)ftglyph.$(OBJ) : $(FTSRC)base$(D)ftglyph.c
314	$(FTCC) $(FTO_)ftglyph.$(OBJ) $(C_) $(FTSRC)base$(D)ftglyph.c
315
316$(FTOBJ)ftgxval.$(OBJ) : $(FTSRC)base$(D)ftgxval.c
317	$(FTCC) $(FTO_)ftgxval.$(OBJ) $(C_) $(FTSRC)base$(D)ftgxval.c
318
319$(FTOBJ)ftinit.$(OBJ) : $(FTSRC)base$(D)ftinit.c
320	$(FTCC) $(FTO_)ftinit.$(OBJ) $(C_) $(FTSRC)base$(D)ftinit.c
321
322$(FTOBJ)ftlcdfil.$(OBJ) : $(FTSRC)base$(D)ftlcdfil.c
323	$(FTCC) $(FTO_)ftlcdfil.$(OBJ) $(C_) $(FTSRC)base$(D)ftlcdfil.c
324
325$(FTOBJ)ftmm.$(OBJ) : $(FTSRC)base$(D)ftmm.c
326	$(FTCC) $(FTO_)ftmm.$(OBJ) $(C_) $(FTSRC)base$(D)ftmm.c
327
328$(FTOBJ)ftotval.$(OBJ) : $(FTSRC)base$(D)ftotval.c
329	$(FTCC) $(FTO_)ftotval.$(OBJ) $(C_) $(FTSRC)base$(D)ftotval.c
330
331$(FTOBJ)ftpfr.$(OBJ) : $(FTSRC)base$(D)ftpfr.c
332	$(FTCC) $(FTO_)ftpfr.$(OBJ) $(C_) $(FTSRC)base$(D)ftpfr.c
333
334$(FTOBJ)ftstroke.$(OBJ) : $(FTSRC)base$(D)ftstroke.c
335	$(FTCC) $(FTO_)ftstroke.$(OBJ) $(C_) $(FTSRC)base$(D)ftstroke.c
336
337$(FTOBJ)ftsynth.$(OBJ) : $(FTSRC)base$(D)ftsynth.c
338	$(FTCC) $(FTO_)ftsynth.$(OBJ) $(C_) $(FTSRC)base$(D)ftsynth.c
339
340$(FTOBJ)ftsystem.$(OBJ) : $(FTSRC)base$(D)ftsystem.c
341	$(FTCC) $(FTO_)ftsystem.$(OBJ) $(C_) $(FTSRC)base$(D)ftsystem.c
342
343$(FTOBJ)fttype1.$(OBJ) : $(FTSRC)base$(D)fttype1.c
344	$(FTCC) $(FTO_)fttype1.$(OBJ) $(C_) $(FTSRC)base$(D)fttype1.c
345
346$(FTOBJ)ftwinfnt.$(OBJ) : $(FTSRC)base$(D)ftwinfnt.c
347	$(FTCC) $(FTO_)ftwinfnt.$(OBJ) $(C_) $(FTSRC)base$(D)ftwinfnt.c
348
349$(FTOBJ)ftxf86.$(OBJ) : $(FTSRC)base$(D)ftxf86.c
350	$(FTCC) $(FTO_)ftxf86.$(OBJ) $(C_) $(FTSRC)base$(D)ftxf86.c
351
352$(FTOBJ)ftpatent.$(OBJ) : $(FTSRC)base$(D)ftpatent.c
353	$(FTCC) $(FTO_)ftpatent.$(OBJ) $(C_) $(FTSRC)base$(D)ftpatent.c
354
355$(FTOBJ)bdflib.$(OBJ) : $(FTSRC)bdf$(D)bdflib.c
356	$(FTCC) $(FTO_)bdflib.$(OBJ) $(C_) $(FTSRC)bdf$(D)bdflib.c
357
358$(FTOBJ)bdfdrivr.$(OBJ) : $(FTSRC)bdf$(D)bdfdrivr.c
359	$(FTCC) $(FTO_)bdfdrivr.$(OBJ) $(C_) $(FTSRC)bdf$(D)bdfdrivr.c
360
361$(FTOBJ)ftcbasic.$(OBJ) : $(FTSRC)cache$(D)ftcbasic.c
362	$(FTCC) $(FTO_)ftcbasic.$(OBJ) $(C_) $(FTSRC)cache$(D)ftcbasic.c
363
364$(FTOBJ)ft2ccache.$(OBJ) : $(FTSRC)cache$(D)ftccache.c
365	$(FTCC) $(FTO_)ft2ccache.$(OBJ) $(C_) $(FTSRC)cache$(D)ftccache.c
366
367$(FTOBJ)ftccmap.$(OBJ) : $(FTSRC)cache$(D)ftccmap.c
368	$(FTCC) $(FTO_)ftccmap.$(OBJ) $(C_) $(FTSRC)cache$(D)ftccmap.c
369
370$(FTOBJ)ftcglyph.$(OBJ) : $(FTSRC)cache$(D)ftcglyph.c
371	$(FTCC) $(FTO_)ftcglyph.$(OBJ) $(C_) $(FTSRC)cache$(D)ftcglyph.c
372
373$(FTOBJ)ftcimage.$(OBJ) : $(FTSRC)cache$(D)ftcimage.c
374	$(FTCC) $(FTO_)ftcimage.$(OBJ) $(C_) $(FTSRC)cache$(D)ftcimage.c
375
376$(FTOBJ)ftcmanag.$(OBJ) : $(FTSRC)cache$(D)ftcmanag.c
377	$(FTCC) $(FTO_)ftcmanag.$(OBJ) $(C_) $(FTSRC)cache$(D)ftcmanag.c
378
379$(FTOBJ)ftcmru.$(OBJ) : $(FTSRC)cache$(D)ftcmru.c
380	$(FTCC) $(FTO_)ftcmru.$(OBJ) $(C_) $(FTSRC)cache$(D)ftcmru.c
381
382$(FTOBJ)ftcsbits.$(OBJ) : $(FTSRC)cache$(D)ftcsbits.c
383	$(FTCC) $(FTO_)ftcsbits.$(OBJ) $(C_) $(FTSRC)cache$(D)ftcsbits.c
384
385$(FTOBJ)cffobjs.$(OBJ) : $(FTSRC)cff$(D)cffobjs.c
386	$(FTCC) $(FTO_)cffobjs.$(OBJ) $(C_) $(FTSRC)cff$(D)cffobjs.c
387
388$(FTOBJ)cffload.$(OBJ) : $(FTSRC)cff$(D)cffload.c
389	$(FTCC) $(FTO_)cffload.$(OBJ) $(C_) $(FTSRC)cff$(D)cffload.c
390
391$(FTOBJ)cffgload.$(OBJ) : $(FTSRC)cff$(D)cffgload.c
392	$(FTCC) $(FTO_)cffgload.$(OBJ) $(C_) $(FTSRC)cff$(D)cffgload.c
393
394$(FTOBJ)cffparse.$(OBJ) : $(FTSRC)cff$(D)cffparse.c
395	$(FTCC) $(FTO_)cffparse.$(OBJ) $(C_) $(FTSRC)cff$(D)cffparse.c
396
397$(FTOBJ)cffcmap.$(OBJ) : $(FTSRC)cff$(D)cffcmap.c
398	$(FTCC) $(FTO_)cffcmap.$(OBJ) $(C_) $(FTSRC)cff$(D)cffcmap.c
399
400$(FTOBJ)cffdrivr.$(OBJ) : $(FTSRC)cff$(D)cffdrivr.c
401	$(FTCC) $(FTO_)cffdrivr.$(OBJ) $(C_) $(FTSRC)cff$(D)cffdrivr.c
402
403$(FTOBJ)cidparse.$(OBJ) : $(FTSRC)cid$(D)cidparse.c
404	$(FTCC) $(FTO_)cidparse.$(OBJ) $(C_) $(FTSRC)cid$(D)cidparse.c
405
406$(FTOBJ)cidload.$(OBJ) : $(FTSRC)cid$(D)cidload.c
407	$(FTCC) $(FTO_)cidload.$(OBJ) $(C_) $(FTSRC)cid$(D)cidload.c
408
409$(FTOBJ)cidriver.$(OBJ) : $(FTSRC)cid$(D)cidriver.c
410	$(FTCC) $(FTO_)cidriver.$(OBJ) $(C_) $(FTSRC)cid$(D)cidriver.c
411
412$(FTOBJ)cidgload.$(OBJ) : $(FTSRC)cid$(D)cidgload.c
413	$(FTCC) $(FTO_)cidgload.$(OBJ) $(C_) $(FTSRC)cid$(D)cidgload.c
414
415$(FTOBJ)cidobjs.$(OBJ) : $(FTSRC)cid$(D)cidobjs.c
416	$(FTCC) $(FTO_)cidobjs.$(OBJ) $(C_) $(FTSRC)cid$(D)cidobjs.c
417
418$(FTOBJ)ftgzip.$(OBJ) : $(FTSRC)gzip$(D)ftgzip.c
419	$(FTCC) $(FTO_)ftgzip.$(OBJ) $(C_) $(FTSRC)gzip$(D)ftgzip.c
420
421$(FTOBJ)ftlzw.$(OBJ) : $(FTSRC)lzw$(D)ftlzw.c
422	$(FTCC) $(FTO_)ftlzw.$(OBJ) $(C_) $(FTSRC)lzw$(D)ftlzw.c
423
424$(FTOBJ)pcfdrivr.$(OBJ) : $(FTSRC)pcf$(D)pcfdrivr.c
425	$(FTCC) $(FTO_)pcfdrivr.$(OBJ) $(C_) $(FTSRC)pcf$(D)pcfdrivr.c
426
427$(FTOBJ)pcfread.$(OBJ) : $(FTSRC)pcf$(D)pcfread.c
428	$(FTCC) $(FTO_)pcfread.$(OBJ) $(C_) $(FTSRC)pcf$(D)pcfread.c
429
430$(FTOBJ)pcfutil.$(OBJ) : $(FTSRC)pcf$(D)pcfutil.c
431	$(FTCC) $(FTO_)pcfutil.$(OBJ) $(C_) $(FTSRC)pcf$(D)pcfutil.c
432
433$(FTOBJ)pfrload.$(OBJ) : $(FTSRC)pfr$(D)pfrload.c
434	$(FTCC) $(FTO_)pfrload.$(OBJ) $(C_) $(FTSRC)pfr$(D)pfrload.c
435
436$(FTOBJ)pfrgload.$(OBJ) : $(FTSRC)pfr$(D)pfrgload.c
437	$(FTCC) $(FTO_)pfrgload.$(OBJ) $(C_) $(FTSRC)pfr$(D)pfrgload.c
438
439$(FTOBJ)pfrcmap.$(OBJ) : $(FTSRC)pfr$(D)pfrcmap.c
440	$(FTCC) $(FTO_)pfrcmap.$(OBJ) $(C_) $(FTSRC)pfr$(D)pfrcmap.c
441
442$(FTOBJ)pfrdrivr.$(OBJ) : $(FTSRC)pfr$(D)pfrdrivr.c
443	$(FTCC) $(FTO_)pfrdrivr.$(OBJ) $(C_) $(FTSRC)pfr$(D)pfrdrivr.c
444
445$(FTOBJ)pfrsbit.$(OBJ) : $(FTSRC)pfr$(D)pfrsbit.c
446	$(FTCC) $(FTO_)pfrsbit.$(OBJ) $(C_) $(FTSRC)pfr$(D)pfrsbit.c
447
448$(FTOBJ)pfrobjs.$(OBJ) : $(FTSRC)pfr$(D)pfrobjs.c
449	$(FTCC) $(FTO_)pfrobjs.$(OBJ) $(C_) $(FTSRC)pfr$(D)pfrobjs.c
450
451$(FTOBJ)psobjs.$(OBJ) : $(FTSRC)psaux$(D)psobjs.c
452	$(FTCC) $(FTO_)psobjs.$(OBJ) $(C_) $(FTSRC)psaux$(D)psobjs.c
453
454$(FTOBJ)t1decode.$(OBJ) : $(FTSRC)psaux$(D)t1decode.c
455	$(FTCC) $(FTO_)t1decode.$(OBJ) $(C_) $(FTSRC)psaux$(D)t1decode.c
456
457$(FTOBJ)t1cmap.$(OBJ) : $(FTSRC)psaux$(D)t1cmap.c
458	$(FTCC) $(FTO_)t1cmap.$(OBJ) $(C_) $(FTSRC)psaux$(D)t1cmap.c
459
460$(FTOBJ)afmparse.$(OBJ) : $(FTSRC)psaux$(D)afmparse.c
461	$(FTCC) $(FTO_)afmparse.$(OBJ) $(C_) $(FTSRC)psaux$(D)afmparse.c
462
463$(FTOBJ)psconv.$(OBJ) : $(FTSRC)psaux$(D)psconv.c
464	$(FTCC) $(FTO_)psconv.$(OBJ) $(C_) $(FTSRC)psaux$(D)psconv.c
465
466$(FTOBJ)psauxmod.$(OBJ) : $(FTSRC)psaux$(D)psauxmod.c
467	$(FTCC) $(FTO_)psauxmod.$(OBJ) $(C_) $(FTSRC)psaux$(D)psauxmod.c
468
469$(FTOBJ)pshrec.$(OBJ) : $(FTSRC)pshinter$(D)pshrec.c
470	$(FTCC) $(FTO_)pshrec.$(OBJ) $(C_) $(FTSRC)pshinter$(D)pshrec.c
471
472$(FTOBJ)pshglob.$(OBJ) : $(FTSRC)pshinter$(D)pshglob.c
473	$(FTCC) $(FTO_)pshglob.$(OBJ) $(C_) $(FTSRC)pshinter$(D)pshglob.c
474
475$(FTOBJ)pshmod.$(OBJ) : $(FTSRC)pshinter$(D)pshmod.c
476	$(FTCC) $(FTO_)pshmod.$(OBJ) $(C_) $(FTSRC)pshinter$(D)pshmod.c
477
478$(FTOBJ)pshalgo.$(OBJ) : $(FTSRC)pshinter$(D)pshalgo.c
479	$(FTCC) $(FTO_)pshalgo.$(OBJ) $(C_) $(FTSRC)pshinter$(D)pshalgo.c
480
481$(FTOBJ)psmodule.$(OBJ) : $(FTSRC)psnames$(D)psmodule.c
482	$(FTCC) $(FTO_)psmodule.$(OBJ) $(C_) $(FTSRC)psnames$(D)psmodule.c
483
484$(FTOBJ)pspic.$(OBJ) : $(FTSRC)psnames$(D)pspic.c
485	$(FTCC) $(FTO_)pspic.$(OBJ) $(C_) $(FTSRC)psnames$(D)pspic.c
486
487$(FTOBJ)ftraster.$(OBJ) : $(FTSRC)raster$(D)ftraster.c
488	$(FTCC) $(FTO_)ftraster.$(OBJ) $(C_) $(FTSRC)raster$(D)ftraster.c
489
490$(FTOBJ)ftrend1.$(OBJ) : $(FTSRC)raster$(D)ftrend1.c
491	$(FTCC) $(FTO_)ftrend1.$(OBJ) $(C_) $(FTSRC)raster$(D)ftrend1.c
492
493$(FTOBJ)rastpic.$(OBJ) : $(FTSRC)raster$(D)rastpic.c
494	$(FTCC) $(FTO_)rastpic.$(OBJ) $(C_) $(FTSRC)raster$(D)rastpic.c
495
496$(FTOBJ)ftgrays.$(OBJ) : $(FTSRC)smooth$(D)ftgrays.c
497	$(FTCC) $(FTO_)ftgrays.$(OBJ) $(C_) $(FTSRC)smooth$(D)ftgrays.c
498
499$(FTOBJ)ftsmooth.$(OBJ) : $(FTSRC)smooth$(D)ftsmooth.c
500	$(FTCC) $(FTO_)ftsmooth.$(OBJ) $(C_) $(FTSRC)smooth$(D)ftsmooth.c
501
502$(FTOBJ)ftspic.$(OBJ) : $(FTSRC)smooth$(D)ftspic.c
503	$(FTCC) $(FTO_)ftspic.$(OBJ) $(C_) $(FTSRC)smooth$(D)ftspic.c
504
505$(FTOBJ)sfobjs.$(OBJ) : $(FTSRC)sfnt$(D)sfobjs.c
506	$(FTCC) $(FTO_)sfobjs.$(OBJ) $(C_) $(FTSRC)sfnt$(D)sfobjs.c
507
508$(FTOBJ)sfdriver.$(OBJ) : $(FTSRC)sfnt$(D)sfdriver.c
509	$(FTCC) $(FTO_)sfdriver.$(OBJ) $(C_) $(FTSRC)sfnt$(D)sfdriver.c
510
511$(FTOBJ)ttcmap.$(OBJ) : $(FTSRC)sfnt$(D)ttcmap.c
512	$(FTCC) $(FTO_)ttcmap.$(OBJ) $(C_) $(FTSRC)sfnt$(D)ttcmap.c
513
514$(FTOBJ)ttmtx.$(OBJ) : $(FTSRC)sfnt$(D)ttmtx.c
515	$(FTCC) $(FTO_)ttmtx.$(OBJ) $(C_) $(FTSRC)sfnt$(D)ttmtx.c
516
517$(FTOBJ)ttpost.$(OBJ) : $(FTSRC)sfnt$(D)ttpost.c
518	$(FTCC) $(FTO_)ttpost.$(OBJ) $(C_) $(FTSRC)sfnt$(D)ttpost.c
519
520$(FTOBJ)ft2ttload.$(OBJ) : $(FTSRC)sfnt$(D)ttload.c
521	$(FTCC) $(FTO_)ft2ttload.$(OBJ) $(C_) $(FTSRC)sfnt$(D)ttload.c
522
523$(FTOBJ)ttsbit.$(OBJ) : $(FTSRC)sfnt$(D)ttsbit.c
524	$(FTCC) $(FTO_)ttsbit.$(OBJ) $(C_) $(FTSRC)sfnt$(D)ttsbit.c
525
526$(FTOBJ)ttkern.$(OBJ) : $(FTSRC)sfnt$(D)ttkern.c
527	$(FTCC) $(FTO_)ttkern.$(OBJ) $(C_) $(FTSRC)sfnt$(D)ttkern.c
528
529$(FTOBJ)ttbdf.$(OBJ) : $(FTSRC)sfnt$(D)ttbdf.c
530	$(FTCC) $(FTO_)ttbdf.$(OBJ) $(C_) $(FTSRC)sfnt$(D)ttbdf.c
531
532$(FTOBJ)sfntpic.$(OBJ) : $(FTSRC)sfnt$(D)sfntpic.c
533	$(FTCC) $(FTO_)sfntpic.$(OBJ) $(C_) $(FTSRC)sfnt$(D)sfntpic.c
534
535$(FTOBJ)ttdriver.$(OBJ) : $(FTSRC)truetype$(D)ttdriver.c
536	$(FTCC) $(FTO_)ttdriver.$(OBJ) $(C_) $(FTSRC)truetype$(D)ttdriver.c
537
538$(FTOBJ)ft2ttobjs.$(OBJ) : $(FTSRC)truetype$(D)ttobjs.c
539	$(FTCC) $(FTO_)ft2ttobjs.$(OBJ) $(C_) $(FTSRC)truetype$(D)ttobjs.c
540
541$(FTOBJ)ttpload.$(OBJ) : $(FTSRC)truetype$(D)ttpload.c
542	$(FTCC) $(FTO_)ttpload.$(OBJ) $(C_) $(FTSRC)truetype$(D)ttpload.c
543
544$(FTOBJ)ttgload.$(OBJ) : $(FTSRC)truetype$(D)ttgload.c
545	$(FTCC) $(FTO_)ttgload.$(OBJ) $(C_) $(FTSRC)truetype$(D)ttgload.c
546
547$(FTOBJ)ft2ttinterp.$(OBJ) : $(FTSRC)truetype$(D)ttinterp.c
548	$(FTCC) $(FTO_)ft2ttinterp.$(OBJ) $(C_) $(FTSRC)truetype$(D)ttinterp.c
549
550$(FTOBJ)ttgxvar.$(OBJ) : $(FTSRC)truetype$(D)ttgxvar.c
551	$(FTCC) $(FTO_)ttgxvar.$(OBJ) $(C_) $(FTSRC)truetype$(D)ttgxvar.c
552
553$(FTOBJ)ttpic.$(OBJ) : $(FTSRC)truetype$(D)ttpic.c
554	$(FTCC) $(FTO_)ttpic.$(OBJ) $(C_) $(FTSRC)truetype$(D)ttpic.c
555
556$(FTOBJ)t1afm.$(OBJ) : $(FTSRC)type1$(D)t1afm.c
557	$(FTCC) $(FTO_)t1afm.$(OBJ) $(C_) $(FTSRC)type1$(D)t1afm.c
558
559$(FTOBJ)t1driver.$(OBJ) : $(FTSRC)type1$(D)t1driver.c
560	$(FTCC) $(FTO_)t1driver.$(OBJ) $(C_) $(FTSRC)type1$(D)t1driver.c
561
562$(FTOBJ)t1objs.$(OBJ) : $(FTSRC)type1$(D)t1objs.c
563	$(FTCC) $(FTO_)t1objs.$(OBJ) $(C_) $(FTSRC)type1$(D)t1objs.c
564
565$(FTOBJ)t1load.$(OBJ) : $(FTSRC)type1$(D)t1load.c
566	$(FTCC) $(FTO_)t1load.$(OBJ) $(C_) $(FTSRC)type1$(D)t1load.c
567
568$(FTOBJ)t1gload.$(OBJ) : $(FTSRC)type1$(D)t1gload.c
569	$(FTCC) $(FTO_)t1gload.$(OBJ) $(C_) $(FTSRC)type1$(D)t1gload.c
570
571$(FTOBJ)t1parse.$(OBJ) : $(FTSRC)type1$(D)t1parse.c
572	$(FTCC) $(FTO_)t1parse.$(OBJ) $(C_) $(FTSRC)type1$(D)t1parse.c
573
574$(FTOBJ)t42objs.$(OBJ) : $(FTSRC)type42$(D)t42objs.c
575	$(FTCC) $(FTO_)t42objs.$(OBJ) $(C_) $(FTSRC)type42$(D)t42objs.c
576
577$(FTOBJ)t42parse.$(OBJ) : $(FTSRC)type42$(D)t42parse.c
578	$(FTCC) $(FTO_)t42parse.$(OBJ) $(C_) $(FTSRC)type42$(D)t42parse.c
579
580$(FTOBJ)t42drivr.$(OBJ) : $(FTSRC)type42$(D)t42drivr.c
581	$(FTCC) $(FTO_)t42drivr.$(OBJ) $(C_) $(FTSRC)type42$(D)t42drivr.c
582
583$(FTOBJ)winfnt.$(OBJ) : $(FTSRC)winfonts$(D)winfnt.c
584	$(FTCC) $(FTO_)winfnt.$(OBJ) $(C_) $(FTSRC)winfonts$(D)winfnt.c
585