ref: 2a0903a54b637bc320e9fcad5161ddce3c26f484
dir: /docs/INSTALL.ANY/
Instructions on how to build FreeType with your own build tool ============================================================== See the file `CUSTOMIZE' to learn how to customize FreeType to specific environments. I. Standard procedure --------------------- * DISABLE PRE-COMPILED HEADERS! This is very important for Visual C++, because FreeType uses lines like: #include FT_FREETYPE_H which are not correctly supported by this compiler while being ISO C compliant! * You need to add the directories `freetype2/include' to your include path when compiling the library. * FreeType 2 is made of several components; each of them is located in a subdirectory of `freetype2/src'. For example, `freetype2/src/truetype/' contains the TrueType font driver. * DO NOT COMPILE ALL C FILES! Rather, compile the following ones: -- base components (required) src/base/ftsystem.c src/base/ftinit.c src/base/ftdebug.c src/base/ftbase.c src/base/ftbbox.c -- recommended, see <freetype/ftbbox.h> src/base/ftglyph.c -- recommended, see <freetype/ftglyph.h> src/base/ftbdf.c -- optional, see <freetype/ftbdf.h> src/base/ftbitmap.c -- optional, see <freetype/ftbitmap.h> src/base/ftmm.c -- optional, see <freetype/ftmm.h> src/base/ftpfr.c -- optional, see <freetype/ftpfr.h> src/base/ftwinfnt.c -- optional, see <freetype/ftwinfnt.h> src/base/ftmac.c -- only on the Macintosh -- font drivers (optional; at least one is needed) src/bdf/bdf.c -- BDF font driver src/cff/cff.c -- CFF/OpenType font driver src/cid/type1cid.c -- Type 1 CID-keyed font driver src/pcf/pcf.c -- PCF font driver src/pfr/pfr.c -- PFR/TrueDoc font driver src/sfnt/sfnt.c -- SFNT files support (TrueType & OpenType) src/truetype/truetype.c -- TrueType font driver src/type1/type1.c -- Type 1 font driver src/type42/type42.c -- Type 42 font driver src/winfonts/winfonts.c -- Windows FONT / FNT font driver -- rasterizers (optional; at least one is needed for vector formats) src/raster/raster.c -- monochrome rasterizer src/smooth/smooth.c -- anti-aliasing rasterizer -- auxiliary modules (optional) src/autofit/autofit.c -- auto hinting module src/cache/ftcache.c -- cache sub-system (in beta) src/gzip/ftgzip.c -- support for compressed fonts (.gz) src/lzw/ftlzw.c -- support for compressed fonts (.Z) src/gxvalid/gxvalid.c -- TrueTypeGX/AAT table validation src/otvalid/otvalid.c -- OpenType table validation src/psaux/psaux.c -- PostScript Type 1 parsing src/pshinter/pshinter.c -- PS hinting module src/psnames/psnames.c -- PostScript glyph names support Notes: `cff.c' needs `sfnt.c', `pshinter.c', and `psnames.c' `truetype.c' needs `sfnt.c' and `psnames.c' `type1.c' needs `psaux.c' `pshinter.c', and `psnames.c' `type1cid.c' needs `psaux.c', `pshinter.c', and `psnames.c' `type42.c' needs `truetype.c' Read the file `CUSTOMIZE' in case you want to compile only a subset of the drivers, renderers, and optional modules. You are done. In case of problems, see the archives of the FreeType development mailing list. II. Support for flat-directory compilation ------------------------------------------ It is possible to put all FreeType 2 source files into a single directory, with the *exception* of the `include' hierarchy. 1. Copy all files in current directory cp freetype2/src/base/*.[hc] . cp freetype2/src/raster1/*.[hc] . cp freetype2/src/smooth/*.[hc] . etc. 2. Compile sources cc -c -Ifreetype2/include ftsystem.c cc -c -Ifreetype2/include ftinit.c cc -c -Ifreetype2/include ftdebug.c cc -c -Ifreetype2/include ftbase.c etc. You don't need to define the FT_FLAT_COMPILATION macro (as this was required in previous releases of FreeType 2). ------------------------------------------------------------------------ Copyright 2003, 2005 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. --- end of INSTALL.ANY ---