Official mirror of https://gitlab.freedesktop.org/freetype/freetype
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.
155 lines
4.3 KiB
155 lines
4.3 KiB
# FreeType 2 top Jamfile (c) 2001, 2002, 2003 David Turner |
|
# |
|
|
|
# The HDRMACRO is already defined in FTJam and is used to add |
|
# the content of certain macros to the list of included header |
|
# files. |
|
# |
|
# We can compile FreeType 2 with classic Jam however thanks to |
|
# the following code |
|
# |
|
if ! $(JAM_TOOLSET) |
|
{ |
|
rule HDRMACRO |
|
{ |
|
# nothing |
|
} |
|
} |
|
|
|
|
|
# We need to invoke a SubDir rule if the FT2 source directory top is not the |
|
# current directory. This allows us to build FreeType 2 as part of a larger |
|
# project easily. |
|
# |
|
if $(FT2_TOP) != $(DOT) |
|
{ |
|
SubDir FT2_TOP ; |
|
} |
|
|
|
|
|
# The following macros define the include directory, the source directory, |
|
# and the final library name (without library extensions). They can be |
|
# replaced by other definitions when the library is compiled as part of |
|
# a larger project. |
|
# |
|
|
|
# Name of FreeType include directory during compilation. |
|
# This is relative to FT2_TOP. |
|
# |
|
FT2_INCLUDE_DIR ?= include ; |
|
|
|
# Name of FreeType source directory during compilation. |
|
# This is relative to FT2_TOP. |
|
# |
|
FT2_SRC_DIR ?= src ; |
|
|
|
# Name of final library, without extension. |
|
# |
|
FT2_LIB ?= $(LIBPREFIX)freetype ; |
|
|
|
|
|
# Define FT2_BUILD_INCLUDE to point to your build-specific directory. |
|
# This is prepended to FT2_INCLUDE_DIR. It can be used to specify |
|
# the location of a custom <ft2build.h> which will point to custom |
|
# versions of "ftmodule.h" and "ftoption.h", for example. |
|
# |
|
FT2_BUILD_INCLUDE ?= ; |
|
|
|
# The list of modules to compile on any given build of the library. |
|
# By default, this will contain _all_ modules defined in FT2_SRC_DIR. |
|
# |
|
# IMPORTANT: You'll need to change the content of "ftmodule.h" as well |
|
# if you modify this list or provide your own. |
|
# |
|
FT2_COMPONENTS ?= gzip # support for gzip-compressed files |
|
autohint # auto-hinter |
|
base # base component (public APIs) |
|
bdf # BDF font driver |
|
cache # cache sub-system |
|
cff # CFF/CEF font driver |
|
cid # PostScript CID-keyed font driver |
|
pcf # PCF font driver |
|
pfr # PFR/TrueDoc font driver |
|
psaux # common PostScript routines module |
|
pshinter # PostScript hinter module |
|
psnames # PostScript names handling |
|
raster # monochrome rasterizer |
|
smooth # anti-aliased rasterizer |
|
sfnt # SFNT-based format support routines |
|
truetype # TrueType font driver |
|
type1 # PostScript Type 1 font driver |
|
type42 # PostScript Type 42 (embedded TrueType) driver |
|
winfonts # Windows FON/FNT font driver |
|
; |
|
|
|
|
|
# Don't touch. |
|
# |
|
FT2_INCLUDE = $(FT2_BUILD_INCLUDE) |
|
[ FT2_SubDir $(FT2_INCLUDE_DIR) ] ; |
|
|
|
FT2_SRC = [ FT2_SubDir $(FT2_SRC_DIR) ] ; |
|
|
|
# Location of API Reference Documentation |
|
# |
|
if $(DOC_DIR) |
|
{ |
|
DOC_DIR = $(DOCDIR:T) ; |
|
} |
|
else |
|
{ |
|
DOC_DIR = docs/reference ; |
|
} |
|
|
|
|
|
# Only used by FreeType developers. |
|
# |
|
if $(DEBUG_HINTER) |
|
{ |
|
CCFLAGS += -DDEBUG_HINTER ; |
|
} |
|
|
|
|
|
# We need "freetype2/include" in the current include path in order to |
|
# compile any part of FreeType 2. |
|
# |
|
HDRS += $(FT2_INCLUDE) ; |
|
|
|
|
|
# Uncomment the following line if you want to build individual source files |
|
# for each FreeType 2 module. This is only useful during development, and |
|
# is better defined as an environment variable anyway! |
|
# |
|
# FT2_MULTI = true ; |
|
|
|
|
|
# The file <freetype/config/ftheader.h> is used to define macros that are |
|
# later used in #include statements. It needs to be parsed in order to |
|
# record these definitions. |
|
# |
|
HDRMACRO [ FT2_SubDir include freetype config ftheader.h ] ; |
|
HDRMACRO [ FT2_SubDir include freetype internal internal.h ] ; |
|
|
|
|
|
# Now include the Jamfile in "freetype2/src", used to drive the compilation |
|
# of each FreeType 2 component and/or module. |
|
# |
|
SubInclude FT2_TOP $(FT2_SRC_DIR) ; |
|
|
|
|
|
# Test files (hinter debugging). Only used by FreeType developers. |
|
# |
|
if $(DEBUG_HINTER) |
|
{ |
|
SubInclude FT2_TOP tests ; |
|
} |
|
|
|
actions RefDoc |
|
{ |
|
python $(FT2_SRC)/tools/docmaker/docmaker.py --prefix=ft2 --title=FreeType-2.1.5 --output=$(DOC_DIR) $(FT2_INCLUDE)/freetype/*.h $(FT2_INCLUDE)/freetype/config/*.h $(FT2_INCLUDE)/freetype/cache/*.h |
|
} |
|
|
|
RefDoc refdoc ; |
|
|
|
|
|
# end of top Jamfile
|
|
|