1 # FreeType 2 top Jamfile (c) 2001-2002 David Turner
4 # The HDRMACRO is already defined in FTJam and is used to add
5 # the content of certain macros to the list of included header
8 # we can compile FreeType 2 with classic Jam however thanks to
19 # We need to invoke a SubDir rule if the FT2 source directory top is not the
20 # current directory. This allows us to build FreeType 2 as part of a larger
23 if $(FT2_TOP) != $(DOT)
29 # The following macros define the include directory, the source directory
30 # and the final library name (without library extensions). They can be
31 # replaced by other definitions when the library is compiled as part of
35 # name of FreeType include directory during compilation.
38 FT2_INCLUDE_DIR ?= include ;
40 # name of FreeType source directory during compilation.
45 # name of final library, without extension
47 FT2_LIB ?= $(LIBPREFIX)freetype ;
50 # define FT2_BUILD_INCLUDE to point to your build-specific directory
51 # this is prepended to FT2_INCLUDE_DIR. This can be used to specify
52 # the location of a custom <ft2build.h> which will point to custom
53 # versions of "ftmodule.h" and "ftoption.h", for example
55 FT2_BUILD_INCLUDE ?= ;
57 # the list of modules to compile on any given build of the library
58 # by default, this will contain _all_ modules defined in FT2_SRC_DIR
60 # IMPORTANT: You'll need to change the content of "ftmodule.h" as well
61 # if you modify this list or provide your own.
63 FT2_COMPONENTS ?= gzip # support for gzip-compressed files.
64 autohint # auto-hinter
65 base # base component (public APIs)
67 cache # cache sub-system
68 cff # CFF/CEF font driver
69 cid # Postscript CID-keyed font driver
71 pfr # PFR/TrueDoc font driver
72 psaux # Common Postscript routines module
73 pshinter # Postscript hinter module
74 psnames # Postscript names handling
75 raster # Monochrome rasterizer
76 smooth # Anti-aliased rasterizer
77 sfnt # SFNT-based format support routines
78 truetype # TrueType font driver
79 type1 # Postscript Type 1 font driver
80 type42 # Postscript Type 42 (embedded TrueType) driver
81 winfonts # Windows FON/FNT font driver
87 FT2_INCLUDE = $(FT2_BUILD_INCLUDE)
88 [ FT2_SubDir $(FT2_INCLUDE_DIR) ] ;
90 FT2_SRC = [ FT2_SubDir $(FT2_SRC_DIR) ] ;
92 # only used by FreeType developers
96 CCFLAGS += -DDEBUG_HINTER ;
100 # We need "freetype2/include" in the current include path in order to
101 # compile any part of FreeType 2.
103 SubDirHdr += $(FT2_INCLUDE) ;
105 # Uncomment the following line if you want to build individual source files
106 # for each FreeType 2 module.
110 # The file <freetype/config/ftheader.h> is used to define macros that are
111 # later used in #include statements. It needs to be parsed in order to
112 # record these definitions.
114 HDRMACRO [ FT2_SubDir include freetype config ftheader.h ] ;
115 HDRMACRO [ FT2_SubDir include freetype internal internal.h ] ;
117 # Now include the Jamfile in "freetype2/src", used to drive the compilation
118 # of each FreeType 2 component and/or module.
120 SubInclude FT2_TOP $(FT2_SRC_DIR) ;
123 # tests files (hinter debugging). only used by FreeType developers
127 SubInclude FT2_TOP tests ;