Werner Lemberg | 5993924 | 2006-01-31 20:17:42 +0000 | [diff] [blame] | 1 | # modules.cfg |
| 2 | # |
Werner Lemberg | d0cfb4e | 2022-01-11 10:54:10 +0100 | [diff] [blame] | 3 | # Copyright (C) 2005-2022 by |
Werner Lemberg | 5993924 | 2006-01-31 20:17:42 +0000 | [diff] [blame] | 4 | # David Turner, Robert Wilhelm, and Werner Lemberg. |
| 5 | # |
| 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 |
| 10 | # fully. |
| 11 | # |
| 12 | # |
| 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'. |
| 17 | # |
| 18 | # To deactivate a module, simply comment out the corresponding line. To |
| 19 | # activate a module, remove the comment character. |
| 20 | # |
| 21 | # Note that many modules and components are further controlled with macros |
Werner Lemberg | 392cf22 | 2015-06-25 13:04:57 +0200 | [diff] [blame] | 22 | # in the file `include/freetype/config/ftoption.h'. |
Werner Lemberg | 5993924 | 2006-01-31 20:17:42 +0000 | [diff] [blame] | 23 | |
| 24 | |
| 25 | #### |
| 26 | #### font modules -- at least one is required |
| 27 | #### |
| 28 | #### The order given here (from top to down) is the order used for testing |
| 29 | #### font formats in the compiled library. |
| 30 | #### |
| 31 | |
| 32 | # TrueType font driver. |
| 33 | # |
| 34 | # This driver needs the `sfnt' module. |
| 35 | FONT_MODULES += truetype |
| 36 | |
| 37 | # PostScript Type 1 font driver. |
| 38 | # |
| 39 | # This driver needs the `psaux', `pshinter', and `psnames' modules. |
| 40 | FONT_MODULES += type1 |
| 41 | |
| 42 | # CFF/OpenType font driver. |
| 43 | # |
Ewald Hew | 94f6d57 | 2017-10-16 11:48:31 +0800 | [diff] [blame] | 44 | # This driver needs the `sfnt', `psaux', `pshinter', and `psnames' modules. |
Werner Lemberg | 5993924 | 2006-01-31 20:17:42 +0000 | [diff] [blame] | 45 | FONT_MODULES += cff |
| 46 | |
| 47 | # Type 1 CID-keyed font driver. |
| 48 | # |
| 49 | # This driver needs the `psaux', `pshinter', and `psnames' modules. |
| 50 | FONT_MODULES += cid |
| 51 | |
| 52 | # PFR/TrueDoc font driver. See optional extension ftpfr.c below also. |
| 53 | FONT_MODULES += pfr |
| 54 | |
| 55 | # PostScript Type 42 font driver. |
| 56 | # |
Werner Lemberg | 930e9bf | 2011-11-26 13:38:26 +0100 | [diff] [blame] | 57 | # This driver needs the `truetype' and `psaux' modules. |
Werner Lemberg | 5993924 | 2006-01-31 20:17:42 +0000 | [diff] [blame] | 58 | FONT_MODULES += type42 |
| 59 | |
| 60 | # Windows FONT/FNT font driver. See optional extension ftwinfnt.c below |
| 61 | # also. |
| 62 | FONT_MODULES += winfonts |
| 63 | |
Werner Lemberg | ccec889 | 2018-03-08 06:09:17 +0100 | [diff] [blame] | 64 | # PCF font driver. If debugging and tracing is enabled, needs `ftbitmap.c'. |
Werner Lemberg | 5993924 | 2006-01-31 20:17:42 +0000 | [diff] [blame] | 65 | FONT_MODULES += pcf |
| 66 | |
| 67 | # BDF font driver. See optional extension ftbdf.c below also. |
| 68 | FONT_MODULES += bdf |
| 69 | |
| 70 | # SFNT files support. If used without `truetype' or `cff', it supports |
| 71 | # bitmap-only fonts within an SFNT wrapper. |
| 72 | # |
| 73 | # This driver needs the `psnames' module. |
| 74 | FONT_MODULES += sfnt |
| 75 | |
| 76 | |
| 77 | #### |
| 78 | #### hinting modules |
| 79 | #### |
| 80 | |
| 81 | # FreeType's auto hinter. |
| 82 | HINTING_MODULES += autofit |
| 83 | |
| 84 | # PostScript hinter. |
| 85 | HINTING_MODULES += pshinter |
| 86 | |
| 87 | # The TrueType hinting engine doesn't have a module of its own but is |
Werner Lemberg | 392cf22 | 2015-06-25 13:04:57 +0200 | [diff] [blame] | 88 | # controlled in file include/freetype/config/ftoption.h |
Werner Lemberg | 5993924 | 2006-01-31 20:17:42 +0000 | [diff] [blame] | 89 | # (TT_CONFIG_OPTION_BYTECODE_INTERPRETER and friends). |
| 90 | |
| 91 | |
| 92 | #### |
| 93 | #### raster modules -- at least one is required for vector font formats |
| 94 | #### |
| 95 | |
Werner Lemberg | 5993924 | 2006-01-31 20:17:42 +0000 | [diff] [blame] | 96 | # Anti-aliasing rasterizer. |
| 97 | RASTER_MODULES += smooth |
| 98 | |
Alexei Podtelezhnikov | 81852fb | 2021-05-18 22:18:17 -0400 | [diff] [blame] | 99 | # Monochrome rasterizer. |
| 100 | RASTER_MODULES += raster |
| 101 | |
Moazin Khatti | 0bf49bd | 2021-12-25 20:14:11 -0800 | [diff] [blame] | 102 | # OT-SVG. |
| 103 | RASTER_MODULES += svg |
| 104 | |
Anuj Verma | 879ca87 | 2020-08-19 16:57:38 +0530 | [diff] [blame] | 105 | # Signed distance field rasterizer. |
| 106 | RASTER_MODULES += sdf |
| 107 | |
Werner Lemberg | 5993924 | 2006-01-31 20:17:42 +0000 | [diff] [blame] | 108 | |
| 109 | #### |
| 110 | #### auxiliary modules |
| 111 | #### |
| 112 | |
| 113 | # FreeType's cache sub-system (quite stable but still in beta -- this means |
| 114 | # that its public API is subject to change if necessary). See |
Werner Lemberg | ccec889 | 2018-03-08 06:09:17 +0100 | [diff] [blame] | 115 | # include/freetype/ftcache.h. Needs `ftglyph.c'. |
Werner Lemberg | 5993924 | 2006-01-31 20:17:42 +0000 | [diff] [blame] | 116 | AUX_MODULES += cache |
| 117 | |
Werner Lemberg | ccec889 | 2018-03-08 06:09:17 +0100 | [diff] [blame] | 118 | # TrueType GX/AAT table validation. Needs `ftgxval.c' below. |
Werner Lemberg | 3ec6465 | 2016-08-28 11:02:00 +0200 | [diff] [blame] | 119 | # |
Werner Lemberg | 5993924 | 2006-01-31 20:17:42 +0000 | [diff] [blame] | 120 | # AUX_MODULES += gxvalid |
| 121 | |
| 122 | # Support for streams compressed with gzip (files with suffix .gz). |
| 123 | # |
Werner Lemberg | 392cf22 | 2015-06-25 13:04:57 +0200 | [diff] [blame] | 124 | # See include/freetype/ftgzip.h for the API. |
Werner Lemberg | 5993924 | 2006-01-31 20:17:42 +0000 | [diff] [blame] | 125 | AUX_MODULES += gzip |
| 126 | |
| 127 | # Support for streams compressed with LZW (files with suffix .Z). |
| 128 | # |
Werner Lemberg | 392cf22 | 2015-06-25 13:04:57 +0200 | [diff] [blame] | 129 | # See include/freetype/ftlzw.h for the API. |
Werner Lemberg | 5993924 | 2006-01-31 20:17:42 +0000 | [diff] [blame] | 130 | AUX_MODULES += lzw |
| 131 | |
Joel Klinghed | ed913c2 | 2010-12-31 16:59:33 +0100 | [diff] [blame] | 132 | # Support for streams compressed with bzip2 (files with suffix .bz2). |
| 133 | # |
Werner Lemberg | 392cf22 | 2015-06-25 13:04:57 +0200 | [diff] [blame] | 134 | # See include/freetype/ftbzip2.h for the API. |
Joel Klinghed | ed913c2 | 2010-12-31 16:59:33 +0100 | [diff] [blame] | 135 | AUX_MODULES += bzip2 |
| 136 | |
Werner Lemberg | ccec889 | 2018-03-08 06:09:17 +0100 | [diff] [blame] | 137 | # OpenType table validation. Needs `ftotval.c' below. |
Werner Lemberg | 5993924 | 2006-01-31 20:17:42 +0000 | [diff] [blame] | 138 | # |
| 139 | # AUX_MODULES += otvalid |
| 140 | |
| 141 | # Auxiliary PostScript driver component to share common code. |
| 142 | # |
| 143 | # This module depends on `psnames'. |
| 144 | AUX_MODULES += psaux |
| 145 | |
| 146 | # Support for PostScript glyph names. |
| 147 | # |
| 148 | # This module can be controlled in ftconfig.h |
| 149 | # (FT_CONFIG_OPTION_POSTSCRIPT_NAMES). |
| 150 | AUX_MODULES += psnames |
| 151 | |
| 152 | |
| 153 | #### |
| 154 | #### base module extensions |
| 155 | #### |
| 156 | |
| 157 | # Exact bounding box calculation. |
| 158 | # |
Werner Lemberg | 392cf22 | 2015-06-25 13:04:57 +0200 | [diff] [blame] | 159 | # See include/freetype/ftbbox.h for the API. |
Werner Lemberg | 5993924 | 2006-01-31 20:17:42 +0000 | [diff] [blame] | 160 | BASE_EXTENSIONS += ftbbox.c |
| 161 | |
| 162 | # Access BDF-specific strings. Needs BDF font driver. |
| 163 | # |
Werner Lemberg | 392cf22 | 2015-06-25 13:04:57 +0200 | [diff] [blame] | 164 | # See include/freetype/ftbdf.h for the API. |
Werner Lemberg | 5993924 | 2006-01-31 20:17:42 +0000 | [diff] [blame] | 165 | BASE_EXTENSIONS += ftbdf.c |
| 166 | |
| 167 | # Utility functions for converting 1bpp, 2bpp, 4bpp, and 8bpp bitmaps into |
Werner Lemberg | 9884fae | 2006-09-29 22:13:21 +0000 | [diff] [blame] | 168 | # 8bpp format, and for emboldening of bitmap glyphs. |
Werner Lemberg | 5993924 | 2006-01-31 20:17:42 +0000 | [diff] [blame] | 169 | # |
Werner Lemberg | 392cf22 | 2015-06-25 13:04:57 +0200 | [diff] [blame] | 170 | # See include/freetype/ftbitmap.h for the API. |
Werner Lemberg | 5993924 | 2006-01-31 20:17:42 +0000 | [diff] [blame] | 171 | BASE_EXTENSIONS += ftbitmap.c |
| 172 | |
Werner Lemberg | 5184ed6 | 2009-01-22 10:13:59 +0000 | [diff] [blame] | 173 | # Access CID font information. |
| 174 | # |
Werner Lemberg | 392cf22 | 2015-06-25 13:04:57 +0200 | [diff] [blame] | 175 | # See include/freetype/ftcid.h for the API. |
Werner Lemberg | 5184ed6 | 2009-01-22 10:13:59 +0000 | [diff] [blame] | 176 | BASE_EXTENSIONS += ftcid.c |
| 177 | |
Werner Lemberg | ccec889 | 2018-03-08 06:09:17 +0100 | [diff] [blame] | 178 | # Access FSType information. Needs `fttype1.c'. |
Werner Lemberg | 5184ed6 | 2009-01-22 10:13:59 +0000 | [diff] [blame] | 179 | # |
Werner Lemberg | 392cf22 | 2015-06-25 13:04:57 +0200 | [diff] [blame] | 180 | # See include/freetype/freetype.h for the API. |
Werner Lemberg | 5184ed6 | 2009-01-22 10:13:59 +0000 | [diff] [blame] | 181 | BASE_EXTENSIONS += ftfstype.c |
| 182 | |
| 183 | # Support for GASP table queries. |
| 184 | # |
Werner Lemberg | 392cf22 | 2015-06-25 13:04:57 +0200 | [diff] [blame] | 185 | # See include/freetype/ftgasp.h for the API. |
Werner Lemberg | 5184ed6 | 2009-01-22 10:13:59 +0000 | [diff] [blame] | 186 | BASE_EXTENSIONS += ftgasp.c |
| 187 | |
Werner Lemberg | ccec889 | 2018-03-08 06:09:17 +0100 | [diff] [blame] | 188 | # Convenience functions to handle glyphs. Needs `ftbitmap.c'. |
Werner Lemberg | 5993924 | 2006-01-31 20:17:42 +0000 | [diff] [blame] | 189 | # |
Werner Lemberg | 392cf22 | 2015-06-25 13:04:57 +0200 | [diff] [blame] | 190 | # See include/freetype/ftglyph.h for the API. |
Werner Lemberg | 5993924 | 2006-01-31 20:17:42 +0000 | [diff] [blame] | 191 | BASE_EXTENSIONS += ftglyph.c |
| 192 | |
Werner Lemberg | 5184ed6 | 2009-01-22 10:13:59 +0000 | [diff] [blame] | 193 | # Interface for gxvalid module. |
Werner Lemberg | 5993924 | 2006-01-31 20:17:42 +0000 | [diff] [blame] | 194 | # |
Werner Lemberg | 392cf22 | 2015-06-25 13:04:57 +0200 | [diff] [blame] | 195 | # See include/freetype/ftgxval.h for the API. |
Suzuki, Toshiya (鈴木俊哉) | f1e9606 | 2006-08-15 17:02:47 +0000 | [diff] [blame] | 196 | BASE_EXTENSIONS += ftgxval.c |
Werner Lemberg | 5993924 | 2006-01-31 20:17:42 +0000 | [diff] [blame] | 197 | |
| 198 | # Multiple Master font interface. |
| 199 | # |
Werner Lemberg | 392cf22 | 2015-06-25 13:04:57 +0200 | [diff] [blame] | 200 | # See include/freetype/ftmm.h for the API. |
Werner Lemberg | 5993924 | 2006-01-31 20:17:42 +0000 | [diff] [blame] | 201 | BASE_EXTENSIONS += ftmm.c |
| 202 | |
Werner Lemberg | 5184ed6 | 2009-01-22 10:13:59 +0000 | [diff] [blame] | 203 | # Interface for otvalid module. |
Werner Lemberg | 5993924 | 2006-01-31 20:17:42 +0000 | [diff] [blame] | 204 | # |
Werner Lemberg | 392cf22 | 2015-06-25 13:04:57 +0200 | [diff] [blame] | 205 | # See include/freetype/ftotval.h for the API. |
Wu, Chia-I (吳佳一) | facd9af | 2006-02-22 07:59:35 +0000 | [diff] [blame] | 206 | BASE_EXTENSIONS += ftotval.c |
Werner Lemberg | 5993924 | 2006-01-31 20:17:42 +0000 | [diff] [blame] | 207 | |
Werner Lemberg | 5184ed6 | 2009-01-22 10:13:59 +0000 | [diff] [blame] | 208 | # Support for FT_Face_CheckTrueTypePatents. |
| 209 | # |
Werner Lemberg | 392cf22 | 2015-06-25 13:04:57 +0200 | [diff] [blame] | 210 | # See include/freetype/freetype.h for the API. |
Werner Lemberg | 5184ed6 | 2009-01-22 10:13:59 +0000 | [diff] [blame] | 211 | BASE_EXTENSIONS += ftpatent.c |
| 212 | |
Werner Lemberg | 5993924 | 2006-01-31 20:17:42 +0000 | [diff] [blame] | 213 | # Interface for accessing PFR-specific data. Needs PFR font driver. |
| 214 | # |
Werner Lemberg | 392cf22 | 2015-06-25 13:04:57 +0200 | [diff] [blame] | 215 | # See include/freetype/ftpfr.h for the API. |
Werner Lemberg | 5993924 | 2006-01-31 20:17:42 +0000 | [diff] [blame] | 216 | BASE_EXTENSIONS += ftpfr.c |
| 217 | |
Werner Lemberg | ccec889 | 2018-03-08 06:09:17 +0100 | [diff] [blame] | 218 | # Path stroker. Needs `ftglyph.c'. |
Werner Lemberg | 5993924 | 2006-01-31 20:17:42 +0000 | [diff] [blame] | 219 | # |
Werner Lemberg | 392cf22 | 2015-06-25 13:04:57 +0200 | [diff] [blame] | 220 | # See include/freetype/ftstroke.h for the API. |
Werner Lemberg | 5993924 | 2006-01-31 20:17:42 +0000 | [diff] [blame] | 221 | BASE_EXTENSIONS += ftstroke.c |
| 222 | |
Werner Lemberg | ccec889 | 2018-03-08 06:09:17 +0100 | [diff] [blame] | 223 | # Support for synthetic emboldening and slanting of fonts. Needs |
| 224 | # `ftbitmap.c'. |
Werner Lemberg | 5993924 | 2006-01-31 20:17:42 +0000 | [diff] [blame] | 225 | # |
Werner Lemberg | 392cf22 | 2015-06-25 13:04:57 +0200 | [diff] [blame] | 226 | # See include/freetype/ftsynth.h for the API. |
Werner Lemberg | 5993924 | 2006-01-31 20:17:42 +0000 | [diff] [blame] | 227 | BASE_EXTENSIONS += ftsynth.c |
| 228 | |
| 229 | # Interface to access data specific to PostScript Type 1 and Type 2 (CFF) |
| 230 | # fonts. |
| 231 | # |
Werner Lemberg | 392cf22 | 2015-06-25 13:04:57 +0200 | [diff] [blame] | 232 | # See include/freetype/t1tables.h for the API. |
Werner Lemberg | 5993924 | 2006-01-31 20:17:42 +0000 | [diff] [blame] | 233 | BASE_EXTENSIONS += fttype1.c |
| 234 | |
| 235 | # Interface for accessing data specific to Windows FNT files. Needs winfnt |
| 236 | # driver. |
| 237 | # |
Werner Lemberg | 392cf22 | 2015-06-25 13:04:57 +0200 | [diff] [blame] | 238 | # See include/freetype/ftwinfnt.h for the API. |
Werner Lemberg | 5993924 | 2006-01-31 20:17:42 +0000 | [diff] [blame] | 239 | BASE_EXTENSIONS += ftwinfnt.c |
| 240 | |
Werner Lemberg | 5993924 | 2006-01-31 20:17:42 +0000 | [diff] [blame] | 241 | #### |
| 242 | #### The components `ftsystem.c' (for memory allocation and stream I/O |
| 243 | #### management) and `ftdebug.c' (for emitting debug messages to the user) |
| 244 | #### are controlled with the following variables. |
| 245 | #### |
| 246 | #### ftsystem.c: $(FTSYS_SRC) |
| 247 | #### ftdebug.c: $(FTDEBUG_SRC) |
| 248 | #### |
| 249 | #### Please refer to docs/CUSTOMIZE for details. |
| 250 | #### |
| 251 | |
| 252 | |
| 253 | # EOF |