Wed, 31 Dec 2014 06:09:35 +0100
Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.
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
5 specific environments.
8 I. Standard procedure
9 ---------------------
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
17 C compliant!
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)
30 src/base/ftsystem.c
31 src/base/ftinit.c
32 src/base/ftdebug.c
34 src/base/ftbase.c
36 src/base/ftbbox.c -- recommended, see <ftbbox.h>
37 src/base/ftglyph.c -- recommended, see <ftglyph.h>
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>
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
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
72 -- rasterizers (optional; at least one is needed for vector
73 formats)
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
92 Notes:
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
114 file `modules.cfg'.
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] .
131 etc.
133 2. Compile sources
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.
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, 2013 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
153 and accept it fully.
156 --- end of INSTALL.ANY ---