2002-11-06 23:32:54 +01:00
|
|
|
# FreeType 2 top Jamfile (c) 2001-2002 David Turner
|
2001-03-24 18:10:09 +01:00
|
|
|
#
|
|
|
|
|
2002-11-06 23:32:54 +01:00
|
|
|
# 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 !!
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2001-04-03 23:07:36 +02:00
|
|
|
# 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.
|
2001-03-24 18:10:09 +01:00
|
|
|
#
|
|
|
|
if $(FT2_TOP) != $(DOT)
|
|
|
|
{
|
2001-04-03 23:07:36 +02:00
|
|
|
SubDir FT2_TOP ;
|
2001-03-24 18:10:09 +01:00
|
|
|
}
|
|
|
|
|
2002-11-06 23:32:54 +01:00
|
|
|
#
|
|
|
|
# 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.
|
|
|
|
# relative to FT2_TOP
|
|
|
|
#
|
|
|
|
FT2_INCLUDE_DIR ?= include ;
|
|
|
|
|
|
|
|
# name of FreeType source directory during compilation.
|
|
|
|
# relative to FT2_TOP
|
|
|
|
#
|
|
|
|
FT2_SRC_DIR ?= src ;
|
2001-03-24 18:10:09 +01:00
|
|
|
|
2002-11-06 23:32:54 +01:00
|
|
|
# name of final library, without extension
|
|
|
|
#
|
|
|
|
FT2_LIB ?= $(LIBPREFIX)freetype ;
|
2001-03-24 18:10:09 +01:00
|
|
|
|
2002-11-06 23:32:54 +01:00
|
|
|
|
|
|
|
# define FT2_BUILD_INCLUDE to point to your build-specific directory
|
|
|
|
# this is prepended to FT2_INCLUDE_DIR. This 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) ] ;
|
|
|
|
|
|
|
|
# only used by FreeType developers
|
|
|
|
#
|
2001-10-18 13:59:08 +02:00
|
|
|
if $(DEBUG_HINTER)
|
|
|
|
{
|
|
|
|
CCFLAGS += -DDEBUG_HINTER ;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2001-04-03 23:07:36 +02:00
|
|
|
# We need "freetype2/include" in the current include path in order to
|
|
|
|
# compile any part of FreeType 2.
|
2001-03-24 18:10:09 +01:00
|
|
|
#
|
2003-01-08 10:10:53 +01:00
|
|
|
HDRS += $(FT2_INCLUDE) ;
|
|
|
|
|
|
|
|
|
|
|
|
#SubDirHdr += $(FT2_INCLUDE) ;
|
2001-03-24 18:10:09 +01:00
|
|
|
|
2001-04-03 23:07:36 +02:00
|
|
|
# Uncomment the following line if you want to build individual source files
|
2001-03-24 18:10:09 +01:00
|
|
|
# for each FreeType 2 module.
|
|
|
|
#
|
* README: Formatting.
* Jamfile: Fix typo.
* src/cff/cffparse.c: Move error code #defines to...
* include/freetype/internal/cfferrs.h: This file.
* src/cff/cffdrivr.c, src/cff/cffobjs.c, src/cff/cffload.c: Replaced
`FT_Err_*' with `CFF_Err_*'.
* src/cid/cidparse.c: Replaced `FT_Err_*' with `T1_Err_*'.
* src/psaux/psobjs.c, src/psaux/t1decode.c: Ditto.
* src/sfnt/sfobcs.c, src/sfnt/ttload.c: Replaced `FT_Err_*' with
`TT_Err_*'.
* src/truetype/ttgload.c, src/truetype/ttobjs.c: Ditto.
* src/type1/t1gload.c, src/type1/t1load.c, src/type1/t1objs.c,
src/type1/t1parse.c: Replaced `FT_Err_*' with `T1_Err_*'.
* include/freetype/internal/cfferrs.h: Add
`CFF_Err_Unknown_File_Format'.
* include/freetype/internal/t1errors.h: Add
`T1_Err_Unknown_File_Format'.
* include/freetype/internal/tterrors.h: Add
`TT_Err_Unknown_File_Format'.
* src/cff/cffload.h: Add `cff_*_encoding' and `cff_*_charset'
references.
* src/psaux/psobjs.c: Include `FT_INTERNAL_TYPE1_ERRORS_H'.
* src/cff/cffobjs.c (CFF_Init_Face, CFF_Done_Face): Use
FT_LOCAL_DEF.
* src/cid/cidobjs.c (CID_Done_Driver): Ditto.
* src/trutype/ttobjs.c (TT_Init_Face, TT_Done_Face, TT_Init_Size):
Ditto.
* src/type1/t1objs.c (T1_Done_Driver): Ditto.
* src/pcf/pcfdriver.c (PCF_Done_Face): Ditto.
* src/pcf/pcf.h: Use FT_LOCAL for `PCF_Done_Face'.
2001-04-03 01:54:01 +02:00
|
|
|
# FT2_MULTI = true ;
|
2001-03-24 18:10:09 +01:00
|
|
|
|
2001-05-14 16:01:00 +02:00
|
|
|
# The file <freetype/config/ftheader.h> is used to define macros that are
|
2001-04-03 23:07:36 +02:00
|
|
|
# later used in #include statements. It needs to be parsed in order to
|
|
|
|
# record these definitions.
|
2001-03-24 18:10:09 +01:00
|
|
|
#
|
2001-05-11 16:25:02 +02:00
|
|
|
HDRMACRO [ FT2_SubDir include freetype config ftheader.h ] ;
|
2001-10-18 13:59:08 +02:00
|
|
|
HDRMACRO [ FT2_SubDir include freetype internal internal.h ] ;
|
2001-03-24 18:10:09 +01:00
|
|
|
|
2001-04-03 23:07:36 +02:00
|
|
|
# Now include the Jamfile in "freetype2/src", used to drive the compilation
|
|
|
|
# of each FreeType 2 component and/or module.
|
2001-03-24 18:10:09 +01:00
|
|
|
#
|
2002-11-06 23:32:54 +01:00
|
|
|
SubInclude FT2_TOP $(FT2_SRC_DIR) ;
|
2001-03-24 18:10:09 +01:00
|
|
|
|
|
|
|
|
2002-11-06 23:32:54 +01:00
|
|
|
# tests files (hinter debugging). only used by FreeType developers
|
2001-10-18 13:59:08 +02:00
|
|
|
#
|
|
|
|
if $(DEBUG_HINTER)
|
|
|
|
{
|
|
|
|
SubInclude FT2_TOP tests ;
|
|
|
|
}
|
|
|
|
|
2001-04-03 23:07:36 +02:00
|
|
|
# end of top Jamfile
|