3 # Copyright 2005-2007, 2009-2011 by
4 # David Turner, Robert Wilhelm, and Werner Lemberg.
6 # This file is part of the FreeType project, and may only be used, modified,
7 # and distributed under the terms of the FreeType project license,
8 # LICENSE.TXT. By continuing to use, modify, or distribute this file you
9 # indicate that you have read the license and understand and accept it
13 # In case you compile the FreeType library with GNU make or makepp, this
14 # file controls which components are built into the library. Otherwise,
15 # please read this file for information on the various modules and its
16 # dependencies, then follow the instructions in the file `docs/INSTALL.ANY'.
18 # To deactivate a module, simply comment out the corresponding line. To
19 # activate a module, remove the comment character.
21 # Note that many modules and components are further controlled with macros
22 # in the file `include/freetype/config/ftoption.h'.
26 #### font modules -- at least one is required
28 #### The order given here (from top to down) is the order used for testing
29 #### font formats in the compiled library.
32 # TrueType font driver.
34 # This driver needs the `sfnt' module.
35 FONT_MODULES += truetype
37 # PostScript Type 1 font driver.
39 # This driver needs the `psaux', `pshinter', and `psnames' modules.
42 # CFF/OpenType font driver.
44 # This driver needs the `sfnt', `pshinter', and `psnames' modules.
47 # Type 1 CID-keyed font driver.
49 # This driver needs the `psaux', `pshinter', and `psnames' modules.
52 # PFR/TrueDoc font driver. See optional extension ftpfr.c below also.
55 # PostScript Type 42 font driver.
57 # This driver needs the `truetype' and `psaux' modules.
58 FONT_MODULES += type42
60 # Windows FONT/FNT font driver. See optional extension ftwinfnt.c below
62 FONT_MODULES += winfonts
67 # BDF font driver. See optional extension ftbdf.c below also.
70 # SFNT files support. If used without `truetype' or `cff', it supports
71 # bitmap-only fonts within an SFNT wrapper.
73 # This driver needs the `psnames' module.
81 # FreeType's auto hinter.
82 HINTING_MODULES += autofit
85 HINTING_MODULES += pshinter
87 # The TrueType hinting engine doesn't have a module of its own but is
88 # controlled in file include/freetype/config/ftoption.h
89 # (TT_CONFIG_OPTION_BYTECODE_INTERPRETER and friends).
93 #### raster modules -- at least one is required for vector font formats
96 # Monochrome rasterizer.
97 RASTER_MODULES += raster
99 # Anti-aliasing rasterizer.
100 RASTER_MODULES += smooth
104 #### auxiliary modules
107 # FreeType's cache sub-system (quite stable but still in beta -- this means
108 # that its public API is subject to change if necessary). See
109 # include/freetype/ftcache.h. Needs ftglyph.c.
112 # TrueType GX/AAT table validation. Needs ftgxval.c below.
113 # AUX_MODULES += gxvalid
115 # Support for streams compressed with gzip (files with suffix .gz).
117 # See include/freetype/ftgzip.h for the API.
120 # Support for streams compressed with LZW (files with suffix .Z).
122 # See include/freetype/ftlzw.h for the API.
125 # Support for streams compressed with bzip2 (files with suffix .bz2).
127 # See include/freetype/ftbzip2.h for the API.
130 # OpenType table validation. Needs ftotval.c below.
132 # AUX_MODULES += otvalid
134 # Auxiliary PostScript driver component to share common code.
136 # This module depends on `psnames'.
139 # Support for PostScript glyph names.
141 # This module can be controlled in ftconfig.h
142 # (FT_CONFIG_OPTION_POSTSCRIPT_NAMES).
143 AUX_MODULES += psnames
147 #### base module extensions
150 # Exact bounding box calculation.
152 # See include/freetype/ftbbox.h for the API.
153 BASE_EXTENSIONS += ftbbox.c
155 # Access BDF-specific strings. Needs BDF font driver.
157 # See include/freetype/ftbdf.h for the API.
158 BASE_EXTENSIONS += ftbdf.c
160 # Utility functions for converting 1bpp, 2bpp, 4bpp, and 8bpp bitmaps into
161 # 8bpp format, and for emboldening of bitmap glyphs.
163 # See include/freetype/ftbitmap.h for the API.
164 BASE_EXTENSIONS += ftbitmap.c
166 # Access CID font information.
168 # See include/freetype/ftcid.h for the API.
169 BASE_EXTENSIONS += ftcid.c
171 # Access FSType information. Needs fttype1.c.
173 # See include/freetype/freetype.h for the API.
174 BASE_EXTENSIONS += ftfstype.c
176 # Support for GASP table queries.
178 # See include/freetype/ftgasp.h for the API.
179 BASE_EXTENSIONS += ftgasp.c
181 # Convenience functions to handle glyphs. Needs ftbitmap.c.
183 # See include/freetype/ftglyph.h for the API.
184 BASE_EXTENSIONS += ftglyph.c
186 # Interface for gxvalid module.
188 # See include/freetype/ftgxval.h for the API.
189 BASE_EXTENSIONS += ftgxval.c
191 # Support for LCD color filtering of subpixel bitmaps.
193 # See include/freetype/ftlcdfil.h for the API.
194 BASE_EXTENSIONS += ftlcdfil.c
196 # Multiple Master font interface.
198 # See include/freetype/ftmm.h for the API.
199 BASE_EXTENSIONS += ftmm.c
201 # Interface for otvalid module.
203 # See include/freetype/ftotval.h for the API.
204 BASE_EXTENSIONS += ftotval.c
206 # Support for FT_Face_CheckTrueTypePatents.
208 # See include/freetype/freetype.h for the API.
209 BASE_EXTENSIONS += ftpatent.c
211 # Interface for accessing PFR-specific data. Needs PFR font driver.
213 # See include/freetype/ftpfr.h for the API.
214 BASE_EXTENSIONS += ftpfr.c
216 # Path stroker. Needs ftglyph.c.
218 # See include/freetype/ftstroke.h for the API.
219 BASE_EXTENSIONS += ftstroke.c
221 # Support for synthetic embolding and slanting of fonts. Needs ftbitmap.c.
223 # See include/freetype/ftsynth.h for the API.
224 BASE_EXTENSIONS += ftsynth.c
226 # Interface to access data specific to PostScript Type 1 and Type 2 (CFF)
229 # See include/freetype/t1tables.h for the API.
230 BASE_EXTENSIONS += fttype1.c
232 # Interface for accessing data specific to Windows FNT files. Needs winfnt
235 # See include/freetype/ftwinfnt.h for the API.
236 BASE_EXTENSIONS += ftwinfnt.c
238 # Support functions for X11.
240 # See include/freetype/ftxf86.h for the API.
241 BASE_EXTENSIONS += ftxf86.c
244 #### The components `ftsystem.c' (for memory allocation and stream I/O
245 #### management) and `ftdebug.c' (for emitting debug messages to the user)
246 #### are controlled with the following variables.
248 #### ftsystem.c: $(FTSYS_SRC)
249 #### ftdebug.c: $(FTDEBUG_SRC)
251 #### Please refer to docs/CUSTOMIZE for details.