modules/freetype2/docs/INSTALL.ANY

branch
TOR_BUG_9701
changeset 15
b8a032363ba2
equal deleted inserted replaced
-1:000000000000 0:e9c68f4dd655
1 Instructions on how to build FreeType with your own build tool
2 ==============================================================
3
4 See the file `CUSTOMIZE' to learn how to customize FreeType to
5 specific environments.
6
7
8 I. Standard procedure
9 ---------------------
10
11 * DISABLE PRE-COMPILED HEADERS! This is very important for Visual
12 C++, because FreeType uses lines like:
13
14 #include FT_FREETYPE_H
15
16 which are not correctly supported by this compiler while being ISO
17 C compliant!
18
19 * You need to add the directories `freetype2/include' to your
20 include path when compiling the library.
21
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.
25
26 * DO NOT COMPILE ALL C FILES! Rather, compile the following ones.
27
28 -- base components (required)
29
30 src/base/ftsystem.c
31 src/base/ftinit.c
32 src/base/ftdebug.c
33
34 src/base/ftbase.c
35
36 src/base/ftbbox.c -- recommended, see <ftbbox.h>
37 src/base/ftglyph.c -- recommended, see <ftglyph.h>
38
39 src/base/ftbdf.c -- optional, see <ftbdf.h>
40 src/base/ftbitmap.c -- optional, see <ftbitmap.h>
41 src/base/ftcid.c -- optional, see <ftcid.h>
42 src/base/ftfstype.c -- optional
43 src/base/ftgasp.c -- optional, see <ftgasp.h>
44 src/base/ftgxval.c -- optional, see <ftgxval.h>
45 src/base/ftlcdfil.c -- optional, see <ftlcdfil.h>
46 src/base/ftmm.c -- optional, see <ftmm.h>
47 src/base/ftotval.c -- optional, see <ftotval.h>
48 src/base/ftpatent.c -- optional
49 src/base/ftpfr.c -- optional, see <ftpfr.h>
50 src/base/ftstroke.c -- optional, see <ftstroke.h>
51 src/base/ftsynth.c -- optional, see <ftsynth.h>
52 src/base/fttype1.c -- optional, see <t1tables.h>
53 src/base/ftwinfnt.c -- optional, see <ftwinfnt.h>
54 src/base/ftxf86.c -- optional, see <ftxf86.h>
55
56 src/base/ftmac.c -- only on the Macintosh
57
58 -- font drivers (optional; at least one is needed)
59
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
66 (TrueType & OpenType)
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
71
72 -- rasterizers (optional; at least one is needed for vector
73 formats)
74
75 src/raster/raster.c -- monochrome rasterizer
76 src/smooth/smooth.c -- anti-aliasing rasterizer
77
78 -- auxiliary modules (optional)
79
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
90
91
92 Notes:
93
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'
99
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'
105
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).
109
110
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
114 file `modules.cfg'.
115
116 You are done. In case of problems, see the archives of the FreeType
117 development mailing list.
118
119
120 II. Support for flat-directory compilation
121 ------------------------------------------
122
123 It is possible to put all FreeType 2 source files into a single
124 directory, with the *exception* of the `include' hierarchy.
125
126 1. Copy all files in current directory
127
128 cp freetype2/src/base/*.[hc] .
129 cp freetype2/src/raster1/*.[hc] .
130 cp freetype2/src/smooth/*.[hc] .
131 etc.
132
133 2. Compile sources
134
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
139 etc.
140
141 You don't need to define the FT_FLAT_COMPILATION macro (as this
142 was required in previous releases of FreeType 2).
143
144 ----------------------------------------------------------------------
145
146 Copyright 2003, 2005, 2006, 2009, 2010, 2013 by
147 David Turner, Robert Wilhelm, and Werner Lemberg.
148
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
153 and accept it fully.
154
155
156 --- end of INSTALL.ANY ---

mercurial