1 Instructions on how to build FreeType with your own build tool
2 ==============================================================
4 See the file `CUSTOMIZE' to learn how to customize FreeType to
11 * DISABLE PRE-COMPILED HEADERS! This is very important for Visual
12 C++, because FreeType uses lines like:
14 #include FT_FREETYPE_H
16 which are not correctly supported by this compiler while being ISO
19 * You need to add the directories `freetype2/include' to your
20 include path when compiling the library.
22 * FreeType 2 is made of several components; each of them is located
23 in a subdirectory of `freetype2/src'. For example,
24 `freetype2/src/truetype/' contains the TrueType font driver.
26 * DO NOT COMPILE ALL C FILES! Rather, compile the following ones.
28 -- base components (required)
36 src/base/ftbbox.c -- recommended, see <freetype/ftbbox.h>
37 src/base/ftglyph.c -- recommended, see <freetype/ftglyph.h>
39 src/base/ftbdf.c -- optional, see <freetype/ftbdf.h>
40 src/base/ftbitmap.c -- optional, see <freetype/ftbitmap.h>
41 src/base/ftcid.c -- optional, see <freetype/ftcid.h>
42 src/base/ftfstype.c -- optional
43 src/base/ftgasp.c -- optional, see <freetype/ftgasp.h>
44 src/base/ftgxval.c -- optional, see <freetype/ftgxval.h>
45 src/base/ftlcdfil.c -- optional, see <freetype/ftlcdfil.h>
46 src/base/ftmm.c -- optional, see <freetype/ftmm.h>
47 src/base/ftotval.c -- optional, see <freetype/ftotval.h>
48 src/base/ftpatent.c -- optional
49 src/base/ftpfr.c -- optional, see <freetype/ftpfr.h>
50 src/base/ftstroke.c -- optional, see <freetype/ftstroke.h>
51 src/base/ftsynth.c -- optional, see <freetype/ftsynth.h>
52 src/base/fttype1.c -- optional, see <freetype/t1tables.h>
53 src/base/ftwinfnt.c -- optional, see <freetype/ftwinfnt.h>
54 src/base/ftxf86.c -- optional, see <freetype/ftxf86.h>
56 src/base/ftmac.c -- only on the Macintosh
58 -- font drivers (optional; at least one is needed)
60 src/bdf/bdf.c -- BDF font driver
61 src/cff/cff.c -- CFF/OpenType font driver
62 src/cid/type1cid.c -- Type 1 CID-keyed font driver
63 src/pcf/pcf.c -- PCF font driver
64 src/pfr/pfr.c -- PFR/TrueDoc font driver
65 src/sfnt/sfnt.c -- SFNT files support
67 src/truetype/truetype.c -- TrueType font driver
68 src/type1/type1.c -- Type 1 font driver
69 src/type42/type42.c -- Type 42 font driver
70 src/winfonts/winfnt.c -- Windows FONT / FNT font driver
72 -- rasterizers (optional; at least one is needed for vector
75 src/raster/raster.c -- monochrome rasterizer
76 src/smooth/smooth.c -- anti-aliasing rasterizer
78 -- auxiliary modules (optional)
80 src/autofit/autofit.c -- auto hinting module
81 src/cache/ftcache.c -- cache sub-system (in beta)
82 src/gzip/ftgzip.c -- support for compressed fonts (.gz)
83 src/lzw/ftlzw.c -- support for compressed fonts (.Z)
84 src/bzip2/ftbzip2.c -- support for compressed fonts (.bz2)
85 src/gxvalid/gxvalid.c -- TrueTypeGX/AAT table validation
86 src/otvalid/otvalid.c -- OpenType table validation
87 src/psaux/psaux.c -- PostScript Type 1 parsing
88 src/pshinter/pshinter.c -- PS hinting module
89 src/psnames/psnames.c -- PostScript glyph names support
94 `ftcache.c' needs `ftglyph.c'
95 `ftfstype.c' needs `fttype1.c'
96 `ftglyph.c' needs `ftbitmap.c'
97 `ftstroke.c' needs `ftglyph.c'
98 `ftsynth.c' needs `ftbitmap.c'
100 `cff.c' needs `sfnt.c', `pshinter.c', and `psnames.c'
101 `truetype.c' needs `sfnt.c' and `psnames.c'
102 `type1.c' needs `psaux.c' `pshinter.c', and `psnames.c'
103 `type1cid.c' needs `psaux.c', `pshinter.c', and `psnames.c'
104 `type42.c' needs `truetype.c'
106 To use `ftbzip2.c', an application must be linked with a library
107 which implements bzip2 support (and the bzip2 header files must
108 be available also during compilation).
111 Read the file `CUSTOMIZE' in case you want to compile only a subset
112 of the drivers, renderers, and optional modules; a detailed
113 description of the various base extension is given in the top-level
116 You are done. In case of problems, see the archives of the FreeType
117 development mailing list.
120 II. Support for flat-directory compilation
121 ------------------------------------------
123 It is possible to put all FreeType 2 source files into a single
124 directory, with the *exception* of the `include' hierarchy.
126 1. Copy all files in current directory
128 cp freetype2/src/base/*.[hc] .
129 cp freetype2/src/raster1/*.[hc] .
130 cp freetype2/src/smooth/*.[hc] .
135 cc -c -Ifreetype2/include -DFT2_BUILD_LIBRARY ftsystem.c
136 cc -c -Ifreetype2/include -DFT2_BUILD_LIBRARY ftinit.c
137 cc -c -Ifreetype2/include -DFT2_BUILD_LIBRARY ftdebug.c
138 cc -c -Ifreetype2/include -DFT2_BUILD_LIBRARY ftbase.c
141 You don't need to define the FT_FLAT_COMPILATION macro (as this
142 was required in previous releases of FreeType 2).
144 ----------------------------------------------------------------------
146 Copyright 2003, 2005, 2006, 2009, 2010 by
147 David Turner, Robert Wilhelm, and Werner Lemberg.
149 This file is part of the FreeType project, and may only be used,
150 modified, and distributed under the terms of the FreeType project
151 license, LICENSE.TXT. By continuing to use, modify, or distribute
152 this file you indicate that you have read the license and understand
156 --- end of INSTALL.ANY ---