🛠️🐜 Antkeeper superbuild with dependencies included https://antkeeper.com
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

157 lines
5.8 KiB

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