misc/libfreetype/docs/INSTALL.ANY
branchwebgl
changeset 9521 8054d9d775fd
parent 9282 92af50454cf2
parent 9519 b8b5c82eb61b
child 9950 2759212a27de
equal deleted inserted replaced
9282:92af50454cf2 9521:8054d9d775fd
     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 <freetype/ftbbox.h>
       
    37       src/base/ftglyph.c      -- recommended, see <freetype/ftglyph.h>
       
    38 
       
    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>
       
    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 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 ---