shithub: freetype+ttf2subf

ref: 1e03fff62b1e9c1577858551924f531adeaa76e0
dir: /docs/INSTALL.ANY/

View raw version
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/ftglyph.c
      src/base/ftbbox.c
      src/base/ftmm.c
      src/base/ftpfr.c        -- optional, see <freetype/ftpfr.h>
      src/base/ftbdf.c        -- optional, see <freetype/ftbdf.h>
      src/base/ftwinfnt.c     -- optional, see <freetype/ftwinfnt.h>

      src/base/ftmac.c        -- only on the Macintosh

    -- other components (optional)

      src/autohint/autohint.c -- auto hinting module
      src/cache/ftcache.c     -- cache sub-system (in beta)
      src/sfnt/sfnt.c         -- SFNT files support
                                 (TrueType & OpenType)
      src/cff/cff.c           -- CFF/OpenType font driver
      src/pfr/pfr.c           -- PFR/TrueDoc font driver
      src/bdf/bdf.c           -- BDF font driver
      src/pcf/pcf.c           -- PCF font driver
      src/psnames/psnames.c   -- PostScript glyph names support
      src/psaux/psaux.c       -- PostScript Type 1 parsing
      src/truetype/truetype.c -- TrueType font driver
      src/type1/type1.c       -- Type 1 font driver
      src/cid/type1cid.c      -- Type 1 CID-keyed font driver
      src/winfonts/winfonts.c -- Windows FONT / FNT font driver
      src/raster1/raster1.c   -- monochrome rasterizer
      src/smooth/smooth.c     -- anti-aliasing rasterizer

    Notes:

      `truetype.c' needs `sfnt.c' and `psnames.c'
      `type1.c'    needs `psaux.c' and `psnames.c'
      `type1cid.c' needs `psaux.c' and `psnames.c'
      `cff.c'      needs `sfnt.c', `psaux.c', and `psnames.c'


  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).


--- end of INSTALL.ANY ---