modules/freetype2/docs/INSTALL.ANY

Thu, 22 Jan 2015 13:21:57 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 22 Jan 2015 13:21:57 +0100
branch
TOR_BUG_9701
changeset 15
b8a032363ba2
permissions
-rw-r--r--

Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6

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

mercurial