mirror of
https://github.com/reactos/reactos.git
synced 2024-07-21 11:48:04 +00:00
Update to FreeType 2.1.5
svn path=/trunk/; revision=7814
This commit is contained in:
parent
e47bd48591
commit
561fa3d093
File diff suppressed because it is too large
Load diff
|
@ -1,206 +0,0 @@
|
||||||
# Doxyfile 1.3.5
|
|
||||||
|
|
||||||
#---------------------------------------------------------------------------
|
|
||||||
# Project related configuration options
|
|
||||||
#---------------------------------------------------------------------------
|
|
||||||
PROJECT_NAME = "ReactOS Freetype"
|
|
||||||
PROJECT_NUMBER =
|
|
||||||
OUTPUT_DIRECTORY = doxy-doc
|
|
||||||
OUTPUT_LANGUAGE = English
|
|
||||||
USE_WINDOWS_ENCODING = YES
|
|
||||||
BRIEF_MEMBER_DESC = YES
|
|
||||||
REPEAT_BRIEF = YES
|
|
||||||
ALWAYS_DETAILED_SEC = NO
|
|
||||||
INLINE_INHERITED_MEMB = NO
|
|
||||||
FULL_PATH_NAMES = YES
|
|
||||||
STRIP_FROM_PATH = ../..
|
|
||||||
SHORT_NAMES = NO
|
|
||||||
JAVADOC_AUTOBRIEF = YES
|
|
||||||
MULTILINE_CPP_IS_BRIEF = NO
|
|
||||||
DETAILS_AT_TOP = NO
|
|
||||||
INHERIT_DOCS = NO
|
|
||||||
DISTRIBUTE_GROUP_DOC = NO
|
|
||||||
TAB_SIZE = 8
|
|
||||||
ALIASES =
|
|
||||||
OPTIMIZE_OUTPUT_FOR_C = YES
|
|
||||||
OPTIMIZE_OUTPUT_JAVA = NO
|
|
||||||
SUBGROUPING = YES
|
|
||||||
#---------------------------------------------------------------------------
|
|
||||||
# Build related configuration options
|
|
||||||
#---------------------------------------------------------------------------
|
|
||||||
EXTRACT_ALL = YES
|
|
||||||
EXTRACT_PRIVATE = NO
|
|
||||||
EXTRACT_STATIC = NO
|
|
||||||
EXTRACT_LOCAL_CLASSES = NO
|
|
||||||
HIDE_UNDOC_MEMBERS = NO
|
|
||||||
HIDE_UNDOC_CLASSES = NO
|
|
||||||
HIDE_FRIEND_COMPOUNDS = NO
|
|
||||||
HIDE_IN_BODY_DOCS = NO
|
|
||||||
INTERNAL_DOCS = YES
|
|
||||||
CASE_SENSE_NAMES = YES
|
|
||||||
HIDE_SCOPE_NAMES = NO
|
|
||||||
SHOW_INCLUDE_FILES = YES
|
|
||||||
INLINE_INFO = YES
|
|
||||||
SORT_MEMBER_DOCS = YES
|
|
||||||
GENERATE_TODOLIST = YES
|
|
||||||
GENERATE_TESTLIST = YES
|
|
||||||
GENERATE_BUGLIST = YES
|
|
||||||
GENERATE_DEPRECATEDLIST= YES
|
|
||||||
ENABLED_SECTIONS =
|
|
||||||
MAX_INITIALIZER_LINES = 30
|
|
||||||
SHOW_USED_FILES = YES
|
|
||||||
#---------------------------------------------------------------------------
|
|
||||||
# configuration options related to warning and progress messages
|
|
||||||
#---------------------------------------------------------------------------
|
|
||||||
QUIET = NO
|
|
||||||
HAVE_DOT = YES
|
|
||||||
WARN_IF_UNDOCUMENTED = NO
|
|
||||||
WARN_IF_DOC_ERROR = YES
|
|
||||||
WARN_FORMAT = "$file:$line: $text"
|
|
||||||
WARN_LOGFILE =
|
|
||||||
#---------------------------------------------------------------------------
|
|
||||||
# configuration options related to the input files
|
|
||||||
#---------------------------------------------------------------------------
|
|
||||||
INPUT = .
|
|
||||||
FILE_PATTERNS = *.c \
|
|
||||||
*.h
|
|
||||||
RECURSIVE = YES
|
|
||||||
EXCLUDE =
|
|
||||||
EXCLUDE_SYMLINKS = NO
|
|
||||||
EXCLUDE_PATTERNS =
|
|
||||||
EXAMPLE_PATH =
|
|
||||||
EXAMPLE_PATTERNS =
|
|
||||||
EXAMPLE_RECURSIVE = YES
|
|
||||||
IMAGE_PATH =
|
|
||||||
INPUT_FILTER =
|
|
||||||
FILTER_SOURCE_FILES = NO
|
|
||||||
#---------------------------------------------------------------------------
|
|
||||||
# configuration options related to source browsing
|
|
||||||
#---------------------------------------------------------------------------
|
|
||||||
SOURCE_BROWSER = YES
|
|
||||||
INLINE_SOURCES = YES
|
|
||||||
STRIP_CODE_COMMENTS = YES
|
|
||||||
REFERENCED_BY_RELATION = YES
|
|
||||||
REFERENCES_RELATION = YES
|
|
||||||
VERBATIM_HEADERS = NO
|
|
||||||
#---------------------------------------------------------------------------
|
|
||||||
# configuration options related to the alphabetical class index
|
|
||||||
#---------------------------------------------------------------------------
|
|
||||||
ALPHABETICAL_INDEX = YES
|
|
||||||
COLS_IN_ALPHA_INDEX = 5
|
|
||||||
IGNORE_PREFIX =
|
|
||||||
#---------------------------------------------------------------------------
|
|
||||||
# configuration options related to the HTML output
|
|
||||||
#---------------------------------------------------------------------------
|
|
||||||
GENERATE_HTML = YES
|
|
||||||
HTML_OUTPUT = html
|
|
||||||
HTML_FILE_EXTENSION = .html
|
|
||||||
HTML_HEADER =
|
|
||||||
HTML_FOOTER =
|
|
||||||
HTML_STYLESHEET =
|
|
||||||
HTML_ALIGN_MEMBERS = YES
|
|
||||||
GENERATE_HTMLHELP = NO
|
|
||||||
CHM_FILE =
|
|
||||||
HHC_LOCATION =
|
|
||||||
GENERATE_CHI = NO
|
|
||||||
BINARY_TOC = NO
|
|
||||||
TOC_EXPAND = NO
|
|
||||||
DISABLE_INDEX = NO
|
|
||||||
ENUM_VALUES_PER_LINE = 4
|
|
||||||
GENERATE_TREEVIEW = YES
|
|
||||||
TREEVIEW_WIDTH = 200
|
|
||||||
#---------------------------------------------------------------------------
|
|
||||||
# configuration options related to the LaTeX output
|
|
||||||
#---------------------------------------------------------------------------
|
|
||||||
GENERATE_LATEX = NO
|
|
||||||
LATEX_OUTPUT = latex
|
|
||||||
LATEX_CMD_NAME = latex
|
|
||||||
MAKEINDEX_CMD_NAME = makeindex
|
|
||||||
COMPACT_LATEX = NO
|
|
||||||
PAPER_TYPE = a4wide
|
|
||||||
EXTRA_PACKAGES =
|
|
||||||
LATEX_HEADER =
|
|
||||||
PDF_HYPERLINKS = NO
|
|
||||||
USE_PDFLATEX = NO
|
|
||||||
LATEX_BATCHMODE = NO
|
|
||||||
LATEX_HIDE_INDICES = NO
|
|
||||||
#---------------------------------------------------------------------------
|
|
||||||
# configuration options related to the RTF output
|
|
||||||
#---------------------------------------------------------------------------
|
|
||||||
GENERATE_RTF = NO
|
|
||||||
RTF_OUTPUT = rtf
|
|
||||||
COMPACT_RTF = YES
|
|
||||||
RTF_HYPERLINKS = YES
|
|
||||||
RTF_STYLESHEET_FILE =
|
|
||||||
RTF_EXTENSIONS_FILE =
|
|
||||||
#---------------------------------------------------------------------------
|
|
||||||
# configuration options related to the man page output
|
|
||||||
#---------------------------------------------------------------------------
|
|
||||||
GENERATE_MAN = NO
|
|
||||||
MAN_OUTPUT = man
|
|
||||||
MAN_EXTENSION = .3
|
|
||||||
MAN_LINKS = NO
|
|
||||||
#---------------------------------------------------------------------------
|
|
||||||
# configuration options related to the XML output
|
|
||||||
#---------------------------------------------------------------------------
|
|
||||||
GENERATE_XML = NO
|
|
||||||
XML_OUTPUT = xml
|
|
||||||
XML_SCHEMA =
|
|
||||||
XML_DTD =
|
|
||||||
#---------------------------------------------------------------------------
|
|
||||||
# configuration options for the AutoGen Definitions output
|
|
||||||
#---------------------------------------------------------------------------
|
|
||||||
GENERATE_AUTOGEN_DEF = NO
|
|
||||||
#---------------------------------------------------------------------------
|
|
||||||
# configuration options related to the Perl module output
|
|
||||||
#---------------------------------------------------------------------------
|
|
||||||
GENERATE_PERLMOD = NO
|
|
||||||
PERLMOD_LATEX = NO
|
|
||||||
PERLMOD_PRETTY = YES
|
|
||||||
PERLMOD_MAKEVAR_PREFIX =
|
|
||||||
#---------------------------------------------------------------------------
|
|
||||||
# Configuration options related to the preprocessor
|
|
||||||
#---------------------------------------------------------------------------
|
|
||||||
ENABLE_PREPROCESSING = NO
|
|
||||||
MACRO_EXPANSION = NO
|
|
||||||
EXPAND_ONLY_PREDEF = NO
|
|
||||||
SEARCH_INCLUDES = YES
|
|
||||||
INCLUDE_PATH = ../../include
|
|
||||||
INCLUDE_FILE_PATTERNS = *.h
|
|
||||||
PREDEFINED =
|
|
||||||
EXPAND_AS_DEFINED =
|
|
||||||
SKIP_FUNCTION_MACROS = YES
|
|
||||||
#---------------------------------------------------------------------------
|
|
||||||
# Configuration::addtions related to external references
|
|
||||||
#---------------------------------------------------------------------------
|
|
||||||
TAGFILES =
|
|
||||||
GENERATE_TAGFILE =
|
|
||||||
ALLEXTERNALS = NO
|
|
||||||
EXTERNAL_GROUPS = YES
|
|
||||||
PERL_PATH = /usr/bin/perl
|
|
||||||
#---------------------------------------------------------------------------
|
|
||||||
# Configuration options related to the dot tool
|
|
||||||
#---------------------------------------------------------------------------
|
|
||||||
CLASS_DIAGRAMS = YES
|
|
||||||
HIDE_UNDOC_RELATIONS = NO
|
|
||||||
HAVE_DOT = YES
|
|
||||||
CLASS_GRAPH = YES
|
|
||||||
COLLABORATION_GRAPH = YES
|
|
||||||
UML_LOOK = NO
|
|
||||||
TEMPLATE_RELATIONS = NO
|
|
||||||
INCLUDE_GRAPH = YES
|
|
||||||
INCLUDED_BY_GRAPH = YES
|
|
||||||
CALL_GRAPH = YES
|
|
||||||
GRAPHICAL_HIERARCHY = YES
|
|
||||||
DOT_IMAGE_FORMAT = png
|
|
||||||
DOT_PATH =
|
|
||||||
DOTFILE_DIRS =
|
|
||||||
MAX_DOT_GRAPH_WIDTH = 1024
|
|
||||||
MAX_DOT_GRAPH_HEIGHT = 1024
|
|
||||||
MAX_DOT_GRAPH_DEPTH = 0
|
|
||||||
GENERATE_LEGEND = YES
|
|
||||||
DOT_CLEANUP = YES
|
|
||||||
#---------------------------------------------------------------------------
|
|
||||||
# Configuration::addtions related to the search engine
|
|
||||||
#---------------------------------------------------------------------------
|
|
||||||
SEARCHENGINE = YES
|
|
|
@ -1,21 +1,22 @@
|
||||||
# FreeType 2 top Jamfile (c) 2001-2002 David Turner
|
# FreeType 2 top Jamfile (c) 2001, 2002, 2003 David Turner
|
||||||
#
|
#
|
||||||
|
|
||||||
# The HDRMACRO is already defined in FTJam and is used to add
|
# The HDRMACRO is already defined in FTJam and is used to add
|
||||||
# the content of certain macros to the list of included header
|
# the content of certain macros to the list of included header
|
||||||
# files.
|
# files.
|
||||||
#
|
#
|
||||||
# we can compile FreeType 2 with classic Jam however thanks to
|
# We can compile FreeType 2 with classic Jam however thanks to
|
||||||
# the following code
|
# the following code
|
||||||
#
|
#
|
||||||
if ! $(JAM_TOOLSET)
|
if ! $(JAM_TOOLSET)
|
||||||
{
|
{
|
||||||
rule HDRMACRO
|
rule HDRMACRO
|
||||||
{
|
{
|
||||||
# nothing !!
|
# nothing
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
# We need to invoke a SubDir rule if the FT2 source directory top is not the
|
# 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
|
# current directory. This allows us to build FreeType 2 as part of a larger
|
||||||
# project easily.
|
# project easily.
|
||||||
|
@ -25,71 +26,83 @@ if $(FT2_TOP) != $(DOT)
|
||||||
SubDir FT2_TOP ;
|
SubDir FT2_TOP ;
|
||||||
}
|
}
|
||||||
|
|
||||||
#
|
|
||||||
# The following macros define the include directory, the source directory
|
# The following macros define the include directory, the source directory,
|
||||||
# and the final library name (without library extensions). They can be
|
# and the final library name (without library extensions). They can be
|
||||||
# replaced by other definitions when the library is compiled as part of
|
# replaced by other definitions when the library is compiled as part of
|
||||||
# a larger project.
|
# a larger project.
|
||||||
#
|
#
|
||||||
|
|
||||||
# name of FreeType include directory during compilation.
|
# Name of FreeType include directory during compilation.
|
||||||
# relative to FT2_TOP
|
# This is relative to FT2_TOP.
|
||||||
#
|
#
|
||||||
FT2_INCLUDE_DIR ?= include ;
|
FT2_INCLUDE_DIR ?= include ;
|
||||||
|
|
||||||
# name of FreeType source directory during compilation.
|
# Name of FreeType source directory during compilation.
|
||||||
# relative to FT2_TOP
|
# This is relative to FT2_TOP.
|
||||||
#
|
#
|
||||||
FT2_SRC_DIR ?= src ;
|
FT2_SRC_DIR ?= src ;
|
||||||
|
|
||||||
# name of final library, without extension
|
# Name of final library, without extension.
|
||||||
#
|
#
|
||||||
FT2_LIB ?= $(LIBPREFIX)freetype ;
|
FT2_LIB ?= $(LIBPREFIX)freetype ;
|
||||||
|
|
||||||
|
|
||||||
# define FT2_BUILD_INCLUDE to point to your build-specific directory
|
# Define FT2_BUILD_INCLUDE to point to your build-specific directory.
|
||||||
# this is prepended to FT2_INCLUDE_DIR. This can be used to specify
|
# 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
|
# the location of a custom <ft2build.h> which will point to custom
|
||||||
# versions of "ftmodule.h" and "ftoption.h", for example
|
# versions of "ftmodule.h" and "ftoption.h", for example.
|
||||||
#
|
#
|
||||||
FT2_BUILD_INCLUDE ?= ;
|
FT2_BUILD_INCLUDE ?= ;
|
||||||
|
|
||||||
# the list of modules to compile on any given build of the library
|
# 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
|
# 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
|
# IMPORTANT: You'll need to change the content of "ftmodule.h" as well
|
||||||
# if you modify this list or provide your own.
|
# if you modify this list or provide your own.
|
||||||
#
|
#
|
||||||
FT2_COMPONENTS ?= gzip # support for gzip-compressed files.
|
FT2_COMPONENTS ?= gzip # support for gzip-compressed files
|
||||||
autohint # auto-hinter
|
autohint # auto-hinter
|
||||||
base # base component (public APIs)
|
base # base component (public APIs)
|
||||||
bdf # BDF font driver
|
bdf # BDF font driver
|
||||||
cache # cache sub-system
|
cache # cache sub-system
|
||||||
cff # CFF/CEF font driver
|
cff # CFF/CEF font driver
|
||||||
cid # Postscript CID-keyed font driver
|
cid # PostScript CID-keyed font driver
|
||||||
pcf # PCF font driver
|
pcf # PCF font driver
|
||||||
pfr # PFR/TrueDoc font driver
|
pfr # PFR/TrueDoc font driver
|
||||||
psaux # Common Postscript routines module
|
psaux # common PostScript routines module
|
||||||
pshinter # Postscript hinter module
|
pshinter # PostScript hinter module
|
||||||
psnames # Postscript names handling
|
psnames # PostScript names handling
|
||||||
raster # Monochrome rasterizer
|
raster # monochrome rasterizer
|
||||||
smooth # Anti-aliased rasterizer
|
smooth # anti-aliased rasterizer
|
||||||
sfnt # SFNT-based format support routines
|
sfnt # SFNT-based format support routines
|
||||||
truetype # TrueType font driver
|
truetype # TrueType font driver
|
||||||
type1 # Postscript Type 1 font driver
|
type1 # PostScript Type 1 font driver
|
||||||
type42 # Postscript Type 42 (embedded TrueType) driver
|
type42 # PostScript Type 42 (embedded TrueType) driver
|
||||||
winfonts # Windows FON/FNT font driver
|
winfonts # Windows FON/FNT font driver
|
||||||
;
|
;
|
||||||
|
|
||||||
|
|
||||||
# don't touch
|
# Don't touch.
|
||||||
#
|
#
|
||||||
FT2_INCLUDE = $(FT2_BUILD_INCLUDE)
|
FT2_INCLUDE = $(FT2_BUILD_INCLUDE)
|
||||||
[ FT2_SubDir $(FT2_INCLUDE_DIR) ] ;
|
[ FT2_SubDir $(FT2_INCLUDE_DIR) ] ;
|
||||||
|
|
||||||
FT2_SRC = [ FT2_SubDir $(FT2_SRC_DIR) ] ;
|
FT2_SRC = [ FT2_SubDir $(FT2_SRC_DIR) ] ;
|
||||||
|
|
||||||
# only used by FreeType developers
|
# 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)
|
if $(DEBUG_HINTER)
|
||||||
{
|
{
|
||||||
|
@ -104,11 +117,12 @@ HDRS += $(FT2_INCLUDE) ;
|
||||||
|
|
||||||
|
|
||||||
# Uncomment the following line if you want to build individual source files
|
# Uncomment the following line if you want to build individual source files
|
||||||
# for each FreeType 2 module. this is only useful during development, and
|
# for each FreeType 2 module. This is only useful during development, and
|
||||||
# is better defined as an environment variable anyway !
|
# is better defined as an environment variable anyway!
|
||||||
#
|
#
|
||||||
# FT2_MULTI = true ;
|
# FT2_MULTI = true ;
|
||||||
|
|
||||||
|
|
||||||
# The file <freetype/config/ftheader.h> is used to define macros that are
|
# 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
|
# later used in #include statements. It needs to be parsed in order to
|
||||||
# record these definitions.
|
# record these definitions.
|
||||||
|
@ -116,17 +130,26 @@ HDRS += $(FT2_INCLUDE) ;
|
||||||
HDRMACRO [ FT2_SubDir include freetype config ftheader.h ] ;
|
HDRMACRO [ FT2_SubDir include freetype config ftheader.h ] ;
|
||||||
HDRMACRO [ FT2_SubDir include freetype internal internal.h ] ;
|
HDRMACRO [ FT2_SubDir include freetype internal internal.h ] ;
|
||||||
|
|
||||||
|
|
||||||
# Now include the Jamfile in "freetype2/src", used to drive the compilation
|
# Now include the Jamfile in "freetype2/src", used to drive the compilation
|
||||||
# of each FreeType 2 component and/or module.
|
# of each FreeType 2 component and/or module.
|
||||||
#
|
#
|
||||||
SubInclude FT2_TOP $(FT2_SRC_DIR) ;
|
SubInclude FT2_TOP $(FT2_SRC_DIR) ;
|
||||||
|
|
||||||
|
|
||||||
# tests files (hinter debugging). only used by FreeType developers
|
# Test files (hinter debugging). Only used by FreeType developers.
|
||||||
#
|
#
|
||||||
if $(DEBUG_HINTER)
|
if $(DEBUG_HINTER)
|
||||||
{
|
{
|
||||||
SubInclude FT2_TOP tests ;
|
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
|
# end of top Jamfile
|
||||||
|
|
|
@ -1,21 +1,22 @@
|
||||||
# FreeType 2 top Jamfile (c) 2001-2002 David Turner
|
# FreeType 2 top Jamfile (c) 2001, 2002, 2003 David Turner
|
||||||
#
|
#
|
||||||
|
|
||||||
# The HDRMACRO is already defined in FTJam and is used to add
|
# The HDRMACRO is already defined in FTJam and is used to add
|
||||||
# the content of certain macros to the list of included header
|
# the content of certain macros to the list of included header
|
||||||
# files.
|
# files.
|
||||||
#
|
#
|
||||||
# we can compile FreeType 2 with classic Jam however thanks to
|
# We can compile FreeType 2 with classic Jam however thanks to
|
||||||
# the following code
|
# the following code
|
||||||
#
|
#
|
||||||
if ! $(JAM_TOOLSET)
|
if ! $(JAM_TOOLSET)
|
||||||
{
|
{
|
||||||
rule HDRMACRO
|
rule HDRMACRO
|
||||||
{
|
{
|
||||||
# nothing !!
|
# nothing
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
# We need to invoke a SubDir rule if the FT2 source directory top is not the
|
# 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
|
# current directory. This allows us to build FreeType 2 as part of a larger
|
||||||
# project easily.
|
# project easily.
|
||||||
|
@ -25,71 +26,71 @@ if $(FT2_TOP) != $(DOT)
|
||||||
SubDir FT2_TOP ;
|
SubDir FT2_TOP ;
|
||||||
}
|
}
|
||||||
|
|
||||||
#
|
|
||||||
# The following macros define the include directory, the source directory
|
# The following macros define the include directory, the source directory,
|
||||||
# and the final library name (without library extensions). They can be
|
# and the final library name (without library extensions). They can be
|
||||||
# replaced by other definitions when the library is compiled as part of
|
# replaced by other definitions when the library is compiled as part of
|
||||||
# a larger project.
|
# a larger project.
|
||||||
#
|
#
|
||||||
|
|
||||||
# name of FreeType include directory during compilation.
|
# Name of FreeType include directory during compilation.
|
||||||
# relative to FT2_TOP
|
# This is relative to FT2_TOP.
|
||||||
#
|
#
|
||||||
FT2_INCLUDE_DIR ?= include ;
|
FT2_INCLUDE_DIR ?= include ;
|
||||||
|
|
||||||
# name of FreeType source directory during compilation.
|
# Name of FreeType source directory during compilation.
|
||||||
# relative to FT2_TOP
|
# This is relative to FT2_TOP.
|
||||||
#
|
#
|
||||||
FT2_SRC_DIR ?= src ;
|
FT2_SRC_DIR ?= src ;
|
||||||
|
|
||||||
# name of final library, without extension
|
# Name of final library, without extension.
|
||||||
#
|
#
|
||||||
FT2_LIB ?= $(LIBPREFIX)freetype ;
|
FT2_LIB ?= $(LIBPREFIX)freetype ;
|
||||||
|
|
||||||
|
|
||||||
# define FT2_BUILD_INCLUDE to point to your build-specific directory
|
# Define FT2_BUILD_INCLUDE to point to your build-specific directory.
|
||||||
# this is prepended to FT2_INCLUDE_DIR. This can be used to specify
|
# 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
|
# the location of a custom <ft2build.h> which will point to custom
|
||||||
# versions of "ftmodule.h" and "ftoption.h", for example
|
# versions of "ftmodule.h" and "ftoption.h", for example.
|
||||||
#
|
#
|
||||||
FT2_BUILD_INCLUDE ?= ;
|
FT2_BUILD_INCLUDE ?= ;
|
||||||
|
|
||||||
# the list of modules to compile on any given build of the library
|
# 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
|
# 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
|
# IMPORTANT: You'll need to change the content of "ftmodule.h" as well
|
||||||
# if you modify this list or provide your own.
|
# if you modify this list or provide your own.
|
||||||
#
|
#
|
||||||
FT2_COMPONENTS ?= gzip # support for gzip-compressed files.
|
FT2_COMPONENTS ?= gzip # support for gzip-compressed files
|
||||||
autohint # auto-hinter
|
autohint # auto-hinter
|
||||||
base # base component (public APIs)
|
base # base component (public APIs)
|
||||||
bdf # BDF font driver
|
bdf # BDF font driver
|
||||||
cache # cache sub-system
|
cache # cache sub-system
|
||||||
cff # CFF/CEF font driver
|
cff # CFF/CEF font driver
|
||||||
cid # Postscript CID-keyed font driver
|
cid # PostScript CID-keyed font driver
|
||||||
pcf # PCF font driver
|
pcf # PCF font driver
|
||||||
pfr # PFR/TrueDoc font driver
|
pfr # PFR/TrueDoc font driver
|
||||||
psaux # Common Postscript routines module
|
psaux # common PostScript routines module
|
||||||
pshinter # Postscript hinter module
|
pshinter # PostScript hinter module
|
||||||
psnames # Postscript names handling
|
psnames # PostScript names handling
|
||||||
raster # Monochrome rasterizer
|
raster # monochrome rasterizer
|
||||||
smooth # Anti-aliased rasterizer
|
smooth # anti-aliased rasterizer
|
||||||
sfnt # SFNT-based format support routines
|
sfnt # SFNT-based format support routines
|
||||||
truetype # TrueType font driver
|
truetype # TrueType font driver
|
||||||
type1 # Postscript Type 1 font driver
|
type1 # PostScript Type 1 font driver
|
||||||
type42 # Postscript Type 42 (embedded TrueType) driver
|
type42 # PostScript Type 42 (embedded TrueType) driver
|
||||||
winfonts # Windows FON/FNT font driver
|
winfonts # Windows FON/FNT font driver
|
||||||
;
|
;
|
||||||
|
|
||||||
|
|
||||||
# don't touch
|
# Don't touch.
|
||||||
#
|
#
|
||||||
FT2_INCLUDE = $(FT2_BUILD_INCLUDE)
|
FT2_INCLUDE = $(FT2_BUILD_INCLUDE)
|
||||||
[ FT2_SubDir $(FT2_INCLUDE_DIR) ] ;
|
[ FT2_SubDir $(FT2_INCLUDE_DIR) ] ;
|
||||||
|
|
||||||
FT2_SRC = [ FT2_SubDir $(FT2_SRC_DIR) ] ;
|
FT2_SRC = [ FT2_SubDir $(FT2_SRC_DIR) ] ;
|
||||||
|
|
||||||
# only used by FreeType developers
|
# Only used by FreeType developers.
|
||||||
#
|
#
|
||||||
if $(DEBUG_HINTER)
|
if $(DEBUG_HINTER)
|
||||||
{
|
{
|
||||||
|
@ -103,13 +104,13 @@ if $(DEBUG_HINTER)
|
||||||
HDRS += $(FT2_INCLUDE) ;
|
HDRS += $(FT2_INCLUDE) ;
|
||||||
|
|
||||||
|
|
||||||
#SubDirHdr += $(FT2_INCLUDE) ;
|
|
||||||
|
|
||||||
# Uncomment the following line if you want to build individual source files
|
# Uncomment the following line if you want to build individual source files
|
||||||
# for each FreeType 2 module.
|
# for each FreeType 2 module. This is only useful during development, and
|
||||||
|
# is better defined as an environment variable anyway!
|
||||||
#
|
#
|
||||||
# FT2_MULTI = true ;
|
# FT2_MULTI = true ;
|
||||||
|
|
||||||
|
|
||||||
# The file <freetype/config/ftheader.h> is used to define macros that are
|
# 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
|
# later used in #include statements. It needs to be parsed in order to
|
||||||
# record these definitions.
|
# record these definitions.
|
||||||
|
@ -117,13 +118,14 @@ HDRS += $(FT2_INCLUDE) ;
|
||||||
HDRMACRO [ FT2_SubDir include freetype config ftheader.h ] ;
|
HDRMACRO [ FT2_SubDir include freetype config ftheader.h ] ;
|
||||||
HDRMACRO [ FT2_SubDir include freetype internal internal.h ] ;
|
HDRMACRO [ FT2_SubDir include freetype internal internal.h ] ;
|
||||||
|
|
||||||
|
|
||||||
# Now include the Jamfile in "freetype2/src", used to drive the compilation
|
# Now include the Jamfile in "freetype2/src", used to drive the compilation
|
||||||
# of each FreeType 2 component and/or module.
|
# of each FreeType 2 component and/or module.
|
||||||
#
|
#
|
||||||
SubInclude FT2_TOP $(FT2_SRC_DIR) ;
|
SubInclude FT2_TOP $(FT2_SRC_DIR) ;
|
||||||
|
|
||||||
|
|
||||||
# tests files (hinter debugging). only used by FreeType developers
|
# Test files (hinter debugging). Only used by FreeType developers.
|
||||||
#
|
#
|
||||||
if $(DEBUG_HINTER)
|
if $(DEBUG_HINTER)
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# FreeType 2 JamRules (c) 2001 David Turner
|
# FreeType 2 JamRules (c) 2001, 2002, 2003 David Turner
|
||||||
#
|
#
|
||||||
# This file contains the Jam rules needed to build the FreeType 2 library.
|
# This file contains the Jam rules needed to build the FreeType 2 library.
|
||||||
# It is shared by all Jamfiles and is included only once in the build
|
# It is shared by all Jamfiles and is included only once in the build
|
||||||
|
@ -6,7 +6,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# call SubDirHdrs on a list of directories
|
# Call SubDirHdrs on a list of directories.
|
||||||
#
|
#
|
||||||
rule AddSubDirHdrs
|
rule AddSubDirHdrs
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,39 +1,36 @@
|
||||||
|
|
||||||
Special notes to Unix users
|
Special notes to Unix users
|
||||||
===========================
|
===========================
|
||||||
|
|
||||||
Please read the file "docs/UPGRADE.UNX", it contains important
|
Please read the file "docs/UPGRADE.UNX". It contains important
|
||||||
information regarding the installation of FreeType on Unix systems,
|
information regarding the installation of FreeType on Unix systems,
|
||||||
especially GNU based operating systems like GNU/Linux.
|
especially GNU based operating systems like GNU/Linux.
|
||||||
|
|
||||||
FreeType 2's library is called `libfreetype', FreeType 1's library
|
FreeType 2's library is called `libfreetype', FreeType 1's library
|
||||||
is called `libttf'. They are *not* compatible!
|
is called `libttf'. They are *not* compatible!
|
||||||
|
|
||||||
|
|
||||||
FreeType 2.1.4
|
FreeType 2.1.5
|
||||||
==============
|
==============
|
||||||
|
|
||||||
Please read the docs/CHANGES file, it contains IMPORTANT
|
Please read the docs/CHANGES file, it contains IMPORTANT INFORMATION.
|
||||||
INFORMATION.
|
|
||||||
|
|
||||||
Read the files "docs/INSTALL" for installation instructions.
|
Read the files "docs/INSTALL" for installation instructions.
|
||||||
|
|
||||||
Note that the FreeType 2 documentation is now available as a
|
Note that the FreeType 2 documentation is now available as a
|
||||||
separate package from our sites. See:
|
separate package from our sites. See:
|
||||||
|
|
||||||
ftp://ftp.freetype.org/pub/freetype2/ftdocs-2.1.4.tar.bz2
|
ftp://ftp.freetype.org/pub/freetype2/ftdocs-2.1.5.tar.bz2
|
||||||
ftp://ftp.freetype.org/pub/freetype2/ftdocs-2.1.4.tar.gz
|
ftp://ftp.freetype.org/pub/freetype2/ftdocs-2.1.5.tar.gz
|
||||||
ftp://ftp.freetype.org/pub/freetype2/ftdoc214.zip
|
ftp://ftp.freetype.org/pub/freetype2/ftdoc215.zip
|
||||||
|
|
||||||
|
|
||||||
Reports
|
Bugs
|
||||||
=======
|
====
|
||||||
|
|
||||||
Please report bugs by e-mail to `devel@freetype.org'. Don't
|
|
||||||
forget to send a detailed explanation of the problem -- there is
|
|
||||||
nothing worse than receiving a terse message that only says "it
|
|
||||||
doesn't work".
|
|
||||||
|
|
||||||
|
Please report bugs by e-mail to `devel@freetype.org'. Don't forget
|
||||||
|
to send a detailed explanation of the problem -- there is nothing
|
||||||
|
worse than receiving a terse message that only says "it doesn't
|
||||||
|
work".
|
||||||
|
|
||||||
|
|
||||||
Enjoy!
|
Enjoy!
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
CREDITS
|
CREDITS
|
||||||
|
|
||||||
The code in this tree is based (it is actually an exact copy with some
|
The code in this tree is based (it is actually an exact copy with some
|
||||||
ReactOS specific extra files) on the FreeType library, version 2.1.3.
|
ReactOS specific extra files) on the FreeType library, version 2.1.5.
|
||||||
It was written and is being maintained by the FreeType team. The projects
|
It was written and is being maintained by the FreeType team. The projects
|
||||||
website is http://www.freetype.org.
|
website is http://www.freetype.org.
|
||||||
|
|
||||||
|
@ -47,6 +47,7 @@ copy lib\freetype.old\rosglue.c lib\freetype
|
||||||
copy lib\freetype.old\i386\setjmplongjmp.s lib\freetype\i386
|
copy lib\freetype.old\i386\setjmplongjmp.s lib\freetype\i386
|
||||||
copy lib\freetype.old\Makefile lib\freetype
|
copy lib\freetype.old\Makefile lib\freetype
|
||||||
copy lib\freetype.old\README.ROS lib\freetype
|
copy lib\freetype.old\README.ROS lib\freetype
|
||||||
|
copy lib\freetype.old\Doxyfile lib\freetype
|
||||||
copy lib\freetype.old\.cvsignore lib\freetype
|
copy lib\freetype.old\.cvsignore lib\freetype
|
||||||
copy lib\freetype.old\objs\.cvsignore lib\freetype\objs
|
copy lib\freetype.old\objs\.cvsignore lib\freetype\objs
|
||||||
copy lib\freetype.old\i386\.cvsignore lib\freetype\i386
|
copy lib\freetype.old\i386\.cvsignore lib\freetype\i386
|
||||||
|
@ -65,4 +66,4 @@ file, so it is obvious to everyone which FreeType version we're using.
|
||||||
After testing, you can commit the new/changed files to CVS. ALthough files
|
After testing, you can commit the new/changed files to CVS. ALthough files
|
||||||
config.mk and freetype.def are generated, they should be included in CVS.
|
config.mk and freetype.def are generated, they should be included in CVS.
|
||||||
|
|
||||||
$Id: README.ROS,v 1.3 2003/04/18 10:48:12 gvg Exp $
|
$Id: README.ROS,v 1.4 2004/01/21 19:23:45 gvg Exp $
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -17,11 +17,10 @@ ifndef TOP_DIR
|
||||||
TOP_DIR := .
|
TOP_DIR := .
|
||||||
endif
|
endif
|
||||||
|
|
||||||
DELETE := rm -f
|
DELETE := rm -f
|
||||||
SEP := /
|
SEP := /
|
||||||
HOSTSEP := $(SEP)
|
BUILD_DIR := $(TOP_DIR)/builds/ansi
|
||||||
BUILD := $(TOP_DIR)/builds/ansi
|
PLATFORM := ansi
|
||||||
PLATFORM := ansi
|
|
||||||
|
|
||||||
|
|
||||||
# The directory where all object files are placed.
|
# The directory where all object files are placed.
|
||||||
|
@ -34,7 +33,7 @@ PLATFORM := ansi
|
||||||
# make -f $TOP_DIR/Makefile
|
# make -f $TOP_DIR/Makefile
|
||||||
#
|
#
|
||||||
ifndef OBJ_DIR
|
ifndef OBJ_DIR
|
||||||
OBJ_DIR := $(TOP_DIR)$(SEP)objs
|
OBJ_DIR := $(TOP_DIR)/objs
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -17,4 +17,5 @@ include $(TOP_DIR)/builds/ansi/ansi-def.mk
|
||||||
include $(TOP_DIR)/builds/compiler/ansi-cc.mk
|
include $(TOP_DIR)/builds/compiler/ansi-cc.mk
|
||||||
include $(TOP_DIR)/builds/link_std.mk
|
include $(TOP_DIR)/builds/link_std.mk
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -19,11 +19,10 @@ ifndef TOP_DIR
|
||||||
TOP_DIR := .
|
TOP_DIR := .
|
||||||
endif
|
endif
|
||||||
|
|
||||||
DELETE := rm -f
|
DELETE := rm -f
|
||||||
SEP := /
|
SEP := /
|
||||||
HOSTSEP := $(SEP)
|
BUILD_DIR := $(TOP_DIR)/builds/beos
|
||||||
BUILD := $(TOP_DIR)/builds/neos
|
PLATFORM := beos
|
||||||
PLATFORM := beos
|
|
||||||
|
|
||||||
|
|
||||||
# The directory where all object files are placed.
|
# The directory where all object files are placed.
|
||||||
|
@ -36,7 +35,7 @@ PLATFORM := beos
|
||||||
# make -f $TOP_DIR/Makefile
|
# make -f $TOP_DIR/Makefile
|
||||||
#
|
#
|
||||||
ifndef OBJ_DIR
|
ifndef OBJ_DIR
|
||||||
OBJ_DIR := $(TOP_DIR)$(SEP)objs
|
OBJ_DIR := $(TOP_DIR)/objs
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -15,5 +15,5 @@ include $(TOP_DIR)/builds/compiler/ansi-cc.mk
|
||||||
include $(TOP_DIR)/builds/beos/beos-def.mk
|
include $(TOP_DIR)/builds/beos/beos-def.mk
|
||||||
include $(TOP_DIR)/builds/link_std.mk
|
include $(TOP_DIR)/builds/link_std.mk
|
||||||
|
|
||||||
# EOF
|
|
||||||
|
|
||||||
|
# EOF
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -27,15 +27,14 @@ endif
|
||||||
|
|
||||||
ifeq ($(PLATFORM),beos)
|
ifeq ($(PLATFORM),beos)
|
||||||
|
|
||||||
DELETE := rm -f
|
DELETE := rm -f
|
||||||
SEP := /
|
SEP := /
|
||||||
HOSTSEP := $(SEP)
|
BUILD_DIR := $(TOP_DIR)/builds/beos
|
||||||
BUILD := $(TOP_DIR)/builds/beos
|
|
||||||
CONFIG_FILE := beos.mk
|
CONFIG_FILE := beos.mk
|
||||||
|
|
||||||
setup: std_setup
|
setup: std_setup
|
||||||
|
|
||||||
endif # test PLATFORM beos
|
endif # test PLATFORM beos
|
||||||
|
|
||||||
# EOF
|
|
||||||
|
|
||||||
|
# EOF
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -15,7 +15,9 @@
|
||||||
|
|
||||||
# Compiler command line name
|
# Compiler command line name
|
||||||
#
|
#
|
||||||
CC := cc
|
CC := cc
|
||||||
|
COMPILER_SEP := $(SEP)
|
||||||
|
|
||||||
|
|
||||||
# The object file extension (for standard and static libraries). This can be
|
# The object file extension (for standard and static libraries). This can be
|
||||||
# .o, .tco, .obj, etc., depending on the platform.
|
# .o, .tco, .obj, etc., depending on the platform.
|
||||||
|
@ -74,8 +76,9 @@ ANSIFLAGS :=
|
||||||
# Library linking
|
# Library linking
|
||||||
#
|
#
|
||||||
ifndef CLEAN_LIBRARY
|
ifndef CLEAN_LIBRARY
|
||||||
CLEAN_LIBRARY = $(DELETE) $(subst $(SEP),$(HOSTSEP),$(PROJECT_LIBRARY))
|
CLEAN_LIBRARY = $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY))
|
||||||
endif
|
endif
|
||||||
LINK_LIBRARY = $(AR) -r $@ $(OBJECTS_LIST)
|
LINK_LIBRARY = $(AR) -r $@ $(subst /,$(COMPILER_SEP),$(OBJECTS_LIST))
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -15,7 +15,9 @@
|
||||||
|
|
||||||
# Compiler command line name
|
# Compiler command line name
|
||||||
#
|
#
|
||||||
CC := bcc32
|
CC := bcc32
|
||||||
|
COMPILER_SEP := $(SEP)
|
||||||
|
|
||||||
|
|
||||||
# The object file extension (for standard and static libraries). This can be
|
# The object file extension (for standard and static libraries). This can be
|
||||||
# .o, .tco, .obj, etc., depending on the platform.
|
# .o, .tco, .obj, etc., depending on the platform.
|
||||||
|
@ -72,9 +74,9 @@ ANSIFLAGS := -A
|
||||||
# Library linking
|
# Library linking
|
||||||
#
|
#
|
||||||
ifndef CLEAN_LIBRARY
|
ifndef CLEAN_LIBRARY
|
||||||
CLEAN_LIBRARY = $(DELETE) $(subst $(SEP),$(HOSTSEP),$(PROJECT_LIBRARY))
|
CLEAN_LIBRARY = $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY))
|
||||||
endif
|
endif
|
||||||
TARGET_OBJECTS = $(subst $(SEP),\\,$(OBJECTS_LIST))
|
LINK_LIBRARY = tlib /u $(subst /,$(COMPILER_SEP),$@ $(OBJECTS_LIST:%=+%))
|
||||||
LINK_LIBRARY = tlib /u $(subst $(SEP),\\,$@) $(TARGET_OBJECTS:%=+%)
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -15,7 +15,9 @@
|
||||||
|
|
||||||
# Compiler command line name
|
# Compiler command line name
|
||||||
#
|
#
|
||||||
CC := bcc32
|
CC := bcc32
|
||||||
|
COMPILER_SEP := $(SEP)
|
||||||
|
|
||||||
|
|
||||||
# The object file extension (for standard and static libraries). This can be
|
# The object file extension (for standard and static libraries). This can be
|
||||||
# .o, .tco, .obj, etc., depending on the platform.
|
# .o, .tco, .obj, etc., depending on the platform.
|
||||||
|
@ -72,9 +74,9 @@ ANSIFLAGS := -A
|
||||||
# Library linking
|
# Library linking
|
||||||
#
|
#
|
||||||
ifndef CLEAN_LIBRARY
|
ifndef CLEAN_LIBRARY
|
||||||
CLEAN_LIBRARY = $(DELETE) $(subst $(SEP),$(HOSTSEP),$(PROJECT_LIBRARY))
|
CLEAN_LIBRARY = $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY))
|
||||||
endif
|
endif
|
||||||
TARGET_OBJECTS = $(subst $(SEP),\\,$(OBJECTS_LIST))
|
LINK_LIBRARY = tlib /u $(subst /,$(COMPILER_SEP),$@ $(OBJECTS_LIST:%=+%))
|
||||||
LINK_LIBRARY = tlib /u $(subst $(SEP),\\,$@) $(TARGET_OBJECTS:%=+%)
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
81
reactos/lib/freetype/builds/compiler/emx.mk
Normal file
81
reactos/lib/freetype/builds/compiler/emx.mk
Normal file
|
@ -0,0 +1,81 @@
|
||||||
|
#
|
||||||
|
# FreeType 2 emx-specific definitions
|
||||||
|
#
|
||||||
|
|
||||||
|
|
||||||
|
# Copyright 2003 by
|
||||||
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
|
#
|
||||||
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
# and distributed under the terms of the FreeType project license,
|
||||||
|
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||||
|
# indicate that you have read the license and understand and accept it
|
||||||
|
# fully.
|
||||||
|
|
||||||
|
|
||||||
|
# Compiler command line name
|
||||||
|
#
|
||||||
|
CC := set GCCOPT="-ansi -pedantic"; gcc
|
||||||
|
COMPILER_SEP := /
|
||||||
|
|
||||||
|
|
||||||
|
# The object file extension (for standard and static libraries). This can be
|
||||||
|
# .o, .tco, .obj, etc., depending on the platform.
|
||||||
|
#
|
||||||
|
O := o
|
||||||
|
SO := o
|
||||||
|
|
||||||
|
# The library file extension (for standard and static libraries). This can
|
||||||
|
# be .a, .lib, etc., depending on the platform.
|
||||||
|
#
|
||||||
|
A := a
|
||||||
|
SA := a
|
||||||
|
|
||||||
|
|
||||||
|
# Path inclusion flag. Some compilers use a different flag than `-I' to
|
||||||
|
# specify an additional include path. Examples are `/i=' or `-J'.
|
||||||
|
#
|
||||||
|
I := -I
|
||||||
|
|
||||||
|
|
||||||
|
# C flag used to define a macro before the compilation of a given source
|
||||||
|
# object. Usually it is `-D' like in `-DDEBUG'.
|
||||||
|
#
|
||||||
|
D := -D
|
||||||
|
|
||||||
|
|
||||||
|
# The link flag used to specify a given library file on link. Note that
|
||||||
|
# this is only used to compile the demo programs, not the library itself.
|
||||||
|
#
|
||||||
|
L := -l
|
||||||
|
|
||||||
|
|
||||||
|
# Target flag.
|
||||||
|
#
|
||||||
|
T := -o$(space)
|
||||||
|
|
||||||
|
# C flags
|
||||||
|
#
|
||||||
|
# These should concern: debug output, optimization & warnings.
|
||||||
|
#
|
||||||
|
# Use the ANSIFLAGS variable to define the compiler flags used to enfore
|
||||||
|
# ANSI compliance.
|
||||||
|
#
|
||||||
|
ifndef CFLAGS
|
||||||
|
CFLAGS := -c -g -O6 -Wall
|
||||||
|
endif
|
||||||
|
|
||||||
|
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
|
||||||
|
#
|
||||||
|
ANSIFLAGS :=
|
||||||
|
|
||||||
|
|
||||||
|
# Library linking
|
||||||
|
#
|
||||||
|
ifndef CLEAN_LIBRARY
|
||||||
|
CLEAN_LIBRARY = $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY))
|
||||||
|
endif
|
||||||
|
LINK_LIBRARY = $(foreach m,$(OBJECTS_LIST),$(AR) -r $@ $(m);) echo > nul
|
||||||
|
|
||||||
|
|
||||||
|
# EOF
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -15,7 +15,9 @@
|
||||||
|
|
||||||
# Compiler command line name
|
# Compiler command line name
|
||||||
#
|
#
|
||||||
CC := gcc
|
CC := gcc
|
||||||
|
COMPILER_SEP := /
|
||||||
|
|
||||||
|
|
||||||
# The object file extension (for standard and static libraries). This can be
|
# The object file extension (for standard and static libraries). This can be
|
||||||
# .o, .tco, .obj, etc., depending on the platform.
|
# .o, .tco, .obj, etc., depending on the platform.
|
||||||
|
@ -62,6 +64,7 @@ T := -o$(space)
|
||||||
#
|
#
|
||||||
ifndef CFLAGS
|
ifndef CFLAGS
|
||||||
CFLAGS := -c -g -O0 \
|
CFLAGS := -c -g -O0 \
|
||||||
|
-fno-strict-aliasing \
|
||||||
-Wall \
|
-Wall \
|
||||||
-W \
|
-W \
|
||||||
-Wundef \
|
-Wundef \
|
||||||
|
@ -82,8 +85,9 @@ ANSIFLAGS := -ansi -pedantic
|
||||||
# Library linking
|
# Library linking
|
||||||
#
|
#
|
||||||
ifndef CLEAN_LIBRARY
|
ifndef CLEAN_LIBRARY
|
||||||
CLEAN_LIBRARY = $(DELETE) $(subst $(SEP),$(HOSTSEP),$(PROJECT_LIBRARY))
|
CLEAN_LIBRARY = $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY))
|
||||||
endif
|
endif
|
||||||
LINK_LIBRARY = $(AR) -r $@ $(OBJECTS_LIST)
|
LINK_LIBRARY = $(AR) -r $@ $(OBJECTS_LIST)
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -15,7 +15,9 @@
|
||||||
|
|
||||||
# Compiler command line name
|
# Compiler command line name
|
||||||
#
|
#
|
||||||
CC := gcc
|
CC := gcc
|
||||||
|
COMPILER_SEP := /
|
||||||
|
|
||||||
|
|
||||||
# The object file extension (for standard and static libraries). This can be
|
# The object file extension (for standard and static libraries). This can be
|
||||||
# .o, .tco, .obj, etc., depending on the platform.
|
# .o, .tco, .obj, etc., depending on the platform.
|
||||||
|
@ -60,7 +62,7 @@ T := -o$(space)
|
||||||
# ANSI compliance.
|
# ANSI compliance.
|
||||||
#
|
#
|
||||||
ifndef CFLAGS
|
ifndef CFLAGS
|
||||||
CFLAGS := -c -g -O6 -Wall
|
CFLAGS := -c -g -O6 -Wall -fno-strict-aliasing
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
|
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
|
||||||
|
@ -71,8 +73,9 @@ ANSIFLAGS := -ansi -pedantic
|
||||||
# Library linking
|
# Library linking
|
||||||
#
|
#
|
||||||
ifndef CLEAN_LIBRARY
|
ifndef CLEAN_LIBRARY
|
||||||
CLEAN_LIBRARY = $(DELETE) $(subst $(SEP),$(HOSTSEP),$(PROJECT_LIBRARY))
|
CLEAN_LIBRARY = $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY))
|
||||||
endif
|
endif
|
||||||
LINK_LIBRARY = $(AR) -r $@ $(OBJECTS_LIST)
|
LINK_LIBRARY = $(AR) -r $@ $(OBJECTS_LIST)
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -15,7 +15,8 @@
|
||||||
|
|
||||||
# compiler command line name
|
# compiler command line name
|
||||||
#
|
#
|
||||||
CC := icl
|
CC := icl
|
||||||
|
COMPILER_SEP := $(SEP)
|
||||||
|
|
||||||
|
|
||||||
# The object file extension (for standard and static libraries). This can be
|
# The object file extension (for standard and static libraries). This can be
|
||||||
|
@ -79,6 +80,7 @@ ANSIFLAGS := /Qansi /Za
|
||||||
# Library linking
|
# Library linking
|
||||||
#
|
#
|
||||||
#CLEAN_LIBRARY =
|
#CLEAN_LIBRARY =
|
||||||
LINK_LIBRARY = lib /nologo /out:$@ $(OBJECTS_LIST)
|
LINK_LIBRARY = lib /nologo /out:$(subst /,$(COMPILER_SEP),$@ $(OBJECTS_LIST))
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -15,7 +15,8 @@
|
||||||
|
|
||||||
# Command line name
|
# Command line name
|
||||||
#
|
#
|
||||||
CC := lcc
|
CC := lcc
|
||||||
|
COMPILER_SEP := $(SEP)
|
||||||
|
|
||||||
|
|
||||||
# The object file extension (for standard and static libraries). This can be
|
# The object file extension (for standard and static libraries). This can be
|
||||||
|
@ -78,8 +79,9 @@ ANSIFLAGS := -A
|
||||||
# library linking
|
# library linking
|
||||||
#
|
#
|
||||||
ifndef CLEAN_LIBRARY
|
ifndef CLEAN_LIBRARY
|
||||||
CLEAN_LIBRARY = $(DELETE) $(subst $(SEP),$(HOSTSEP),$(PROJECT_LIBRARY))
|
CLEAN_LIBRARY = $(DELETE) $(PROJECT_LIBRARY)
|
||||||
endif
|
endif
|
||||||
LINK_LIBRARY = $(AR) -r $@ $(OBJECTS_LIST)
|
LINK_LIBRARY = $(AR) -r $@ $(OBJECTS_LIST)
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -15,7 +15,8 @@
|
||||||
|
|
||||||
# command line compiler name
|
# command line compiler name
|
||||||
#
|
#
|
||||||
CC := icc
|
CC := icc
|
||||||
|
COMPILER_SEP := $(SEP)
|
||||||
|
|
||||||
|
|
||||||
# The object file extension (for standard and static libraries). This can be
|
# The object file extension (for standard and static libraries). This can be
|
||||||
|
@ -71,6 +72,7 @@ ANSI_FLAGS := /Sa
|
||||||
# Library linking
|
# Library linking
|
||||||
#
|
#
|
||||||
#CLEAN_LIBRARY :=
|
#CLEAN_LIBRARY :=
|
||||||
LINK_LIBRARY = lib /nologo /out:$@ $(OBJECTS_LIST)
|
LINK_LIBRARY = lib /nologo /out:$(subst /,$(COMPILER_SEP),$@ $(OBJECTS_LIST))
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -15,7 +15,8 @@
|
||||||
|
|
||||||
# compiler command line name
|
# compiler command line name
|
||||||
#
|
#
|
||||||
CC := cl
|
CC := cl
|
||||||
|
COMPILER_SEP := $(SEP)
|
||||||
|
|
||||||
|
|
||||||
# The object file extension (for standard and static libraries). This can be
|
# The object file extension (for standard and static libraries). This can be
|
||||||
|
@ -74,6 +75,7 @@ ANSIFLAGS := /Za
|
||||||
# Library linking
|
# Library linking
|
||||||
#
|
#
|
||||||
#CLEAN_LIBRARY =
|
#CLEAN_LIBRARY =
|
||||||
LINK_LIBRARY = lib /nologo /out:$@ $(OBJECTS_LIST)
|
LINK_LIBRARY = lib /nologo /out:$(subst /,$(COMPILER_SEP),$@ $(OBJECTS_LIST))
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -15,7 +15,8 @@
|
||||||
|
|
||||||
# Compiler command line name
|
# Compiler command line name
|
||||||
#
|
#
|
||||||
CC := wcc386
|
CC := wcc386
|
||||||
|
COMPILER_SEP := $(SEP)
|
||||||
|
|
||||||
|
|
||||||
# The object file extension (for standard and static libraries). This can be
|
# The object file extension (for standard and static libraries). This can be
|
||||||
|
@ -74,8 +75,11 @@ ANSIFLAGS := -za
|
||||||
# Library linking
|
# Library linking
|
||||||
#
|
#
|
||||||
ifndef CLEAN_LIBRARY
|
ifndef CLEAN_LIBRARY
|
||||||
CLEAN_LIBRARY = $(DELETE) $(subst $(SEP),$(HOSTSEP),$(PROJECT_LIBRARY))
|
CLEAN_LIBRARY = $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY))
|
||||||
endif
|
endif
|
||||||
LINK_LIBRARY = wlib -q -o = $@ $(OBJECTS_LIST)
|
LINK_LIBRARY = $(subst /,$(COMPILER_SEP), \
|
||||||
|
wlib -q -n $@; \
|
||||||
|
$(foreach m, $(OBJECTS_LIST), wlib -q $@ +$(m);) \
|
||||||
|
echo > nul)
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -15,7 +15,8 @@
|
||||||
|
|
||||||
# Command line name
|
# Command line name
|
||||||
#
|
#
|
||||||
CC := lcc
|
CC := lcc
|
||||||
|
COMPILER_SEP := $(SEP)
|
||||||
|
|
||||||
|
|
||||||
# The object file extension (for standard and static libraries). This can be
|
# The object file extension (for standard and static libraries). This can be
|
||||||
|
@ -76,6 +77,7 @@ ANSIFLAGS :=
|
||||||
# library linking
|
# library linking
|
||||||
#
|
#
|
||||||
#CLEAN_LIBRARY :=
|
#CLEAN_LIBRARY :=
|
||||||
LINK_LIBRARY = lcclib /out:$(subst $(SEP),\\,$@) $(subst $(SEP),\\,$(OBJECTS_LIST))
|
LINK_LIBRARY = lcclib /out:$(subst /,$(COMPILER_SEP),$@ $(OBJECTS_LIST))
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2001, 2002, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -16,7 +16,7 @@
|
||||||
# This sub-Makefile is in charge of detecting the current platform. It sets
|
# This sub-Makefile is in charge of detecting the current platform. It sets
|
||||||
# the following variables:
|
# the following variables:
|
||||||
#
|
#
|
||||||
# BUILD The configuration and system-specific directory. Usually
|
# BUILD_DIR The configuration and system-specific directory. Usually
|
||||||
# `freetype/builds/$(PLATFORM)' but can be different for
|
# `freetype/builds/$(PLATFORM)' but can be different for
|
||||||
# custom builds of the library.
|
# custom builds of the library.
|
||||||
#
|
#
|
||||||
|
@ -30,6 +30,7 @@
|
||||||
# DELETE The shell command used to remove a given file.
|
# DELETE The shell command used to remove a given file.
|
||||||
# COPY The shell command used to copy one file.
|
# COPY The shell command used to copy one file.
|
||||||
# SEP The platform-specific directory separator.
|
# SEP The platform-specific directory separator.
|
||||||
|
# COMPILER_SEP The separator used in arguments of the compilation tools.
|
||||||
# CC The compiler to use.
|
# CC The compiler to use.
|
||||||
#
|
#
|
||||||
# You need to set the following variable(s) before calling it:
|
# You need to set the following variable(s) before calling it:
|
||||||
|
@ -44,17 +45,17 @@ ifndef TOP_DIR
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# Set auto-detection default to `ansi' resp. UNIX-like operating systems.
|
# Set auto-detection default to `ansi' resp. UNIX-like operating systems.
|
||||||
# Note that we delay evaluation of $(BUILD_CONFIG_), $(BUILD), and
|
|
||||||
# $(CONFIG_RULES).
|
|
||||||
#
|
#
|
||||||
PLATFORM := ansi
|
PLATFORM := ansi
|
||||||
DELETE := $(RM)
|
DELETE := $(RM)
|
||||||
COPY := cp
|
COPY := cp
|
||||||
SEP := /
|
SEP := /
|
||||||
|
|
||||||
BUILD_CONFIG_ = $(TOP_DIR)$(SEP)builds$(SEP)
|
BUILD_CONFIG := $(TOP_DIR)/builds
|
||||||
BUILD = $(BUILD_CONFIG_)$(PLATFORM)
|
|
||||||
CONFIG_RULES = $(BUILD)$(SEP)$(CONFIG_FILE)
|
# These two assignments must be delayed.
|
||||||
|
BUILD_DIR = $(BUILD_CONFIG)/$(PLATFORM)
|
||||||
|
CONFIG_RULES = $(BUILD_DIR)/$(CONFIG_FILE)
|
||||||
|
|
||||||
# We define the BACKSLASH variable to hold a single back-slash character.
|
# We define the BACKSLASH variable to hold a single back-slash character.
|
||||||
# This is needed because a line like
|
# This is needed because a line like
|
||||||
|
@ -72,12 +73,12 @@ BACKSLASH := $(strip \ )
|
||||||
|
|
||||||
# Find all auto-detectable platforms.
|
# Find all auto-detectable platforms.
|
||||||
#
|
#
|
||||||
PLATFORMS_ := $(notdir $(subst /detect.mk,,$(wildcard $(BUILD_CONFIG_)*/detect.mk)))
|
PLATFORMS := $(notdir $(subst /detect.mk,,$(wildcard $(BUILD_CONFIG)/*/detect.mk)))
|
||||||
.PHONY: $(PLATFORMS_) ansi
|
.PHONY: $(PLATFORMS) ansi
|
||||||
|
|
||||||
# Filter out platform specified as setup target.
|
# Filter out platform specified as setup target.
|
||||||
#
|
#
|
||||||
PLATFORM := $(firstword $(filter $(MAKECMDGOALS),$(PLATFORMS_)))
|
PLATFORM := $(firstword $(filter $(MAKECMDGOALS),$(PLATFORMS)))
|
||||||
|
|
||||||
# If no setup target platform was specified, enable auto-detection/
|
# If no setup target platform was specified, enable auto-detection/
|
||||||
# default platform.
|
# default platform.
|
||||||
|
@ -94,7 +95,7 @@ ifeq ($(findstring ansi,$(MAKECMDGOALS)),)
|
||||||
# directories. Note that the calling order of the various `detect.mk'
|
# directories. Note that the calling order of the various `detect.mk'
|
||||||
# files isn't predictable.
|
# files isn't predictable.
|
||||||
#
|
#
|
||||||
include $(wildcard $(BUILD_CONFIG_)*/detect.mk)
|
include $(wildcard $(BUILD_CONFIG)/*/detect.mk)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# In case no detection rule file was successful, use the default.
|
# In case no detection rule file was successful, use the default.
|
||||||
|
@ -121,13 +122,14 @@ std_setup:
|
||||||
@echo ""
|
@echo ""
|
||||||
@echo " platform $(PLATFORM)"
|
@echo " platform $(PLATFORM)"
|
||||||
@echo " compiler $(CC)"
|
@echo " compiler $(CC)"
|
||||||
@echo " configuration directory $(BUILD)"
|
@echo " configuration directory $(BUILD_DIR)"
|
||||||
@echo " configuration rules $(CONFIG_RULES)"
|
@echo " configuration rules $(CONFIG_RULES)"
|
||||||
@echo ""
|
@echo ""
|
||||||
@echo "If this does not correspond to your system or settings please remove the file"
|
@echo "If this does not correspond to your system or settings please remove the file"
|
||||||
@echo "\`$(CONFIG_MK)' from this directory then read the INSTALL file for help."
|
@echo "\`$(CONFIG_MK)' from this directory then read the INSTALL file for help."
|
||||||
@echo ""
|
@echo ""
|
||||||
@echo "Otherwise, simply type \`$(MAKE)' again to build the library."
|
@echo "Otherwise, simply type \`$(MAKE)' again to build the library,"
|
||||||
|
@echo "or \`$(MAKE) refdoc' to build the API reference (the latter needs python)."
|
||||||
@echo ""
|
@echo ""
|
||||||
@$(COPY) $(CONFIG_RULES) $(CONFIG_MK)
|
@$(COPY) $(CONFIG_RULES) $(CONFIG_MK)
|
||||||
|
|
||||||
|
@ -140,4 +142,18 @@ dos_setup:
|
||||||
@type builds\newline
|
@type builds\newline
|
||||||
@echo The following settings are used:
|
@echo The following settings are used:
|
||||||
@type builds\newline
|
@type builds\newline
|
||||||
@echo platform
|
@echo platformÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ$(PLATFORM)
|
||||||
|
@echo compilerÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ$(CC)
|
||||||
|
@echo configuration directoryÿÿÿÿÿÿ$(subst /,\,$(BUILD_DIR))
|
||||||
|
@echo configuration rulesÿÿÿÿÿÿÿÿÿÿ$(subst /,\,$(CONFIG_RULES))
|
||||||
|
@type builds\newline
|
||||||
|
@echo If this does not correspond to your system or settings please remove the file
|
||||||
|
@echo '$(CONFIG_MK)' from this directory then read the INSTALL file for help.
|
||||||
|
@type builds\newline
|
||||||
|
@echo Otherwise, simply type 'make' again to build the library.
|
||||||
|
@echo or 'make refdoc' to build the API reference (the latter needs python).
|
||||||
|
@type builds\newline
|
||||||
|
@$(COPY) $(subst /,\,$(CONFIG_RULES) $(CONFIG_MK)) > nul
|
||||||
|
|
||||||
|
|
||||||
|
# EOF
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -23,7 +23,8 @@ ifeq ($(PLATFORM),ansi)
|
||||||
# `make' utility is run).
|
# `make' utility is run).
|
||||||
#
|
#
|
||||||
# We test for the COMSPEC environment variable, then run the `ver'
|
# We test for the COMSPEC environment variable, then run the `ver'
|
||||||
# command-line program to see if its output contains the word `Dos'.
|
# command-line program to see if its output contains the word `Dos' or
|
||||||
|
# `DOS'.
|
||||||
#
|
#
|
||||||
# If this is true, we are running a Dos-ish platform (or an emulation).
|
# If this is true, we are running a Dos-ish platform (or an emulation).
|
||||||
#
|
#
|
||||||
|
@ -31,7 +32,7 @@ ifeq ($(PLATFORM),ansi)
|
||||||
PLATFORM := dos
|
PLATFORM := dos
|
||||||
else
|
else
|
||||||
ifdef COMSPEC
|
ifdef COMSPEC
|
||||||
is_dos := $(findstring Dos,$(shell ver))
|
is_dos := $(findstring DOS,$(subst Dos,DOS,$(shell ver)))
|
||||||
|
|
||||||
# We try to recognize a Dos session under OS/2. The `ver' command
|
# We try to recognize a Dos session under OS/2. The `ver' command
|
||||||
# returns `Operating System/2 ...' there, so `is_dos' should be empty.
|
# returns `Operating System/2 ...' there, so `is_dos' should be empty.
|
||||||
|
@ -57,16 +58,21 @@ ifeq ($(PLATFORM),dos)
|
||||||
# Use DJGPP (i.e. gcc) by default.
|
# Use DJGPP (i.e. gcc) by default.
|
||||||
#
|
#
|
||||||
CONFIG_FILE := dos-gcc.mk
|
CONFIG_FILE := dos-gcc.mk
|
||||||
SEP := /
|
|
||||||
ifndef CC
|
ifndef CC
|
||||||
CC := gcc
|
CC := gcc
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# additionally, we provide hooks for various other compilers
|
# additionally, we provide hooks for various other compilers
|
||||||
#
|
#
|
||||||
|
ifneq ($(findstring emx,$(MAKECMDGOALS)),) # EMX gcc
|
||||||
|
CONFIG_FILE := dos-emx.mk
|
||||||
|
CC := gcc
|
||||||
|
emx: setup
|
||||||
|
.PHONY: emx
|
||||||
|
endif
|
||||||
|
|
||||||
ifneq ($(findstring turboc,$(MAKECMDGOALS)),) # Turbo C
|
ifneq ($(findstring turboc,$(MAKECMDGOALS)),) # Turbo C
|
||||||
CONFIG_FILE := dos-tcc.mk
|
CONFIG_FILE := dos-tcc.mk
|
||||||
SEP := $(BACKSLASH)
|
|
||||||
CC := tcc
|
CC := tcc
|
||||||
turboc: setup
|
turboc: setup
|
||||||
.PHONY: turboc
|
.PHONY: turboc
|
||||||
|
@ -74,7 +80,6 @@ ifeq ($(PLATFORM),dos)
|
||||||
|
|
||||||
ifneq ($(findstring watcom,$(MAKECMDGOALS)),) # Watcom C/C++
|
ifneq ($(findstring watcom,$(MAKECMDGOALS)),) # Watcom C/C++
|
||||||
CONFIG_FILE := dos-wat.mk
|
CONFIG_FILE := dos-wat.mk
|
||||||
SEP := $(BACKSLASH)
|
|
||||||
CC := wcc386
|
CC := wcc386
|
||||||
watcom: setup
|
watcom: setup
|
||||||
.PHONY: watcom
|
.PHONY: watcom
|
||||||
|
@ -82,7 +87,6 @@ ifeq ($(PLATFORM),dos)
|
||||||
|
|
||||||
ifneq ($(findstring borlandc,$(MAKECMDGOALS)),) # Borland C/C++ 32-bit
|
ifneq ($(findstring borlandc,$(MAKECMDGOALS)),) # Borland C/C++ 32-bit
|
||||||
CONFIG_FILE := dos-bcc.mk
|
CONFIG_FILE := dos-bcc.mk
|
||||||
SEP := $(BACKSLASH)
|
|
||||||
CC := bcc32
|
CC := bcc32
|
||||||
borlandc: setup
|
borlandc: setup
|
||||||
.PHONY: borlandc
|
.PHONY: borlandc
|
||||||
|
@ -90,17 +94,18 @@ ifeq ($(PLATFORM),dos)
|
||||||
|
|
||||||
ifneq ($(findstring borlandc16,$(MAKECMDGOALS)),) # Borland C/C++ 16-bit
|
ifneq ($(findstring borlandc16,$(MAKECMDGOALS)),) # Borland C/C++ 16-bit
|
||||||
CONFIG_FILE := dos-bcc.mk
|
CONFIG_FILE := dos-bcc.mk
|
||||||
SEP := $(BACKSLASH)
|
|
||||||
CC := bcc
|
CC := bcc
|
||||||
borlandc16: setup
|
borlandc16: setup
|
||||||
.PHONY: borlandc16
|
.PHONY: borlandc16
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifneq ($(findstring bash,$(SHELL)),) # check for bash
|
ifneq ($(findstring bash,$(SHELL)),) # check for bash
|
||||||
|
SEP := /
|
||||||
DELETE := rm
|
DELETE := rm
|
||||||
COPY := cp
|
COPY := cp
|
||||||
setup: std_setup
|
setup: std_setup
|
||||||
else
|
else
|
||||||
|
SEP := $(BACKSLASH)
|
||||||
DELETE := del
|
DELETE := del
|
||||||
COPY := copy
|
COPY := copy
|
||||||
setup: dos_setup
|
setup: dos_setup
|
||||||
|
@ -108,4 +113,5 @@ ifeq ($(PLATFORM),dos)
|
||||||
|
|
||||||
endif # test PLATFORM dos
|
endif # test PLATFORM dos
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -13,15 +13,10 @@
|
||||||
# fully.
|
# fully.
|
||||||
|
|
||||||
|
|
||||||
DELETE := del
|
DELETE := del
|
||||||
HOSTSEP := $(strip \ )
|
SEP := $(strip \ )
|
||||||
BUILD := $(TOP_DIR)$(SEP)builds$(SEP)dos
|
BUILD_DIR := $(TOP_DIR)/builds/dos
|
||||||
PLATFORM := dos
|
PLATFORM := dos
|
||||||
|
|
||||||
# except for DJGPP/GCC on Dos
|
|
||||||
ifndef SEP
|
|
||||||
SEP := $(HOSTSEP)
|
|
||||||
endif
|
|
||||||
|
|
||||||
|
|
||||||
# The directory where all object files are placed.
|
# The directory where all object files are placed.
|
||||||
|
@ -34,7 +29,7 @@ endif
|
||||||
# make -f %TOP_DIR%/Makefile
|
# make -f %TOP_DIR%/Makefile
|
||||||
#
|
#
|
||||||
ifndef OBJ_DIR
|
ifndef OBJ_DIR
|
||||||
OBJ_DIR := $(TOP_DIR)$(SEP)objs
|
OBJ_DIR := $(TOP_DIR)/objs
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
#
|
#
|
||||||
# FreeType 2 Type1 driver compilation rules for VMS
|
# FreeType 2 configuration rules for the EMX gcc compiler
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000, 2002 by
|
# Copyright 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -13,11 +13,9 @@
|
||||||
# fully.
|
# fully.
|
||||||
|
|
||||||
|
|
||||||
CFLAGS=$(COMP_FLAGS)$(DEBUG)/include=([--.include],[--.src.type1])
|
include $(TOP_DIR)/builds/dos/dos-def.mk
|
||||||
|
include $(TOP_DIR)/builds/compiler/emx.mk
|
||||||
|
include $(TOP_DIR)/builds/link_dos.mk
|
||||||
|
|
||||||
OBJS=type1.obj
|
|
||||||
|
|
||||||
all : $(OBJS)
|
|
||||||
library [--.lib]freetype.olb $(OBJS)
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -13,10 +13,9 @@
|
||||||
# fully.
|
# fully.
|
||||||
|
|
||||||
|
|
||||||
SEP := /
|
|
||||||
|
|
||||||
include $(TOP_DIR)/builds/dos/dos-def.mk
|
include $(TOP_DIR)/builds/dos/dos-def.mk
|
||||||
include $(TOP_DIR)/builds/compiler/gcc.mk
|
include $(TOP_DIR)/builds/compiler/gcc.mk
|
||||||
include $(TOP_DIR)/builds/link_dos.mk
|
include $(TOP_DIR)/builds/link_dos.mk
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -1,25 +1,17 @@
|
||||||
#
|
#
|
||||||
# FreeType 2 system rules for VMS
|
# FreeType 2 configuration rules for the Watcom C/C++ compiler
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 2001 by
|
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
|
||||||
#
|
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
# and distributed under the terms of the FreeType project license,
|
# and distributed under the terms of the FreeType project license,
|
||||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||||
# indicate that you have read the license and understand and accept it
|
# indicate that you have read the license and understand and accept it
|
||||||
# fully.
|
# fully.
|
||||||
|
|
||||||
|
include $(TOP_DIR)/builds/dos/dos-def.mk
|
||||||
|
include $(TOP_DIR)/builds/compiler/watcom.mk
|
||||||
|
include $(TOP_DIR)/builds/link_dos.mk
|
||||||
|
|
||||||
CFLAGS=$(COMP_FLAGS)$(DEBUG)/include=([],[--.include],[--.src.base])
|
|
||||||
|
|
||||||
OBJS=ftsystem.obj
|
|
||||||
|
|
||||||
all : $(OBJS)
|
|
||||||
library/create [--.lib]freetype.olb $(OBJS)
|
|
||||||
|
|
||||||
ftsystem.obj : ftsystem.c ftconfig.h
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000, 2002 by
|
# Copyright 1996-2000, 2001, 2002, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -20,13 +20,15 @@
|
||||||
# The following variables (set by other Makefile components, in the
|
# The following variables (set by other Makefile components, in the
|
||||||
# environment, or on the command line) are used:
|
# environment, or on the command line) are used:
|
||||||
#
|
#
|
||||||
# BUILD The architecture dependent directory,
|
# BUILD_DIR The architecture dependent directory,
|
||||||
# e.g. `$(TOP_DIR)/builds/unix'.
|
# e.g. `$(TOP_DIR)/builds/unix'.
|
||||||
#
|
#
|
||||||
# OBJ_DIR The directory in which object files are created.
|
# OBJ_DIR The directory in which object files are created.
|
||||||
#
|
#
|
||||||
# LIB_DIR The directory in which the library is created.
|
# LIB_DIR The directory in which the library is created.
|
||||||
#
|
#
|
||||||
|
# DOC_DIR The directory in which the API reference is created.
|
||||||
|
#
|
||||||
# INCLUDES A list of directories to be included additionally.
|
# INCLUDES A list of directories to be included additionally.
|
||||||
# Usually empty.
|
# Usually empty.
|
||||||
#
|
#
|
||||||
|
@ -63,6 +65,7 @@
|
||||||
# `distclean' target.
|
# `distclean' target.
|
||||||
#
|
#
|
||||||
# TOP_DIR, SEP,
|
# TOP_DIR, SEP,
|
||||||
|
# COMPILER_SEP,
|
||||||
# LIBRARY, CC,
|
# LIBRARY, CC,
|
||||||
# A, I, O, T Check `config.mk' for details.
|
# A, I, O, T Check `config.mk' for details.
|
||||||
|
|
||||||
|
@ -70,7 +73,7 @@
|
||||||
# The targets `objects' and `library' are defined at the end of this
|
# The targets `objects' and `library' are defined at the end of this
|
||||||
# Makefile after all other rules have been included.
|
# Makefile after all other rules have been included.
|
||||||
#
|
#
|
||||||
.PHONY: single multi objects library
|
.PHONY: single multi objects library refdoc
|
||||||
|
|
||||||
# default target -- build single objects and library
|
# default target -- build single objects and library
|
||||||
#
|
#
|
||||||
|
@ -83,43 +86,29 @@ multi: objects library
|
||||||
|
|
||||||
# The FreeType source directory, usually `./src'.
|
# The FreeType source directory, usually `./src'.
|
||||||
#
|
#
|
||||||
SRC := $(TOP_DIR)$(SEP)src
|
SRC_DIR := $(TOP_DIR)/src
|
||||||
|
|
||||||
|
|
||||||
# The directory where the base layer components are placed, usually
|
# The directory where the base layer components are placed, usually
|
||||||
# `./src/base'.
|
# `./src/base'.
|
||||||
#
|
#
|
||||||
BASE_DIR := $(SRC)$(SEP)base
|
BASE_DIR := $(SRC_DIR)/base
|
||||||
|
|
||||||
# The build header file used to define all public header file names
|
# Other derived directories.
|
||||||
# as macro.
|
|
||||||
#
|
#
|
||||||
ifndef FT_BUILD_H
|
PUBLIC_DIR := $(TOP_DIR)/include/freetype
|
||||||
FT_BUILD_H := $(TOP_DIR)$(SEP)include$(SEP)ft2build.h
|
INTERNAL_DIR := $(PUBLIC_DIR)/internal
|
||||||
FTBUILD_CMD :=
|
CONFIG_DIR := $(PUBLIC_DIR)/config
|
||||||
else
|
CACHE_DIR := $(PUBLIC_DIR)/cache
|
||||||
FTBUILD_CMD = $(D)FT_BUILD_H=$(FT_BUILD_H)
|
|
||||||
|
# The documentation directory.
|
||||||
|
#
|
||||||
|
ifndef DOC_DIR
|
||||||
|
DOC_DIR := $(TOP_DIR)/docs/reference
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# A few short-cuts in order to avoid typing $(SEP) all the time for the
|
|
||||||
# directory separator.
|
|
||||||
#
|
|
||||||
# For example: $(SRC_) equals to `./src/' where `.' is $(TOP_DIR).
|
|
||||||
#
|
|
||||||
#
|
|
||||||
SRC_ := $(SRC)$(SEP)
|
|
||||||
BASE_ := $(BASE_DIR)$(SEP)
|
|
||||||
OBJ_ := $(OBJ_DIR)$(SEP)
|
|
||||||
LIB_ := $(LIB_DIR)$(SEP)
|
|
||||||
PUBLIC_ := $(TOP_DIR)$(SEP)include$(SEP)freetype$(SEP)
|
|
||||||
INTERNAL_ := $(PUBLIC_)internal$(SEP)
|
|
||||||
CONFIG_ := $(PUBLIC_)config$(SEP)
|
|
||||||
CACHE_ := $(PUBLIC_)cache$(SEP)
|
|
||||||
|
|
||||||
|
|
||||||
# The final name of the library file.
|
# The final name of the library file.
|
||||||
#
|
#
|
||||||
PROJECT_LIBRARY := $(LIB_)$(LIBRARY).$A
|
PROJECT_LIBRARY := $(LIB_DIR)/$(LIBRARY).$A
|
||||||
|
|
||||||
|
|
||||||
# include paths
|
# include paths
|
||||||
|
@ -130,7 +119,8 @@ PROJECT_LIBRARY := $(LIB_)$(LIBRARY).$A
|
||||||
# in the `freetype/builds/<system>' directory, as these
|
# in the `freetype/builds/<system>' directory, as these
|
||||||
# files will override the default sources.
|
# files will override the default sources.
|
||||||
#
|
#
|
||||||
INCLUDES := $(OBJ_DIR) $(BUILD) $(TOP_DIR)$(SEP)include
|
INCLUDES := $(subst /,$(COMPILER_SEP),$(OBJ_DIR) $(BUILD_DIR) \
|
||||||
|
$(TOP_DIR)/include)
|
||||||
|
|
||||||
INCLUDE_FLAGS = $(INCLUDES:%=$I%)
|
INCLUDE_FLAGS = $(INCLUDES:%=$I%)
|
||||||
|
|
||||||
|
@ -164,46 +154,47 @@ OBJECTS_LIST :=
|
||||||
# This is used to simplify the dependency rules -- if one of these files
|
# This is used to simplify the dependency rules -- if one of these files
|
||||||
# changes, the whole library is recompiled.
|
# changes, the whole library is recompiled.
|
||||||
#
|
#
|
||||||
PUBLIC_H := $(wildcard $(PUBLIC_)*.h)
|
PUBLIC_H := $(wildcard $(PUBLIC_DIR)/*.h)
|
||||||
BASE_H := $(wildcard $(INTERNAL_)*.h)
|
BASE_H := $(wildcard $(INTERNAL_DIR)/*.h)
|
||||||
CONFIG_H := $(wildcard $(CONFIG_)*.h) \
|
CONFIG_H := $(wildcard $(CONFIG_DIR)/*.h) \
|
||||||
$(wildcard $(BUILD)$(SEP)freetype$(SEP)config$(SEP)*.h)
|
$(wildcard $(BUILD_DIR)/freetype/config/*.h)
|
||||||
CACHE_H := $(wildcard $(CACHE_)*.h)
|
CACHE_H := $(wildcard $(CACHE_DIR)/*.h)
|
||||||
|
DEVEL_H := $(wildcard $(TOP_DIR)/devel/*.h)
|
||||||
|
|
||||||
FREETYPE_H := $(PUBLIC_H) $(BASE_H) $(CONFIG_H) $(CACHE_H)
|
FREETYPE_H := $(PUBLIC_H) $(BASE_H) $(CONFIG_H) $(CACHE_H) $(DEVEL_H)
|
||||||
|
|
||||||
|
|
||||||
# ftsystem component
|
# ftsystem component
|
||||||
#
|
#
|
||||||
ifndef FTSYS_SRC
|
ifndef FTSYS_SRC
|
||||||
FTSYS_SRC = $(BASE_)ftsystem.c
|
FTSYS_SRC = $(BASE_DIR)/ftsystem.c
|
||||||
endif
|
endif
|
||||||
|
|
||||||
FTSYS_OBJ = $(OBJ_)ftsystem.$O
|
FTSYS_OBJ = $(OBJ_DIR)/ftsystem.$O
|
||||||
|
|
||||||
OBJECTS_LIST += $(FTSYS_OBJ)
|
OBJECTS_LIST += $(FTSYS_OBJ)
|
||||||
|
|
||||||
$(FTSYS_OBJ): $(FTSYS_SRC) $(FREETYPE_H)
|
$(FTSYS_OBJ): $(FTSYS_SRC) $(FREETYPE_H)
|
||||||
$(FT_COMPILE) $T$@ $<
|
$(FT_COMPILE) $T$(subst /,$(COMPILER_SEP),$@ $<)
|
||||||
|
|
||||||
|
|
||||||
# ftdebug component
|
# ftdebug component
|
||||||
#
|
#
|
||||||
ifndef FTDEBUG_SRC
|
ifndef FTDEBUG_SRC
|
||||||
FTDEBUG_SRC = $(BASE_)ftdebug.c
|
FTDEBUG_SRC = $(BASE_DIR)/ftdebug.c
|
||||||
endif
|
endif
|
||||||
|
|
||||||
FTDEBUG_OBJ = $(OBJ_)ftdebug.$O
|
FTDEBUG_OBJ = $(OBJ_DIR)/ftdebug.$O
|
||||||
|
|
||||||
OBJECTS_LIST += $(FTDEBUG_OBJ)
|
OBJECTS_LIST += $(FTDEBUG_OBJ)
|
||||||
|
|
||||||
$(FTDEBUG_OBJ): $(FTDEBUG_SRC) $(FREETYPE_H)
|
$(FTDEBUG_OBJ): $(FTDEBUG_SRC) $(FREETYPE_H)
|
||||||
$(FT_COMPILE) $T$@ $<
|
$(FT_COMPILE) $T$(subst /,$(COMPILER_SEP),$@ $<)
|
||||||
|
|
||||||
|
|
||||||
# Include all rule files from FreeType components.
|
# Include all rule files from FreeType components.
|
||||||
#
|
#
|
||||||
include $(wildcard $(SRC)/*/rules.mk)
|
include $(wildcard $(SRC_DIR)/*/rules.mk)
|
||||||
|
|
||||||
|
|
||||||
# ftinit component
|
# ftinit component
|
||||||
|
@ -217,13 +208,13 @@ include $(wildcard $(SRC)/*/rules.mk)
|
||||||
# which contain additional include paths and macros used to compile the
|
# which contain additional include paths and macros used to compile the
|
||||||
# single `ftinit.c' source.
|
# single `ftinit.c' source.
|
||||||
#
|
#
|
||||||
FTINIT_SRC := $(BASE_)ftinit.c
|
FTINIT_SRC := $(BASE_DIR)/ftinit.c
|
||||||
FTINIT_OBJ := $(OBJ_)ftinit.$O
|
FTINIT_OBJ := $(OBJ_DIR)/ftinit.$O
|
||||||
|
|
||||||
OBJECTS_LIST += $(FTINIT_OBJ)
|
OBJECTS_LIST += $(FTINIT_OBJ)
|
||||||
|
|
||||||
$(FTINIT_OBJ): $(FTINIT_SRC) $(FREETYPE_H) $(FT_MODULE_LIST)
|
$(FTINIT_OBJ): $(FTINIT_SRC) $(FREETYPE_H) $(FT_MODULE_LIST)
|
||||||
$(FT_COMPILE) $T$@ $<
|
$(FT_COMPILE) $T$(subst /,$(COMPILER_SEP),$@ $<)
|
||||||
|
|
||||||
|
|
||||||
# All FreeType library objects
|
# All FreeType library objects
|
||||||
|
@ -255,7 +246,17 @@ objects: $(OBJECTS_LIST)
|
||||||
library: $(PROJECT_LIBRARY)
|
library: $(PROJECT_LIBRARY)
|
||||||
|
|
||||||
.c.$O:
|
.c.$O:
|
||||||
$(FT_COMPILE) $T$@ $<
|
$(FT_COMPILE) $T$(subst /,$(COMPILER_SEP),$@ $<)
|
||||||
|
|
||||||
|
|
||||||
|
refdoc:
|
||||||
|
python $(SRC_DIR)/tools/docmaker/docmaker.py \
|
||||||
|
--prefix=ft2 \
|
||||||
|
--title=FreeType-2.1.5 \
|
||||||
|
--output=$(DOC_DIR) \
|
||||||
|
$(PUBLIC_DIR)/*.h \
|
||||||
|
$(PUBLIC_DIR)/config/*.h \
|
||||||
|
$(PUBLIC_DIR)/cache/*.h
|
||||||
|
|
||||||
|
|
||||||
.PHONY: clean_project_std distclean_project_std
|
.PHONY: clean_project_std distclean_project_std
|
||||||
|
@ -280,10 +281,10 @@ distclean_project_std: clean_project_std
|
||||||
# working correctly on Win9x.
|
# working correctly on Win9x.
|
||||||
#
|
#
|
||||||
clean_project_dos:
|
clean_project_dos:
|
||||||
-$(DELETE) $(subst $(SEP),$(HOSTSEP),$(OBJ_))*.$O $(CLEAN) $(NO_OUTPUT)
|
-$(DELETE) $(subst /,\,$(OBJ)/*.$O $(CLEAN) $(NO_OUTPUT))
|
||||||
|
|
||||||
distclean_project_dos: clean_project_dos
|
distclean_project_dos: clean_project_dos
|
||||||
-$(DELETE) $(subst $(SEP),$(HOSTSEP),$(PROJECT_LIBRARY)) $(DISTCLEAN) $(NO_OUTPUT)
|
-$(DELETE) $(subst /,\,$(PROJECT_LIBRARY) $(DISTCLEAN) $(NO_OUTPUT))
|
||||||
|
|
||||||
|
|
||||||
.PHONY: remove_config_mk
|
.PHONY: remove_config_mk
|
||||||
|
@ -291,7 +292,7 @@ distclean_project_dos: clean_project_dos
|
||||||
# Remove configuration file (used for distclean).
|
# Remove configuration file (used for distclean).
|
||||||
#
|
#
|
||||||
remove_config_mk:
|
remove_config_mk:
|
||||||
-$(DELETE) $(subst $(SEP),$(HOSTSEP),$(CONFIG_MK)) $(NO_OUTPUT)
|
-$(DELETE) $(subst /,$(SEP),$(CONFIG_MK) $(NO_OUTPUT))
|
||||||
|
|
||||||
|
|
||||||
.PHONY: clean distclean
|
.PHONY: clean distclean
|
||||||
|
@ -303,5 +304,7 @@ remove_config_mk:
|
||||||
#
|
#
|
||||||
clean: clean_project
|
clean: clean_project
|
||||||
distclean: distclean_project remove_config_mk
|
distclean: distclean_project remove_config_mk
|
||||||
|
-$(DELETE) $(subst /,$(SEP),$(DOC_DIR)/*.html $(NO_OUTPUT))
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -38,4 +38,5 @@ ifdef BUILD_PROJECT
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -38,4 +38,5 @@ ifdef BUILD_PROJECT
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -1,3 +1,109 @@
|
||||||
# Makefile for Apple MPW build environment (currently PPC only)
|
# Makefile for Apple MPW build environment (currently PPC only)
|
||||||
|
|
||||||
MAKEFILE = Makefile
|
MAKEFILE = Makefile
|
||||||
|
ÿMondoBuildÿ = #{MAKEFILE} # Make blank to avoid rebuilds when makefile is modified
|
||||||
|
SymÿPPC = #-sym on
|
||||||
|
ObjDirÿPPC = :obj:
|
||||||
|
|
||||||
|
CFLAGS = -i :include -i :src -includes unix {SymÿPPC}
|
||||||
|
|
||||||
|
OBJS = ÿ
|
||||||
|
"{ObjDirÿPPC}ftsystem.c.x" ÿ
|
||||||
|
"{ObjDirÿPPC}ftdebug.c.x" ÿ
|
||||||
|
"{ObjDirÿPPC}ftinit.c.x" ÿ
|
||||||
|
"{ObjDirÿPPC}ftbase.c.x" ÿ
|
||||||
|
"{ObjDirÿPPC}ftglyph.c.x" ÿ
|
||||||
|
"{ObjDirÿPPC}ftmm.c.x" ÿ
|
||||||
|
"{ObjDirÿPPC}ftbbox.c.x" ÿ
|
||||||
|
"{ObjDirÿPPC}autohint.c.x" ÿ
|
||||||
|
"{ObjDirÿPPC}ftcache.c.x" ÿ
|
||||||
|
"{ObjDirÿPPC}cff.c.x" ÿ
|
||||||
|
"{ObjDirÿPPC}type1cid.c.x" ÿ
|
||||||
|
"{ObjDirÿPPC}pcf.c.x" ÿ
|
||||||
|
"{ObjDirÿPPC}psaux.c.x" ÿ
|
||||||
|
"{ObjDirÿPPC}psmodule.c.x" ÿ
|
||||||
|
"{ObjDirÿPPC}raster.c.x" ÿ
|
||||||
|
"{ObjDirÿPPC}sfnt.c.x" ÿ
|
||||||
|
"{ObjDirÿPPC}smooth.c.x" ÿ
|
||||||
|
"{ObjDirÿPPC}truetype.c.x" ÿ
|
||||||
|
"{ObjDirÿPPC}type1.c.x" ÿ
|
||||||
|
"{ObjDirÿPPC}winfnt.c.x" ÿ
|
||||||
|
"{ObjDirÿPPC}ftmac.c.x" ÿ
|
||||||
|
|
||||||
|
# Main target - build a library
|
||||||
|
freetype ÿÿ {ÿMondoBuildÿ} directories freetype.o
|
||||||
|
|
||||||
|
# This is used to build the library
|
||||||
|
freetype.o ÿÿ {ÿMondoBuildÿ} {OBJS}
|
||||||
|
PPCLink ÿ
|
||||||
|
-o :lib:{Targ} {SymÿPPC} ÿ
|
||||||
|
{OBJS} -c '????' -xm l
|
||||||
|
|
||||||
|
# This is used to create the directories needed for build
|
||||||
|
directories ÿ
|
||||||
|
if !`Exists obj` ; NewFolder obj ; end
|
||||||
|
if !`Exists lib` ; NewFolder lib ; end
|
||||||
|
|
||||||
|
|
||||||
|
"{ObjDirÿPPC}ftsystem.c.x" ÿ {ÿMondoBuildÿ} ":src:base:ftsystem.c"
|
||||||
|
{PPCC} ":src:base:ftsystem.c" -o {Targ} {CFLAGS}
|
||||||
|
|
||||||
|
"{ObjDirÿPPC}ftdebug.c.x" ÿ {ÿMondoBuildÿ} ":src:base:ftdebug.c"
|
||||||
|
{PPCC} ":src:base:ftdebug.c" -o {Targ} {CFLAGS}
|
||||||
|
|
||||||
|
"{ObjDirÿPPC}ftinit.c.x" ÿ {ÿMondoBuildÿ} ":src:base:ftinit.c"
|
||||||
|
{PPCC} ":src:base:ftinit.c" -o {Targ} {CFLAGS}
|
||||||
|
|
||||||
|
"{ObjDirÿPPC}ftbase.c.x" ÿ {ÿMondoBuildÿ} ":src:base:ftbase.c"
|
||||||
|
{PPCC} ":src:base:ftbase.c" -o {Targ} {CFLAGS}
|
||||||
|
|
||||||
|
"{ObjDirÿPPC}ftglyph.c.x" ÿ {ÿMondoBuildÿ} ":src:base:ftglyph.c"
|
||||||
|
{PPCC} ":src:base:ftglyph.c" -o {Targ} {CFLAGS}
|
||||||
|
|
||||||
|
"{ObjDirÿPPC}ftmm.c.x" ÿ {ÿMondoBuildÿ} ":src:base:ftmm.c"
|
||||||
|
{PPCC} ":src:base:ftmm.c" -o {Targ} {CFLAGS}
|
||||||
|
|
||||||
|
"{ObjDirÿPPC}ftbbox.c.x" ÿ {ÿMondoBuildÿ} ":src:base:ftbbox.c"
|
||||||
|
{PPCC} ":src:base:ftbbox.c" -o {Targ} {CFLAGS}
|
||||||
|
|
||||||
|
"{ObjDirÿPPC}autohint.c.x" ÿ {ÿMondoBuildÿ} ":src:autohint:autohint.c"
|
||||||
|
{PPCC} ":src:autohint:autohint.c" -o {Targ} {CFLAGS}
|
||||||
|
|
||||||
|
"{ObjDirÿPPC}ftcache.c.x" ÿ {ÿMondoBuildÿ} ":src:cache:ftcache.c"
|
||||||
|
{PPCC} ":src:cache:ftcache.c" -o {Targ} {CFLAGS}
|
||||||
|
|
||||||
|
"{ObjDirÿPPC}cff.c.x" ÿ {ÿMondoBuildÿ} ":src:cff:cff.c"
|
||||||
|
{PPCC} ":src:cff:cff.c" -o {Targ} {CFLAGS}
|
||||||
|
|
||||||
|
"{ObjDirÿPPC}type1cid.c.x" ÿ {ÿMondoBuildÿ} ":src:cid:type1cid.c"
|
||||||
|
{PPCC} ":src:cid:type1cid.c" -o {Targ} {CFLAGS}
|
||||||
|
|
||||||
|
"{ObjDirÿPPC}pcf.c.x" ÿ {ÿMondoBuildÿ} ":src:pcf:pcf.c"
|
||||||
|
{PPCC} ":src:pcf:pcf.c" -o {Targ} {CFLAGS}
|
||||||
|
|
||||||
|
"{ObjDirÿPPC}psaux.c.x" ÿ {ÿMondoBuildÿ} ":src:psaux:psaux.c"
|
||||||
|
{PPCC} ":src:psaux:psaux.c" -o {Targ} {CFLAGS}
|
||||||
|
|
||||||
|
"{ObjDirÿPPC}psmodule.c.x" ÿ {ÿMondoBuildÿ} ":src:psnames:psmodule.c"
|
||||||
|
{PPCC} ":src:psnames:psmodule.c" -o {Targ} {CFLAGS}
|
||||||
|
|
||||||
|
"{ObjDirÿPPC}raster.c.x" ÿ {ÿMondoBuildÿ} ":src:raster:raster.c"
|
||||||
|
{PPCC} ":src:raster:raster.c" -o {Targ} {CFLAGS}
|
||||||
|
|
||||||
|
"{ObjDirÿPPC}sfnt.c.x" ÿ {ÿMondoBuildÿ} ":src:sfnt:sfnt.c"
|
||||||
|
{PPCC} ":src:sfnt:sfnt.c" -o {Targ} {CFLAGS}
|
||||||
|
|
||||||
|
"{ObjDirÿPPC}smooth.c.x" ÿ {ÿMondoBuildÿ} ":src:smooth:smooth.c"
|
||||||
|
{PPCC} ":src:smooth:smooth.c" -o {Targ} {CFLAGS}
|
||||||
|
|
||||||
|
"{ObjDirÿPPC}truetype.c.x" ÿ {ÿMondoBuildÿ} ":src:truetype:truetype.c"
|
||||||
|
{PPCC} ":src:truetype:truetype.c" -o {Targ} {CFLAGS}
|
||||||
|
|
||||||
|
"{ObjDirÿPPC}type1.c.x" ÿ {ÿMondoBuildÿ} ":src:type1:type1.c"
|
||||||
|
{PPCC} ":src:type1:type1.c" -o {Targ} {CFLAGS}
|
||||||
|
|
||||||
|
"{ObjDirÿPPC}winfnt.c.x" ÿ {ÿMondoBuildÿ} ":src:winfonts:winfnt.c"
|
||||||
|
{PPCC} ":src:winfonts:winfnt.c" -o {Targ} {CFLAGS}
|
||||||
|
|
||||||
|
"{ObjDirÿPPC}ftmac.c.x" ÿ {ÿMondoBuildÿ} ":src:base:ftmac.c"
|
||||||
|
{PPCC} ":src:base:ftmac.c" -o {Targ} {CFLAGS}
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -26,7 +26,7 @@
|
||||||
# resides. For now, it is in `include/freetype/config/ftmodule.h'.
|
# resides. For now, it is in `include/freetype/config/ftmodule.h'.
|
||||||
#
|
#
|
||||||
ifndef MODULE_LIST
|
ifndef MODULE_LIST
|
||||||
MODULE_LIST := $(TOP_DIR)$(SEP)include$(SEP)$(PROJECT)$(SEP)config$(SEP)ftmodule.h
|
MODULE_LIST := $(TOP_DIR)/include/$(PROJECT)/config/ftmodule.h
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# To build the modules list, we invoke the `make_module_list' target.
|
# To build the modules list, we invoke the `make_module_list' target.
|
||||||
|
@ -39,8 +39,8 @@ endif
|
||||||
|
|
||||||
ifneq ($(findstring $(PLATFORM),dos win32 win16 os2),)
|
ifneq ($(findstring $(PLATFORM),dos win32 win16 os2),)
|
||||||
OPEN_MODULE := @echo$(space)
|
OPEN_MODULE := @echo$(space)
|
||||||
CLOSE_MODULE := >> $(subst $(SEP),$(HOSTSEP),$(MODULE_LIST))
|
CLOSE_MODULE := >> $(subst /,\,$(MODULE_LIST))
|
||||||
REMOVE_MODULE := @-$(DELETE) $(subst $(SEP),$(HOSTSEP),$(MODULE_LIST))
|
REMOVE_MODULE := @-$(DELETE) $(subst /,\,$(MODULE_LIST))
|
||||||
else
|
else
|
||||||
OPEN_MODULE := @echo "
|
OPEN_MODULE := @echo "
|
||||||
CLOSE_MODULE := " >> $(MODULE_LIST)
|
CLOSE_MODULE := " >> $(MODULE_LIST)
|
||||||
|
@ -53,7 +53,7 @@ endif
|
||||||
#
|
#
|
||||||
clean_module_list:
|
clean_module_list:
|
||||||
$(REMOVE_MODULE)
|
$(REMOVE_MODULE)
|
||||||
@-echo Regenerating the modules list in $(MODULE_LIST)...
|
@-echo Regenerating modules list in $(MODULE_LIST)...
|
||||||
|
|
||||||
make_module_list: clean_module_list
|
make_module_list: clean_module_list
|
||||||
@echo done.
|
@echo done.
|
||||||
|
@ -73,4 +73,5 @@ ECHO_DRIVER_DONE := )"
|
||||||
#
|
#
|
||||||
include $(wildcard $(TOP_DIR)/src/*/module.mk)
|
include $(wildcard $(TOP_DIR)/src/*/module.mk)
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -27,18 +27,17 @@ endif
|
||||||
|
|
||||||
ifeq ($(PLATFORM),os2)
|
ifeq ($(PLATFORM),os2)
|
||||||
|
|
||||||
COPY := copy
|
COPY := copy
|
||||||
DELETE := del
|
DELETE := del
|
||||||
|
SEP := $(BACKSLASH)
|
||||||
|
|
||||||
# gcc-emx by default
|
# gcc-emx by default
|
||||||
CONFIG_FILE := os2-gcc.mk
|
CONFIG_FILE := os2-gcc.mk
|
||||||
SEP := /
|
|
||||||
|
|
||||||
# additionally, we provide hooks for various other compilers
|
# additionally, we provide hooks for various other compilers
|
||||||
#
|
#
|
||||||
ifneq ($(findstring visualage,$(MAKECMDGOALS)),) # Visual Age C++
|
ifneq ($(findstring visualage,$(MAKECMDGOALS)),) # Visual Age C++
|
||||||
CONFIG_FILE := os2-icc.mk
|
CONFIG_FILE := os2-icc.mk
|
||||||
SEP := $(BACKSLASH)
|
|
||||||
CC := icc
|
CC := icc
|
||||||
visualage: setup
|
visualage: setup
|
||||||
.PHONY: visualage
|
.PHONY: visualage
|
||||||
|
@ -46,7 +45,6 @@ ifeq ($(PLATFORM),os2)
|
||||||
|
|
||||||
ifneq ($(findstring watcom,$(MAKECMDGOALS)),) # Watcom C/C++
|
ifneq ($(findstring watcom,$(MAKECMDGOALS)),) # Watcom C/C++
|
||||||
CONFIG_FILE := os2-wat.mk
|
CONFIG_FILE := os2-wat.mk
|
||||||
SEP := $(BACKSLASH)
|
|
||||||
CC := wcc386
|
CC := wcc386
|
||||||
watcom: setup
|
watcom: setup
|
||||||
.PHONY: watcom
|
.PHONY: watcom
|
||||||
|
@ -54,7 +52,6 @@ ifeq ($(PLATFORM),os2)
|
||||||
|
|
||||||
ifneq ($(findstring borlandc,$(MAKECMDGOALS)),) # Borland C++ 32-bit
|
ifneq ($(findstring borlandc,$(MAKECMDGOALS)),) # Borland C++ 32-bit
|
||||||
CONFIG_FILE := os2-bcc.mk
|
CONFIG_FILE := os2-bcc.mk
|
||||||
SEP := $(BACKSLASH)
|
|
||||||
CC := bcc32
|
CC := bcc32
|
||||||
borlandc: setup
|
borlandc: setup
|
||||||
.PHONY: borlandc
|
.PHONY: borlandc
|
||||||
|
@ -63,7 +60,6 @@ ifeq ($(PLATFORM),os2)
|
||||||
ifneq ($(findstring devel,$(MAKECMDGOALS)),) # development target
|
ifneq ($(findstring devel,$(MAKECMDGOALS)),) # development target
|
||||||
CONFIG_FILE := os2-dev.mk
|
CONFIG_FILE := os2-dev.mk
|
||||||
CC := gcc
|
CC := gcc
|
||||||
SEP := /
|
|
||||||
devel: setup
|
devel: setup
|
||||||
.PHONY: devel
|
.PHONY: devel
|
||||||
endif
|
endif
|
||||||
|
@ -72,4 +68,5 @@ ifeq ($(PLATFORM),os2)
|
||||||
|
|
||||||
endif # test PLATFORM os2
|
endif # test PLATFORM os2
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -13,15 +13,10 @@
|
||||||
# fully.
|
# fully.
|
||||||
|
|
||||||
|
|
||||||
DELETE := del
|
DELETE := del
|
||||||
HOSTSEP := $(strip \ )
|
SEP := $(strip \ )
|
||||||
BUILD := $(TOP_DIR)$(SEP)builds$(SEP)os2
|
BUILD_DIR := $(TOP_DIR)/builds/os2
|
||||||
PLATFORM := os2
|
PLATFORM := os2
|
||||||
|
|
||||||
# except for GCC+emx on OS/2
|
|
||||||
ifndef SEP
|
|
||||||
SEP := $(HOSTSEP)
|
|
||||||
endif
|
|
||||||
|
|
||||||
|
|
||||||
# The directory where all object files are placed.
|
# The directory where all object files are placed.
|
||||||
|
@ -34,7 +29,7 @@ endif
|
||||||
# make -f %TOP_DIR%/Makefile
|
# make -f %TOP_DIR%/Makefile
|
||||||
#
|
#
|
||||||
ifndef OBJ_DIR
|
ifndef OBJ_DIR
|
||||||
OBJ_DIR := $(TOP_DIR)$(SEP)objs
|
OBJ_DIR := $(TOP_DIR)/objs
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
||||||
|
@ -55,4 +50,5 @@ LIBRARY := $(PROJECT)
|
||||||
#
|
#
|
||||||
NO_OUTPUT = 2> nul
|
NO_OUTPUT = 2> nul
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -19,10 +19,8 @@ ifndef TOP_DIR
|
||||||
TOP_DIR := .
|
TOP_DIR := .
|
||||||
endif
|
endif
|
||||||
|
|
||||||
SEP := /
|
|
||||||
|
|
||||||
include $(TOP_DIR)/builds/os2/os2-def.mk
|
include $(TOP_DIR)/builds/os2/os2-def.mk
|
||||||
BUILD := $(TOP_DIR)/builds/devel
|
BUILD_DIR := $(TOP_DIR)/devel
|
||||||
|
|
||||||
include $(TOP_DIR)/builds/compiler/gcc-dev.mk
|
include $(TOP_DIR)/builds/compiler/gcc-dev.mk
|
||||||
|
|
||||||
|
|
|
@ -13,8 +13,6 @@
|
||||||
# fully.
|
# fully.
|
||||||
|
|
||||||
|
|
||||||
SEP := /
|
|
||||||
|
|
||||||
# include OS/2-specific definitions
|
# include OS/2-specific definitions
|
||||||
include $(TOP_DIR)/builds/os2/os2-def.mk
|
include $(TOP_DIR)/builds/os2/os2-def.mk
|
||||||
|
|
||||||
|
@ -24,4 +22,5 @@ include $(TOP_DIR)/builds/compiler/gcc.mk
|
||||||
# include linking instructions
|
# include linking instructions
|
||||||
include $(TOP_DIR)/builds/link_dos.mk
|
include $(TOP_DIR)/builds/link_dos.mk
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2001, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -99,7 +99,9 @@ ifdef check_platform
|
||||||
#
|
#
|
||||||
# note: This test is duplicated in "builds/toplevel.mk".
|
# note: This test is duplicated in "builds/toplevel.mk".
|
||||||
#
|
#
|
||||||
is_unix := $(strip $(wildcard /sbin/init) $(wildcard /usr/sbin/init) $(wildcard /hurd/auth))
|
is_unix := $(strip $(wildcard /sbin/init) \
|
||||||
|
$(wildcard /usr/sbin/init) \
|
||||||
|
$(wildcard /hurd/auth))
|
||||||
ifneq ($(is_unix),)
|
ifneq ($(is_unix),)
|
||||||
|
|
||||||
distclean:
|
distclean:
|
||||||
|
@ -132,4 +134,5 @@ else
|
||||||
|
|
||||||
endif # test check_platform
|
endif # test check_platform
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
2
reactos/lib/freetype/builds/unix/aclocal.m4
vendored
2
reactos/lib/freetype/builds/unix/aclocal.m4
vendored
|
@ -1574,7 +1574,7 @@ else
|
||||||
allow_undefined_flag='-undefined suppress'
|
allow_undefined_flag='-undefined suppress'
|
||||||
;;
|
;;
|
||||||
*) # Darwin 1.3 on
|
*) # Darwin 1.3 on
|
||||||
allow_undefined_flag='-flat_namespace -undefined suppress'
|
# allow_undefined_flag='-undefined suppress'
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
# FIXME: Relying on posixy $() will cause problems for
|
# FIXME: Relying on posixy $() will cause problems for
|
||||||
|
|
34
reactos/lib/freetype/builds/unix/configure
vendored
34
reactos/lib/freetype/builds/unix/configure
vendored
|
@ -1009,6 +1009,7 @@ Optional Packages:
|
||||||
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
|
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
|
||||||
--without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
|
--without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
|
||||||
--without-zlib use internal zlib instead of system-wide
|
--without-zlib use internal zlib instead of system-wide
|
||||||
|
--with-old-mac-fonts allow Mac resource-based fonts to be used
|
||||||
--with-gnu-ld assume the C compiler uses GNU ld default=no
|
--with-gnu-ld assume the C compiler uses GNU ld default=no
|
||||||
--with-pic try to use only PIC/non-PIC objects default=use both
|
--with-pic try to use only PIC/non-PIC objects default=use both
|
||||||
|
|
||||||
|
@ -1402,7 +1403,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
|
||||||
ac_config_headers="$ac_config_headers ftconfig.h:ftconfig.in"
|
ac_config_headers="$ac_config_headers ftconfig.h:ftconfig.in"
|
||||||
|
|
||||||
|
|
||||||
version_info='9:3:3'
|
version_info='9:4:3'
|
||||||
|
|
||||||
ft_version=`echo $version_info | tr : .`
|
ft_version=`echo $version_info | tr : .`
|
||||||
|
|
||||||
|
@ -4125,9 +4126,9 @@ fi
|
||||||
rm -f conftest.mmap
|
rm -f conftest.mmap
|
||||||
|
|
||||||
if test "$ac_cv_func_mmap_fixed_mapped" != yes; then
|
if test "$ac_cv_func_mmap_fixed_mapped" != yes; then
|
||||||
FTSYS_SRC='$(BASE_)ftsystem.c'
|
FTSYS_SRC='$(BASE_DIR)/ftsystem.c'
|
||||||
else
|
else
|
||||||
FTSYS_SRC='$(BUILD)/ftsystem.c'
|
FTSYS_SRC='$(BUILD_DIR)/ftsystem.c'
|
||||||
|
|
||||||
echo "$as_me:$LINENO: checking whether munmap must be declared" >&5
|
echo "$as_me:$LINENO: checking whether munmap must be declared" >&5
|
||||||
echo $ECHO_N "checking whether munmap must be declared... $ECHO_C" >&6
|
echo $ECHO_N "checking whether munmap must be declared... $ECHO_C" >&6
|
||||||
|
@ -4299,7 +4300,6 @@ done
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# Check whether --with-zlib or --without-zlib was given.
|
# Check whether --with-zlib or --without-zlib was given.
|
||||||
if test "${with_zlib+set}" = set; then
|
if test "${with_zlib+set}" = set; then
|
||||||
withval="$with_zlib"
|
withval="$with_zlib"
|
||||||
|
@ -4472,6 +4472,19 @@ if test x$with_zlib != xno && test -n "$LIBZ"; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
# Check whether --with-old-mac-fonts or --without-old-mac-fonts was given.
|
||||||
|
if test "${with_old_mac_fonts+set}" = set; then
|
||||||
|
withval="$with_old_mac_fonts"
|
||||||
|
|
||||||
|
fi;
|
||||||
|
if test x$with_old_mac_fonts = xyes; then
|
||||||
|
CFLAGS="$CFLAGS -DTARGET_API_MAC_CARBON"
|
||||||
|
LDFLAGS="$LDFLAGS -Xlinker -framework -Xlinker CoreServices \
|
||||||
|
-Xlinker -framework -Xlinker ApplicationServices"
|
||||||
|
else
|
||||||
|
CFLAGS="$CFLAGS -DDARWIN_NO_CARBON"
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -5625,7 +5638,7 @@ test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
|
||||||
case $host in
|
case $host in
|
||||||
*-*-irix6*)
|
*-*-irix6*)
|
||||||
# Find out which ABI we are using.
|
# Find out which ABI we are using.
|
||||||
echo '#line 5628 "configure"' > conftest.$ac_ext
|
echo '#line 5641 "configure"' > conftest.$ac_ext
|
||||||
if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
|
if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
|
||||||
(eval $ac_compile) 2>&5
|
(eval $ac_compile) 2>&5
|
||||||
ac_status=$?
|
ac_status=$?
|
||||||
|
@ -6139,7 +6152,7 @@ chmod -w .
|
||||||
save_CFLAGS="$CFLAGS"
|
save_CFLAGS="$CFLAGS"
|
||||||
CFLAGS="$CFLAGS -o out/conftest2.$ac_objext"
|
CFLAGS="$CFLAGS -o out/conftest2.$ac_objext"
|
||||||
compiler_c_o=no
|
compiler_c_o=no
|
||||||
if { (eval echo configure:6142: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then
|
if { (eval echo configure:6155: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then
|
||||||
# The compiler can only warn and ignore the option if not recognized
|
# The compiler can only warn and ignore the option if not recognized
|
||||||
# So say no if there are warnings
|
# So say no if there are warnings
|
||||||
if test -s out/conftest.err; then
|
if test -s out/conftest.err; then
|
||||||
|
@ -6701,7 +6714,7 @@ else
|
||||||
allow_undefined_flag='-undefined suppress'
|
allow_undefined_flag='-undefined suppress'
|
||||||
;;
|
;;
|
||||||
*) # Darwin 1.3 on
|
*) # Darwin 1.3 on
|
||||||
allow_undefined_flag='-flat_namespace -undefined suppress'
|
# allow_undefined_flag='-undefined suppress'
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
# FIXME: Relying on posixy $() will cause problems for
|
# FIXME: Relying on posixy $() will cause problems for
|
||||||
|
@ -7913,7 +7926,7 @@ else
|
||||||
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
|
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
|
||||||
lt_status=$lt_dlunknown
|
lt_status=$lt_dlunknown
|
||||||
cat > conftest.$ac_ext <<EOF
|
cat > conftest.$ac_ext <<EOF
|
||||||
#line 7916 "configure"
|
#line 7929 "configure"
|
||||||
#include "confdefs.h"
|
#include "confdefs.h"
|
||||||
|
|
||||||
#if HAVE_DLFCN_H
|
#if HAVE_DLFCN_H
|
||||||
|
@ -8011,7 +8024,7 @@ else
|
||||||
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
|
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
|
||||||
lt_status=$lt_dlunknown
|
lt_status=$lt_dlunknown
|
||||||
cat > conftest.$ac_ext <<EOF
|
cat > conftest.$ac_ext <<EOF
|
||||||
#line 8014 "configure"
|
#line 8027 "configure"
|
||||||
#include "confdefs.h"
|
#include "confdefs.h"
|
||||||
|
|
||||||
#if HAVE_DLFCN_H
|
#if HAVE_DLFCN_H
|
||||||
|
@ -8739,7 +8752,7 @@ LIBTOOL='$(SHELL) $(top_builddir)/libtool'
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
ac_config_files="$ac_config_files unix-cc.mk:unix-cc.in unix-def.mk:unix-def.in freetype-config"
|
ac_config_files="$ac_config_files unix-cc.mk:unix-cc.in unix-def.mk:unix-def.in freetype-config freetype2.pc:freetype2.in"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -9250,6 +9263,7 @@ do
|
||||||
"unix-cc.mk" ) CONFIG_FILES="$CONFIG_FILES unix-cc.mk:unix-cc.in" ;;
|
"unix-cc.mk" ) CONFIG_FILES="$CONFIG_FILES unix-cc.mk:unix-cc.in" ;;
|
||||||
"unix-def.mk" ) CONFIG_FILES="$CONFIG_FILES unix-def.mk:unix-def.in" ;;
|
"unix-def.mk" ) CONFIG_FILES="$CONFIG_FILES unix-def.mk:unix-def.in" ;;
|
||||||
"freetype-config" ) CONFIG_FILES="$CONFIG_FILES freetype-config" ;;
|
"freetype-config" ) CONFIG_FILES="$CONFIG_FILES freetype-config" ;;
|
||||||
|
"freetype2.pc" ) CONFIG_FILES="$CONFIG_FILES freetype2.pc:freetype2.in" ;;
|
||||||
"ftconfig.h" ) CONFIG_HEADERS="$CONFIG_HEADERS ftconfig.h:ftconfig.in" ;;
|
"ftconfig.h" ) CONFIG_HEADERS="$CONFIG_HEADERS ftconfig.h:ftconfig.in" ;;
|
||||||
*) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
|
*) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
|
||||||
echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
|
echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
|
||||||
|
|
|
@ -10,7 +10,7 @@ dnl configuration file -- stay in 8.3 limit
|
||||||
AC_CONFIG_HEADER(ftconfig.h:ftconfig.in)
|
AC_CONFIG_HEADER(ftconfig.h:ftconfig.in)
|
||||||
|
|
||||||
dnl Don't forget to update VERSION.DLL!
|
dnl Don't forget to update VERSION.DLL!
|
||||||
version_info='9:3:3'
|
version_info='9:4:3'
|
||||||
AC_SUBST(version_info)
|
AC_SUBST(version_info)
|
||||||
ft_version=`echo $version_info | tr : .`
|
ft_version=`echo $version_info | tr : .`
|
||||||
AC_SUBST(ft_version)
|
AC_SUBST(ft_version)
|
||||||
|
@ -70,9 +70,9 @@ dnl checks for library functions
|
||||||
dnl Here we check whether we can use our mmap file component.
|
dnl Here we check whether we can use our mmap file component.
|
||||||
AC_FUNC_MMAP
|
AC_FUNC_MMAP
|
||||||
if test "$ac_cv_func_mmap_fixed_mapped" != yes; then
|
if test "$ac_cv_func_mmap_fixed_mapped" != yes; then
|
||||||
FTSYS_SRC='$(BASE_)ftsystem.c'
|
FTSYS_SRC='$(BASE_DIR)/ftsystem.c'
|
||||||
else
|
else
|
||||||
FTSYS_SRC='$(BUILD)/ftsystem.c'
|
FTSYS_SRC='$(BUILD_DIR)/ftsystem.c'
|
||||||
|
|
||||||
FT_MUNMAP_DECL
|
FT_MUNMAP_DECL
|
||||||
FT_MUNMAP_PARAM
|
FT_MUNMAP_PARAM
|
||||||
|
@ -81,7 +81,6 @@ AC_SUBST(FTSYS_SRC)
|
||||||
|
|
||||||
AC_CHECK_FUNCS(memcpy memmove)
|
AC_CHECK_FUNCS(memcpy memmove)
|
||||||
|
|
||||||
|
|
||||||
dnl Check for system zlib
|
dnl Check for system zlib
|
||||||
AC_ARG_WITH(zlib,
|
AC_ARG_WITH(zlib,
|
||||||
[ --without-zlib use internal zlib instead of system-wide])
|
[ --without-zlib use internal zlib instead of system-wide])
|
||||||
|
@ -93,19 +92,32 @@ if test x$with_zlib != xno && test -n "$LIBZ"; then
|
||||||
LDFLAGS="$LDFLAGS $LIBZ"
|
LDFLAGS="$LDFLAGS $LIBZ"
|
||||||
SYSTEM_ZLIB=yes
|
SYSTEM_ZLIB=yes
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
dnl Whether to use Mac OS resource-based fonts or not
|
||||||
|
AC_ARG_WITH(old-mac-fonts,
|
||||||
|
[ --with-old-mac-fonts allow Mac resource-based fonts to be used])
|
||||||
|
if test x$with_old_mac_fonts = xyes; then
|
||||||
|
CFLAGS="$CFLAGS -DTARGET_API_MAC_CARBON"
|
||||||
|
LDFLAGS="$LDFLAGS -Xlinker -framework -Xlinker CoreServices \
|
||||||
|
-Xlinker -framework -Xlinker ApplicationServices"
|
||||||
|
else
|
||||||
|
CFLAGS="$CFLAGS -DDARWIN_NO_CARBON"
|
||||||
|
fi
|
||||||
|
|
||||||
AC_SUBST(LIBZ)
|
AC_SUBST(LIBZ)
|
||||||
AC_SUBST(CFLAGS)
|
AC_SUBST(CFLAGS)
|
||||||
AC_SUBST(LDFLAGS)
|
AC_SUBST(LDFLAGS)
|
||||||
AC_SUBST(SYSTEM_ZLIB)
|
AC_SUBST(SYSTEM_ZLIB)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
AC_PROG_LIBTOOL
|
AC_PROG_LIBTOOL
|
||||||
|
|
||||||
dnl create the Unix-specific sub-Makefiles `builds/unix/unix-def.mk'
|
dnl create the Unix-specific sub-Makefiles `builds/unix/unix-def.mk'
|
||||||
dnl and 'builds/unix/unix-cc.mk' that will be used by the build system
|
dnl and 'builds/unix/unix-cc.mk' that will be used by the build system
|
||||||
dnl
|
dnl
|
||||||
AC_CONFIG_FILES([unix-cc.mk:unix-cc.in unix-def.mk:unix-def.in freetype-config])
|
AC_CONFIG_FILES([unix-cc.mk:unix-cc.in
|
||||||
|
unix-def.mk:unix-def.in
|
||||||
|
freetype-config
|
||||||
|
freetype2.pc:freetype2.in])
|
||||||
|
|
||||||
dnl re-generate the Jamfile to use libtool now
|
dnl re-generate the Jamfile to use libtool now
|
||||||
dnl
|
dnl
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000, 2002 by
|
# Copyright 1996-2000, 2002, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -18,7 +18,9 @@ ifeq ($(PLATFORM),ansi)
|
||||||
|
|
||||||
# Note: this test is duplicated in "builds/toplevel.mk".
|
# Note: this test is duplicated in "builds/toplevel.mk".
|
||||||
#
|
#
|
||||||
is_unix := $(strip $(wildcard /sbin/init) $(wildcard /usr/sbin/init) $(wildcard /hurd/auth))
|
is_unix := $(strip $(wildcard /sbin/init) \
|
||||||
|
$(wildcard /usr/sbin/init) \
|
||||||
|
$(wildcard /hurd/auth))
|
||||||
ifneq ($(is_unix),)
|
ifneq ($(is_unix),)
|
||||||
|
|
||||||
PLATFORM := unix
|
PLATFORM := unix
|
||||||
|
@ -27,8 +29,8 @@ ifeq ($(PLATFORM),ansi)
|
||||||
endif # test PLATFORM ansi
|
endif # test PLATFORM ansi
|
||||||
|
|
||||||
ifeq ($(PLATFORM),unix)
|
ifeq ($(PLATFORM),unix)
|
||||||
COPY := cp
|
COPY := cp
|
||||||
DELETE := rm -f
|
DELETE := rm -f
|
||||||
|
|
||||||
# If `devel' is the requested target, we use a special configuration
|
# If `devel' is the requested target, we use a special configuration
|
||||||
# file named `unix-dev.mk'. It disables optimization and libtool.
|
# file named `unix-dev.mk'. It disables optimization and libtool.
|
||||||
|
@ -84,4 +86,5 @@ ifeq ($(PLATFORM),unix)
|
||||||
|
|
||||||
endif # test PLATFORM unix
|
endif # test PLATFORM unix
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -81,7 +81,7 @@ fi
|
||||||
if test "$echo_cflags" = "yes" ; then
|
if test "$echo_cflags" = "yes" ; then
|
||||||
cflags="-I@includedir@/freetype2"
|
cflags="-I@includedir@/freetype2"
|
||||||
if test "@includedir@" != "/usr/include" ; then
|
if test "@includedir@" != "/usr/include" ; then
|
||||||
echo -I@includedir@ $cflags
|
echo $cflags -I@includedir@
|
||||||
else
|
else
|
||||||
echo $cflags
|
echo $cflags
|
||||||
fi
|
fi
|
||||||
|
|
11
reactos/lib/freetype/builds/unix/freetype2.in
Normal file
11
reactos/lib/freetype/builds/unix/freetype2.in
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
prefix=@prefix@
|
||||||
|
exec_prefix=@exec_prefix@
|
||||||
|
libdir=@libdir@
|
||||||
|
includedir=@includedir@
|
||||||
|
|
||||||
|
Name: FreeType 2
|
||||||
|
Description: A free, high-quality, and portable font engine.
|
||||||
|
Version: @ft_version@
|
||||||
|
Requires:
|
||||||
|
Libs: -L${libdir} -lfreetype @LIBZ@
|
||||||
|
Cflags: -I${includedir}/freetype2
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000, 2002 by
|
# Copyright 1996-2000, 2002, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -25,6 +25,7 @@
|
||||||
# Unix installation and deinstallation targets.
|
# Unix installation and deinstallation targets.
|
||||||
install: $(PROJECT_LIBRARY)
|
install: $(PROJECT_LIBRARY)
|
||||||
$(MKINSTALLDIRS) $(DESTDIR)$(libdir) \
|
$(MKINSTALLDIRS) $(DESTDIR)$(libdir) \
|
||||||
|
$(DESTDIR)$(libdir)/pkgconfig \
|
||||||
$(DESTDIR)$(includedir)/freetype2/freetype/config \
|
$(DESTDIR)$(includedir)/freetype2/freetype/config \
|
||||||
$(DESTDIR)$(includedir)/freetype2/freetype/internal \
|
$(DESTDIR)$(includedir)/freetype2/freetype/internal \
|
||||||
$(DESTDIR)$(includedir)/freetype2/freetype/cache \
|
$(DESTDIR)$(includedir)/freetype2/freetype/cache \
|
||||||
|
@ -48,11 +49,14 @@ install: $(PROJECT_LIBRARY)
|
||||||
$(INSTALL_DATA) \
|
$(INSTALL_DATA) \
|
||||||
$$P $(DESTDIR)$(includedir)/freetype2/freetype/cache ; \
|
$$P $(DESTDIR)$(includedir)/freetype2/freetype/cache ; \
|
||||||
done
|
done
|
||||||
$(INSTALL_DATA) $(BUILD)/ft2unix.h $(DESTDIR)$(includedir)/ft2build.h
|
$(INSTALL_DATA) $(BUILD_DIR)/ft2unix.h \
|
||||||
|
$(DESTDIR)$(includedir)/ft2build.h
|
||||||
$(INSTALL_SCRIPT) -m 755 $(OBJ_BUILD)/freetype-config \
|
$(INSTALL_SCRIPT) -m 755 $(OBJ_BUILD)/freetype-config \
|
||||||
$(DESTDIR)$(bindir)/freetype-config
|
$(DESTDIR)$(bindir)/freetype-config
|
||||||
$(INSTALL_SCRIPT) -m 644 $(BUILD)/freetype2.m4 \
|
$(INSTALL_SCRIPT) -m 644 $(BUILD_DIR)/freetype2.m4 \
|
||||||
$(DESTDIR)$(datadir)/aclocal/freetype2.m4
|
$(DESTDIR)$(datadir)/aclocal/freetype2.m4
|
||||||
|
$(INSTALL_SCRIPT) -m 644 $(OBJ_BUILD)/freetype2.pc \
|
||||||
|
$(DESTDIR)$(libdir)/pkgconfig/freetype2.pc
|
||||||
|
|
||||||
|
|
||||||
uninstall:
|
uninstall:
|
||||||
|
@ -69,6 +73,7 @@ uninstall:
|
||||||
-$(DELETE) $(DESTDIR)$(includedir)/ft2build.h
|
-$(DELETE) $(DESTDIR)$(includedir)/ft2build.h
|
||||||
-$(DELETE) $(DESTDIR)$(bindir)/freetype-config
|
-$(DELETE) $(DESTDIR)$(bindir)/freetype-config
|
||||||
-$(DELETE) $(DESTDIR)$(datadir)/aclocal/freetype2.m4
|
-$(DELETE) $(DESTDIR)$(datadir)/aclocal/freetype2.m4
|
||||||
|
-$(DELETE) $(DESTDIR)$(libdir)/pkgconfig/freetype2.pc
|
||||||
|
|
||||||
|
|
||||||
check:
|
check:
|
||||||
|
|
|
@ -2275,15 +2275,28 @@ compiler."
|
||||||
case $version_type in
|
case $version_type in
|
||||||
none) ;;
|
none) ;;
|
||||||
|
|
||||||
darwin)
|
darwin* | rhapsody*)
|
||||||
# Like Linux, but with the current version available in
|
case "$host_os" in
|
||||||
# verstring for coding it into the library header
|
darwin1.[012])
|
||||||
major=.`expr $current - $age`
|
# Like Linux, but with the current version available in
|
||||||
versuffix="$major.$age.$revision"
|
# verstring for coding it into the library header
|
||||||
# Darwin ld doesn't like 0 for these options...
|
major=.`expr $current - $age`
|
||||||
minor_current=`expr $current + 1`
|
versuffix="$major.$age.$revision"
|
||||||
verstring="-compatibility_version $minor_current -current_version $minor_current.$revision"
|
# Darwin ld doesn't like 0 for these options...
|
||||||
;;
|
minor_current=`expr $current + 1`
|
||||||
|
verstring="-compatibility_version $minor_current -current_version $minor_current.$revision"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
# Like Linux, but with the current version available in
|
||||||
|
# verstring for coding it into the library header
|
||||||
|
major=`expr $current - $age`
|
||||||
|
versuffix="$major.$age.$revision"
|
||||||
|
compatage=`expr $age - 1`
|
||||||
|
compatver="$major.$compatage.0"
|
||||||
|
verstring="-compatibility_version $compatver -current_version $versuffix"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
;;
|
||||||
|
|
||||||
freebsd-aout)
|
freebsd-aout)
|
||||||
major=".$current"
|
major=".$current"
|
||||||
|
|
|
@ -1,10 +1,22 @@
|
||||||
# template for Unix-specific compiler definitions
|
#
|
||||||
|
# FreeType 2 template for Unix-specific compiler definitions
|
||||||
#
|
#
|
||||||
|
|
||||||
CC := @CC@
|
# Copyright 1996-2000, 2002, 2003 by
|
||||||
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
|
#
|
||||||
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
# and distributed under the terms of the FreeType project license,
|
||||||
|
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||||
|
# indicate that you have read the license and understand and accept it
|
||||||
|
# fully.
|
||||||
|
|
||||||
|
|
||||||
|
CC := @CC@
|
||||||
|
COMPILER_SEP := $(SEP)
|
||||||
|
|
||||||
ifndef LIBTOOL
|
ifndef LIBTOOL
|
||||||
LIBTOOL := $(BUILD)/libtool
|
LIBTOOL := $(BUILD_DIR)/libtool
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
||||||
|
@ -48,7 +60,7 @@ L := -l
|
||||||
|
|
||||||
# Target flag.
|
# Target flag.
|
||||||
#
|
#
|
||||||
T := -o # Don't remove this comment line! We need the space after `-o'.
|
T := -o$(space)
|
||||||
|
|
||||||
|
|
||||||
# C flags
|
# C flags
|
||||||
|
@ -58,7 +70,7 @@ T := -o # Don't remove this comment line! We need the space after `-o'.
|
||||||
# Use the ANSIFLAGS variable to define the compiler flags used to enfore
|
# Use the ANSIFLAGS variable to define the compiler flags used to enfore
|
||||||
# ANSI compliance.
|
# ANSI compliance.
|
||||||
#
|
#
|
||||||
CFLAGS := -c @XX_CFLAGS@ @CFLAGS@
|
CFLAGS := -c @XX_CFLAGS@ @CPPFLAGS@ @CFLAGS@
|
||||||
|
|
||||||
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
|
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
|
||||||
#
|
#
|
||||||
|
@ -81,4 +93,5 @@ LINK_LIBRARY = $(LIBTOOL) --mode=link $(CCraw) -o $@ $(OBJECTS_LIST) \
|
||||||
-rpath $(libdir) -version-info $(version_info) \
|
-rpath $(libdir) -version-info $(version_info) \
|
||||||
$(LDFLAGS)
|
$(LDFLAGS)
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -18,16 +18,15 @@ ifndef TOP_DIR
|
||||||
endif
|
endif
|
||||||
TOP_DIR := $(shell cd $(TOP_DIR); pwd)
|
TOP_DIR := $(shell cd $(TOP_DIR); pwd)
|
||||||
|
|
||||||
DELETE := @RMF@
|
DELETE := @RMF@
|
||||||
DELDIR := @RMDIR@
|
DELDIR := @RMDIR@
|
||||||
SEP := /
|
SEP := /
|
||||||
HOSTSEP := $(SEP)
|
BUILD_DIR := $(TOP_DIR)/builds/unix
|
||||||
BUILD := $(TOP_DIR)/builds/unix
|
PLATFORM := unix
|
||||||
PLATFORM := unix
|
|
||||||
|
|
||||||
# this is used for `make distclean' and `make install'
|
# this is used for `make distclean' and `make install'
|
||||||
ifndef OBJ_BUILD
|
ifndef OBJ_BUILD
|
||||||
OBJ_BUILD := $(BUILD)
|
OBJ_BUILD := $(BUILD_DIR)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# don't use `:=' here since the path stuff will be included after this file
|
# don't use `:=' here since the path stuff will be included after this file
|
||||||
|
@ -38,7 +37,7 @@ INSTALL := @INSTALL@
|
||||||
INSTALL_DATA := @INSTALL_DATA@
|
INSTALL_DATA := @INSTALL_DATA@
|
||||||
INSTALL_PROGRAM := @INSTALL_PROGRAM@
|
INSTALL_PROGRAM := @INSTALL_PROGRAM@
|
||||||
INSTALL_SCRIPT := @INSTALL_SCRIPT@
|
INSTALL_SCRIPT := @INSTALL_SCRIPT@
|
||||||
MKINSTALLDIRS := $(BUILD)/mkinstalldirs
|
MKINSTALLDIRS := $(BUILD_DIR)/mkinstalldirs
|
||||||
|
|
||||||
DISTCLEAN += $(OBJ_BUILD)/config.cache \
|
DISTCLEAN += $(OBJ_BUILD)/config.cache \
|
||||||
$(OBJ_BUILD)/config.log \
|
$(OBJ_BUILD)/config.log \
|
||||||
|
@ -47,6 +46,7 @@ DISTCLEAN += $(OBJ_BUILD)/config.cache \
|
||||||
$(OBJ_BUILD)/unix-cc.mk \
|
$(OBJ_BUILD)/unix-cc.mk \
|
||||||
$(OBJ_BUILD)/ftconfig.h \
|
$(OBJ_BUILD)/ftconfig.h \
|
||||||
$(OBJ_BUILD)/freetype-config \
|
$(OBJ_BUILD)/freetype-config \
|
||||||
|
$(OBJ_BUILD)/freetype2.pc \
|
||||||
$(LIBTOOL) \
|
$(LIBTOOL) \
|
||||||
$(OBJ_BUILD)/Makefile
|
$(OBJ_BUILD)/Makefile
|
||||||
|
|
||||||
|
@ -96,4 +96,5 @@ SYSTEM_ZLIB := @SYSTEM_ZLIB@
|
||||||
#
|
#
|
||||||
NO_OUTPUT := 2> /dev/null
|
NO_OUTPUT := 2> /dev/null
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -17,9 +17,10 @@
|
||||||
|
|
||||||
|
|
||||||
include $(TOP_DIR)/builds/unix/unixddef.mk
|
include $(TOP_DIR)/builds/unix/unixddef.mk
|
||||||
BUILD := $(TOP_DIR)/builds/devel
|
BUILD_DIR := $(TOP_DIR)/devel
|
||||||
|
|
||||||
include $(TOP_DIR)/builds/compiler/gcc-dev.mk
|
include $(TOP_DIR)/builds/compiler/gcc-dev.mk
|
||||||
include $(TOP_DIR)/builds/link_std.mk
|
include $(TOP_DIR)/builds/link_std.mk
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -20,4 +20,5 @@ include $(TOP_DIR)/builds/unix/unixddef.mk
|
||||||
include $(TOP_DIR)/builds/compiler/unix-lcc.mk
|
include $(TOP_DIR)/builds/compiler/unix-lcc.mk
|
||||||
include $(TOP_DIR)/builds/link_std.mk
|
include $(TOP_DIR)/builds/link_std.mk
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -19,12 +19,11 @@ ifndef TOP_DIR
|
||||||
endif
|
endif
|
||||||
TOP_DIR := $(shell cd $(TOP_DIR); pwd)
|
TOP_DIR := $(shell cd $(TOP_DIR); pwd)
|
||||||
|
|
||||||
DELETE := rm -f
|
DELETE := rm -f
|
||||||
SEP := /
|
SEP := /
|
||||||
HOSTSEP := $(SEP)
|
|
||||||
|
|
||||||
# we use a special devel ftoption.h
|
# we use a special devel ftoption.h
|
||||||
BUILD := $(TOP_DIR)/builds/devel
|
BUILD_DIR := $(TOP_DIR)/devel
|
||||||
|
|
||||||
# do not set the platform to `unix', or libtool will trick you
|
# do not set the platform to `unix', or libtool will trick you
|
||||||
PLATFORM := unixdev
|
PLATFORM := unixdev
|
||||||
|
@ -50,7 +49,7 @@ LIBRARY := lib$(PROJECT)
|
||||||
LIB_DIR := $(OBJ_DIR)
|
LIB_DIR := $(OBJ_DIR)
|
||||||
|
|
||||||
|
|
||||||
#
|
|
||||||
NO_OUTPUT := 2> /dev/null
|
NO_OUTPUT := 2> /dev/null
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -46,16 +46,102 @@ endif # test PLATFORM ansi
|
||||||
|
|
||||||
ifeq ($(PLATFORM),win32)
|
ifeq ($(PLATFORM),win32)
|
||||||
|
|
||||||
DELETE := del
|
DELETE := del
|
||||||
COPY := copy
|
COPY := copy
|
||||||
|
SEP := $(BACKSLASH)
|
||||||
|
|
||||||
# gcc Makefile by default
|
# gcc Makefile by default
|
||||||
CONFIG_FILE := w32-gcc.mk
|
CONFIG_FILE := w32-gcc.mk
|
||||||
SEP := /
|
|
||||||
ifeq ($(firstword $(CC)),cc)
|
ifeq ($(firstword $(CC)),cc)
|
||||||
CC := gcc
|
CC := gcc
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifneq ($(findstring list,$(MAKECMDGOALS)),) # test for the "list" target
|
ifneq ($(findstring list,$(MAKECMDGOALS)),) # test for the "list" target
|
||||||
dump_target_list:
|
dump_target_list:
|
||||||
@echo
|
@echo ÿ
|
||||||
|
@echo $(PROJECT_TITLE) build system -- supported compilers
|
||||||
|
@echo ÿ
|
||||||
|
@echo Several command-line compilers are supported on Win32:
|
||||||
|
@echo ÿ
|
||||||
|
@echo ÿÿmake setupÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿgcc (with Mingw)
|
||||||
|
@echo ÿÿmake setup visualcÿÿÿÿÿÿÿÿÿÿÿÿÿMicrosoft Visual C++
|
||||||
|
@echo ÿÿmake setup bcc32ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿBorland C/C++
|
||||||
|
@echo ÿÿmake setup lccÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿWin32-LCC
|
||||||
|
@echo ÿÿmake setup intelcÿÿÿÿÿÿÿÿÿÿÿÿÿÿIntel C/C++
|
||||||
|
@echo ÿ
|
||||||
|
|
||||||
|
setup: dump_target_list
|
||||||
|
.PHONY: dump_target_list list
|
||||||
|
else
|
||||||
|
setup: dos_setup
|
||||||
|
endif
|
||||||
|
|
||||||
|
# additionally, we provide hooks for various other compilers
|
||||||
|
#
|
||||||
|
ifneq ($(findstring visualc,$(MAKECMDGOALS)),) # Visual C/C++
|
||||||
|
CONFIG_FILE := w32-vcc.mk
|
||||||
|
CC := cl
|
||||||
|
visualc: setup
|
||||||
|
.PHONY: visualc
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifneq ($(findstring intelc,$(MAKECMDGOALS)),) # Intel C/C++
|
||||||
|
CONFIG_FILE := w32-intl.mk
|
||||||
|
CC := cl
|
||||||
|
visualc: setup
|
||||||
|
.PHONY: intelc
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifneq ($(findstring watcom,$(MAKECMDGOALS)),) # Watcom C/C++
|
||||||
|
CONFIG_FILE := w32-wat.mk
|
||||||
|
CC := wcc386
|
||||||
|
watcom: setup
|
||||||
|
.PHONY: watcom
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifneq ($(findstring visualage,$(MAKECMDGOALS)),) # Visual Age C++
|
||||||
|
CONFIG_FILE := w32-icc.mk
|
||||||
|
CC := icc
|
||||||
|
visualage: setup
|
||||||
|
.PHONY: visualage
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifneq ($(findstring lcc,$(MAKECMDGOALS)),) # LCC-Win32
|
||||||
|
CONFIG_FILE := w32-lcc.mk
|
||||||
|
CC := lcc
|
||||||
|
lcc: setup
|
||||||
|
.PHONY: lcc
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifneq ($(findstring mingw32,$(MAKECMDGOALS)),) # mingw32
|
||||||
|
CONFIG_FILE := w32-mingw32.mk
|
||||||
|
CC := gcc
|
||||||
|
mingw32: setup
|
||||||
|
.PHONY: mingw32
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifneq ($(findstring bcc32,$(MAKECMDGOALS)),) # Borland C++
|
||||||
|
CONFIG_FILE := w32-bcc.mk
|
||||||
|
CC := bcc32
|
||||||
|
bcc32: setup
|
||||||
|
.PHONY: bcc32
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifneq ($(findstring devel-bcc,$(MAKECMDGOALS)),) # development target
|
||||||
|
CONFIG_FILE := w32-bccd.mk
|
||||||
|
CC := bcc32
|
||||||
|
devel-bcc: setup
|
||||||
|
.PHONY: devel-bcc
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifneq ($(findstring devel-gcc,$(MAKECMDGOALS)),) # development target
|
||||||
|
CONFIG_FILE := w32-dev.mk
|
||||||
|
CC := gcc
|
||||||
|
devel-gcc: setup
|
||||||
|
.PHONY: devel-gcc
|
||||||
|
endif
|
||||||
|
|
||||||
|
endif # test PLATFORM win32
|
||||||
|
|
||||||
|
|
||||||
|
# EOF
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -13,11 +13,11 @@
|
||||||
# fully.
|
# fully.
|
||||||
|
|
||||||
|
|
||||||
SEP := /
|
|
||||||
include $(TOP_DIR)/builds/win32/win32-def.mk
|
include $(TOP_DIR)/builds/win32/win32-def.mk
|
||||||
include $(TOP_DIR)/builds/compiler/bcc.mk
|
include $(TOP_DIR)/builds/compiler/bcc.mk
|
||||||
|
|
||||||
# include linking instructions
|
# include linking instructions
|
||||||
include $(TOP_DIR)/builds/link_dos.mk
|
include $(TOP_DIR)/builds/link_dos.mk
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -13,14 +13,13 @@
|
||||||
# fully.
|
# fully.
|
||||||
|
|
||||||
|
|
||||||
SEP := /
|
|
||||||
|
|
||||||
include $(TOP_DIR)/builds/win32/win32-def.mk
|
include $(TOP_DIR)/builds/win32/win32-def.mk
|
||||||
BUILD := $(TOP_DIR)/builds/devel
|
BUILD_DIR := $(TOP_DIR)/devel
|
||||||
|
|
||||||
include $(TOP_DIR)/builds/compiler/bcc-dev.mk
|
include $(TOP_DIR)/builds/compiler/bcc-dev.mk
|
||||||
|
|
||||||
# include linking instructions
|
# include linking instructions
|
||||||
include $(TOP_DIR)/builds/link_dos.mk
|
include $(TOP_DIR)/builds/link_dos.mk
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -23,10 +23,8 @@ ifndef TOP_DIR
|
||||||
TOP_DIR := .
|
TOP_DIR := .
|
||||||
endif
|
endif
|
||||||
|
|
||||||
SEP := /
|
|
||||||
|
|
||||||
include $(TOP_DIR)/builds/win32/win32-def.mk
|
include $(TOP_DIR)/builds/win32/win32-def.mk
|
||||||
BUILD := $(TOP_DIR)/builds/devel
|
BUILD_DIR := $(TOP_DIR)/devel
|
||||||
|
|
||||||
include $(TOP_DIR)/builds/compiler/gcc-dev.mk
|
include $(TOP_DIR)/builds/compiler/gcc-dev.mk
|
||||||
|
|
||||||
|
@ -34,5 +32,4 @@ include $(TOP_DIR)/builds/compiler/gcc-dev.mk
|
||||||
include $(TOP_DIR)/builds/link_dos.mk
|
include $(TOP_DIR)/builds/link_dos.mk
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -13,10 +13,6 @@
|
||||||
# fully.
|
# fully.
|
||||||
|
|
||||||
|
|
||||||
# the separator must be set before including win32-def
|
|
||||||
# as it defaults to "\" on Win32
|
|
||||||
SEP := /
|
|
||||||
|
|
||||||
# include Win32-specific definitions
|
# include Win32-specific definitions
|
||||||
include $(TOP_DIR)/builds/win32/win32-def.mk
|
include $(TOP_DIR)/builds/win32/win32-def.mk
|
||||||
|
|
||||||
|
@ -26,4 +22,5 @@ include $(TOP_DIR)/builds/compiler/gcc.mk
|
||||||
# include linking instructions
|
# include linking instructions
|
||||||
include $(TOP_DIR)/builds/link_dos.mk
|
include $(TOP_DIR)/builds/link_dos.mk
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -19,4 +19,5 @@ include $(TOP_DIR)/builds/compiler/visualage.mk
|
||||||
# include linking instructions
|
# include linking instructions
|
||||||
include $(TOP_DIR)/builds/link_dos.mk
|
include $(TOP_DIR)/builds/link_dos.mk
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -13,11 +13,11 @@
|
||||||
# fully.
|
# fully.
|
||||||
|
|
||||||
|
|
||||||
SEP := /
|
|
||||||
include $(TOP_DIR)/builds/win32/win32-def.mk
|
include $(TOP_DIR)/builds/win32/win32-def.mk
|
||||||
include $(TOP_DIR)/builds/compiler/intelc.mk
|
include $(TOP_DIR)/builds/compiler/intelc.mk
|
||||||
|
|
||||||
# include linking instructions
|
# include linking instructions
|
||||||
include $(TOP_DIR)/builds/link_dos.mk
|
include $(TOP_DIR)/builds/link_dos.mk
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -13,10 +13,6 @@
|
||||||
# fully.
|
# fully.
|
||||||
|
|
||||||
|
|
||||||
# the separator must be set before including win32-def
|
|
||||||
# as it defaults to "\" on Win32
|
|
||||||
SEP := /
|
|
||||||
|
|
||||||
# include Win32-specific definitions
|
# include Win32-specific definitions
|
||||||
include $(TOP_DIR)/builds/win32/win32-def.mk
|
include $(TOP_DIR)/builds/win32/win32-def.mk
|
||||||
|
|
||||||
|
@ -28,4 +24,5 @@ include $(TOP_DIR)/builds/compiler/gcc.mk
|
||||||
# include linking instructions
|
# include linking instructions
|
||||||
include $(TOP_DIR)/builds/link_dos.mk
|
include $(TOP_DIR)/builds/link_dos.mk
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -13,11 +13,11 @@
|
||||||
# fully.
|
# fully.
|
||||||
|
|
||||||
|
|
||||||
SEP := /
|
|
||||||
include $(TOP_DIR)/builds/win32/win32-def.mk
|
include $(TOP_DIR)/builds/win32/win32-def.mk
|
||||||
include $(TOP_DIR)/builds/compiler/visualc.mk
|
include $(TOP_DIR)/builds/compiler/visualc.mk
|
||||||
|
|
||||||
# include linking instructions
|
# include linking instructions
|
||||||
include $(TOP_DIR)/builds/link_dos.mk
|
include $(TOP_DIR)/builds/link_dos.mk
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -13,14 +13,11 @@
|
||||||
# fully.
|
# fully.
|
||||||
|
|
||||||
|
|
||||||
SEP := /
|
|
||||||
ISEP := $(strip \ )
|
|
||||||
|
|
||||||
include $(TOP_DIR)/builds/win32/win32-def.mk
|
include $(TOP_DIR)/builds/win32/win32-def.mk
|
||||||
include $(TOP_DIR)/builds/compiler/watcom.mk
|
include $(TOP_DIR)/builds/compiler/watcom.mk
|
||||||
|
|
||||||
# include linking instructions
|
# include linking instructions
|
||||||
include $(TOP_DIR)/builds/link_dos.mk
|
include $(TOP_DIR)/builds/link_dos.mk
|
||||||
|
|
||||||
# EOF
|
|
||||||
|
|
||||||
|
# EOF
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -13,17 +13,10 @@
|
||||||
# fully.
|
# fully.
|
||||||
|
|
||||||
|
|
||||||
DELETE := del
|
DELETE := del
|
||||||
HOSTSEP := $(strip \ )
|
SEP := $(strip \ )
|
||||||
BUILD := $(TOP_DIR)$(SEP)builds$(SEP)win32
|
BUILD_DIR := $(TOP_DIR)/builds/win32
|
||||||
PLATFORM := win32
|
PLATFORM := win32
|
||||||
|
|
||||||
# by default, we use "\" as a separator on Win32
|
|
||||||
# but certain compilers accept "/" as well
|
|
||||||
#
|
|
||||||
ifndef SEP
|
|
||||||
SEP := $(HOSTSEP)
|
|
||||||
endif
|
|
||||||
|
|
||||||
|
|
||||||
# The directory where all object files are placed.
|
# The directory where all object files are placed.
|
||||||
|
@ -36,7 +29,7 @@ endif
|
||||||
# make -f %TOP_DIR%/Makefile
|
# make -f %TOP_DIR%/Makefile
|
||||||
#
|
#
|
||||||
ifndef OBJ_DIR
|
ifndef OBJ_DIR
|
||||||
OBJ_DIR := $(TOP_DIR)$(SEP)objs
|
OBJ_DIR := $(TOP_DIR)/objs
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
||||||
|
@ -58,4 +51,5 @@ LIBRARY := $(PROJECT)
|
||||||
#
|
#
|
||||||
NO_OUTPUT = 2> nul
|
NO_OUTPUT = 2> nul
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
# Copyright 1996-2000 by
|
# Copyright 1996-2000, 2003 by
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||||
#
|
#
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
# This file is part of the FreeType project, and may only be used, modified,
|
||||||
|
@ -13,10 +13,6 @@
|
||||||
# fully.
|
# fully.
|
||||||
|
|
||||||
|
|
||||||
# the separator must be set before including win32-def
|
|
||||||
# as it defaults to "\" on Win32
|
|
||||||
SEP := /
|
|
||||||
|
|
||||||
# include Win32-specific definitions
|
# include Win32-specific definitions
|
||||||
include $(TOP_DIR)/builds/win32/win32-def.mk
|
include $(TOP_DIR)/builds/win32/win32-def.mk
|
||||||
|
|
||||||
|
@ -28,4 +24,5 @@ include $(TOP_DIR)/builds/compiler/gcc.mk
|
||||||
# include linking instructions
|
# include linking instructions
|
||||||
include $(TOP_DIR)/builds/link_dos.mk
|
include $(TOP_DIR)/builds/link_dos.mk
|
||||||
|
|
||||||
|
|
||||||
# EOF
|
# EOF
|
||||||
|
|
12
reactos/lib/freetype/configure
vendored
12
reactos/lib/freetype/configure
vendored
|
@ -46,11 +46,13 @@ abs_ft2_dir=`cd "$ft2_dir" && pwd`
|
||||||
# build a dummy Makefile if we are not building in the source tree
|
# build a dummy Makefile if we are not building in the source tree
|
||||||
|
|
||||||
if test "$abs_curr_dir" != "$abs_ft2_dir"; then
|
if test "$abs_curr_dir" != "$abs_ft2_dir"; then
|
||||||
echo "OBJ_DIR=$abs_curr_dir" > Makefile
|
mkdir reference
|
||||||
echo "TOP_DIR=$abs_ft2_dir" >> Makefile
|
echo "TOP_DIR=$abs_ft2_dir" > Makefile
|
||||||
echo "OBJ_BUILD=$abs_curr_dir" >> Makefile
|
echo "OBJ_DIR=$abs_curr_dir" >> Makefile
|
||||||
echo "LIBTOOL=$abs_curr_dir/libtool" >> Makefile
|
echo "OBJ_BUILD=$abs_curr_dir" >> Makefile
|
||||||
echo "include $abs_ft2_dir/Makefile" >> Makefile
|
echo "DOC_DIR=$abs_curr_dir/reference" >> Makefile
|
||||||
|
echo "LIBTOOL=$abs_curr_dir/libtool" >> Makefile
|
||||||
|
echo "include $abs_ft2_dir/Makefile" >> Makefile
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# call make
|
# call make
|
||||||
|
|
|
@ -1,73 +0,0 @@
|
||||||
#
|
|
||||||
# FreeType 2 build system -- top-level Makefile for OpenVMS
|
|
||||||
#
|
|
||||||
|
|
||||||
|
|
||||||
# Copyright 2001 by
|
|
||||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
|
||||||
#
|
|
||||||
# This file is part of the FreeType project, and may only be used, modified,
|
|
||||||
# and distributed under the terms of the FreeType project license,
|
|
||||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
|
||||||
# indicate that you have read the license and understand and accept it
|
|
||||||
# fully.
|
|
||||||
|
|
||||||
|
|
||||||
all :
|
|
||||||
define freetype [--.include.freetype]
|
|
||||||
define psaux [-.psaux]
|
|
||||||
define autohint [-.autohint]
|
|
||||||
define base [-.base]
|
|
||||||
define cache [-.cache]
|
|
||||||
define cff [-.cff]
|
|
||||||
define cid [-.cid]
|
|
||||||
define pcf [-.pcf]
|
|
||||||
define psnames [-.psnames]
|
|
||||||
define raster [-.raster]
|
|
||||||
define sfnt [-.sfnt]
|
|
||||||
define smooth [-.smooth]
|
|
||||||
define truetype [-.truetype]
|
|
||||||
define type1 [-.type1]
|
|
||||||
define winfonts [-.winfonts]
|
|
||||||
if f$search("lib.dir") .eqs. "" then create/directory [.lib]
|
|
||||||
set default [.builds.vms]
|
|
||||||
$(MMS)$(MMSQUALIFIERS)
|
|
||||||
set default [--.src.autohint]
|
|
||||||
$(MMS)$(MMSQUALIFIERS)
|
|
||||||
set default [-.base]
|
|
||||||
$(MMS)$(MMSQUALIFIERS)
|
|
||||||
set default [-.bdf]
|
|
||||||
$(MMS)$(MMSQUALIFIERS)
|
|
||||||
set default [-.cache]
|
|
||||||
$(MMS)$(MMSQUALIFIERS)
|
|
||||||
set default [-.cff]
|
|
||||||
$(MMS)$(MMSQUALIFIERS)
|
|
||||||
set default [-.cid]
|
|
||||||
$(MMS)$(MMSQUALIFIERS)
|
|
||||||
set default [-.pcf]
|
|
||||||
$(MMS)$(MMSQUALIFIERS)
|
|
||||||
set default [-.pfr]
|
|
||||||
$(MMS)$(MMSQUALIFIERS)
|
|
||||||
set default [-.psaux]
|
|
||||||
$(MMS)$(MMSQUALIFIERS)
|
|
||||||
set default [-.pshinter]
|
|
||||||
$(MMS)$(MMSQUALIFIERS)
|
|
||||||
set default [-.psnames]
|
|
||||||
$(MMS)$(MMSQUALIFIERS)
|
|
||||||
set default [-.raster]
|
|
||||||
$(MMS)$(MMSQUALIFIERS)
|
|
||||||
set default [-.sfnt]
|
|
||||||
$(MMS)$(MMSQUALIFIERS)
|
|
||||||
set default [-.smooth]
|
|
||||||
$(MMS)$(MMSQUALIFIERS)
|
|
||||||
set default [-.truetype]
|
|
||||||
$(MMS)$(MMSQUALIFIERS)
|
|
||||||
set default [-.type1]
|
|
||||||
$(MMS)$(MMSQUALIFIERS)
|
|
||||||
set default [-.type42]
|
|
||||||
$(MMS)$(MMSQUALIFIERS)
|
|
||||||
set default [-.winfonts]
|
|
||||||
$(MMS)$(MMSQUALIFIERS)
|
|
||||||
set default [--]
|
|
||||||
|
|
||||||
# EOF
|
|
|
@ -5,7 +5,7 @@
|
||||||
/* FreeType 2 build and setup macros. */
|
/* FreeType 2 build and setup macros. */
|
||||||
/* (Generic version) */
|
/* (Generic version) */
|
||||||
/* */
|
/* */
|
||||||
/* Copyright 1996-2001 by */
|
/* Copyright 1996-2001, 2003 by */
|
||||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||||
/* */
|
/* */
|
||||||
/* This file is part of the FreeType project, and may only be used, */
|
/* This file is part of the FreeType project, and may only be used, */
|
||||||
|
@ -18,14 +18,14 @@
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* this is a development version of <ft2build.h> that is used
|
* This is a development version of <ft2build.h> that is used
|
||||||
* to build the library in debug mode. Its only difference with
|
* to build the library in debug mode. Its only difference with
|
||||||
* the reference is that is forces the use of the local "ftoption.h"
|
* the reference is that it forces the use of the local "ftoption.h"
|
||||||
* which contains different settings for all configuration macros
|
* which contains different settings for all configuration macros.
|
||||||
*
|
*
|
||||||
* to use it, you must define the environment variable FT2_BUILD_INCLUDE
|
* To use it, you must define the environment variable FT2_BUILD_INCLUDE
|
||||||
* to point to the directory containing these two files ("ft2build.h" and
|
* to point to the directory containing these two files ("ft2build.h" and
|
||||||
* "ftoption.h"), then invoke Jam as usual
|
* "ftoption.h"), then invoke Jam as usual.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef __FT2_BUILD_GENERIC_H__
|
#ifndef __FT2_BUILD_GENERIC_H__
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
/* */
|
/* */
|
||||||
/* User-selectable configuration macros (specification only). */
|
/* User-selectable configuration macros (specification only). */
|
||||||
/* */
|
/* */
|
||||||
/* Copyright 1996-2001, 2002 by */
|
/* Copyright 1996-2001, 2002, 2003 by */
|
||||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||||
/* */
|
/* */
|
||||||
/* This file is part of the FreeType project, and may only be used, */
|
/* This file is part of the FreeType project, and may only be used, */
|
||||||
|
@ -22,11 +22,6 @@
|
||||||
|
|
||||||
#include <ft2build.h>
|
#include <ft2build.h>
|
||||||
|
|
||||||
/*
|
|
||||||
* this is a special developer version of "ftoption.h", it is used
|
|
||||||
* to define all debugging options, as well as the TrueType bytecode
|
|
||||||
* interpreter
|
|
||||||
*/
|
|
||||||
|
|
||||||
FT_BEGIN_HEADER
|
FT_BEGIN_HEADER
|
||||||
|
|
||||||
|
@ -86,16 +81,16 @@ FT_BEGIN_HEADER
|
||||||
/* by FreeType to speed up some computations. However, this will create */
|
/* by FreeType to speed up some computations. However, this will create */
|
||||||
/* some problems when compiling the library in strict ANSI mode. */
|
/* some problems when compiling the library in strict ANSI mode. */
|
||||||
/* */
|
/* */
|
||||||
/* For this reason, the use of 64-bit ints is normally disabled when */
|
/* For this reason, the use of 64-bit integers is normally disabled when */
|
||||||
/* the __STDC__ macro is defined. You can however disable this by */
|
/* the __STDC__ macro is defined. You can however disable this by */
|
||||||
/* defining here the macro FT_CONFIG_OPTION_FORCE_INT64. */
|
/* defining the macro FT_CONFIG_OPTION_FORCE_INT64 here. */
|
||||||
/* */
|
/* */
|
||||||
/* For most compilers, this will only create compilation warnings */
|
/* For most compilers, this will only create compilation warnings when */
|
||||||
/* when building the library. */
|
/* building the library. */
|
||||||
/* */
|
/* */
|
||||||
/* ObNote: The compiler-specific 64-bit integers are detected in the */
|
/* ObNote: The compiler-specific 64-bit integers are detected in the */
|
||||||
/* file "ftconfig.h" either statically, or through Autoconf */
|
/* file "ftconfig.h" either statically or through the */
|
||||||
/* on platforms that support it. */
|
/* `configure' script on supported platforms. */
|
||||||
/* */
|
/* */
|
||||||
#undef FT_CONFIG_OPTION_FORCE_INT64
|
#undef FT_CONFIG_OPTION_FORCE_INT64
|
||||||
|
|
||||||
|
@ -105,11 +100,11 @@ FT_BEGIN_HEADER
|
||||||
/* Gzip-compressed file support. */
|
/* Gzip-compressed file support. */
|
||||||
/* */
|
/* */
|
||||||
/* FreeType now handles font files that have been compressed with the */
|
/* FreeType now handles font files that have been compressed with the */
|
||||||
/* 'gzip' program. This is mostly used to parse many of the PCF files */
|
/* 'gzip' program. This is mostly used to parse many of the PCF files */
|
||||||
/* that come with XFree86. The implementation uses 'zlib' to */
|
/* that come with XFree86. The implementation uses `zlib' to */
|
||||||
/* partially uncompress the file on the fly (see src/base/ftgzip.c). */
|
/* partially uncompress the file on the fly (see src/base/ftgzip.c). */
|
||||||
/* */
|
/* */
|
||||||
/* Define this macro if you want to enable this "feature". Note that */
|
/* Define this macro if you want to enable this "feature". Note that */
|
||||||
/* this will however force you to link the zlib to any program that */
|
/* this will however force you to link the zlib to any program that */
|
||||||
/* also uses FreeType. */
|
/* also uses FreeType. */
|
||||||
/* */
|
/* */
|
||||||
|
@ -122,17 +117,17 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
/* This macro is only used when FT_CONFIG_OPTION_USE_ZLIB is defined. */
|
/* This macro is only used when FT_CONFIG_OPTION_USE_ZLIB is defined. */
|
||||||
/* It allows FreeType's "ftgzip" component to link to the system's */
|
/* It allows FreeType's "ftgzip" component to link to the system's */
|
||||||
/* installation of the ZLib library. This is useful on systems like */
|
/* installation of the ZLib library. This is useful on systems like */
|
||||||
/* Unix or VMS where it generally is already available. */
|
/* Unix or VMS where it generally is already available. */
|
||||||
/* */
|
/* */
|
||||||
/* If you let it undefined, the component will use its own copy */
|
/* If you let it undefined, the component will use its own copy */
|
||||||
/* of the zlib sources instead. These have been modified to be */
|
/* of the zlib sources instead. These have been modified to be */
|
||||||
/* included directly within the component and *not* export external */
|
/* included directly within the component and *not* export external */
|
||||||
/* function names. This allows you to link any program with FreeType */
|
/* function names. This allows you to link any program with FreeType */
|
||||||
/* _and_ ZLib without linking conflicts. */
|
/* _and_ ZLib without linking conflicts. */
|
||||||
/* */
|
/* */
|
||||||
/* do not #undef this macro here, since the build system might */
|
/* Do not #undef this macro here since the build system might define */
|
||||||
/* define for certain configurations */
|
/* it for certain configurations only. */
|
||||||
/* */
|
/* */
|
||||||
/* #define FT_CONFIG_OPTION_SYSTEM_ZLIB */
|
/* #define FT_CONFIG_OPTION_SYSTEM_ZLIB */
|
||||||
|
|
||||||
|
@ -172,6 +167,9 @@ FT_BEGIN_HEADER
|
||||||
/* will be later automatically defined as `extern return_type' to */
|
/* will be later automatically defined as `extern return_type' to */
|
||||||
/* allow normal compilation. */
|
/* allow normal compilation. */
|
||||||
/* */
|
/* */
|
||||||
|
/* Do not #undef these macros here since the build system might define */
|
||||||
|
/* them for certain configurations only. */
|
||||||
|
/* */
|
||||||
/* #define FT_EXPORT(x) extern x */
|
/* #define FT_EXPORT(x) extern x */
|
||||||
/* #define FT_EXPORT_DEF(x) x */
|
/* #define FT_EXPORT_DEF(x) x */
|
||||||
|
|
||||||
|
@ -219,6 +217,19 @@ FT_BEGIN_HEADER
|
||||||
#define FT_CONFIG_OPTION_ADOBE_GLYPH_LIST
|
#define FT_CONFIG_OPTION_ADOBE_GLYPH_LIST
|
||||||
|
|
||||||
|
|
||||||
|
/*************************************************************************/
|
||||||
|
/* */
|
||||||
|
/* Support for Mac fonts */
|
||||||
|
/* */
|
||||||
|
/* Define this macro if you want support for outline fonts in Mac */
|
||||||
|
/* format (mac dfont, mac resource, macbinary containing a mac */
|
||||||
|
/* resource) on non-Mac platforms. */
|
||||||
|
/* */
|
||||||
|
/* Note that the `FOND' resource isn't checked. */
|
||||||
|
/* */
|
||||||
|
#define FT_CONFIG_OPTION_MAC_FONTS
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* Allow the use of FT_Incremental_Interface to load typefaces that */
|
/* Allow the use of FT_Incremental_Interface to load typefaces that */
|
||||||
|
@ -226,7 +237,7 @@ FT_BEGIN_HEADER
|
||||||
/* This allows FreeType to be used with the PostScript language, using */
|
/* This allows FreeType to be used with the PostScript language, using */
|
||||||
/* the GhostScript interpreter. */
|
/* the GhostScript interpreter. */
|
||||||
/* */
|
/* */
|
||||||
/* #define FT_CONFIG_OPTION_INCREMENTAL */
|
/* #define FT_CONFIG_OPTION_INCREMENTAL */
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
|
@ -234,7 +245,7 @@ FT_BEGIN_HEADER
|
||||||
/* The size in bytes of the render pool used by the scan-line converter */
|
/* The size in bytes of the render pool used by the scan-line converter */
|
||||||
/* to do all of its work. */
|
/* to do all of its work. */
|
||||||
/* */
|
/* */
|
||||||
/* This must be greater than 4kByte. */
|
/* This must be greater than 4KByte. */
|
||||||
/* */
|
/* */
|
||||||
#define FT_RENDER_POOL_SIZE 16384L
|
#define FT_RENDER_POOL_SIZE 16384L
|
||||||
|
|
||||||
|
@ -263,8 +274,11 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
/* Don't define any of these macros to compile in `release' mode! */
|
/* Don't define any of these macros to compile in `release' mode! */
|
||||||
/* */
|
/* */
|
||||||
#define FT_DEBUG_LEVEL_ERROR
|
/* Do not #undef these macros here since the build system might define */
|
||||||
#define FT_DEBUG_LEVEL_TRACE
|
/* them for certain configurations only. */
|
||||||
|
/* */
|
||||||
|
#define FT_DEBUG_LEVEL_ERROR
|
||||||
|
#define FT_DEBUG_LEVEL_TRACE
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
|
@ -277,10 +291,12 @@ FT_BEGIN_HEADER
|
||||||
/* should define FT_DEBUG_MEMORY here. */
|
/* should define FT_DEBUG_MEMORY here. */
|
||||||
/* */
|
/* */
|
||||||
/* Note that the memory debugger is only activated at runtime when */
|
/* Note that the memory debugger is only activated at runtime when */
|
||||||
/* when the _environment_ variable "FT_DEBUG_MEMORY" is also defined! */
|
/* when the _environment_ variable "FT2_DEBUG_MEMORY" is defined also! */
|
||||||
/* */
|
/* */
|
||||||
#define FT_DEBUG_MEMORY
|
/* Do not #undef this macro here since the build system might define */
|
||||||
|
/* it for certain configurations only. */
|
||||||
|
/* */
|
||||||
|
/* #define FT_DEBUG_MEMORY */
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
|
@ -380,10 +396,22 @@ FT_BEGIN_HEADER
|
||||||
/* By undefining this, you will only compile the code necessary to load */
|
/* By undefining this, you will only compile the code necessary to load */
|
||||||
/* TrueType glyphs without hinting. */
|
/* TrueType glyphs without hinting. */
|
||||||
/* */
|
/* */
|
||||||
/* do not #undef this macro here, since the build system might */
|
/* Do not #undef this macro here, since the build system might */
|
||||||
/* define for certain configurations */
|
/* define it for certain configurations only. */
|
||||||
/* */
|
/* */
|
||||||
#define TT_CONFIG_OPTION_BYTECODE_INTERPRETER
|
#define TT_CONFIG_OPTION_BYTECODE_INTERPRETER
|
||||||
|
|
||||||
|
|
||||||
|
/*************************************************************************/
|
||||||
|
/* */
|
||||||
|
/* Define TT_CONFIG_OPTION_UNPATENTED_HINTING (in addition to */
|
||||||
|
/* TT_CONFIG_OPTION_BYTECODE_INTERPRETER) to compile the unpatented */
|
||||||
|
/* work-around hinting system. Note that for the moment, the algorithm */
|
||||||
|
/* is only used when selected at runtime through the parameter tag */
|
||||||
|
/* FT_PARAM_TAG_UNPATENTED_HINTING; or when the debug hook */
|
||||||
|
/* FT_DEBUG_HOOK_UNPATENTED_HINTING is globally actived */
|
||||||
|
/* */
|
||||||
|
#define TT_CONFIG_OPTION_UNPATENTED_HINTING
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
|
@ -475,21 +503,21 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* the FT_CONFIG_OPTION_CHESTER_XXXX macros are used to toggle some recent
|
* The FT_CONFIG_OPTION_CHESTER_XXXX macros are used to toggle some recent
|
||||||
* improvements to the auto-hinter contributed by David Chester. They will
|
* improvements to the auto-hinter contributed by David Chester. They will
|
||||||
* most likely disappear completely in the next release. For now, you should
|
* most likely disappear completely in the next release. For now, you
|
||||||
* always keep them defined
|
* should always keep them defined.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
#define FT_CONFIG_OPTION_CHESTER_HINTS
|
#define FT_CONFIG_OPTION_CHESTER_HINTS
|
||||||
|
|
||||||
#ifdef FT_CONFIG_OPTION_CHESTER_HINTS
|
#ifdef FT_CONFIG_OPTION_CHESTER_HINTS
|
||||||
|
|
||||||
# define FT_CONFIG_CHESTER_SMALL_F
|
#define FT_CONFIG_CHESTER_SMALL_F
|
||||||
# define FT_CONFIG_CHESTER_ASCENDER
|
#define FT_CONFIG_CHESTER_ASCENDER
|
||||||
# define FT_CONFIG_CHESTER_SERIF
|
#define FT_CONFIG_CHESTER_SERIF
|
||||||
# define FT_CONFIG_CHESTER_STEM
|
#define FT_CONFIG_CHESTER_STEM
|
||||||
# define FT_CONFIG_CHESTER_BLUE_SCALE
|
#define FT_CONFIG_CHESTER_BLUE_SCALE
|
||||||
|
|
||||||
#endif /* FT_CONFIG_OPTION_CHESTER_HINTS */
|
#endif /* FT_CONFIG_OPTION_CHESTER_HINTS */
|
||||||
|
|
||||||
|
|
|
@ -1,86 +1,196 @@
|
||||||
|
|
||||||
|
LATEST CHANGES BETWEEN 2.1.5 and 2.1.4
|
||||||
|
|
||||||
|
|
||||||
|
I. IMPORTANT BUG FIXES
|
||||||
|
|
||||||
|
- Parsing the /CIDFontName field now removes the leading slash to
|
||||||
|
be in sync with other font drivers.
|
||||||
|
|
||||||
|
- gzip support was buggy. Some fonts could not be read.
|
||||||
|
|
||||||
|
- Fonts which have nested subglyphs more than one level deep no
|
||||||
|
longer cause a segfault.
|
||||||
|
|
||||||
|
- Creation of synthetic cmaps for fonts in CFF format was broken
|
||||||
|
partially.
|
||||||
|
|
||||||
|
- Numeric font dictionary entries for synthetic fonts are no longer
|
||||||
|
overwritten.
|
||||||
|
|
||||||
|
- The font matrix wasn't applied to the advance width for Type1, CID,
|
||||||
|
and CFF fonts. This caused problem when loading certain synthetic
|
||||||
|
Type 1 fonts like "Helvetica Narrow"
|
||||||
|
|
||||||
|
- The test for the charset registry in BDF and PCF fonts is now
|
||||||
|
case-insensitive.
|
||||||
|
|
||||||
|
- FT_Vector_Rotate rotating sometimes returned strange values due to
|
||||||
|
rounding errors.
|
||||||
|
|
||||||
|
- The PCF driver now returns the correct number of glyphs (including
|
||||||
|
an artificial `notdef' glyph at index 0).
|
||||||
|
|
||||||
|
- FreeType now supports buggy CMaps which are contained in many CJK
|
||||||
|
fonts from Dynalab.
|
||||||
|
|
||||||
|
- Opening an invalid font on a Mac caused a segfault due to
|
||||||
|
double-freeing memory.
|
||||||
|
|
||||||
|
- BDF fonts with more than 32768 glyphs weren't supported properly.
|
||||||
|
|
||||||
|
|
||||||
|
II. IMPORTANT CHANGES
|
||||||
|
|
||||||
|
- Accessing bitmap font formats has been synchronized. To do that
|
||||||
|
the FT_Bitmap_Size structure has been extended to contain new
|
||||||
|
fields `size', `x_ppem', and `y_ppem'.
|
||||||
|
|
||||||
|
- The FNT driver now returns multiple faces, not multiple strikes.
|
||||||
|
|
||||||
|
- The `psnames' module has been updated to the Adobe Glyph List
|
||||||
|
version 2.0.
|
||||||
|
|
||||||
|
- The `psnames' module now understands `uXXXX[X[X]]' glyph names.
|
||||||
|
|
||||||
|
- The algorithm for guessing the font style has been improved.
|
||||||
|
|
||||||
|
- For fonts in sfnt format, root->height is no longer increased if
|
||||||
|
the line gap is zero. There exist fonts (containing e.g. form
|
||||||
|
drawing characters) which intentionally have a zero line gap value.
|
||||||
|
|
||||||
|
- ft_glyph_bbox_xxx flags are now deprecated in favour of
|
||||||
|
FT_GLYPH_BBOX_XXX.
|
||||||
|
|
||||||
|
- ft_module_xxx flags are now deprecated in favour of FT_MODULE_XXX.
|
||||||
|
|
||||||
|
- FT_ENCODING_MS_{SJIS,GB2312,BIG5,WANSUNG,JOHAB} are now deprecated
|
||||||
|
in favour of FT_ENCODING_{SJIS,GB2312,GIB5,WANSONG,JOHAB} -- those
|
||||||
|
encodings are not specific to Microsoft.
|
||||||
|
|
||||||
|
|
||||||
|
III. MISCELLANEOUS
|
||||||
|
|
||||||
|
- The autohinter has been further improved; for example, `m' glyphs
|
||||||
|
now retain its vertical symmetry.
|
||||||
|
|
||||||
|
- Partial support of Mac fonts on non-Mac platforms.
|
||||||
|
|
||||||
|
- `make refdoc' (after first `make') builds the HTML documentation.
|
||||||
|
You need Python for this.
|
||||||
|
|
||||||
|
- The make build system should now work more reliably on DOS-like
|
||||||
|
platforms.
|
||||||
|
|
||||||
|
- Support for EMX gcc and Watson C/C++ compilers on MS-DOS has been
|
||||||
|
added.
|
||||||
|
|
||||||
|
- Better VMS build support.
|
||||||
|
|
||||||
|
- Support for the pkg-config package by providing a `freetype.pc'
|
||||||
|
file.
|
||||||
|
|
||||||
|
- New configure option --with-old-mac-fonts for Darwin.
|
||||||
|
|
||||||
|
- Some source files have been renamed (mainly to fit into the 8.3
|
||||||
|
naming scheme).
|
||||||
|
|
||||||
|
|
||||||
|
==============================================================================
|
||||||
|
|
||||||
LATEST CHANGES BETWEEN 2.1.4 and 2.1.3
|
LATEST CHANGES BETWEEN 2.1.4 and 2.1.3
|
||||||
|
|
||||||
I. IMPORTANT BUG FIXES
|
I. IMPORTANT BUG FIXES
|
||||||
|
|
||||||
- updated to newest libtool version, fixes build problems on various
|
- Updated to newest libtool version, fixing build problems on various
|
||||||
platforms.
|
platforms.
|
||||||
|
|
||||||
- a fix in the Gzip stream reader, it couldn't read certain .gz files
|
- A fix in the Gzip stream reader: It couldn't read certain .gz files
|
||||||
properly due to a small typo. In certain cases, FreeType could also
|
properly due to a small typo. In certain cases, FreeType could also
|
||||||
loop endlessly when trying to load tiny gzipped files.
|
loop endlessly when trying to load tiny gzipped files.
|
||||||
|
|
||||||
- the configure script now tries to use the system-wide zlib when
|
- The configure script now tries to use the system-wide zlib when
|
||||||
it finds one (instead of the copy found in src/gzip). And
|
it finds one (instead of the copy found in src/gzip). And
|
||||||
"freetype-config" has been updated to return relevant flags in this
|
"freetype-config" has been updated to return relevant flags in this
|
||||||
case when invoked with "--libs" (e.g. "-lzlib")
|
case when invoked with "--libs" (e.g. "-lzlib").
|
||||||
|
|
||||||
- certain fonts couldn't be loaded by 2.1.3 because they lacked a
|
- Certain fonts couldn't be loaded by 2.1.3 because they lacked a
|
||||||
Unicode charmap (e.g. SYMBOL.TTF). FreeType erroneously rejected
|
Unicode charmap (e.g. SYMBOL.TTF). FreeType erroneously rejected
|
||||||
them.
|
them.
|
||||||
|
|
||||||
- the CFF loader was modified to accept fonts which only
|
- The CFF loader was modified to accept fonts which only contain a
|
||||||
contain a subset of their reference charset. This prevented the
|
subset of their reference charset. This prevented the correct use
|
||||||
correct use of PDF-embedded fonts.
|
of PDF-embedded fonts.
|
||||||
|
|
||||||
- the logic to detect Unicode charmaps has been modified. this is required
|
- The logic to detect Unicode charmaps has been modified. This is
|
||||||
to support fonts which include both 16-bit and 32-bit charmaps (like
|
required to support fonts which include both 16-bit and 32-bit
|
||||||
very recent asian ones) using the new 10 and 12 SFNT formats.
|
charmaps (like very recent asian ones) using the new 10 and 12 SFNT
|
||||||
|
formats.
|
||||||
|
|
||||||
- the TrueType loader now limits the depth of composite glyphs. This is
|
- The TrueType loader now limits the depth of composite glyphs. This is
|
||||||
necessary to prevent broken fonts to break the engine by blowing the
|
necessary to prevent broken fonts to break the engine by blowing the
|
||||||
stack with recursive glyph definitions.
|
stack with recursive glyph definitions.
|
||||||
|
|
||||||
- the CMap cache is now capable of managing UCS-4 character codes that
|
- The CMap cache is now capable of managing UCS-4 character codes that
|
||||||
are mapped through extended charmaps in recent TrueType/OpenType fonts
|
are mapped through extended charmaps in recent TrueType/OpenType
|
||||||
|
fonts.
|
||||||
|
|
||||||
- the cache sub-system now properly manages out-of-memory conditions,
|
- The cache sub-system now properly manages out-of-memory conditions
|
||||||
instead of blindly reporting them to the caller. This means that it
|
instead of blindly reporting them to the caller. This means that it
|
||||||
will try to empty the cache before restarting its allocations to see
|
will try to empty the cache before restarting its allocations to see
|
||||||
if that can help.
|
if that can help.
|
||||||
|
|
||||||
- the PFR driver didn't return the list of available embedded bitmaps
|
- The PFR driver didn't return the list of available embedded bitmaps
|
||||||
properly.
|
properly.
|
||||||
|
|
||||||
|
- There was a nasty memory leak when using embedded bitmaps in certain
|
||||||
|
font formats.
|
||||||
|
|
||||||
|
|
||||||
II. IMPORTANT CHANGES
|
II. IMPORTANT CHANGES
|
||||||
|
|
||||||
- David Chester contributed some enhancements to the auto-hinter that
|
- David Chester contributed some enhancements to the auto-hinter that
|
||||||
significantly increase the quality of its output. The Postscript hinter
|
significantly increase the quality of its output. The Postscript
|
||||||
was also improved in several ways..
|
hinter was also improved in several ways.
|
||||||
|
|
||||||
- the FT_RENDER_MODE_LIGHT render mode was implemented
|
- The FT_RENDER_MODE_LIGHT render mode was implemented.
|
||||||
|
|
||||||
- a new API, called FT_Get_BDF_Property has been added to FT_BDF_H to
|
- A new API function called `FT_Get_BDF_Property' has been added to
|
||||||
retrieve BDF properties from BDF _and_ PCF font files. THIS IS STILL
|
FT_BDF_H to retrieve BDF properties from BDF _and_ PCF font files.
|
||||||
EXPERIMENTAL, since it hasn't been properly tested yet.
|
THIS IS STILL EXPERIMENTAL, since it hasn't been properly tested yet.
|
||||||
|
|
||||||
- a Windows FNT specific API has been added, mostly to access font
|
- A Windows FNT specific API has been added, mostly to access font
|
||||||
headers. This is used by Wine
|
headers. This is used by Wine.
|
||||||
|
|
||||||
- TrueType tables without a "hmtx" table are now tolerated when an
|
- TrueType tables without an "hmtx" table are now tolerated when an
|
||||||
incremental interface is used. This happens for certain Type42 fonts
|
incremental interface is used. This happens for certain Type42 fonts
|
||||||
passed from Ghostscript to FreeType.
|
passed from Ghostscript to FreeType.
|
||||||
|
|
||||||
- the PFR font driver is now capable of returning the font family and
|
- The PFR font driver is now capable of returning the font family and
|
||||||
style names when they're available (instead of the sole "FontID"). This
|
style names when they are available (instead of the sole "FontID").
|
||||||
is performed by parsing an *undocumented* portion of the font file !!
|
This is performed by parsing an *undocumented* portion of the font
|
||||||
|
file!
|
||||||
|
|
||||||
|
|
||||||
III. MISCELLANEOUS
|
III. MISCELLANEOUS
|
||||||
|
|
||||||
- the path stroker in FT_STROKER_H has entered beta stage. It now works
|
- The path stroker in FT_STROKER_H has entered beta stage. It now works
|
||||||
very well, but it's interface might change a bit in the future. More
|
very well, but its interface might change a bit in the future. More
|
||||||
on this in later releases
|
on this in later releases.
|
||||||
|
|
||||||
- the documentation for FT_Size_Metrics didn't appear properly in the
|
- The documentation for FT_Size_Metrics didn't appear properly in the
|
||||||
API reference
|
API reference.
|
||||||
|
|
||||||
- the file docs/VERSION.DLL has been updated to explain versioning
|
- The file docs/VERSION.DLL has been updated to explain versioning
|
||||||
with FreeType (i.e. comparing release/libtool/so numbers, and how
|
with FreeType (i.e., comparing release/libtool/so numbers, and how to
|
||||||
to use them in Autoconf scripts)
|
use them in autoconf scripts).
|
||||||
|
|
||||||
|
- The installation documentation has been seriously revamped.
|
||||||
|
Everything is now in the "docs" directory.
|
||||||
|
|
||||||
- the installation documentation has been seriously revamped. Everything
|
|
||||||
is now in the "docs" directory.
|
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
|
|
||||||
LATEST CHANGES BETWEEN 2.1.3 and 2.1.2
|
LATEST CHANGES BETWEEN 2.1.3 and 2.1.2
|
||||||
|
|
||||||
I. IMPORTANT BUG FIXES
|
I. IMPORTANT BUG FIXES
|
||||||
|
@ -111,17 +221,19 @@ LATEST CHANGES BETWEEN 2.1.3 and 2.1.2
|
||||||
precisely, when trying to apply hints to an empty glyph outline).
|
precisely, when trying to apply hints to an empty glyph outline).
|
||||||
|
|
||||||
- The TrueType glyph loader now supports composites in "Apple format"
|
- The TrueType glyph loader now supports composites in "Apple format"
|
||||||
(they differ slightly from Microsoft/OpenType ones in the way transform
|
(they differ slightly from Microsoft/OpenType ones in the way
|
||||||
offsets are computed).
|
transformation offsets are computed).
|
||||||
|
|
||||||
- FreeType was very slow at opening certain asian CID/CFF fonts, due
|
- FreeType was very slow at opening certain asian CID/CFF fonts, due
|
||||||
to fixed increment in dynamic array re-allocations. This has been
|
to fixed increment in dynamic array re-allocations. This has been
|
||||||
changed to exponential behaviour to get acceptable performance
|
changed to exponential behaviour to get acceptable performance.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
II. IMPORTANT CHANGES
|
II. IMPORTANT CHANGES
|
||||||
|
|
||||||
- the PCF driver now supports gzip-compressed font files natively. This
|
- The PCF driver now supports gzip-compressed font files natively. This
|
||||||
means that you'll be able to use all these bitmap fonts that come
|
means that you will be able to use all these bitmap fonts that come
|
||||||
with XFree86 with FreeType (and libXft/libXft2, by extension).
|
with XFree86 with FreeType (and libXft/libXft2, by extension).
|
||||||
|
|
||||||
- The automatic and postscript hinters have both been updated. This
|
- The automatic and postscript hinters have both been updated. This
|
||||||
|
@ -160,10 +272,10 @@ LATEST CHANGES BETWEEN 2.1.3 and 2.1.2
|
||||||
|
|
||||||
Note that the 'ftview' demo program available in the 'ft2demos' package
|
Note that the 'ftview' demo program available in the 'ft2demos' package
|
||||||
has been updated to support LCD-optimized display on non-paletted
|
has been updated to support LCD-optimized display on non-paletted
|
||||||
displays (under Win32 and X11)
|
displays (under Win32 and X11).
|
||||||
|
|
||||||
- The PFR driver now supports embedded bitmaps (all formats supported),
|
- The PFR driver now supports embedded bitmaps (all formats supported),
|
||||||
and returns correct kerning metrics for all glyphs
|
and returns correct kerning metrics for all glyphs.
|
||||||
|
|
||||||
- The TrueType charmap loader now supports certain "broken" fonts that
|
- The TrueType charmap loader now supports certain "broken" fonts that
|
||||||
load under Windows without problems.
|
load under Windows without problems.
|
||||||
|
@ -184,9 +296,10 @@ LATEST CHANGES BETWEEN 2.1.3 and 2.1.2
|
||||||
- Added support for the DESTDIR variable during "make install". This
|
- Added support for the DESTDIR variable during "make install". This
|
||||||
simplifies packaging of FreeType.
|
simplifies packaging of FreeType.
|
||||||
|
|
||||||
- included modified copies of the ZLib sources in 'src/gzip' in order
|
- Included modified copies of the ZLib sources in 'src/gzip' in order to
|
||||||
to support gzip-compressed PCF fonts. We do not use the system-provided
|
support gzip-compressed PCF fonts. We do not use the system-provided
|
||||||
zlib for now, though this is a probable enhancement for future releases
|
zlib for now, though this is a probable enhancement for future
|
||||||
|
releases.
|
||||||
|
|
||||||
- The DocMaker tool used to generate the on-line API reference has been
|
- The DocMaker tool used to generate the on-line API reference has been
|
||||||
completely rewritten. It is now located in
|
completely rewritten. It is now located in
|
||||||
|
|
|
@ -1,79 +1,85 @@
|
||||||
How to customize the compilation of the library:
|
How to customize the compilation of the library:
|
||||||
================================================
|
================================================
|
||||||
|
|
||||||
FreeType is highly customizable to fit various needs, and this document
|
FreeType is highly customizable to fit various needs, and this
|
||||||
details how it is possible to select options and components at compilation
|
document describes how it is possible to select options and components
|
||||||
time.
|
at compilation time.
|
||||||
|
|
||||||
|
|
||||||
I. Configuration macros:
|
I. Configuration macros
|
||||||
|
|
||||||
the file found in "include/freetype/config/ftoption.h" contains a list
|
The file found in "include/freetype/config/ftoption.h" contains a list
|
||||||
of commented configuration macros that can be toggled by developers to
|
of commented configuration macros that can be toggled by developers to
|
||||||
indicate which features to activate in their build of the library.
|
indicate which features should be active while building the library.
|
||||||
|
|
||||||
these options range from debug level to availability of certain
|
These options range from debug level to availability of certain
|
||||||
features, like native TrueType hinting through a bytecode interpreter.
|
features, like native TrueType hinting through a bytecode interpreter.
|
||||||
|
|
||||||
we invite you to read this file for more information. You can change
|
We invite you to read this file for more information. You can change
|
||||||
the file's content to suit your needs, or override it with one of the
|
the file's content to suit your needs, or override it with one of the
|
||||||
techniques described below..
|
techniques described below.
|
||||||
|
|
||||||
|
|
||||||
II. Modules list:
|
II. Modules list
|
||||||
|
|
||||||
the file found in "include/freetype/config/ftmodule.h" contains a list
|
The file found in "include/freetype/config/ftmodule.h" contains a list
|
||||||
of names corresponding to the modules / font drivers to be statically
|
of names corresponding to the modules and font drivers to be
|
||||||
compiled in the FreeType library during the build.
|
statically compiled in the FreeType library during the build.
|
||||||
|
|
||||||
you can change it to suit your own preferences. Be aware that certain
|
You can change it to suit your own preferences. Be aware that certain
|
||||||
modules depend on others, as described by the file "modules.txt" in
|
modules depend on others, as described by the file "modules.txt" in
|
||||||
this directory.
|
this directory.
|
||||||
|
|
||||||
you can modify the file's content to suit your needs, or override it
|
You can modify the file's content to suit your needs, or override it
|
||||||
at compile time with one of the methods described below
|
at compile time with one of the methods described below.
|
||||||
|
|
||||||
|
|
||||||
III. System interface:
|
III. System interface
|
||||||
|
|
||||||
FreeType's default interface to the system (i.e. the parts that deal with
|
FreeType's default interface to the system (i.e., the parts that deal
|
||||||
memory management and i/o streams) is located in "src/base/ftsystem.c".
|
with memory management and i/o streams) is located in
|
||||||
|
"src/base/ftsystem.c".
|
||||||
|
|
||||||
the current implementation uses standard C library calls to manage
|
The current implementation uses standard C library calls to manage
|
||||||
memory and read font files. It is however possible to write custom
|
memory and to read font files. It is however possible to write custom
|
||||||
implementations to suit specific systems.
|
implementations to suit specific systems.
|
||||||
|
|
||||||
to tell the GNU Make-based build system to use a custom system interface,
|
To tell the GNU Make-based build system to use a custom system
|
||||||
you'll need to define the environment variable FTSYS_SRC to point to
|
interface, you have to define the environment variable FTSYS_SRC to
|
||||||
the relevant implementation, like in:
|
point to the relevant implementation:
|
||||||
|
|
||||||
on Unix:
|
on Unix:
|
||||||
./configure <youroptions>
|
|
||||||
export FTSYS_SRC=foo/my_ftsystem.c
|
./configure <your options>
|
||||||
make
|
export FTSYS_SRC=foo/my_ftsystem.c
|
||||||
make install
|
make
|
||||||
|
make install
|
||||||
|
|
||||||
on Windows:
|
on Windows:
|
||||||
make setup <compiler>
|
|
||||||
set FTSYS_SRC=foo/my_ftsystem.c
|
make setup <compiler>
|
||||||
make
|
set FTSYS_SRC=foo/my_ftsystem.c
|
||||||
|
make
|
||||||
|
|
||||||
|
|
||||||
IV. Overriding default configuration and module headers:
|
IV. Overriding default configuration and module headers
|
||||||
|
|
||||||
it is possible to over-ride the default configuration and module headers
|
It is possible to override the default configuration and module
|
||||||
without changing the original files. There are two ways to do that:
|
headers without changing the original files. There are two ways to do
|
||||||
|
that:
|
||||||
|
|
||||||
1. Using the C include path:
|
|
||||||
|
1. Using the C include path
|
||||||
|
|
||||||
use the C include path to ensure that your own versions of the
|
Use the C include path to ensure that your own versions of the files
|
||||||
files are used at compile time when the lines:
|
are used at compile time when the lines
|
||||||
|
|
||||||
#include FT_CONFIG_OPTIONS_H
|
#include FT_CONFIG_OPTIONS_H
|
||||||
#include FT_CONFIG_MODULES_H
|
#include FT_CONFIG_MODULES_H
|
||||||
|
|
||||||
are compiled. Their default values being <freetype/config/ftoption.h>
|
are compiled. Their default values being
|
||||||
and <freetype/config/ftmodule.h>, you can do something like:
|
<freetype/config/ftoption.h> and <freetype/config/ftmodule.h>, you
|
||||||
|
can do something like:
|
||||||
|
|
||||||
custom/
|
custom/
|
||||||
freetype/
|
freetype/
|
||||||
|
@ -82,36 +88,38 @@ IV. Overriding default configuration and module headers:
|
||||||
ftmodule.h => custom modules list
|
ftmodule.h => custom modules list
|
||||||
|
|
||||||
include/ => normal FreeType 2 include
|
include/ => normal FreeType 2 include
|
||||||
freetype/
|
freetype/
|
||||||
...
|
...
|
||||||
|
|
||||||
then change the C include path to always give the path to "custom"
|
then change the C include path to always give the path to "custom"
|
||||||
before the FreeType 2 "include"
|
before the FreeType 2 "include".
|
||||||
|
|
||||||
|
|
||||||
2. Re-defining FT_CONFIG_OPTIONS_H and FT_CONFIG_MODULES_H
|
2. Re-defining FT_CONFIG_OPTIONS_H and FT_CONFIG_MODULES_H
|
||||||
|
|
||||||
another way to do the same thing is to re-define the macros used
|
Another way to do the same thing is to redefine the macros used to
|
||||||
to name the configuration headers. To do so, you'll need a custom
|
name the configuration headers. To do so, you need a custom
|
||||||
"ft2build.h", whose content can be as simple as:
|
"ft2build.h" whose content can be as simple as:
|
||||||
|
|
||||||
#ifndef __FT2_BUILD_GENERIC_H__
|
#ifndef __FT2_BUILD_GENERIC_H__
|
||||||
#define __FT2_BUILD_GENERIC_H__
|
#define __FT2_BUILD_GENERIC_H__
|
||||||
|
|
||||||
#define FT_CONFIG_OPTIONS_H <custom/my-ftoption.h>
|
#define FT_CONFIG_OPTIONS_H <custom/my-ftoption.h>
|
||||||
#define FT_CONFIG_MACROS_H <custom/my-ftmodule.h>
|
#define FT_CONFIG_MACROS_H <custom/my-ftmodule.h>
|
||||||
|
|
||||||
#include <freetype/config/ftheader.h>
|
#include <freetype/config/ftheader.h>
|
||||||
|
|
||||||
#endif /* __FT2_BUILD_GENERIC_H__ */
|
#endif /* __FT2_BUILD_GENERIC_H__ */
|
||||||
|
|
||||||
place them in:
|
Place those files in a separate directory, e.g.:
|
||||||
|
|
||||||
custom/
|
custom/
|
||||||
ft2build.h => custom version described above
|
ft2build.h => custom version described above
|
||||||
my-ftoption.h => custom options header
|
my-ftoption.h => custom options header
|
||||||
my-ftmodule.h => custom modules list header
|
my-ftmodule.h => custom modules list header
|
||||||
|
|
||||||
and change the C include path to ensure that "custom" is always placed
|
and change the C include path to ensure that "custom" is always
|
||||||
before the FT2 "include" during compilation.
|
placed before the FT2 "include" during compilation.
|
||||||
|
|
||||||
|
|
||||||
|
--- end of CUSTOMIZE ---
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
Debugging within the FreeType sources:
|
Debugging within the FreeType sources
|
||||||
======================================
|
=====================================
|
||||||
|
|
||||||
I. Configuration macros
|
I. Configuration macros
|
||||||
-----------------------
|
-----------------------
|
||||||
|
@ -12,15 +12,15 @@ located in the file "ftoptions.h". The macros are:
|
||||||
FT_DEBUG_LEVEL_ERROR
|
FT_DEBUG_LEVEL_ERROR
|
||||||
|
|
||||||
#define this macro if you want to compile the FT_ERROR macro calls
|
#define this macro if you want to compile the FT_ERROR macro calls
|
||||||
used to print error messages during program execution. This will
|
to print error messages during program execution. This will not
|
||||||
not stop the program, but is very useful to spot invalid fonts
|
stop the program. Very useful to spot invalid fonts during
|
||||||
during development and code workarounds for them.
|
development and to code workarounds for them.
|
||||||
|
|
||||||
FT_DEBUG_LEVEL_TRACE
|
FT_DEBUG_LEVEL_TRACE
|
||||||
|
|
||||||
#define this macro if you want to compile both the FT_ERROR macro
|
#define this macro if you want to compile both macros FT_ERROR and
|
||||||
and the FT_TRACE one. This also includes the variants FT_TRACE0,
|
FT_TRACE. This also includes the variants FT_TRACE0, FT_TRACE1,
|
||||||
FT_TRACE1, FT_TRACE2, ..., FT_TRACE6.
|
FT_TRACE2, ..., FT_TRACE6.
|
||||||
|
|
||||||
The trace macros are used to send debugging messages when an
|
The trace macros are used to send debugging messages when an
|
||||||
appropriate "debug level" is configured at runtime through the
|
appropriate "debug level" is configured at runtime through the
|
||||||
|
@ -28,21 +28,21 @@ located in the file "ftoptions.h". The macros are:
|
||||||
|
|
||||||
FT_DEBUG_MEMORY
|
FT_DEBUG_MEMORY
|
||||||
|
|
||||||
If this macro is #defined, the FreeType engines is linked with a
|
If this macro is #defined, the FreeType engine is linked with a
|
||||||
small but effective debugging memory manager that tracks all
|
small but effective debugging memory manager that tracks all
|
||||||
allocations and frees that are performed within the font engine.
|
allocations and frees that are performed within the font engine.
|
||||||
|
|
||||||
When the FT2_DEBUG_MEMORY environment variable is defined at
|
When the FT2_DEBUG_MEMORY environment variable is defined at
|
||||||
runtime, a call to FT_Done_FreeType will dump memory statistics,
|
runtime, a call to FT_Done_FreeType will dump memory statistics,
|
||||||
including the list of leaked memory blocks with the source locations
|
including the list of leaked memory blocks with the source locations
|
||||||
where these were allocated. It's always a very good idea to define
|
where these were allocated. It is always a very good idea to define
|
||||||
this in development builds. This works with _any_ program linked to
|
this in development builds. This works with _any_ program linked to
|
||||||
FreeType, but requires a big deal of memory (the debugging memory
|
FreeType, but requires a big deal of memory (the debugging memory
|
||||||
manager never frees the blocks to the heap in order to detect double
|
manager never frees the blocks to the heap in order to detect double
|
||||||
frees).
|
frees).
|
||||||
|
|
||||||
When FT2_DEBUG_MEMORY isn't defined at runtime, the debugging memory
|
When FT2_DEBUG_MEMORY isn't defined at runtime, the debugging memory
|
||||||
manager is ignored, and performance is un-affected.
|
manager is ignored, and performance is unaffected.
|
||||||
|
|
||||||
|
|
||||||
II. Debugging macros
|
II. Debugging macros
|
||||||
|
@ -59,7 +59,7 @@ its code:
|
||||||
either FT_DEBUG_LEVEL_ERROR or FT_DEBUG_LEVEL_TRACE are defined in
|
either FT_DEBUG_LEVEL_ERROR or FT_DEBUG_LEVEL_TRACE are defined in
|
||||||
"ftoption.h".
|
"ftoption.h".
|
||||||
|
|
||||||
Note that you must use with a printf-like signature, but with double
|
Note that you have to use a printf-like signature, but with double
|
||||||
parentheses, like in:
|
parentheses, like in:
|
||||||
|
|
||||||
FT_ERROR(( "your %s is not %s\n", "foo", "bar" ));
|
FT_ERROR(( "your %s is not %s\n", "foo", "bar" ));
|
||||||
|
@ -93,9 +93,9 @@ its code:
|
||||||
trace_XXXX where XXXX is one of the component names defined in the
|
trace_XXXX where XXXX is one of the component names defined in the
|
||||||
internal file <freetype/internal/fttrace.h>.
|
internal file <freetype/internal/fttrace.h>.
|
||||||
|
|
||||||
Each such component is assigned a "debug level", ranging from 0 to 6
|
Each such component is assigned a "debug level", ranging from 0
|
||||||
when a program linked with FreeType starts, through the use of the
|
to 6, through the use of the FT2_DEBUG environment variable
|
||||||
FT2_DEBUG environment variable, described later.
|
(described below) when a program linked with FreeType starts.
|
||||||
|
|
||||||
When FT_TRACE is called, its level is compared to the one of the
|
When FT_TRACE is called, its level is compared to the one of the
|
||||||
corresponding component. Messages with trace levels *higher* than
|
corresponding component. Messages with trace levels *higher* than
|
||||||
|
@ -106,7 +106,7 @@ its code:
|
||||||
least* 2.
|
least* 2.
|
||||||
|
|
||||||
The second parameter to FT_TRACE must contain parentheses and
|
The second parameter to FT_TRACE must contain parentheses and
|
||||||
correspond to a print-like call, as in:
|
correspond to a printf-like call, as in:
|
||||||
|
|
||||||
FT_TRACE( 2, ( "your %s is not %s\n", "foo", "bar" ) )
|
FT_TRACE( 2, ( "your %s is not %s\n", "foo", "bar" ) )
|
||||||
|
|
||||||
|
@ -123,7 +123,6 @@ III. Environment variables
|
||||||
The following environment variables control debugging output and
|
The following environment variables control debugging output and
|
||||||
behaviour of FreeType at runtime:
|
behaviour of FreeType at runtime:
|
||||||
|
|
||||||
|
|
||||||
FT2_DEBUG
|
FT2_DEBUG
|
||||||
|
|
||||||
This variable is only used when FreeType is built with
|
This variable is only used when FreeType is built with
|
||||||
|
@ -133,51 +132,52 @@ behaviour of FreeType at runtime:
|
||||||
component1:level1 component2:level2 component3:level3 ...
|
component1:level1 component2:level2 component3:level3 ...
|
||||||
|
|
||||||
where "componentX" is the name of a tracing component, as defined in
|
where "componentX" is the name of a tracing component, as defined in
|
||||||
"fttrace.h", but without the "trace_" prefix, and "levelX" is the
|
"fttrace.h", but without the "trace_" prefix. "levelX" is the
|
||||||
corresponding level to use at runtime.
|
corresponding level to use at runtime.
|
||||||
|
|
||||||
"any" is a special component name that will be interpreted as
|
"any" is a special component name that will be interpreted as
|
||||||
"any/all components". For example, the following definitions
|
"any/all components". For example, the following definitions
|
||||||
|
|
||||||
set FT2_DEBUG=any:2 memory:5 io:4 (on Windows)
|
set FT2_DEBUG=any:2 memory:5 io:4 (on Windows)
|
||||||
export FT2_DEBUG="any:2 memory:5 io:4" (on Linux)
|
export FT2_DEBUG="any:2 memory:5 io:4" (on Linux with bash)
|
||||||
|
|
||||||
both stipulate that all components should have level 2, except for
|
both stipulate that all components should have level 2, except for
|
||||||
the memory and io components which will be set to trace levels 5 and
|
the memory and io components which will be set to trace levels 5
|
||||||
4 respectively.
|
and 4, respectively.
|
||||||
|
|
||||||
FT2_DEBUG_MEMORY
|
FT2_DEBUG_MEMORY
|
||||||
|
|
||||||
This environment variable, when defined, tells FreeType to use a
|
This environment variable, when defined, tells FreeType to use a
|
||||||
debugging memory manager that will track leaked memory blocks as
|
debugging memory manager that will track leaking memory blocks as
|
||||||
well as other common errors like double frees. It is also capable
|
well as other common errors like double frees. It is also capable
|
||||||
of reporting _where_ the leaked blocks were allocated, which
|
of reporting _where_ the leaking blocks were allocated, which
|
||||||
considerably saves time when debugging new additions to the library.
|
considerably saves time when debugging new additions to the library.
|
||||||
|
|
||||||
This code is only compiled when FreeType is built with the
|
This code is only compiled when FreeType is built with the
|
||||||
FT_DEBUG_MEMORY macro #defined in "ftoption.h" though, it will be
|
FT_DEBUG_MEMORY macro #defined in "ftoption.h" though, it will be
|
||||||
ignored in other builds.
|
ignored in other builds.
|
||||||
|
|
||||||
|
|
||||||
FT2_ALLOC_TOTAL_MAX
|
FT2_ALLOC_TOTAL_MAX
|
||||||
|
|
||||||
this variable is ignored if FT2_DEBUG_MEMORY is not defined. It allows
|
This variable is ignored if FT2_DEBUG_MEMORY is not defined. It
|
||||||
you to specify a maximum heap size for all memory allocations performed
|
allows you to specify a maximum heap size for all memory allocations
|
||||||
by FreeType. This is very useful to test the robustness of the font
|
performed by FreeType. This is very useful to test the robustness
|
||||||
engine and programs that use it in tight memory conditions.
|
of the font engine and programs that use it in tight memory
|
||||||
|
conditions.
|
||||||
|
|
||||||
If it is undefined, or if its value is not strictly positive, then no
|
If it is undefined, or if its value is not strictly positive, then
|
||||||
allocation bounds are checked at runtime.
|
no allocation bounds are checked at runtime.
|
||||||
|
|
||||||
|
|
||||||
FT2_ALLOC_COUNT_MAX
|
FT2_ALLOC_COUNT_MAX
|
||||||
|
|
||||||
this variable is ignored if FT2_DEBUG_MEMORY is not defined. It allows
|
This variable is ignored if FT2_DEBUG_MEMORY is not defined. It
|
||||||
you to sepcify a maximum number of memory allocations performed by
|
allows you to specify a maximum number of memory allocations
|
||||||
FreeType before returning the error FT_Err_Out_Of_Memory. This is
|
performed by FreeType before returning the error
|
||||||
useful for debugging and testing the engine's robustness.
|
FT_Err_Out_Of_Memory. This is useful for debugging and testing the
|
||||||
|
engine's robustness.
|
||||||
|
|
||||||
If it is undefined, or if its value is not strictly positive, then no
|
If it is undefined, or if its value is not strictly positive, then
|
||||||
allocation bounsd are checked at runtime.
|
no allocation bounsd are checked at runtime.
|
||||||
|
|
||||||
End of file
|
|
||||||
|
--- end of DEBUG ---
|
||||||
|
|
|
@ -1,65 +1,66 @@
|
||||||
Welcome
|
|
||||||
|
|
||||||
There are several ways to build the FreeType library, depending on your
|
There are several ways to build the FreeType library, depending on your
|
||||||
system and the level of customization you need. Here's a short overview
|
system and the level of customization you need. Here is a short
|
||||||
of the documentation available:
|
overview of the documentation available:
|
||||||
|
|
||||||
I. Normal installation and upgrades:
|
|
||||||
|
|
||||||
1. Native TrueType Hinting:
|
I. Normal installation and upgrades
|
||||||
|
===================================
|
||||||
Native TrueType hinting is disabled by default[1]. If you really need it,
|
|
||||||
read the file "TRUETYPE" for information.
|
|
||||||
|
|
||||||
|
1. Native TrueType Hinting
|
||||||
2. Unix Systems (as well as Cygwin or MSys on Windows):
|
|
||||||
|
Native TrueType hinting is disabled by default[1]. If you really
|
||||||
|
need it, read the file "TRUETYPE" for information.
|
||||||
|
|
||||||
|
2. Unix Systems (as well as Cygwin or MSys on Windows)
|
||||||
|
|
||||||
Please read *both* UPGRADE.UNX and INSTALL.UNX to install or upgrade
|
Please read *both* UPGRADE.UNX and INSTALL.UNX to install or upgrade
|
||||||
FreeType 2 on a Unix system. Note that you *will* need GNU Make, since
|
FreeType 2 on a Unix system. Note that you *will* need GNU Make,
|
||||||
other make tools won't work (this includes BSD Make !!)
|
since other make tools won't work (this includes BSD Make).
|
||||||
|
|
||||||
3. On VMS with the "mms" build tool:
|
3. On VMS with the "mms" build tool
|
||||||
|
|
||||||
see INSTALL.VMS for installation instructions on this platform
|
See INSTALL.VMS for installation instructions on this platform.
|
||||||
|
|
||||||
4. Other systems using GNU Make:
|
4. Other systems using GNU Make
|
||||||
|
|
||||||
on non-Unix platforms, it's possible to build the library using
|
On non-Unix platforms, it is possible to build the library using GNU
|
||||||
GNU Make utility. Note that *NO OTHER MAKE TOOL WILL WORK* !!
|
Make utility. Note that *NO OTHER MAKE TOOL WILL WORK*[2]! This
|
||||||
This methods supports several compilers on Windows, OS/2 and BeOS,
|
methods supports several compilers on Windows, OS/2, and BeOS,
|
||||||
including Mingw, Visual C++, Borland C++, and more.
|
including Mingw, Visual C++, Borland C++, and more.
|
||||||
|
|
||||||
instructions are provided in the file "INSTALL.GNU"
|
Instructions are provided in the file "INSTALL.GNU".
|
||||||
|
|
||||||
|
5. With an IDE Project File (e.g. for Visual Studio or CodeWarrior)
|
||||||
5. With an IDE Project File (e.g. for Visual Studio or CodeWarrior):
|
|
||||||
|
|
||||||
we provide a small number of "project files" for various IDEs to
|
We provide a small number of "project files" for various IDEs to
|
||||||
automatically build the library as well. Note that these files are
|
automatically build the library as well. Note that these files are
|
||||||
not supported and sporadically maintained by FreeType developers,
|
not supported and sporadically maintained by FreeType developers, so
|
||||||
so don't expect them to work in each release.
|
don't expect them to work in each release.
|
||||||
|
|
||||||
to find them, have a look at the content of the "builds/<system>"
|
To find them, have a look at the content of the "builds/<system>"
|
||||||
directory, where <system> stands for your OS or environment.
|
directory, where <system> stands for your OS or environment.
|
||||||
|
|
||||||
|
6. From you own IDE, or own Makefiles
|
||||||
6. From you own IDE, or own Makefiles:
|
|
||||||
|
|
||||||
If you want to create your own project file, follow the instructions
|
If you want to create your own project file, follow the instructions
|
||||||
given in the "INSTALL.ANY" document of this directory.
|
given in the "INSTALL.ANY" document of this directory.
|
||||||
|
|
||||||
|
|
||||||
II. Custom builds of the library:
|
II. Custom builds of the library
|
||||||
|
================================
|
||||||
|
|
||||||
Customizing the compilation of FreeType is easy, and allows you to select
|
Customizing the compilation of FreeType is easy, and allows you to
|
||||||
only the components of the font engine that you really need. For more details
|
select only the components of the font engine that you really need.
|
||||||
read the file "CUSTOMIZE"
|
For more details read the file "CUSTOMIZE".
|
||||||
|
|
||||||
|
|
||||||
--------------------------------------------------------------------
|
------------------------------------------------------------------------
|
||||||
|
|
||||||
[1] More details on: http://www.freetype.org/patents.html
|
[1] More details on: http://www.freetype.org/patents.html
|
||||||
|
|
||||||
End of file
|
[2] make++, a make tool written in Perl, has sufficient support of GNU
|
||||||
|
make extensions to build FreeType. See
|
||||||
|
http://makepp.sourceforge.net for more information.
|
||||||
|
|
||||||
|
--- end of INSTALL ---
|
||||||
|
|
|
@ -1,96 +1,99 @@
|
||||||
Instructions on how to build FreeType with your own build tool:
|
Instructions on how to build FreeType with your own build tool
|
||||||
|
==============================================================
|
||||||
|
|
||||||
see the file "CUSTOMIZE" to learn how to customize FreeType to
|
See the file "CUSTOMIZE" to learn how to customize FreeType to specific
|
||||||
specific environments.
|
environments.
|
||||||
|
|
||||||
follow these simple steps:
|
|
||||||
|
|
||||||
I. Normal way:
|
I. Standard procedure
|
||||||
--------------
|
---------------------
|
||||||
|
|
||||||
* DISABLE PRE-COMPILED HEADERS ! This is very important for Visual
|
* DISABLE PRE-COMPILED HEADERS! This is very important for Visual
|
||||||
C++, because FreeType uses lines like:
|
C++, because FreeType uses lines like:
|
||||||
|
|
||||||
#include FT_FREETYPE_H
|
#include FT_FREETYPE_H
|
||||||
|
|
||||||
which are not correctly supported by this compiler, while being
|
which are not correctly supported by this compiler while being ISO C
|
||||||
ISO C compliant !!
|
compliant!
|
||||||
|
|
||||||
* You need to add the directories "freetype2/include" to your include
|
* You need to add the directories "freetype2/include" to your include
|
||||||
path when compiling the library.
|
path when compiling the library.
|
||||||
|
|
||||||
* FreeType 2 is made of several components; each one of them is
|
* FreeType 2 is made of several components; each of them is located in
|
||||||
located in a subdirectory of "freetype2/src". For example,
|
a subdirectory of "freetype2/src". For example,
|
||||||
'freetype2/src/truetype/' contains the TrueType font driver.
|
'freetype2/src/truetype/' contains the TrueType font driver.
|
||||||
|
|
||||||
* DO NOT COMPILE ALL C FILES! Rather, compile the following ones:
|
* DO NOT COMPILE ALL C FILES! Rather, compile the following ones:
|
||||||
|
|
||||||
-- base components (required)
|
-- base components (required)
|
||||||
|
|
||||||
src/base/ftsystem.c
|
src/base/ftsystem.c
|
||||||
src/base/ftinit.c
|
src/base/ftinit.c
|
||||||
src/base/ftdebug.c
|
src/base/ftdebug.c
|
||||||
src/base/ftbase.c
|
src/base/ftbase.c
|
||||||
src/base/ftglyph.c
|
src/base/ftglyph.c
|
||||||
src/base/ftbbox.c
|
src/base/ftbbox.c
|
||||||
src/base/ftmm.c
|
src/base/ftmm.c
|
||||||
src/base/ftpfr.c -- optional, see <freetype/ftpfr.h>
|
src/base/ftpfr.c -- optional, see <freetype/ftpfr.h>
|
||||||
src/base/ftbdf.c -- optional, see <freetype/ftbdf.h>
|
src/base/ftbdf.c -- optional, see <freetype/ftbdf.h>
|
||||||
src/base/ftwinfnt.c -- optional, see <freetype/ftwinfnt.h>
|
src/base/ftwinfnt.c -- optional, see <freetype/ftwinfnt.h>
|
||||||
|
|
||||||
src/base/ftmac.c -- only on the Macintosh
|
src/base/ftmac.c -- only on the Macintosh
|
||||||
|
|
||||||
-- other components are optional
|
-- other components (optional)
|
||||||
|
|
||||||
src/autohint/autohint.c -- auto hinting module
|
src/autohint/autohint.c -- auto hinting module
|
||||||
src/cache/ftcache.c -- cache sub-system (in beta)
|
src/cache/ftcache.c -- cache sub-system (in beta)
|
||||||
src/sfnt/sfnt.c -- SFNT files support
|
src/sfnt/sfnt.c -- SFNT files support
|
||||||
(TrueType & OpenType)
|
(TrueType & OpenType)
|
||||||
src/cff/cff.c -- CFF/OpenType font driver
|
src/cff/cff.c -- CFF/OpenType font driver
|
||||||
src/pfr/pfr.c -- PFR/TrueDoc font driver
|
src/pfr/pfr.c -- PFR/TrueDoc font driver
|
||||||
src/bdf/bdf.c -- BDF font driver
|
src/bdf/bdf.c -- BDF font driver
|
||||||
src/pcf/pcf.c -- PCF font driver
|
src/pcf/pcf.c -- PCF font driver
|
||||||
src/psnames/psnames.c -- Postscript glyph names support
|
src/psnames/psnames.c -- PostScript glyph names support
|
||||||
src/psaux/psaux.c -- Postscript Type 1 parsing
|
src/psaux/psaux.c -- PostScript Type 1 parsing
|
||||||
src/truetype/truetype.c -- TrueType font driver
|
src/truetype/truetype.c -- TrueType font driver
|
||||||
src/type1/type1.c -- Type 1 font driver
|
src/type1/type1.c -- Type 1 font driver
|
||||||
src/cid/type1cid.c -- Type 1 CID-keyed font driver
|
src/cid/type1cid.c -- Type 1 CID-keyed font driver
|
||||||
src/winfonts/winfonts.c -- Windows FONT / FNT font driver
|
src/winfonts/winfonts.c -- Windows FONT / FNT font driver
|
||||||
src/raster1/raster1.c -- monochrome rasterizer
|
src/raster1/raster1.c -- monochrome rasterizer
|
||||||
src/smooth/smooth.c -- anti-aliasing rasterizer
|
src/smooth/smooth.c -- anti-aliasing rasterizer
|
||||||
|
|
||||||
Note:
|
Notes:
|
||||||
|
|
||||||
`truetype.c' needs `sfnt.c' and `psnames.c'
|
`truetype.c' needs `sfnt.c' and `psnames.c'
|
||||||
`type1.c' needs `psaux.c' and `psnames.c'
|
`type1.c' needs `psaux.c' and `psnames.c'
|
||||||
`type1cid.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'
|
`cff.c' needs `sfnt.c', `psaux.c', and `psnames.c'
|
||||||
|
|
||||||
that should be it ! in case of problems, see the archives of
|
|
||||||
the FreeType development mailing list.
|
You are done. In case of problems, see the archives of the FreeType
|
||||||
|
development mailing list.
|
||||||
|
|
||||||
|
|
||||||
II. Support for flat-directory compilation
|
II. Support for flat-directory compilation
|
||||||
------------------------------------------
|
------------------------------------------
|
||||||
|
|
||||||
It is possible to put all FreeType 2 source files into a single
|
It is possible to put all FreeType 2 source files into a single
|
||||||
directory, with the *exception* of the `include' hierarchy.
|
directory, with the *exception* of the `include' hierarchy.
|
||||||
|
|
||||||
1. Copy all files in current directory:
|
1. Copy all files in current directory
|
||||||
|
|
||||||
cp freetype2/src/base/*.[hc] .
|
cp freetype2/src/base/*.[hc] .
|
||||||
cp freetype2/src/raster1/*.[hc] .
|
cp freetype2/src/raster1/*.[hc] .
|
||||||
cp freetype2/src/smooth/*.[hc] .
|
cp freetype2/src/smooth/*.[hc] .
|
||||||
etc.
|
etc.
|
||||||
|
|
||||||
2. Compile sources:
|
2. Compile sources
|
||||||
|
|
||||||
cc -c -Ifreetype2/include ftsystem.c
|
cc -c -Ifreetype2/include ftsystem.c
|
||||||
cc -c -Ifreetype2/include ftinit.c
|
cc -c -Ifreetype2/include ftinit.c
|
||||||
cc -c -Ifreetype2/include ftdebug.c
|
cc -c -Ifreetype2/include ftdebug.c
|
||||||
cc -c -Ifreetype2/include ftbase.c
|
cc -c -Ifreetype2/include ftbase.c
|
||||||
etc.
|
etc.
|
||||||
|
|
||||||
You don't need to define the FT_FLAT_COMPILATION macro (as this was
|
You don't need to define the FT_FLAT_COMPILATION macro (as this was
|
||||||
required in previous releases of FreeType 2).
|
required in previous releases of FreeType 2).
|
||||||
|
|
||||||
|
|
||||||
|
--- end of INSTALL.ANY ---
|
||||||
|
|
|
@ -1,128 +1,139 @@
|
||||||
This document contains instructions on how to build the FreeType library
|
This document contains instructions how to build the FreeType library on
|
||||||
on non-Unix systems with the help of GNU Make. Note that if you're running
|
non-Unix systems with the help of GNU Make. Note that if you are
|
||||||
Cygwin or MSys in Windows, you should follow the instructions of INSTALL.UNX
|
running Cygwin or MSys in Windows, you should follow the instructions in
|
||||||
instead.
|
the file INSTALL.UNX instead.
|
||||||
|
|
||||||
|
|
||||||
FreeType 2 includes a powerful and flexible build system that allows
|
FreeType 2 includes a powerful and flexible build system that allows
|
||||||
you to easily compile it on a great variety of platforms from the
|
you to easily compile it on a great variety of platforms from the
|
||||||
command line. To do so, just follow these simple instructions:
|
command line. To do so, just follow these simple instructions:
|
||||||
|
|
||||||
a. Install GNU Make
|
1. Install GNU Make
|
||||||
|
-------------------
|
||||||
|
|
||||||
Because GNU Make is the only Make tool supported to compile
|
Because GNU Make is the only Make tool supported to compile
|
||||||
FreeType 2, you should install it on your machine.
|
FreeType 2, you should install it on your machine.
|
||||||
|
|
||||||
The FreeType 2 build system relies on many features special to GNU
|
The FreeType 2 build system relies on many features special to GNU
|
||||||
Make -- trying to build the library with any other Make tool will
|
Make -- trying to build the library with any other Make tool will
|
||||||
*fail*.
|
*fail*.
|
||||||
|
|
||||||
NEARLY ALL OTHER MAKE TOOLS WILL FAIL, INCLUDING "BSD MAKE", SO
|
NEARLY ALL OTHER MAKE TOOLS WILL FAIL, INCLUDING "BSD MAKE", SO
|
||||||
REALLY INSTALL A RECENT VERSION OF GNU MAKE ON YOUR SYSTEM!
|
REALLY INSTALL A RECENT VERSION OF GNU MAKE ON YOUR SYSTEM!
|
||||||
|
|
||||||
Make sure that you are invoking GNU Make from the command line, by
|
Note that make++, a make tool written in Perl, supports enough
|
||||||
|
features of GNU make to compile FreeType. See
|
||||||
|
http://makepp.sourceforge.net for more information.
|
||||||
|
|
||||||
|
Make sure that you are invoking GNU Make from the command line, by
|
||||||
typing something like:
|
typing something like:
|
||||||
|
|
||||||
make -v
|
make -v
|
||||||
|
|
||||||
to display its version number.
|
to display its version number.
|
||||||
|
|
||||||
VERSION 3.78.1 OR NEWER IS NEEDED!
|
VERSION 3.78.1 OR NEWER IS NEEDED!
|
||||||
|
|
||||||
|
|
||||||
|
2. Invoke 'make'
|
||||||
|
----------------
|
||||||
|
|
||||||
b. Invoke 'make'
|
Go to the root directory of FreeType 2, then simply invoke GNU Make
|
||||||
|
from the command line. This will launch the FreeType 2 host
|
||||||
Go to the root directory of FreeType 2, then simply invoke GNU
|
platform detection routines. A summary will be displayed, for
|
||||||
Make from the command line. This will launch the FreeType 2 host
|
|
||||||
platform detection routines. A summary will be displayed, for
|
|
||||||
example, on Win32:
|
example, on Win32:
|
||||||
|
|
||||||
|
|
||||||
==============================================================
|
==============================================================
|
||||||
FreeType build system -- automatic system detection
|
FreeType build system -- automatic system detection
|
||||||
|
|
||||||
The following settings are used:
|
The following settings are used:
|
||||||
|
|
||||||
platform win32
|
platform win32
|
||||||
compiler gcc
|
compiler gcc
|
||||||
configuration directory ./builds/win32
|
configuration directory ./builds/win32
|
||||||
configuration rules ./builds/win32/w32-gcc.mk
|
configuration rules ./builds/win32/w32-gcc.mk
|
||||||
|
|
||||||
If this does not correspond to your system or settings please
|
If this does not correspond to your system or settings please
|
||||||
remove the file 'config.mk' from this directory then read the
|
remove the file 'config.mk' from this directory then read the
|
||||||
INSTALL file for help.
|
INSTALL file for help.
|
||||||
|
|
||||||
Otherwise, simply type 'make' again to build the library.
|
Otherwise, simply type 'make' again to build the library.
|
||||||
=============================================================
|
=============================================================
|
||||||
|
|
||||||
|
|
||||||
If the detected settings correspond to your platform and compiler,
|
If the detected settings correspond to your platform and compiler,
|
||||||
skip to step e. Note that if your platform is completely alien to
|
skip to step 5. Note that if your platform is completely alien to
|
||||||
the build system, the detected platform will be 'ansi'.
|
the build system, the detected platform will be 'ansi'.
|
||||||
|
|
||||||
|
|
||||||
c. Configure the build system for a different compiler
|
3. Configure the build system for a different compiler
|
||||||
|
------------------------------------------------------
|
||||||
|
|
||||||
If the build system correctly detected your platform, but you want
|
If the build system correctly detected your platform, but you want
|
||||||
to use a different compiler than the one specified in the summary
|
to use a different compiler than the one specified in the summary
|
||||||
(for most platforms, gcc is the defaut compiler), invoke GNU Make
|
(for most platforms, gcc is the defaut compiler), invoke GNU Make
|
||||||
with
|
with
|
||||||
|
|
||||||
make setup <compiler>
|
make setup <compiler>
|
||||||
|
|
||||||
For example:
|
Examples:
|
||||||
|
|
||||||
to use Visual C++ on Win32, type: "make setup visualc"
|
to use Visual C++ on Win32, type: "make setup visualc"
|
||||||
to use Borland C++ on Win32, type "make setup bcc32"
|
to use Borland C++ on Win32, type "make setup bcc32"
|
||||||
to use Watcom C++ on Win32, type "make setup watcom"
|
to use Watcom C++ on Win32, type "make setup watcom"
|
||||||
to use Intel C++ on Win32, type "make setup intelc"
|
to use Intel C++ on Win32, type "make setup intelc"
|
||||||
to use LCC-Win32 on Win32, type: "make setup lcc"
|
to use LCC-Win32 on Win32, type: "make setup lcc"
|
||||||
to use Watcom C++ on OS/2, type "make setup watcom"
|
to use Watcom C++ on OS/2, type "make setup watcom"
|
||||||
to use VisualAge C++ on OS/2, type "make setup visualage"
|
to use VisualAge C++ on OS/2, type "make setup visualage"
|
||||||
|
|
||||||
The <compiler> name to use is platform-dependent. The list of
|
The <compiler> name to use is platform-dependent. The list of
|
||||||
available compilers for your system is available in the file
|
available compilers for your system is available in the file
|
||||||
`builds/<system>/detect.mk'
|
`builds/<system>/detect.mk'
|
||||||
|
|
||||||
If you are satisfied by the new configuration summary, skip to
|
If you are satisfied by the new configuration summary, skip to
|
||||||
step e.
|
step 5.
|
||||||
|
|
||||||
d. Configure the build system for an unknown platform/compiler
|
|
||||||
|
|
||||||
The auto-detection/setup phase of the build system copies a file
|
4. Configure the build system for an unknown platform/compiler
|
||||||
to the current directory under the name `config.mk'.
|
--------------------------------------------------------------
|
||||||
|
|
||||||
For example, on OS/2+gcc, it would simply copy
|
The auto-detection/setup phase of the build system copies a file to
|
||||||
|
the current directory under the name `config.mk'.
|
||||||
|
|
||||||
|
For example, on OS/2+gcc, it would simply copy
|
||||||
`builds/os2/os2-gcc.mk' to `./config.mk'.
|
`builds/os2/os2-gcc.mk' to `./config.mk'.
|
||||||
|
|
||||||
If for some reason your platform isn't correctly detected, copy
|
If for some reason your platform isn't correctly detected, copy
|
||||||
manually the configuration sub-makefile to `./config.mk' and go to
|
manually the configuration sub-makefile to `./config.mk' and go to
|
||||||
step e.
|
step 5.
|
||||||
|
|
||||||
Note that this file is a sub-Makefile used to specify Make
|
Note that this file is a sub-Makefile used to specify Make variables
|
||||||
variables for compiler and linker invocation during the build.
|
for compiler and linker invocation during the build. You can easily
|
||||||
You can easily create your own version from one of the existing
|
create your own version from one of the existing configuration
|
||||||
configuration files, then copy it to the current directory under
|
files, then copy it to the current directory under the name
|
||||||
the name `./config.mk'.
|
`./config.mk'.
|
||||||
|
|
||||||
e. Build the library
|
|
||||||
|
|
||||||
The auto-detection/setup phase should have copied a file in the
|
5. Build the library
|
||||||
current directory, called `./config.mk'. This file contains
|
--------------------
|
||||||
definitions of various Make variables used to invoke the compiler
|
|
||||||
|
The auto-detection/setup phase should have copied a file in the
|
||||||
|
current directory, called `./config.mk'. This file contains
|
||||||
|
definitions of various Make variables used to invoke the compiler
|
||||||
and linker during the build.
|
and linker during the build.
|
||||||
|
|
||||||
To launch the build, simply invoke GNU Make again: The top
|
To launch the build, simply invoke GNU Make again: The top Makefile
|
||||||
Makefile will detect the configuration file and run the build with
|
will detect the configuration file and run the build with it.
|
||||||
it.
|
|
||||||
|
|
||||||
|
|
||||||
|
Final note
|
||||||
Final note:
|
|
||||||
|
|
||||||
the build system builds a statically linked library of the font engine
|
The build system builds a statically linked library of the font
|
||||||
in the "objs" directory. It does _not_ support the build of DLLs on
|
engine in the "objs" directory. It does _not_ support the build of
|
||||||
Windows and OS/2, if you need these, you'll have to either use
|
DLLs on Windows and OS/2. If you need these, you have to either use
|
||||||
a IDE-specific project file, or follow the instructions in
|
a IDE-specific project file, or follow the instructions in
|
||||||
"INSTALL.ANY" to create your own Makefiles.
|
"INSTALL.ANY" to create your own Makefiles.
|
||||||
|
|
||||||
|
|
||||||
|
--- end of INSTALL.GNU ---
|
||||||
|
|
|
@ -1,181 +1,64 @@
|
||||||
This document contains instructions on how to build the FreeType library
|
This document contains instructions on how to build the FreeType library
|
||||||
on Unix systems. This also works for emulations like Cygwin or MSys on
|
on Unix systems. This also works for emulations like Cygwin or MSys on
|
||||||
Win32:
|
Win32:
|
||||||
|
|
||||||
|
|
||||||
I. Ensure that you are using GNU Make
|
1. Ensure that you are using GNU Make
|
||||||
-------------------------------------
|
-------------------------------------
|
||||||
|
|
||||||
The FreeType build system _exclusively_ works with GNU Make. You
|
The FreeType build system _exclusively_ works with GNU Make. You
|
||||||
will not be able to compile the library with the instructions
|
will not be able to compile the library with the instructions below
|
||||||
below using any other alternative (including BSD Make).
|
using any other alternative (including BSD Make).
|
||||||
|
|
||||||
Trying to compile the library with a different Make tool will
|
[Well, this is not really correct. Recently, a perl implementation
|
||||||
print a message like:
|
of make called `makepp' has appeared which can also build FreeType 2
|
||||||
|
successfully on Unix platforms. See http://makepp.sourceforge.net
|
||||||
|
for more details.]
|
||||||
|
|
||||||
|
Trying to compile the library with a different Make tool will print
|
||||||
|
a message like:
|
||||||
|
|
||||||
Sorry, GNU make is required to build FreeType2.
|
Sorry, GNU make is required to build FreeType2.
|
||||||
|
|
||||||
and the build process will be aborted. If this happens, install
|
and the build process will be aborted. If this happens, install GNU
|
||||||
GNU Make on your system, and use the GNUMAKE environment variable
|
Make on your system, and use the GNUMAKE environment variable to
|
||||||
to name it.
|
name it.
|
||||||
|
|
||||||
|
|
||||||
|
2. Build and install the library
|
||||||
|
--------------------------------
|
||||||
|
|
||||||
IV. Build and install the library
|
The following should work on all Unix systems where the `make'
|
||||||
---------------------------------
|
|
||||||
|
|
||||||
The following should work on all Unix systems where the 'make'
|
|
||||||
command invokes GNU Make:
|
command invokes GNU Make:
|
||||||
|
|
||||||
./configure --prefix=<yourprefix>
|
./configure [options]
|
||||||
make
|
make
|
||||||
make install (as root)
|
make install (as root)
|
||||||
|
|
||||||
where "<yourprefix>" must be replaced by the prefix returned by
|
The default installation path is "/usr/local". It can be changed
|
||||||
the "freetype-config" command.
|
with the `--prefix=<path>' option. Example:
|
||||||
|
|
||||||
When using a different command to invoke GNU Make, use the GNUMAKE
|
./configure --prefix=/usr
|
||||||
variable. For example, if `gmake' is the command to use on your
|
|
||||||
|
When using a different command to invoke GNU Make, use the GNUMAKE
|
||||||
|
variable. For example, if `gmake' is the command to use on your
|
||||||
system, do something like:
|
system, do something like:
|
||||||
|
|
||||||
GNUMAKE=gmake ./configure --prefix=<yourprefix>
|
GNUMAKE=gmake ./configure [options]
|
||||||
gmake
|
gmake
|
||||||
gmake install (as root)
|
gmake install (as root)
|
||||||
|
|
||||||
If this still doesn't work, something's rotten on your system(
|
If this still doesn't work, something's rotten on your system
|
||||||
(e.g. you're using a very old version of GNU Make)
|
(e.g. you are using a very old version of GNU Make).
|
||||||
|
|
||||||
|
It is possible to compile FreeType in a different directory.
|
||||||
|
Assuming the FreeType source files in directory `/src/freetype' a
|
||||||
|
compilation in directory `foo' works as follows:
|
||||||
|
|
||||||
|
cd foo
|
||||||
|
/src/freetype/configure [options]
|
||||||
|
make
|
||||||
|
make install
|
||||||
|
|
||||||
|
|
||||||
|
--- end of INSTALL.UNX --
|
||||||
I. Unix systems
|
|
||||||
---------------
|
|
||||||
|
|
||||||
If you have GNU Make installed, simply type
|
|
||||||
|
|
||||||
./configure
|
|
||||||
make
|
|
||||||
make install
|
|
||||||
|
|
||||||
on the command line to configure, build and install FreeType on your
|
|
||||||
system. Note that the default installation path is "/usr/local".
|
|
||||||
|
|
||||||
Please read the file README.UNX, it contains _critical_ information
|
|
||||||
regarding the installation of FreeType on many Unix systems.
|
|
||||||
|
|
||||||
|
|
||||||
II. From the command line
|
|
||||||
-------------------------
|
|
||||||
|
|
||||||
If you are not using Unix, there are two ways to quickly build
|
|
||||||
FreeType 2 from the command line.
|
|
||||||
|
|
||||||
The first, and favorite one, is to use the "Jam" build tool. Jam is
|
|
||||||
a highly portable replacement for Make whose control files do not
|
|
||||||
depend on the current platform or compiler toolset.
|
|
||||||
|
|
||||||
For more information, please see:
|
|
||||||
|
|
||||||
http://www.freetype.org/jam/index.html
|
|
||||||
|
|
||||||
The second one is to use "GNU Make" (and NO OTHER MAKE TOOL).
|
|
||||||
|
|
||||||
|
|
||||||
1. Building FT2 with "Jam"
|
|
||||||
--------------------------
|
|
||||||
|
|
||||||
Once you've got *our version* of the Jam tool installed on your
|
|
||||||
system, simply go to the top-level FT2 directory, then type
|
|
||||||
|
|
||||||
"jam"
|
|
||||||
|
|
||||||
on the command line. This will build the library and place it in
|
|
||||||
the "objs" directory.
|
|
||||||
|
|
||||||
By default, a static library is built. On Unix systems, it is
|
|
||||||
possible to build a shared library through the "libtool" script.
|
|
||||||
You need to have libtool installed on your system, then re-define
|
|
||||||
a few environment variables before invoking Jam, as in
|
|
||||||
|
|
||||||
export CC="libtool --mode=compile cc"
|
|
||||||
export LINK="libtool --mode=link cc"
|
|
||||||
jam
|
|
||||||
|
|
||||||
In later releases of FT2, building shared libraries with Jam
|
|
||||||
should become automatic on Unix systems.
|
|
||||||
|
|
||||||
|
|
||||||
2. Building FT2 with "GNU Make"
|
|
||||||
-------------------------------
|
|
||||||
|
|
||||||
You need to have GNU Make (version 3.78.1 or newer) installed on
|
|
||||||
your system to compile the library from the command line. This will
|
|
||||||
_NOT_ work with other make tools (including BSD make)!
|
|
||||||
|
|
||||||
[Well, this is not really correct. Recently, a perl implementation
|
|
||||||
of make called `makepp' has appeared which can also build FreeType 2
|
|
||||||
successfully on Unix platforms. See http://makepp.sourceforge.net
|
|
||||||
for more details.]
|
|
||||||
|
|
||||||
- Go to the `freetype2' directory.
|
|
||||||
|
|
||||||
- Unix (any C compiler should work):
|
|
||||||
|
|
||||||
- make setup (don't worry, this will invoke a configure script)
|
|
||||||
- make
|
|
||||||
- make install
|
|
||||||
|
|
||||||
Alternatively, you can pass parameters to the configure script
|
|
||||||
within the CFG variable, as in:
|
|
||||||
|
|
||||||
- make setup CFG="--prefix=/usr"
|
|
||||||
- make
|
|
||||||
- make install
|
|
||||||
|
|
||||||
If the configure script isn't run, try to add `unix' as a target
|
|
||||||
on the command line, e.g.:
|
|
||||||
|
|
||||||
- make setup unix CFG="--prefix=/opt/experimental"
|
|
||||||
|
|
||||||
|
|
||||||
- Windows:
|
|
||||||
|
|
||||||
We provide a version of GNU Make for Win32 on the FreeType site.
|
|
||||||
See http://www.freetype.org/download.html for details.
|
|
||||||
|
|
||||||
- gcc (Mingw, _not_ CygWin):
|
|
||||||
|
|
||||||
- make setup
|
|
||||||
- make
|
|
||||||
|
|
||||||
|
|
||||||
- Visual C++:
|
|
||||||
|
|
||||||
- make setup visualc
|
|
||||||
- make
|
|
||||||
|
|
||||||
|
|
||||||
- other compilers:
|
|
||||||
|
|
||||||
- make setup bcc32 -> Borland C++ 32 bits
|
|
||||||
- make setup intelc -> Intel C++
|
|
||||||
- make setup watcom -> Watcom C++
|
|
||||||
- make setup lcc -> Win32-LCC
|
|
||||||
|
|
||||||
|
|
||||||
If you want to build FreeType 2 in another directory, you must set
|
|
||||||
two environment variables, `OJB_DIR' and `TOP_DIR'. The former
|
|
||||||
gives the directory where the object files and the library should be
|
|
||||||
created (this directory must exist), the latter the top directory of
|
|
||||||
the FreeType 2 source tree. Example:
|
|
||||||
|
|
||||||
OBJ_DIR=~/freetype2.compiled TOP_DIR=~/freetype2 \
|
|
||||||
make -f$TOP_DIR/Makefile setup ansi
|
|
||||||
OBJ_DIR=~/freetype2.compiled TOP_DIR=~/freetype2 \
|
|
||||||
make -f$TOP_DIR/Makefile
|
|
||||||
|
|
||||||
On Unix boxes, calling `configure' from the build directory is
|
|
||||||
sufficient; it will build a small Makefile which calls the
|
|
||||||
FreeType 2 Makefile with the necessary parameters.
|
|
||||||
|
|
||||||
|
|
||||||
--- end of INSTALL --
|
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
How to build the freetype2 library on VMS
|
How to build the freetype2 library on VMS
|
||||||
-----------------------------------------
|
-----------------------------------------
|
||||||
|
|
||||||
Just type one of the following depending on the type of external entries you
|
Just type one of the following depending on the type of external entries
|
||||||
want:
|
you want:
|
||||||
|
|
||||||
mms
|
mms
|
||||||
|
|
||||||
|
@ -14,22 +14,23 @@ The library is avalaible in the directory
|
||||||
|
|
||||||
[.LIB]
|
[.LIB]
|
||||||
|
|
||||||
To compile applications using freetype2 you'll need to define the logical
|
To compile applications using FreeType 2 you have to define the logical
|
||||||
FREETYPE pointing to the directory
|
FREETYPE pointing to the directory
|
||||||
|
|
||||||
[.INCLUDE.FREETYPE]
|
[.INCLUDE.FREETYPE]
|
||||||
|
|
||||||
(i.e., if the directory in which this README.VMS file is located is
|
i.e., if the directory in which this INSTALL.VMS file is located is
|
||||||
$disk:[freetype] then define the logical with
|
$disk:[freetype] then define the logical with
|
||||||
|
|
||||||
define freetype $disk:[freetype.include.freetype]
|
define freetype $disk:[freetype.include.freetype]
|
||||||
|
|
||||||
This version has been tested with Compaq C V6.2-006 on OpenVMS Alpha V7.2-1.
|
This version has been tested with Compaq C V6.2-006 on OpenVMS Alpha
|
||||||
|
V7.2-1.
|
||||||
|
|
||||||
|
|
||||||
Any problems can be reported to
|
Any problems can be reported to
|
||||||
|
|
||||||
joukj@hrem.stm.tudelft.nl
|
Jouk Jansen <joukj@hrem.stm.tudelft.nl>
|
||||||
|
|
||||||
|
|
||||||
Jouk Jansen
|
--- end of INSTALL.VMS ---
|
||||||
|
|
|
@ -1,13 +1,23 @@
|
||||||
Note that the list of known bugs for FreeType 2 is now located in the
|
|
||||||
document "docs/BUGS".
|
|
||||||
|
|
||||||
Here is a list of items that need to be addressed in FreeType 2; they are
|
Here is a list of items that need to be addressed in FreeType 2; they are
|
||||||
not exactly bugs, but should be considered though:
|
not exactly bugs, but should be considered though:
|
||||||
|
|
||||||
* Implement stem3/counter hints properly in the Postscript hinter.
|
* Implement stem3/counter hints properly in the Postscript hinter.
|
||||||
|
|
||||||
* FInalize the cache sub-system. If has been in beta for too long :-)
|
* Finalize the cache sub-system. It has been in beta far too long :-)
|
||||||
|
|
||||||
* The automatic and Postscript hinters have been improved to increase
|
* The automatic and Postscript hinters have been improved to increase
|
||||||
the quality of AA text, but Monochrome and LCD hinting still suck. we
|
the quality of AA text, but Monochrome and LCD hinting still suck. We
|
||||||
need to do something about that..
|
need to do something about that.
|
||||||
|
|
||||||
|
* Add CIDCMap support to the CID driver.
|
||||||
|
|
||||||
|
* Add track kerning support to the Type1 and PFR driver and the API
|
||||||
|
(The degree of kerning, e.g. light, normal or tight, and
|
||||||
|
the glyph size has to be passed as parameter).
|
||||||
|
|
||||||
|
* Add kerning (AFM file) support to the CID driver.
|
||||||
|
|
||||||
|
* Possibly add support for reading PFM files.
|
||||||
|
|
||||||
|
|
||||||
|
--- end of TODO ---
|
||||||
|
|
|
@ -1,14 +1,14 @@
|
||||||
How to enable the TrueType native hinter if you need it
|
How to enable the TrueType native hinter if you need it
|
||||||
--------------------------------------------------------
|
--------------------------------------------------------
|
||||||
|
|
||||||
The TrueType bytecode interpreter is disabled in all public
|
The TrueType bytecode interpreter is disabled in all public releases
|
||||||
releases of the FreeType packages for patents reasons (see
|
of the FreeType packages for patents reasons (see
|
||||||
http://www.freetype.org/patents.html for more details).
|
http://www.freetype.org/patents.html for more details).
|
||||||
|
|
||||||
However, many Linux distributions do enable the interpreter in the
|
However, many Linux distributions do enable the interpreter in the
|
||||||
FreeType packages (DEB/RPM/etc.) they produce for their platforms.
|
FreeType packages (DEB/RPM/etc.) they produce for their platforms. If
|
||||||
If you are using TrueType fonts on your system, you most probably
|
you are using TrueType fonts on your system, you most probably want to
|
||||||
want to enable it manually by doing the following:
|
enable it manually by doing the following:
|
||||||
|
|
||||||
- open the file "include/freetype/config/ftoption.h"
|
- open the file "include/freetype/config/ftoption.h"
|
||||||
|
|
||||||
|
@ -20,4 +20,7 @@ How to enable the TrueType native hinter if you need it
|
||||||
|
|
||||||
#define TT_CONFIG_OPTION_BYTECODE_INTERPRETER
|
#define TT_CONFIG_OPTION_BYTECODE_INTERPRETER
|
||||||
|
|
||||||
of course, this must be done _before_ compiling the library
|
These steps must be done _before_ compiling the library.
|
||||||
|
|
||||||
|
|
||||||
|
--- end of TRUETYPE ---
|
||||||
|
|
|
@ -2,87 +2,88 @@
|
||||||
SPECIAL NOTE FOR UNIX USERS
|
SPECIAL NOTE FOR UNIX USERS
|
||||||
===========================
|
===========================
|
||||||
|
|
||||||
If you are installing this release of FreeType on a system that
|
If you are installing this release of FreeType on a system that
|
||||||
already uses release 2.0.5 (or even an older version), you have to
|
already uses release 2.0.5 (or even an older version), you have to
|
||||||
perform a few special steps to ensure that everything goes well.
|
perform a few special steps to ensure that everything goes well.
|
||||||
|
|
||||||
|
|
||||||
I. Enable the TrueType bytecode hinter if you need it
|
1. Enable the TrueType bytecode hinter if you need it
|
||||||
-----------------------------------------------------
|
-----------------------------------------------------
|
||||||
|
|
||||||
See the instructions in the file "TRUETYPE" of this directory.
|
See the instructions in the file "TRUETYPE" of this directory.
|
||||||
|
|
||||||
Note that FreeType supports TrueType fonts without the bytecode
|
Note that FreeType supports TrueType fonts without the bytecode
|
||||||
interpreter through its auto-hinter, which now generate relatively good
|
interpreter through its auto-hinter, which now generates relatively
|
||||||
results with most fonts.
|
good results with most fonts.
|
||||||
|
|
||||||
|
|
||||||
II. Determine the correct installation path
|
2. Determine the correct installation path
|
||||||
--------------------------------------------
|
------------------------------------------
|
||||||
|
|
||||||
By default, the source package will install the library in
|
By default, the configure script will install the library in
|
||||||
"/usr/local". However, many Unix distributions now install the
|
"/usr/local". However, many Unix distributions now install the
|
||||||
library in "/usr", since FreeType is becoming a critical system
|
library in "/usr", since FreeType is becoming a critical system
|
||||||
component.
|
component.
|
||||||
|
|
||||||
If FreeType is already installed on your system, type
|
If FreeType is already installed on your system, type
|
||||||
|
|
||||||
freetype-config --prefix
|
freetype-config --prefix
|
||||||
|
|
||||||
on the command line. This should return the installation path to
|
on the command line. This should return the installation path
|
||||||
use below (e.g. "/usr" or "/usr/local"). Otherwise, simply use
|
(e.g., "/usr" or "/usr/local"). To avoid problems of parallel
|
||||||
"/usr" (or what you think is adequate for your installation).
|
FreeType versions, use this path for the --prefix option of the
|
||||||
|
configure script.
|
||||||
|
|
||||||
|
Otherwise, simply use "/usr" (or whatever you think is adequate for
|
||||||
|
your installation).
|
||||||
|
|
||||||
|
|
||||||
|
3. Ensure that you are using GNU Make
|
||||||
|
-------------------------------------
|
||||||
|
|
||||||
III. Ensure that you are using GNU Make
|
The FreeType build system _exclusively_ works with GNU Make (as an
|
||||||
---------------------------------------
|
exception you can use make++ which emulates GNU Make sufficiently;
|
||||||
|
see http://makepp.sourceforge.net). You will not be able to compile
|
||||||
|
the library with the instructions below using any other alternative
|
||||||
|
(including BSD Make).
|
||||||
|
|
||||||
The FreeType build system _exclusively_ works with GNU Make. You
|
Trying to compile the library with a different Make tool will print
|
||||||
will not be able to compile the library with the instructions
|
a message like:
|
||||||
below using any other alternative (including BSD Make).
|
|
||||||
|
|
||||||
Trying to compile the library with a different Make tool will
|
|
||||||
print a message like:
|
|
||||||
|
|
||||||
Sorry, GNU make is required to build FreeType2.
|
Sorry, GNU make is required to build FreeType2.
|
||||||
|
|
||||||
and the build process will be aborted. If this happens, install
|
and the build process will be aborted. If this happens, install GNU
|
||||||
GNU Make on your system, and use the GNUMAKE environment variable
|
Make on your system, and use the GNUMAKE environment variable to
|
||||||
to name it.
|
name it.
|
||||||
|
|
||||||
|
|
||||||
|
4. Build and install the library
|
||||||
|
--------------------------------
|
||||||
|
|
||||||
IV. Build and install the library
|
The following should work on all Unix systems where the `make'
|
||||||
---------------------------------
|
|
||||||
|
|
||||||
The following should work on all Unix systems where the `make'
|
|
||||||
command invokes GNU Make:
|
command invokes GNU Make:
|
||||||
|
|
||||||
./configure --prefix=<yourprefix>
|
./configure --prefix=<yourprefix>
|
||||||
make
|
make
|
||||||
make install (as root)
|
make install (as root)
|
||||||
|
|
||||||
where "<yourprefix>" must be replaced by the prefix returned by
|
where "<yourprefix>" must be replaced by the prefix returned by the
|
||||||
the "freetype-config" command.
|
"freetype-config" command.
|
||||||
|
|
||||||
When using a different command to invoke GNU Make, use the GNUMAKE
|
When using a different command to invoke GNU Make, use the GNUMAKE
|
||||||
variable. For example, if `gmake' is the command to use on your
|
variable. For example, if `gmake' is the command to use on your
|
||||||
system, do something like:
|
system, do something like:
|
||||||
|
|
||||||
GNUMAKE=gmake ./configure --prefix=<yourprefix>
|
GNUMAKE=gmake ./configure --prefix=<yourprefix>
|
||||||
gmake
|
gmake
|
||||||
gmake install (as root)
|
gmake install (as root)
|
||||||
|
|
||||||
If this still doesn't work, read the detailed compilation
|
|
||||||
procedure available in the file "docs/BUILD" for troubleshooting.
|
|
||||||
|
|
||||||
|
5. Take care of XFree86 version 4
|
||||||
V. Take care of XFree86 version 4
|
|
||||||
---------------------------------
|
---------------------------------
|
||||||
|
|
||||||
Certain recent Linux distributions will install _several_ versions
|
Certain recent Linux distributions will install _several_ versions
|
||||||
of FreeType on your system. For example, on a fresh Mandrake 8.1
|
of FreeType on your system. For example, on a fresh Mandrake 8.1
|
||||||
system, you can find the following files:
|
system, you can find the following files:
|
||||||
|
|
||||||
/usr/lib/libfreetype.so which links to
|
/usr/lib/libfreetype.so which links to
|
||||||
|
@ -93,22 +94,21 @@ SPECIAL NOTE FOR UNIX USERS
|
||||||
/usr/X11R6/lib/libfreetype.so which links to
|
/usr/X11R6/lib/libfreetype.so which links to
|
||||||
/usr/X11R6/lib/libfreetype.6.0.so
|
/usr/X11R6/lib/libfreetype.6.0.so
|
||||||
|
|
||||||
Note that these files correspond to two distinct versions of the
|
Note that these files correspond to two distinct versions of the
|
||||||
library! It seems that this surprising issue is due to the
|
library! It seems that this surprising issue is due to the install
|
||||||
install scripts of recent XFree86 servers (from 4.1.0) which
|
scripts of recent XFree86 servers (from 4.1.0) which install their
|
||||||
irremediably install their own (dated) version of the library in
|
own (dated) version of the library in "/usr/X11R6/lib".
|
||||||
"/usr/X11R6/lib".
|
|
||||||
|
|
||||||
In certain _rare_ cases you may experience minor problems if you
|
In certain _rare_ cases you may experience minor problems if you
|
||||||
install this release of the library in "/usr" only, namely, that
|
install this release of the library in "/usr" only, namely, that
|
||||||
certain applications will not benefit from the bug fixes and
|
certain applications will not benefit from the bug fixes and
|
||||||
rendering improvements you'd expect.
|
rendering improvements you would expect.
|
||||||
|
|
||||||
There are two good ways to deal with this situation:
|
There are two good ways to deal with this situation:
|
||||||
|
|
||||||
- Install the library _twice_, in "/usr" and in "/usr/X11R6"
|
- Install the library _twice_, in "/usr" and in "/usr/X11R6" (you
|
||||||
(you have to do that each time you install a new FreeType
|
have to do that each time you install a new FreeType release
|
||||||
release though).
|
though).
|
||||||
|
|
||||||
- Change the link in /usr/X11R6/lib/libfreetype.so to point to
|
- Change the link in /usr/X11R6/lib/libfreetype.so to point to
|
||||||
|
|
||||||
|
@ -118,7 +118,10 @@ SPECIAL NOTE FOR UNIX USERS
|
||||||
|
|
||||||
/usr/X11R6/lib/libfreetype.6.0.so
|
/usr/X11R6/lib/libfreetype.6.0.so
|
||||||
|
|
||||||
The FreeType Team is not responsible for this problem, so please
|
The FreeType Team is not responsible for this problem, so please
|
||||||
contact either the XFree86 development team or your Linux
|
contact either the XFree86 development team or your Linux
|
||||||
distributor to help clear this issue in case the information given
|
distributor to help clear this issue in case the information given
|
||||||
here doesn't help.
|
here doesn't help.
|
||||||
|
|
||||||
|
|
||||||
|
---- end of UPGRADE.UNX ---
|
||||||
|
|
|
@ -1,90 +1,104 @@
|
||||||
Due to our use of "libtool" to generate and install the FreeType 2 libraries
|
Due to our use of "libtool" to generate and install the FreeType 2
|
||||||
on Unix systems, as well as other historical events, it is generally very
|
libraries on Unix systems, as well as other historical events, it is
|
||||||
difficult to know precisely which release of the font engine is installed
|
generally very difficult to know precisely which release of the font
|
||||||
on a given system.
|
engine is installed on a given system.
|
||||||
|
|
||||||
This file tries to explain why and to document ways to properly detect
|
This file tries to explain why and to document ways to properly detect
|
||||||
FreeType on Unix.
|
FreeType on Unix.
|
||||||
|
|
||||||
|
|
||||||
I. Version & Release numbers:
|
1. Version & Release numbers
|
||||||
|
----------------------------
|
||||||
|
|
||||||
For each new public release of FreeType 2, there are generally *three*
|
For each new public release of FreeType 2, there are generally *three*
|
||||||
distinct "version" numbers to consider:
|
distinct "version" numbers to consider:
|
||||||
|
|
||||||
* the official FT2 release number, like 2.0.9, or 2.1.3
|
* The official FT2 release number, like 2.0.9, or 2.1.3.
|
||||||
|
|
||||||
* the libtool (and Unix) specific version number, like "9.2.3". This
|
* The libtool (and Unix) specific version number, like "9.2.3". This
|
||||||
is what "freetype-config --version" will return
|
is what "freetype-config --version" will return.
|
||||||
|
|
||||||
* the platform-specific shared object number, used for example when
|
* The platform-specific shared object number, used for example when
|
||||||
the library is installed as "/usr/lib/libfreetype.so.6.3.2"
|
the library is installed as "/usr/lib/libfreetype.so.6.3.2".
|
||||||
|
|
||||||
|
The platform-specific number is, unsurprisingly, platform-specific and
|
||||||
|
varies with the operating system you are using (several variants of
|
||||||
|
Linux, FreeBSD, Solaris, etc.). You should thus _never_ use it, even
|
||||||
|
for simple tests.
|
||||||
|
|
||||||
the platform-specific number is, unsurprisingly, platform-specific and varies
|
The libtool-specific number does not equal the release number but is
|
||||||
with the operating system you're using (several variants of Linux, FreeBSD,
|
tied to it.
|
||||||
Solaris, etc...). You should thus _never_ use it, even for simple tests.
|
|
||||||
|
|
||||||
the libtool-specific number does not equal the release number but is tied
|
The release number is available at *compile* time through the following
|
||||||
to it.
|
|
||||||
|
|
||||||
the release number is available at *compile* time through the following
|
|
||||||
macros defined in FT_FREETYPE_H:
|
macros defined in FT_FREETYPE_H:
|
||||||
|
|
||||||
- FREETYPE_MAJOR : major release number
|
- FREETYPE_MAJOR : major release number
|
||||||
- FREETYPE_MINOR : minor release number
|
- FREETYPE_MINOR : minor release number
|
||||||
- FREETYPE_PATCH : patch release number
|
- FREETYPE_PATCH : patch release number
|
||||||
|
|
||||||
see below for some Autoconf fragment to
|
See below for a small autoconf fragment.
|
||||||
|
|
||||||
|
The release number is also available at *runtime* through the
|
||||||
|
"FT_Library_Version" API. Unfortunately, this one wasn't available or
|
||||||
|
working correctly before the 2.1.3 official release.
|
||||||
|
|
||||||
|
|
||||||
the release number is also available at *runtime* through the
|
2. History
|
||||||
"FT_Library_Version" API. Unfortunately, this one wasn't available or
|
----------
|
||||||
working correctly before the 2.1.3 official release !!
|
|
||||||
|
The following table gives, for each official release, the corresponding
|
||||||
|
libtool number, as well as the shared object number found on _most_
|
||||||
|
systems, but not all of them:
|
||||||
|
|
||||||
|
release libtool so
|
||||||
|
--------------------------------------------------------------------
|
||||||
|
2.1.5 9.4.3 6.3.4
|
||||||
|
2.1.4 9.3.3 6.3.3
|
||||||
|
2.1.3 9.2.3 6.3.2
|
||||||
|
2.1.2 9.1.3 6.3.1
|
||||||
|
2.1.1 9.0.3 ?
|
||||||
|
2.1.0 8.0.2 ?
|
||||||
|
2.0.9 9.0.3 ?
|
||||||
|
2.0.8 8.0.2 ?
|
||||||
|
|
||||||
|
The libtool numbers are a bit inconsistent due to the library's history:
|
||||||
|
|
||||||
|
- 2.1.0 was created as a development branch from 2.0.8 (hence the same
|
||||||
|
libtool numbers).
|
||||||
|
|
||||||
|
- 2.0.9 was a bug-fix release of the "stable" branch, and we
|
||||||
|
incorrectly increased its libtool number.
|
||||||
|
|
||||||
|
- 2.1.4 is still in the "development" branch, however it is stable
|
||||||
|
enough to be the basis of an upcoming 2.2.0 release.
|
||||||
|
|
||||||
|
|
||||||
II. Table:
|
3. Autoconf Code Fragment
|
||||||
|
-------------------------
|
||||||
|
|
||||||
the following is a simple table that gives, for each official release,
|
Lars Clausen contributed the following autoconf fragment to detect which
|
||||||
the corresponding libtool number, as well as the shared object number
|
version of FreeType is installed on a system. This one tests for a
|
||||||
found on _most_ systems, but not all of them:
|
version that is at least 2.0.9; you should change it to check against
|
||||||
|
other release numbers.
|
||||||
release libtool so
|
|
||||||
-------------------------------------
|
|
||||||
2.1.4 9.3.3 6.3.3
|
|
||||||
2.1.3 9.2.3 6.3.2
|
|
||||||
2.1.2 9.1.3 6.3.1
|
|
||||||
2.1.1 9.0.3 ?
|
|
||||||
2.1.0 8.0.2 ?
|
|
||||||
2.0.9 9.0.3 ?
|
|
||||||
2.0.8 8.0.2 ?
|
|
||||||
|
|
||||||
the libtool numbers are a bit inconsistent due to the library's history:
|
|
||||||
|
|
||||||
- 2.1.0 was created as a development branch from 2.0.8
|
|
||||||
(hence the same libtool numbers)
|
|
||||||
|
|
||||||
- 2.0.9 was a bug-fix release of the "stable" branch, we
|
|
||||||
apparently incorrectly increased its libtool number
|
|
||||||
|
|
||||||
- 2.1.4 is still in the "development" branch, however it's stable enough
|
|
||||||
to be the basis of an upcoming 2.2.0 release
|
|
||||||
|
|
||||||
|
|
||||||
|
AC_MSG_CHECKING([whether FreeType version is 2.0.9 or higher])
|
||||||
|
old_CPPFLAGS="$CPPFLAGS"
|
||||||
|
CPPFLAGS=`freetype-config --cflags`
|
||||||
|
AC_TRY_CPP([
|
||||||
|
#include <freetype/freetype.h>
|
||||||
|
#if (FREETYPE_MAJOR*1000 + FREETYPE_MINOR)*1000 + FREETYPE_PATCH < 2000009
|
||||||
|
#error Freetype version too low.
|
||||||
|
#endif
|
||||||
|
],[
|
||||||
|
AC_MSG_RESULT(yes)
|
||||||
|
FREETYPE_LIBS=`freetype-config --libs`
|
||||||
|
AC_SUBST(FREETYPE_LIBS)
|
||||||
|
AC_DEFINE(HAVE_FREETYPE,1,[Define if you have the FreeType2 library])
|
||||||
|
CPPFLAGS="$old_CPPFLAGS"
|
||||||
|
],[
|
||||||
|
AC_MSG_ERROR([Need FreeType library version 2.0.9 or higher])
|
||||||
|
])
|
||||||
|
|
||||||
III. AutoConf Code Fragment:
|
|
||||||
|
|
||||||
Lars Clausen contributed the following Autoconf fragment to detect at
|
|
||||||
which version of FreeType is installed on your system. This one tests
|
|
||||||
for a version that is at least 2.0.9, you should change the last line to
|
|
||||||
check against other release numbers.
|
|
||||||
|
|
||||||
AC_MSG_CHECKING([for version of FreeType])
|
|
||||||
FREETYPE_INCLUDE=`freetype-config --cflags | cut -c3-`
|
|
||||||
FREETYPE_MAJOR=`grep '^#define FREETYPE_MAJOR' $FREETYPE_INCLUDE/freetype/freetype.h | cut -d' ' -f3`
|
|
||||||
FREETYPE_MINOR=`grep '^#define FREETYPE_MINOR' $FREETYPE_INCLUDE/freetype/freetype.h | cut -d' ' -f3`
|
|
||||||
FREETYPE_PATCH=`grep '^#define FREETYPE_PATCH' $FREETYPE_INCLUDE/freetype/freetype.h | cut -d' ' -f3`
|
|
||||||
FREETYPE_VERSION=`echo | awk "BEGIN { printf \"%d\", ($FREETYPE_MAJOR * 1000 + $FREETYPE_MINOR) * 1000 + $FREETYPE_PATCH;}"`
|
|
||||||
AC_MSG_RESULT([$FREETYPE_MAJOR.$FREETYPE_MINOR.$FREETYPE_PATCH])
|
|
||||||
if test "$FREETYPE_VERSION" -ge 2000009; then
|
|
||||||
|
|
||||||
|
--- end of VERSION.DLL ---
|
||||||
|
|
|
@ -1,28 +1,25 @@
|
||||||
|
|
||||||
The FreeType 2 font engine is copyrighted work, and cannot be
|
The FreeType 2 font engine is copyrighted work and cannot be used
|
||||||
used legally without a software license. In order to make this
|
legally without a software license. In order to make this project
|
||||||
project usable to a vast majority of developers, we distribute it
|
usable to a vast majority of developers, we distribute it under two
|
||||||
under two dual licenses.
|
mutually exclusive licenses.
|
||||||
|
|
||||||
What this means is that *you* must choose *one* license among those
|
This means that *you* must choose *one* license of the two described
|
||||||
described below, then obey all its terms and conditions when using
|
below, then obey all its terms and conditions when using FreeType 2 in
|
||||||
FreeType 2 in any of your projects or products:
|
any of your projects or products.
|
||||||
|
|
||||||
|
- The FreeType License, found in the file "FTL.TXT", which is an
|
||||||
|
BSD-style open-source license *with* an advertising clause that
|
||||||
|
forces you to explicitely cite the FreeType project in your
|
||||||
|
product's documentation. All details are in the license file.
|
||||||
|
|
||||||
|
- The GNU General Public License, found in "GPL.TXT", which is the
|
||||||
|
traditionnal and "viral" GPL license that forces you to redistribute
|
||||||
|
the _complete_ sources of all your products that use FreeType 2.
|
||||||
|
|
||||||
|
Note that the contributed PCF driver comes with a license similar to
|
||||||
|
that of X Window System which is compatible to the above two licenses
|
||||||
|
(see file src/pcf/readme).
|
||||||
|
|
||||||
|
|
||||||
- The FreeType License, found in the file "FTL.TXT", which is
|
--- end of licence.txt ---
|
||||||
an BSD-style open-source license *with* an advertising
|
|
||||||
clause that forces you to explicitely cite the
|
|
||||||
FreeType project in your product's documentation. All
|
|
||||||
details are in the license file
|
|
||||||
|
|
||||||
|
|
||||||
- The GNU General Public License, found in "GPL.TXT", which is
|
|
||||||
the traditionnal and "viral" GPL license, that
|
|
||||||
forces you to redistribute the _complete_ sources of all
|
|
||||||
your products that simply use FreeType 2.
|
|
||||||
|
|
||||||
|
|
||||||
Note that the contributed PCF driver comes with a license similar to
|
|
||||||
that of X Window System which is compatible to the above two
|
|
||||||
licenses (see file src/pcf/readme).
|
|
||||||
|
|
||||||
|
|
2
reactos/lib/freetype/docs/reference/README
Normal file
2
reactos/lib/freetype/docs/reference/README
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
After saying `make refdoc' this directory contains the FreeType API
|
||||||
|
reference. You need python to make this target.
|
18
reactos/lib/freetype/docs/release
Normal file
18
reactos/lib/freetype/docs/release
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
How to prepare a new release
|
||||||
|
----------------------------
|
||||||
|
|
||||||
|
. include/freetype/freetype.h: Update FREETYPE_MAJOR, FREETYPE_MINOR, and
|
||||||
|
FREETYPE_PATCH.
|
||||||
|
|
||||||
|
. builds/unix/configure.ac (version_info): Update according to the libtool
|
||||||
|
rules, then regenerate the configure script.
|
||||||
|
|
||||||
|
. builds/freetype.mk (refdoc): Update the --title option.
|
||||||
|
|
||||||
|
. docs/CHANGES: Document differences to last release.
|
||||||
|
|
||||||
|
. README: Update.
|
||||||
|
|
||||||
|
. docs/VERSION.DLL: Document changed version_info.
|
||||||
|
|
||||||
|
. ChangeLog: Announce new release.
|
|
@ -97,7 +97,6 @@ FT_Select_Charmap
|
||||||
FT_Set_Char_Size
|
FT_Set_Char_Size
|
||||||
FT_Set_Charmap
|
FT_Set_Charmap
|
||||||
FT_Set_Debug_Hook
|
FT_Set_Debug_Hook
|
||||||
FT_Set_Hint_Flags
|
|
||||||
FT_Set_Pixel_Sizes
|
FT_Set_Pixel_Sizes
|
||||||
FT_Set_Renderer
|
FT_Set_Renderer
|
||||||
FT_Set_Transform
|
FT_Set_Transform
|
||||||
|
@ -245,9 +244,7 @@ t1_cmap_expert_class_rec
|
||||||
t1_cmap_standard_class_rec
|
t1_cmap_standard_class_rec
|
||||||
t1_cmap_unicode_class_rec
|
t1_cmap_unicode_class_rec
|
||||||
t1_decoder_funcs
|
t1_decoder_funcs
|
||||||
ps1_hints_apply
|
ps_hints_apply
|
||||||
ps2_hints_apply
|
|
||||||
ps3_hints_apply
|
|
||||||
pshinter_module_class
|
pshinter_module_class
|
||||||
psnames_module_class
|
psnames_module_class
|
||||||
ft_raster1_renderer_class
|
ft_raster1_renderer_class
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
/* */
|
/* */
|
||||||
/* FreeType charmap cache (specification). */
|
/* FreeType charmap cache (specification). */
|
||||||
/* */
|
/* */
|
||||||
/* Copyright 2000-2001 by */
|
/* Copyright 2000-2001, 2003 by */
|
||||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||||
/* */
|
/* */
|
||||||
/* This file is part of the FreeType project, and may only be used, */
|
/* This file is part of the FreeType project, and may only be used, */
|
||||||
|
@ -36,7 +36,7 @@ FT_BEGIN_HEADER
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* @type: */
|
/* @type: */
|
||||||
/* FTC_CmapCache */
|
/* FTC_CMapCache */
|
||||||
/* */
|
/* */
|
||||||
/* @description: */
|
/* @description: */
|
||||||
/* An opaque handle used to manager a charmap cache. This cache is */
|
/* An opaque handle used to manager a charmap cache. This cache is */
|
||||||
|
@ -54,8 +54,8 @@ FT_BEGIN_HEADER
|
||||||
/* A handle to an @FTC_CMapDescRec structure used to describe a given */
|
/* A handle to an @FTC_CMapDescRec structure used to describe a given */
|
||||||
/* charmap in a charmap cache. */
|
/* charmap in a charmap cache. */
|
||||||
/* */
|
/* */
|
||||||
/* Each @FTC_CMapDesc describes which charmap (of which @FTC_Face) we */
|
/* Each @FTC_CMapDesc describes which charmap (of which @FTC_FaceID) */
|
||||||
/* want to use in @FTC_CMapCache_Lookup. */
|
/* we want to use in @FTC_CMapCache_Lookup. */
|
||||||
/* */
|
/* */
|
||||||
typedef struct FTC_CMapDescRec_* FTC_CMapDesc;
|
typedef struct FTC_CMapDescRec_* FTC_CMapDesc;
|
||||||
|
|
||||||
|
@ -66,8 +66,8 @@ FT_BEGIN_HEADER
|
||||||
/* FTC_CMapType */
|
/* FTC_CMapType */
|
||||||
/* */
|
/* */
|
||||||
/* @description: */
|
/* @description: */
|
||||||
/* The list of valid @FTC_CMap types. They indicate how we want to */
|
/* The list of valid @FTC_CMapDesc types. They indicate how we want */
|
||||||
/* address a charmap within an @FTC_FaceID. */
|
/* to address a charmap within an @FTC_FaceID. */
|
||||||
/* */
|
/* */
|
||||||
/* @values: */
|
/* @values: */
|
||||||
/* FTC_CMAP_BY_INDEX :: */
|
/* FTC_CMAP_BY_INDEX :: */
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
/* */
|
/* */
|
||||||
/* FreeType abstract glyph cache (specification). */
|
/* FreeType abstract glyph cache (specification). */
|
||||||
/* */
|
/* */
|
||||||
/* Copyright 2000-2001 by */
|
/* Copyright 2000-2001, 2003 by */
|
||||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||||
/* */
|
/* */
|
||||||
/* This file is part of the FreeType project, and may only be used, */
|
/* This file is part of the FreeType project, and may only be used, */
|
||||||
|
@ -120,10 +120,10 @@ FT_BEGIN_HEADER
|
||||||
FTC_GLYPH_FAMILY( gfam )->item_count )
|
FTC_GLYPH_FAMILY( gfam )->item_count )
|
||||||
|
|
||||||
/* compute a glyph request's hash value */
|
/* compute a glyph request's hash value */
|
||||||
#define FTC_GLYPH_FAMILY_HASH( gfam, gindex ) \
|
#define FTC_GLYPH_FAMILY_HASH( gfam, gindex ) \
|
||||||
( (FT_UFast)( \
|
( (FT_UFast)( \
|
||||||
( FTC_GLYPH_FAMILY( gfam )->hash << 16 ) | \
|
( FTC_GLYPH_FAMILY( gfam )->hash << 16 ) | \
|
||||||
( FTC_GLYPH_FAMILY_CHUNK( gfam, gindex ) & 0xFFFF ) ) )
|
( FTC_GLYPH_FAMILY_CHUNK( gfam, gindex ) & 0xFFFFU ) ) )
|
||||||
|
|
||||||
/* must be called in an FTC_Family_CompareFunc to update the query */
|
/* must be called in an FTC_Family_CompareFunc to update the query */
|
||||||
/* whenever a glyph set is matched in the lookup, or when it */
|
/* whenever a glyph set is matched in the lookup, or when it */
|
||||||
|
@ -138,8 +138,8 @@ FT_BEGIN_HEADER
|
||||||
} while ( 0 )
|
} while ( 0 )
|
||||||
|
|
||||||
/* retrieve glyph index of glyph node */
|
/* retrieve glyph index of glyph node */
|
||||||
#define FTC_GLYPH_NODE_GINDEX( x ) \
|
#define FTC_GLYPH_NODE_GINDEX( x ) \
|
||||||
( (FT_UInt)( FTC_GLYPH_NODE( x )->node.hash & 0xFFFF ) )
|
( (FT_UInt)( FTC_GLYPH_NODE( x )->node.hash & 0xFFFFU ) )
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
/* */
|
/* */
|
||||||
/* FreeType Image cache (specification). */
|
/* FreeType Image cache (specification). */
|
||||||
/* */
|
/* */
|
||||||
/* Copyright 2000-2001, 2002 by */
|
/* Copyright 2000-2001, 2002, 2003 by */
|
||||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||||
/* */
|
/* */
|
||||||
/* This file is part of the FreeType project, and may only be used, */
|
/* This file is part of the FreeType project, and may only be used, */
|
||||||
|
@ -202,18 +202,19 @@ FT_BEGIN_HEADER
|
||||||
/* scaled outline */
|
/* scaled outline */
|
||||||
#define ftc_image_outline ftc_image_format_outline
|
#define ftc_image_outline ftc_image_format_outline
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <Struct> */
|
/* <Struct> */
|
||||||
/* FTC_Image_Desc */
|
/* FTC_Image_Desc */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* THIS TYPE IS DEPRECATED. Use @FTC_ImageDesc instead. */
|
/* THIS TYPE IS DEPRECATED. Use @FTC_ImageTypeRec instead. */
|
||||||
/* */
|
/* */
|
||||||
/* A simple structure used to describe a given glyph image category. */
|
/* A simple structure used to describe a given glyph image category. */
|
||||||
/* */
|
/* */
|
||||||
/* <Fields> */
|
/* <Fields> */
|
||||||
/* size :: An @FTC_SizeRec used to describe the glyph's face */
|
/* font :: An @FTC_FontRec used to describe the glyph's face */
|
||||||
/* and size. */
|
/* and size. */
|
||||||
/* */
|
/* */
|
||||||
/* image_type :: The glyph image's type. */
|
/* image_type :: The glyph image's type. */
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
/* */
|
/* */
|
||||||
/* ANSI-specific configuration file (specification only). */
|
/* ANSI-specific configuration file (specification only). */
|
||||||
/* */
|
/* */
|
||||||
/* Copyright 1996-2001, 2002 by */
|
/* Copyright 1996-2001, 2002, 2003 by */
|
||||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||||
/* */
|
/* */
|
||||||
/* This file is part of the FreeType project, and may only be used, */
|
/* This file is part of the FreeType project, and may only be used, */
|
||||||
|
@ -108,7 +108,8 @@ FT_BEGIN_HEADER
|
||||||
/* This is the only necessary change, so it is defined here instead */
|
/* This is the only necessary change, so it is defined here instead */
|
||||||
/* providing a new configuration file. */
|
/* providing a new configuration file. */
|
||||||
/* */
|
/* */
|
||||||
#if defined( __APPLE__ ) || ( defined( __MWERKS__ ) && defined( macintosh ) )
|
#if ( defined( __APPLE__ ) && !defined( DARWIN_NO_CARBON ) ) || \
|
||||||
|
( defined( __MWERKS__ ) && defined( macintosh ) )
|
||||||
#define FT_MACINTOSH 1
|
#define FT_MACINTOSH 1
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -177,10 +178,10 @@ FT_BEGIN_HEADER
|
||||||
|
|
||||||
/* Watcom doesn't provide 64-bit data types */
|
/* Watcom doesn't provide 64-bit data types */
|
||||||
|
|
||||||
#elif defined( __MWKS__ ) /* Metrowerks CodeWarrior */
|
#elif defined( __MWERKS__ ) /* Metrowerks CodeWarrior */
|
||||||
|
|
||||||
/* I don't know if it provides 64-bit data types, any suggestion */
|
#define FT_LONG64
|
||||||
/* is welcome. */
|
#define FT_INT64 long long int
|
||||||
|
|
||||||
#elif defined( __GNUC__ )
|
#elif defined( __GNUC__ )
|
||||||
|
|
||||||
|
|
|
@ -509,7 +509,7 @@
|
||||||
/* */
|
/* */
|
||||||
|
|
||||||
#define FT_TRIGONOMETRY_H <freetype/fttrigon.h>
|
#define FT_TRIGONOMETRY_H <freetype/fttrigon.h>
|
||||||
#define FT_STROKER_H <freetype/ftstroker.h>
|
#define FT_STROKER_H <freetype/ftstroke.h>
|
||||||
#define FT_SYNTHESIS_H <freetype/ftsynth.h>
|
#define FT_SYNTHESIS_H <freetype/ftsynth.h>
|
||||||
#define FT_ERROR_DEFINITIONS_H <freetype/fterrdef.h>
|
#define FT_ERROR_DEFINITIONS_H <freetype/fterrdef.h>
|
||||||
|
|
||||||
|
@ -523,6 +523,8 @@
|
||||||
|
|
||||||
#define FT_INCREMENTAL_H <freetype/ftincrem.h>
|
#define FT_INCREMENTAL_H <freetype/ftincrem.h>
|
||||||
|
|
||||||
|
#define FT_TRUETYPE_UNPATENTED_H <freetype/ttunpat.h>
|
||||||
|
|
||||||
/* now include internal headers definitions from <freetype/internal/...> */
|
/* now include internal headers definitions from <freetype/internal/...> */
|
||||||
|
|
||||||
#define FT_INTERNAL_INTERNAL_H <freetype/internal/internal.h>
|
#define FT_INTERNAL_INTERNAL_H <freetype/internal/internal.h>
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
/* */
|
/* */
|
||||||
/* User-selectable configuration macros (specification only). */
|
/* User-selectable configuration macros (specification only). */
|
||||||
/* */
|
/* */
|
||||||
/* Copyright 1996-2001, 2002 by */
|
/* Copyright 1996-2001, 2002, 2003 by */
|
||||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||||
/* */
|
/* */
|
||||||
/* This file is part of the FreeType project, and may only be used, */
|
/* This file is part of the FreeType project, and may only be used, */
|
||||||
|
@ -81,16 +81,16 @@ FT_BEGIN_HEADER
|
||||||
/* by FreeType to speed up some computations. However, this will create */
|
/* by FreeType to speed up some computations. However, this will create */
|
||||||
/* some problems when compiling the library in strict ANSI mode. */
|
/* some problems when compiling the library in strict ANSI mode. */
|
||||||
/* */
|
/* */
|
||||||
/* For this reason, the use of 64-bit ints is normally disabled when */
|
/* For this reason, the use of 64-bit integers is normally disabled when */
|
||||||
/* the __STDC__ macro is defined. You can however disable this by */
|
/* the __STDC__ macro is defined. You can however disable this by */
|
||||||
/* defining here the macro FT_CONFIG_OPTION_FORCE_INT64. */
|
/* defining the macro FT_CONFIG_OPTION_FORCE_INT64 here. */
|
||||||
/* */
|
/* */
|
||||||
/* For most compilers, this will only create compilation warnings */
|
/* For most compilers, this will only create compilation warnings when */
|
||||||
/* when building the library. */
|
/* building the library. */
|
||||||
/* */
|
/* */
|
||||||
/* ObNote: The compiler-specific 64-bit integers are detected in the */
|
/* ObNote: The compiler-specific 64-bit integers are detected in the */
|
||||||
/* file "ftconfig.h" either statically, or through Autoconf */
|
/* file "ftconfig.h" either statically or through the */
|
||||||
/* on platforms that support it. */
|
/* `configure' script on supported platforms. */
|
||||||
/* */
|
/* */
|
||||||
#undef FT_CONFIG_OPTION_FORCE_INT64
|
#undef FT_CONFIG_OPTION_FORCE_INT64
|
||||||
|
|
||||||
|
@ -100,11 +100,11 @@ FT_BEGIN_HEADER
|
||||||
/* Gzip-compressed file support. */
|
/* Gzip-compressed file support. */
|
||||||
/* */
|
/* */
|
||||||
/* FreeType now handles font files that have been compressed with the */
|
/* FreeType now handles font files that have been compressed with the */
|
||||||
/* 'gzip' program. This is mostly used to parse many of the PCF files */
|
/* 'gzip' program. This is mostly used to parse many of the PCF files */
|
||||||
/* that come with XFree86. The implementation uses 'zlib' to */
|
/* that come with XFree86. The implementation uses `zlib' to */
|
||||||
/* partially uncompress the file on the fly (see src/base/ftgzip.c). */
|
/* partially uncompress the file on the fly (see src/base/ftgzip.c). */
|
||||||
/* */
|
/* */
|
||||||
/* Define this macro if you want to enable this "feature". Note that */
|
/* Define this macro if you want to enable this "feature". Note that */
|
||||||
/* this will however force you to link the zlib to any program that */
|
/* this will however force you to link the zlib to any program that */
|
||||||
/* also uses FreeType. */
|
/* also uses FreeType. */
|
||||||
/* */
|
/* */
|
||||||
|
@ -117,17 +117,17 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
/* This macro is only used when FT_CONFIG_OPTION_USE_ZLIB is defined. */
|
/* This macro is only used when FT_CONFIG_OPTION_USE_ZLIB is defined. */
|
||||||
/* It allows FreeType's "ftgzip" component to link to the system's */
|
/* It allows FreeType's "ftgzip" component to link to the system's */
|
||||||
/* installation of the ZLib library. This is useful on systems like */
|
/* installation of the ZLib library. This is useful on systems like */
|
||||||
/* Unix or VMS where it generally is already available. */
|
/* Unix or VMS where it generally is already available. */
|
||||||
/* */
|
/* */
|
||||||
/* If you let it undefined, the component will use its own copy */
|
/* If you let it undefined, the component will use its own copy */
|
||||||
/* of the zlib sources instead. These have been modified to be */
|
/* of the zlib sources instead. These have been modified to be */
|
||||||
/* included directly within the component and *not* export external */
|
/* included directly within the component and *not* export external */
|
||||||
/* function names. This allows you to link any program with FreeType */
|
/* function names. This allows you to link any program with FreeType */
|
||||||
/* _and_ ZLib without linking conflicts. */
|
/* _and_ ZLib without linking conflicts. */
|
||||||
/* */
|
/* */
|
||||||
/* do not #undef this macro here, since the build system might */
|
/* Do not #undef this macro here since the build system might define */
|
||||||
/* define for certain configurations */
|
/* it for certain configurations only. */
|
||||||
/* */
|
/* */
|
||||||
/* #define FT_CONFIG_OPTION_SYSTEM_ZLIB */
|
/* #define FT_CONFIG_OPTION_SYSTEM_ZLIB */
|
||||||
|
|
||||||
|
@ -167,6 +167,9 @@ FT_BEGIN_HEADER
|
||||||
/* will be later automatically defined as `extern return_type' to */
|
/* will be later automatically defined as `extern return_type' to */
|
||||||
/* allow normal compilation. */
|
/* allow normal compilation. */
|
||||||
/* */
|
/* */
|
||||||
|
/* Do not #undef these macros here since the build system might define */
|
||||||
|
/* them for certain configurations only. */
|
||||||
|
/* */
|
||||||
/* #define FT_EXPORT(x) extern x */
|
/* #define FT_EXPORT(x) extern x */
|
||||||
/* #define FT_EXPORT_DEF(x) x */
|
/* #define FT_EXPORT_DEF(x) x */
|
||||||
|
|
||||||
|
@ -214,6 +217,19 @@ FT_BEGIN_HEADER
|
||||||
#define FT_CONFIG_OPTION_ADOBE_GLYPH_LIST
|
#define FT_CONFIG_OPTION_ADOBE_GLYPH_LIST
|
||||||
|
|
||||||
|
|
||||||
|
/*************************************************************************/
|
||||||
|
/* */
|
||||||
|
/* Support for Mac fonts */
|
||||||
|
/* */
|
||||||
|
/* Define this macro if you want support for outline fonts in Mac */
|
||||||
|
/* format (mac dfont, mac resource, macbinary containing a mac */
|
||||||
|
/* resource) on non-Mac platforms. */
|
||||||
|
/* */
|
||||||
|
/* Note that the `FOND' resource isn't checked. */
|
||||||
|
/* */
|
||||||
|
#define FT_CONFIG_OPTION_MAC_FONTS
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* Allow the use of FT_Incremental_Interface to load typefaces that */
|
/* Allow the use of FT_Incremental_Interface to load typefaces that */
|
||||||
|
@ -221,7 +237,7 @@ FT_BEGIN_HEADER
|
||||||
/* This allows FreeType to be used with the PostScript language, using */
|
/* This allows FreeType to be used with the PostScript language, using */
|
||||||
/* the GhostScript interpreter. */
|
/* the GhostScript interpreter. */
|
||||||
/* */
|
/* */
|
||||||
/* #define FT_CONFIG_OPTION_INCREMENTAL */
|
/* #define FT_CONFIG_OPTION_INCREMENTAL */
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
|
@ -229,7 +245,7 @@ FT_BEGIN_HEADER
|
||||||
/* The size in bytes of the render pool used by the scan-line converter */
|
/* The size in bytes of the render pool used by the scan-line converter */
|
||||||
/* to do all of its work. */
|
/* to do all of its work. */
|
||||||
/* */
|
/* */
|
||||||
/* This must be greater than 4kByte. */
|
/* This must be greater than 4KByte. */
|
||||||
/* */
|
/* */
|
||||||
#define FT_RENDER_POOL_SIZE 16384L
|
#define FT_RENDER_POOL_SIZE 16384L
|
||||||
|
|
||||||
|
@ -258,8 +274,11 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
/* Don't define any of these macros to compile in `release' mode! */
|
/* Don't define any of these macros to compile in `release' mode! */
|
||||||
/* */
|
/* */
|
||||||
/* #define FT_DEBUG_LEVEL_ERROR */
|
/* Do not #undef these macros here since the build system might define */
|
||||||
/* #define FT_DEBUG_LEVEL_TRACE */
|
/* them for certain configurations only. */
|
||||||
|
/* */
|
||||||
|
/* #define FT_DEBUG_LEVEL_ERROR */
|
||||||
|
/* #define FT_DEBUG_LEVEL_TRACE */
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
|
@ -272,10 +291,12 @@ FT_BEGIN_HEADER
|
||||||
/* should define FT_DEBUG_MEMORY here. */
|
/* should define FT_DEBUG_MEMORY here. */
|
||||||
/* */
|
/* */
|
||||||
/* Note that the memory debugger is only activated at runtime when */
|
/* Note that the memory debugger is only activated at runtime when */
|
||||||
/* when the _environment_ variable "FT_DEBUG_MEMORY" is also defined! */
|
/* when the _environment_ variable "FT2_DEBUG_MEMORY" is defined also! */
|
||||||
/* */
|
/* */
|
||||||
/* #define FT_DEBUG_MEMORY */
|
/* Do not #undef this macro here since the build system might define */
|
||||||
|
/* it for certain configurations only. */
|
||||||
|
/* */
|
||||||
|
/* #define FT_DEBUG_MEMORY */
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
|
@ -375,12 +396,27 @@ FT_BEGIN_HEADER
|
||||||
/* By undefining this, you will only compile the code necessary to load */
|
/* By undefining this, you will only compile the code necessary to load */
|
||||||
/* TrueType glyphs without hinting. */
|
/* TrueType glyphs without hinting. */
|
||||||
/* */
|
/* */
|
||||||
/* do not #undef this macro here, since the build system might */
|
/* Do not #undef this macro here, since the build system might */
|
||||||
/* define for certain configurations */
|
/* define it for certain configurations only. */
|
||||||
/* */
|
/* */
|
||||||
/* #define TT_CONFIG_OPTION_BYTECODE_INTERPRETER */
|
/* #define TT_CONFIG_OPTION_BYTECODE_INTERPRETER */
|
||||||
|
|
||||||
|
|
||||||
|
/*************************************************************************/
|
||||||
|
/* */
|
||||||
|
/* Define TT_CONFIG_OPTION_UNPATENTED_HINTING (in addition to */
|
||||||
|
/* TT_CONFIG_OPTION_BYTECODE_INTERPRETER) to compile the unpatented */
|
||||||
|
/* work-around hinting system. Note that for the moment, the algorithm */
|
||||||
|
/* is only used when selected at runtime through the parameter tag */
|
||||||
|
/* FT_PARAM_TAG_UNPATENTED_HINTING; or when the debug hook */
|
||||||
|
/* FT_DEBUG_HOOK_UNPATENTED_HINTING is globally actived */
|
||||||
|
/* */
|
||||||
|
/* XXX: WARNING: THIS DOESN'T WORK AS ADVERTISED YET. PLEASE DO NOT */
|
||||||
|
/* DEFINE FOR THE MOMENT.. */
|
||||||
|
/* */
|
||||||
|
/* #define TT_CONFIG_OPTION_UNPATENTED_HINTING */
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* Define TT_CONFIG_OPTION_INTERPRETER_SWITCH to compile the TrueType */
|
/* Define TT_CONFIG_OPTION_INTERPRETER_SWITCH to compile the TrueType */
|
||||||
|
@ -470,21 +506,21 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* the FT_CONFIG_OPTION_CHESTER_XXXX macros are used to toggle some recent
|
* The FT_CONFIG_OPTION_CHESTER_XXXX macros are used to toggle some recent
|
||||||
* improvements to the auto-hinter contributed by David Chester. They will
|
* improvements to the auto-hinter contributed by David Chester. They will
|
||||||
* most likely disappear completely in the next release. For now, you should
|
* most likely disappear completely in the next release. For now, you
|
||||||
* always keep them defined
|
* should always keep them defined.
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
#define FT_CONFIG_OPTION_CHESTER_HINTS
|
#define FT_CONFIG_OPTION_CHESTER_HINTS
|
||||||
|
|
||||||
#ifdef FT_CONFIG_OPTION_CHESTER_HINTS
|
#ifdef FT_CONFIG_OPTION_CHESTER_HINTS
|
||||||
|
|
||||||
# define FT_CONFIG_CHESTER_SMALL_F
|
#define FT_CONFIG_CHESTER_SMALL_F
|
||||||
# define FT_CONFIG_CHESTER_ASCENDER
|
#define FT_CONFIG_CHESTER_ASCENDER
|
||||||
# define FT_CONFIG_CHESTER_SERIF
|
#define FT_CONFIG_CHESTER_SERIF
|
||||||
# define FT_CONFIG_CHESTER_STEM
|
#define FT_CONFIG_CHESTER_STEM
|
||||||
# define FT_CONFIG_CHESTER_BLUE_SCALE
|
#define FT_CONFIG_CHESTER_BLUE_SCALE
|
||||||
|
|
||||||
#endif /* FT_CONFIG_OPTION_CHESTER_HINTS */
|
#endif /* FT_CONFIG_OPTION_CHESTER_HINTS */
|
||||||
|
|
||||||
|
|
|
@ -82,6 +82,7 @@
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
#define ft_strlen strlen
|
#define ft_strlen strlen
|
||||||
|
#define ft_strcat strcat
|
||||||
#define ft_strcmp strcmp
|
#define ft_strcmp strcmp
|
||||||
#define ft_strncmp strncmp
|
#define ft_strncmp strncmp
|
||||||
#define ft_memcpy memcpy
|
#define ft_memcpy memcpy
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
/* */
|
/* */
|
||||||
/* FreeType high-level API and common types (specification only). */
|
/* FreeType high-level API and common types (specification only). */
|
||||||
/* */
|
/* */
|
||||||
/* Copyright 1996-2001, 2002 by */
|
/* Copyright 1996-2001, 2002, 2003 by */
|
||||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||||
/* */
|
/* */
|
||||||
/* This file is part of the FreeType project, and may only be used, */
|
/* This file is part of the FreeType project, and may only be used, */
|
||||||
|
@ -35,7 +35,7 @@
|
||||||
/* */
|
/* */
|
||||||
#define FREETYPE_MAJOR 2
|
#define FREETYPE_MAJOR 2
|
||||||
#define FREETYPE_MINOR 1
|
#define FREETYPE_MINOR 1
|
||||||
#define FREETYPE_PATCH 4
|
#define FREETYPE_PATCH 5
|
||||||
|
|
||||||
|
|
||||||
#include <ft2build.h>
|
#include <ft2build.h>
|
||||||
|
@ -113,7 +113,6 @@ FT_BEGIN_HEADER
|
||||||
/* FT_New_Memory_Face */
|
/* FT_New_Memory_Face */
|
||||||
/* FT_Open_Face */
|
/* FT_Open_Face */
|
||||||
/* FT_Open_Args */
|
/* FT_Open_Args */
|
||||||
/* FT_Open_Flags */
|
|
||||||
/* FT_Parameter */
|
/* FT_Parameter */
|
||||||
/* FT_Attach_File */
|
/* FT_Attach_File */
|
||||||
/* FT_Attach_Stream */
|
/* FT_Attach_Stream */
|
||||||
|
@ -126,6 +125,12 @@ FT_BEGIN_HEADER
|
||||||
/* FT_Get_Name_Index */
|
/* FT_Get_Name_Index */
|
||||||
/* FT_Load_Char */
|
/* FT_Load_Char */
|
||||||
/* */
|
/* */
|
||||||
|
/* FT_OPEN_MEMORY */
|
||||||
|
/* FT_OPEN_STREAM */
|
||||||
|
/* FT_OPEN_PATHNAME */
|
||||||
|
/* FT_OPEN_DRIVER */
|
||||||
|
/* FT_OPEN_PARAMS */
|
||||||
|
/* */
|
||||||
/* FT_LOAD_DEFAULT */
|
/* FT_LOAD_DEFAULT */
|
||||||
/* FT_LOAD_RENDER */
|
/* FT_LOAD_RENDER */
|
||||||
/* FT_LOAD_MONOCHROME */
|
/* FT_LOAD_MONOCHROME */
|
||||||
|
@ -142,6 +147,12 @@ FT_BEGIN_HEADER
|
||||||
/* FT_LOAD_NO_RECURSE */
|
/* FT_LOAD_NO_RECURSE */
|
||||||
/* FT_LOAD_PEDANTIC */
|
/* FT_LOAD_PEDANTIC */
|
||||||
/* */
|
/* */
|
||||||
|
/* FT_LOAD_TARGET_NORMAL */
|
||||||
|
/* FT_LOAD_TARGET_LIGHT */
|
||||||
|
/* FT_LOAD_TARGET_MONO */
|
||||||
|
/* FT_LOAD_TARGET_LCD */
|
||||||
|
/* FT_LOAD_TARGET_LCD_V */
|
||||||
|
/* */
|
||||||
/* FT_Render_Glyph */
|
/* FT_Render_Glyph */
|
||||||
/* FT_Render_Mode */
|
/* FT_Render_Mode */
|
||||||
/* FT_Get_Kerning */
|
/* FT_Get_Kerning */
|
||||||
|
@ -162,9 +173,10 @@ FT_BEGIN_HEADER
|
||||||
/* FT_Glyph_Metrics */
|
/* FT_Glyph_Metrics */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* A structure used to model the metrics of a single glyph. Note */
|
/* A structure used to model the metrics of a single glyph. The */
|
||||||
/* that values are expressed in 26.6 fractional pixel format or in */
|
/* values are expressed in 26.6 fractional pixel format; if the flag */
|
||||||
/* font units, depending on context. */
|
/* FT_LOAD_NO_SCALE is used, values are returned in font units */
|
||||||
|
/* instead. */
|
||||||
/* */
|
/* */
|
||||||
/* <Fields> */
|
/* <Fields> */
|
||||||
/* width :: The glyph's width. */
|
/* width :: The glyph's width. */
|
||||||
|
@ -205,21 +217,62 @@ FT_BEGIN_HEADER
|
||||||
/* FT_Bitmap_Size */
|
/* FT_Bitmap_Size */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* An extremely simple structure used to model the size of a bitmap */
|
/* This structure models the size of a bitmap strike (i.e., a bitmap */
|
||||||
/* strike (i.e., a bitmap instance of the font for a given */
|
/* instance of the font for a given resolution) in a fixed-size font */
|
||||||
/* resolution) in a fixed-size font face. This is used for the */
|
/* face. It is used for the `available_sizes' field of the */
|
||||||
/* `available_sizes' field of the FT_Face_Properties structure. */
|
/* @FT_FaceRec structure. */
|
||||||
/* */
|
/* */
|
||||||
/* <Fields> */
|
/* <Fields> */
|
||||||
/* height :: The character height in pixels. */
|
/* height :: The (vertical) baseline-to-baseline distance in pixels. */
|
||||||
|
/* It makes most sense to define the height of a bitmap */
|
||||||
|
/* font in this way. */
|
||||||
/* */
|
/* */
|
||||||
/* width :: The character width in pixels. */
|
/* width :: The average width of the font (in pixels). Since the */
|
||||||
|
/* algorithms to compute this value are different for the */
|
||||||
|
/* various bitmap formats, it can only give an additional */
|
||||||
|
/* hint if the `height' value isn't sufficient to select */
|
||||||
|
/* the proper font. For monospaced fonts the average width */
|
||||||
|
/* is the same as the maximum width. */
|
||||||
|
/* */
|
||||||
|
/* size :: The point size in 26.6 fractional format this font shall */
|
||||||
|
/* represent (for a given vertical resolution). */
|
||||||
|
/* */
|
||||||
|
/* x_ppem :: The horizontal ppem value (in 26.6 fractional format). */
|
||||||
|
/* */
|
||||||
|
/* y_ppem :: The vertical ppem value (in 26.6 fractional format). */
|
||||||
|
/* */
|
||||||
|
/* <Note> */
|
||||||
|
/* The values in this structure are taken from the bitmap font. If */
|
||||||
|
/* the font doesn't provide a parameter it is set to zero to indicate */
|
||||||
|
/* that the information is not available. */
|
||||||
|
/* */
|
||||||
|
/* The following formula converts from dpi to ppem: */
|
||||||
|
/* */
|
||||||
|
/* ppem = size * dpi / 72 */
|
||||||
|
/* */
|
||||||
|
/* where `size' is in points. */
|
||||||
|
/* */
|
||||||
|
/* Windows FNT: */
|
||||||
|
/* The `size', `x_ppem', and `y_ppem' parameters are not reliable: */
|
||||||
|
/* There exist fonts (e.g. app850.fon) which have a wrong size for */
|
||||||
|
/* some subfonts; since FNT files don't contain ppem but dpi values */
|
||||||
|
/* the computed x_ppem and y_ppem numbers are thus wrong also. */
|
||||||
|
/* */
|
||||||
|
/* TrueType embedded bitmaps: */
|
||||||
|
/* `size', `width', and `height' values are not contained in the */
|
||||||
|
/* bitmap strike itself. They are computed from the global font */
|
||||||
|
/* parameters. */
|
||||||
/* */
|
/* */
|
||||||
typedef struct FT_Bitmap_Size_
|
typedef struct FT_Bitmap_Size_
|
||||||
{
|
{
|
||||||
FT_Short height;
|
FT_Short height;
|
||||||
FT_Short width;
|
FT_Short width;
|
||||||
|
|
||||||
|
FT_Pos size;
|
||||||
|
|
||||||
|
FT_Pos x_ppem;
|
||||||
|
FT_Pos y_ppem;
|
||||||
|
|
||||||
} FT_Bitmap_Size;
|
} FT_Bitmap_Size;
|
||||||
|
|
||||||
|
|
||||||
|
@ -386,6 +439,10 @@ FT_BEGIN_HEADER
|
||||||
/* @FT_Open_Face), the library looks for a Unicode charmap within */
|
/* @FT_Open_Face), the library looks for a Unicode charmap within */
|
||||||
/* the list and automatically activates it. */
|
/* the list and automatically activates it. */
|
||||||
/* */
|
/* */
|
||||||
|
/* <Also> */
|
||||||
|
/* The @FT_CharMapRec details the publicly accessible fields of a */
|
||||||
|
/* given character map. */
|
||||||
|
/* */
|
||||||
typedef struct FT_CharMapRec_* FT_CharMap;
|
typedef struct FT_CharMapRec_* FT_CharMap;
|
||||||
|
|
||||||
|
|
||||||
|
@ -452,30 +509,28 @@ FT_BEGIN_HEADER
|
||||||
/* mathematical symbols in the 32..255 character code range. For */
|
/* mathematical symbols in the 32..255 character code range. For */
|
||||||
/* more information, see `http://www.ceviz.net/symbol.htm'. */
|
/* more information, see `http://www.ceviz.net/symbol.htm'. */
|
||||||
/* */
|
/* */
|
||||||
/* FT_ENCODING_MS_SJIS :: */
|
/* FT_ENCODING_SJIS :: */
|
||||||
/* Corresponds to Microsoft's Japanese SJIS encoding. More info */
|
/* Corresponds to Japanese SJIS encoding. More info at */
|
||||||
/* at `http://langsupport.japanreference.com/encoding.shtml'. */
|
/* at `http://langsupport.japanreference.com/encoding.shtml'. */
|
||||||
/* See note on multi-byte encodings below. */
|
/* See note on multi-byte encodings below. */
|
||||||
/* */
|
/* */
|
||||||
/* FT_ENCODING_MS_GB2312 :: */
|
/* FT_ENCODING_GB2312 :: */
|
||||||
/* Corresponds to the encoding system for Simplified Chinese, as */
|
/* Corresponds to an encoding system for Simplified Chinese as used */
|
||||||
/* used in China. Only found in some TrueType fonts. */
|
/* used in mainland China. */
|
||||||
/* */
|
/* */
|
||||||
/* FT_ENCODING_MS_BIG5 :: */
|
/* FT_ENCODING_BIG5 :: */
|
||||||
/* Corresponds to the encoding system for Traditional Chinese, as */
|
/* Corresponds to an encoding system for Traditional Chinese as used */
|
||||||
/* used in Taiwan and Hong Kong. Only found in some TrueType fonts. */
|
/* in Taiwan and Hong Kong. */
|
||||||
/* */
|
/* */
|
||||||
/* FT_ENCODING_MS_WANSUNG :: */
|
/* FT_ENCODING_WANSUNG :: */
|
||||||
/* Corresponds to the Korean encoding system known as Wansung. */
|
/* Corresponds to the Korean encoding system known as Wansung. */
|
||||||
/* This is a Microsoft encoding that is only found in some TrueType */
|
/* For more information see */
|
||||||
/* fonts. For more information, see */
|
|
||||||
/* `http://www.microsoft.com/typography/unicode/949.txt'. */
|
/* `http://www.microsoft.com/typography/unicode/949.txt'. */
|
||||||
/* */
|
/* */
|
||||||
/* FT_ENCODING_MS_JOHAB :: */
|
/* FT_ENCODING_JOHAB :: */
|
||||||
/* The Korean standard character set (KS C-5601-1992), which */
|
/* The Korean standard character set (KS C-5601-1992), which */
|
||||||
/* corresponds to Windows code page 1361. This character set */
|
/* corresponds to MS Windows code page 1361. This character set */
|
||||||
/* includes all possible Hangeul character combinations. */
|
/* includes all possible Hangeul character combinations. */
|
||||||
/* Only found on some rare TrueType fonts. */
|
|
||||||
/* */
|
/* */
|
||||||
/* FT_ENCODING_ADOBE_LATIN_1 :: */
|
/* FT_ENCODING_ADOBE_LATIN_1 :: */
|
||||||
/* Corresponds to a Latin-1 encoding as defined in a Type 1 */
|
/* Corresponds to a Latin-1 encoding as defined in a Type 1 */
|
||||||
|
@ -483,7 +538,7 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
/* FT_ENCODING_ADOBE_STANDARD :: */
|
/* FT_ENCODING_ADOBE_STANDARD :: */
|
||||||
/* Corresponds to the Adobe Standard encoding, as found in Type 1, */
|
/* Corresponds to the Adobe Standard encoding, as found in Type 1, */
|
||||||
/* CFF, and OpenType/CFF fonts. It is limited to 256character */
|
/* CFF, and OpenType/CFF fonts. It is limited to 256 character */
|
||||||
/* codes. */
|
/* codes. */
|
||||||
/* */
|
/* */
|
||||||
/* FT_ENCODING_ADOBE_EXPERT :: */
|
/* FT_ENCODING_ADOBE_EXPERT :: */
|
||||||
|
@ -504,6 +559,21 @@ FT_BEGIN_HEADER
|
||||||
/* This value is deprecated and was never used nor reported by */
|
/* This value is deprecated and was never used nor reported by */
|
||||||
/* FreeType. Don't use or test for it. */
|
/* FreeType. Don't use or test for it. */
|
||||||
/* */
|
/* */
|
||||||
|
/* FT_ENCODING_MS_SJIS :: */
|
||||||
|
/* Same as FT_ENCODING_SJIS. Deprecated. */
|
||||||
|
/* */
|
||||||
|
/* FT_ENCODING_MS_GB2312 :: */
|
||||||
|
/* Same as FT_ENCODING_GB2312. Deprecated. */
|
||||||
|
/* */
|
||||||
|
/* FT_ENCODING_MS_BIG5 :: */
|
||||||
|
/* Same as FT_ENCODING_BIG5. Deprecated. */
|
||||||
|
/* */
|
||||||
|
/* FT_ENCODING_MS_WANSUNG :: */
|
||||||
|
/* Same as FT_ENCODING_WANSUNG. Deprecated. */
|
||||||
|
/* */
|
||||||
|
/* FT_ENCODING_MS_JOHAB :: */
|
||||||
|
/* Same as FT_ENCODING_JOHAB. Deprecated. */
|
||||||
|
/* */
|
||||||
/* <Note> */
|
/* <Note> */
|
||||||
/* By default, FreeType automatically synthetizes a Unicode charmap */
|
/* By default, FreeType automatically synthetizes a Unicode charmap */
|
||||||
/* for Postscript fonts, using their glyph names dictionaries. */
|
/* for Postscript fonts, using their glyph names dictionaries. */
|
||||||
|
@ -518,11 +588,18 @@ FT_BEGIN_HEADER
|
||||||
FT_ENC_TAG( FT_ENCODING_MS_SYMBOL, 's', 'y', 'm', 'b' ),
|
FT_ENC_TAG( FT_ENCODING_MS_SYMBOL, 's', 'y', 'm', 'b' ),
|
||||||
FT_ENC_TAG( FT_ENCODING_UNICODE, 'u', 'n', 'i', 'c' ),
|
FT_ENC_TAG( FT_ENCODING_UNICODE, 'u', 'n', 'i', 'c' ),
|
||||||
|
|
||||||
FT_ENC_TAG( FT_ENCODING_MS_SJIS, 's', 'j', 'i', 's' ),
|
FT_ENC_TAG( FT_ENCODING_SJIS, 's', 'j', 'i', 's' ),
|
||||||
FT_ENC_TAG( FT_ENCODING_MS_GB2312, 'g', 'b', ' ', ' ' ),
|
FT_ENC_TAG( FT_ENCODING_GB2312, 'g', 'b', ' ', ' ' ),
|
||||||
FT_ENC_TAG( FT_ENCODING_MS_BIG5, 'b', 'i', 'g', '5' ),
|
FT_ENC_TAG( FT_ENCODING_BIG5, 'b', 'i', 'g', '5' ),
|
||||||
FT_ENC_TAG( FT_ENCODING_MS_WANSUNG, 'w', 'a', 'n', 's' ),
|
FT_ENC_TAG( FT_ENCODING_WANSUNG, 'w', 'a', 'n', 's' ),
|
||||||
FT_ENC_TAG( FT_ENCODING_MS_JOHAB, 'j', 'o', 'h', 'a' ),
|
FT_ENC_TAG( FT_ENCODING_JOHAB, 'j', 'o', 'h', 'a' ),
|
||||||
|
|
||||||
|
/* for backwards compatibility */
|
||||||
|
FT_ENCODING_MS_SJIS = FT_ENCODING_SJIS,
|
||||||
|
FT_ENCODING_MS_GB2312 = FT_ENCODING_GB2312,
|
||||||
|
FT_ENCODING_MS_BIG5 = FT_ENCODING_BIG5,
|
||||||
|
FT_ENCODING_MS_WANSUNG = FT_ENCODING_WANSUNG,
|
||||||
|
FT_ENCODING_MS_JOHAB = FT_ENCODING_JOHAB,
|
||||||
|
|
||||||
FT_ENC_TAG( FT_ENCODING_ADOBE_STANDARD, 'A', 'D', 'O', 'B' ),
|
FT_ENC_TAG( FT_ENCODING_ADOBE_STANDARD, 'A', 'D', 'O', 'B' ),
|
||||||
FT_ENC_TAG( FT_ENCODING_ADOBE_EXPERT, 'A', 'D', 'B', 'E' ),
|
FT_ENC_TAG( FT_ENCODING_ADOBE_EXPERT, 'A', 'D', 'B', 'E' ),
|
||||||
|
@ -550,11 +627,11 @@ FT_BEGIN_HEADER
|
||||||
/* ft_encoding_unicode :: see @FT_ENCODING_UNICODE */
|
/* ft_encoding_unicode :: see @FT_ENCODING_UNICODE */
|
||||||
/* ft_encoding_latin_2 :: see @FT_ENCODING_OLD_LATIN_2 */
|
/* ft_encoding_latin_2 :: see @FT_ENCODING_OLD_LATIN_2 */
|
||||||
/* ft_encoding_symbol :: see @FT_ENCODING_MS_SYMBOL */
|
/* ft_encoding_symbol :: see @FT_ENCODING_MS_SYMBOL */
|
||||||
/* ft_encoding_sjis :: see @FT_ENCODING_MS_SJIS */
|
/* ft_encoding_sjis :: see @FT_ENCODING_SJIS */
|
||||||
/* ft_encoding_gb2312 :: see @FT_ENCODING_MS_GB2312 */
|
/* ft_encoding_gb2312 :: see @FT_ENCODING_GB2312 */
|
||||||
/* ft_encoding_big5 :: see @FT_ENCODING_MS_BIG5 */
|
/* ft_encoding_big5 :: see @FT_ENCODING_BIG5 */
|
||||||
/* ft_encoding_wansung :: see @FT_ENCODING_MS_WANSUNG */
|
/* ft_encoding_wansung :: see @FT_ENCODING_WANSUNG */
|
||||||
/* ft_encoding_johab :: see @FT_ENCODING_MS_JOHAB */
|
/* ft_encoding_johab :: see @FT_ENCODING_JOHAB */
|
||||||
/* */
|
/* */
|
||||||
/* ft_encoding_adobe_standard :: see @FT_ENCODING_ADOBE_STANDARD */
|
/* ft_encoding_adobe_standard :: see @FT_ENCODING_ADOBE_STANDARD */
|
||||||
/* ft_encoding_adobe_expert :: see @FT_ENCODING_ADOBE_EXPERT */
|
/* ft_encoding_adobe_expert :: see @FT_ENCODING_ADOBE_EXPERT */
|
||||||
|
@ -563,21 +640,21 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
/* ft_encoding_apple_roman :: see @FT_ENCODING_APPLE_ROMAN */
|
/* ft_encoding_apple_roman :: see @FT_ENCODING_APPLE_ROMAN */
|
||||||
/* */
|
/* */
|
||||||
#define ft_encoding_none FT_ENCODING_NONE
|
#define ft_encoding_none FT_ENCODING_NONE
|
||||||
#define ft_encoding_unicode FT_ENCODING_UNICODE
|
#define ft_encoding_unicode FT_ENCODING_UNICODE
|
||||||
#define ft_encoding_symbol FT_ENCODING_MS_SYMBOL
|
#define ft_encoding_symbol FT_ENCODING_MS_SYMBOL
|
||||||
#define ft_encoding_latin_1 FT_ENCODING_ADOBE_LATIN_1
|
#define ft_encoding_latin_1 FT_ENCODING_ADOBE_LATIN_1
|
||||||
#define ft_encoding_latin_2 FT_ENCODING_OLD_LATIN_2
|
#define ft_encoding_latin_2 FT_ENCODING_OLD_LATIN_2
|
||||||
#define ft_encoding_sjis FT_ENCODING_MS_SJIS
|
#define ft_encoding_sjis FT_ENCODING_SJIS
|
||||||
#define ft_encoding_gb2312 FT_ENCODING_MS_GB2312
|
#define ft_encoding_gb2312 FT_ENCODING_GB2312
|
||||||
#define ft_encoding_big5 FT_ENCODING_MS_BIG5
|
#define ft_encoding_big5 FT_ENCODING_BIG5
|
||||||
#define ft_encoding_wansung FT_ENCODING_MS_WANSUNG
|
#define ft_encoding_wansung FT_ENCODING_WANSUNG
|
||||||
#define ft_encoding_johab FT_ENCODING_MS_JOHAB
|
#define ft_encoding_johab FT_ENCODING_JOHAB
|
||||||
|
|
||||||
#define ft_encoding_adobe_standard FT_ENCODING_ADOBE_STANDARD
|
#define ft_encoding_adobe_standard FT_ENCODING_ADOBE_STANDARD
|
||||||
#define ft_encoding_adobe_expert FT_ENCODING_ADOBE_EXPERT
|
#define ft_encoding_adobe_expert FT_ENCODING_ADOBE_EXPERT
|
||||||
#define ft_encoding_adobe_custom FT_ENCODING_ADOBE_CUSTOM
|
#define ft_encoding_adobe_custom FT_ENCODING_ADOBE_CUSTOM
|
||||||
#define ft_encoding_apple_roman FT_ENCODING_APPLE_ROMAN
|
#define ft_encoding_apple_roman FT_ENCODING_APPLE_ROMAN
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
|
@ -692,8 +769,8 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
/* num_fixed_sizes :: The number of fixed sizes available in this */
|
/* num_fixed_sizes :: The number of fixed sizes available in this */
|
||||||
/* face. This should be set to 0 for scalable */
|
/* face. This should be set to 0 for scalable */
|
||||||
/* fonts, unless its face includes a complete */
|
/* fonts, unless its face includes a set of */
|
||||||
/* set of glyphs (called a `strike') for the */
|
/* glyphs (called a `strike') for the */
|
||||||
/* specified sizes. */
|
/* specified sizes. */
|
||||||
/* */
|
/* */
|
||||||
/* available_sizes :: An array of sizes specifying the available */
|
/* available_sizes :: An array of sizes specifying the available */
|
||||||
|
@ -743,10 +820,11 @@ FT_BEGIN_HEADER
|
||||||
/* descender :: The face's descender is the vertical */
|
/* descender :: The face's descender is the vertical */
|
||||||
/* distance from the baseline to the */
|
/* distance from the baseline to the */
|
||||||
/* bottommost point of any glyph in the face. */
|
/* bottommost point of any glyph in the face. */
|
||||||
/* This field's value is *negative*, expressed */
|
/* This field's value is *negative* for values */
|
||||||
/* in font units. Some font designs use a */
|
/* below the baseline. It is expressed in */
|
||||||
/* value different from `bbox.yMin'. Only */
|
/* font units. Some font designs use a value */
|
||||||
/* relevant for scalable formats. */
|
/* different from `bbox.yMin'. Only relevant */
|
||||||
|
/* for scalable formats. */
|
||||||
/* */
|
/* */
|
||||||
/* height :: The face's height is the vertical distance */
|
/* height :: The face's height is the vertical distance */
|
||||||
/* from one baseline to the next when writing */
|
/* from one baseline to the next when writing */
|
||||||
|
@ -862,7 +940,7 @@ FT_BEGIN_HEADER
|
||||||
/* FT_FACE_FLAG_SCALABLE :: */
|
/* FT_FACE_FLAG_SCALABLE :: */
|
||||||
/* Indicates that the face provides vectorial outlines. This */
|
/* Indicates that the face provides vectorial outlines. This */
|
||||||
/* doesn't prevent embedded bitmaps, i.e., a face can have both */
|
/* doesn't prevent embedded bitmaps, i.e., a face can have both */
|
||||||
/* this bit and @FT_FACE_FLAG_FIXED_SIZES set */
|
/* this bit and @FT_FACE_FLAG_FIXED_SIZES set. */
|
||||||
/* */
|
/* */
|
||||||
/* FT_FACE_FLAG_FIXED_SIZES :: */
|
/* FT_FACE_FLAG_FIXED_SIZES :: */
|
||||||
/* Indicates that the face contains `fixed sizes', i.e., bitmap */
|
/* Indicates that the face contains `fixed sizes', i.e., bitmap */
|
||||||
|
@ -901,9 +979,9 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
/* FT_FACE_FLAG_GLYPH_NAMES :: */
|
/* FT_FACE_FLAG_GLYPH_NAMES :: */
|
||||||
/* Indicates that the font contains glyph names that can be */
|
/* Indicates that the font contains glyph names that can be */
|
||||||
/* retrieved through @FT_Get_Glyph_Names. Note that some TrueType */
|
/* retrieved through @FT_Get_Glyph_Name. Note that some TrueType */
|
||||||
/* fonts contain broken glyph name tables. Use the function */
|
/* fonts contain broken glyph name tables. Use the function */
|
||||||
/* @FT_Has_PS_Glyph_Name when needed. */
|
/* @FT_Has_PS_Glyph_Names when needed. */
|
||||||
/* */
|
/* */
|
||||||
/* FT_FACE_FLAG_EXTERNAL_STREAM :: */
|
/* FT_FACE_FLAG_EXTERNAL_STREAM :: */
|
||||||
/* Used internally by FreeType to indicate that a face's stream was */
|
/* Used internally by FreeType to indicate that a face's stream was */
|
||||||
|
@ -1016,12 +1094,12 @@ FT_BEGIN_HEADER
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* @macro: */
|
/* @macro: */
|
||||||
/* FT_IS_FIXED_SIZES( face ) */
|
/* FT_HAS_FIXED_SIZES( face ) */
|
||||||
/* */
|
/* */
|
||||||
/* @description: */
|
/* @description: */
|
||||||
/* A macro that returns true whenever a face object contains some */
|
/* A macro that returns true whenever a face object contains some */
|
||||||
/* embedded bitmaps. See the `fixed_sizes' field of the @FT_FaceRec */
|
/* embedded bitmaps. See the `available_sizes' field of the */
|
||||||
/* structure. */
|
/* @FT_FaceRec structure. */
|
||||||
/* */
|
/* */
|
||||||
#define FT_HAS_FIXED_SIZES( face ) \
|
#define FT_HAS_FIXED_SIZES( face ) \
|
||||||
( face->face_flags & FT_FACE_FLAG_FIXED_SIZES )
|
( face->face_flags & FT_FACE_FLAG_FIXED_SIZES )
|
||||||
|
@ -1050,7 +1128,7 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
/* @description: */
|
/* @description: */
|
||||||
/* A macro that returns true whenever a face object contains some */
|
/* A macro that returns true whenever a face object contains some */
|
||||||
/* glyph names that can be accessed through @FT_Get_Glyph_Names. */
|
/* glyph names that can be accessed through @FT_Get_Glyph_Name. */
|
||||||
/* */
|
/* */
|
||||||
#define FT_HAS_GLYPH_NAMES( face ) \
|
#define FT_HAS_GLYPH_NAMES( face ) \
|
||||||
( face->face_flags & FT_FACE_FLAG_GLYPH_NAMES )
|
( face->face_flags & FT_FACE_FLAG_GLYPH_NAMES )
|
||||||
|
@ -1130,10 +1208,12 @@ FT_BEGIN_HEADER
|
||||||
/* units to fractional (26.6) pixel coordinates. */
|
/* units to fractional (26.6) pixel coordinates. */
|
||||||
/* */
|
/* */
|
||||||
/* ascender :: The ascender, expressed in 26.6 fixed point */
|
/* ascender :: The ascender, expressed in 26.6 fixed point */
|
||||||
/* pixels. Always positive. */
|
/* pixels. Positive for ascenders above the */
|
||||||
|
/* baseline. */
|
||||||
/* */
|
/* */
|
||||||
/* descender :: The descender, expressed in 26.6 fixed point */
|
/* descender :: The descender, expressed in 26.6 fixed point */
|
||||||
/* pixels. Always negative. */
|
/* pixels. Negative for descenders below the */
|
||||||
|
/* baseline. */
|
||||||
/* */
|
/* */
|
||||||
/* height :: The text height, expressed in 26.6 fixed point */
|
/* height :: The text height, expressed in 26.6 fixed point */
|
||||||
/* pixels. Always positive. */
|
/* pixels. Always positive. */
|
||||||
|
@ -1142,12 +1222,12 @@ FT_BEGIN_HEADER
|
||||||
/* fixed point pixels. Always positive. */
|
/* fixed point pixels. Always positive. */
|
||||||
/* */
|
/* */
|
||||||
/* <Note> */
|
/* <Note> */
|
||||||
/* The values of `ascender', `descender', and `height' are only the */
|
/* For scalable fonts, the values of `ascender', `descender', and */
|
||||||
/* scaled versions of `face->ascender', `face->descender', and */
|
/* `height' are scaled versions of `face->ascender', */
|
||||||
/* `face->height'. */
|
/* `face->descender', and `face->height', respectively. */
|
||||||
/* */
|
/* */
|
||||||
/* Unfortunately, due to glyph hinting, these values might not be */
|
/* Unfortunately, due to glyph hinting, these values might not be */
|
||||||
/* exact for certain fonts, they thus must be treated as unreliable */
|
/* exact for certain fonts. They thus must be treated as unreliable */
|
||||||
/* with an error margin of at least one pixel! */
|
/* with an error margin of at least one pixel! */
|
||||||
/* */
|
/* */
|
||||||
/* Indeed, the only way to get the exact pixel ascender and descender */
|
/* Indeed, the only way to get the exact pixel ascender and descender */
|
||||||
|
@ -1161,7 +1241,7 @@ FT_BEGIN_HEADER
|
||||||
FT_UShort y_ppem; /* vertical pixels per EM */
|
FT_UShort y_ppem; /* vertical pixels per EM */
|
||||||
|
|
||||||
FT_Fixed x_scale; /* two scales used to convert font units */
|
FT_Fixed x_scale; /* two scales used to convert font units */
|
||||||
FT_Fixed y_scale; /* to 26.6 frac. pixel coordinates.. */
|
FT_Fixed y_scale; /* to 26.6 frac. pixel coordinates */
|
||||||
|
|
||||||
FT_Pos ascender; /* ascender in 26.6 frac. pixels */
|
FT_Pos ascender; /* ascender in 26.6 frac. pixels */
|
||||||
FT_Pos descender; /* descender in 26.6 frac. pixels */
|
FT_Pos descender; /* descender in 26.6 frac. pixels */
|
||||||
|
@ -1311,16 +1391,18 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
/* outline :: The outline descriptor for the current glyph */
|
/* outline :: The outline descriptor for the current glyph */
|
||||||
/* image if its format is */
|
/* image if its format is */
|
||||||
/* ft_glyph_bitmap_outline. */
|
/* FT_GLYPH_FORMAT_OUTLINE. */
|
||||||
/* */
|
/* */
|
||||||
/* num_subglyphs :: The number of subglyphs in a composite glyph. */
|
/* num_subglyphs :: The number of subglyphs in a composite glyph. */
|
||||||
/* This format is only valid for the composite */
|
/* This field is only valid for the composite */
|
||||||
/* glyph format, that should normally only be */
|
/* glyph format that should normally only be */
|
||||||
/* loaded with the FT_LOAD_NO_RECURSE flag. */
|
/* loaded with the @FT_LOAD_NO_RECURSE flag. */
|
||||||
|
/* For now this is internal to FreeType. */
|
||||||
/* */
|
/* */
|
||||||
/* subglyphs :: An array of subglyph descriptors for */
|
/* subglyphs :: An array of subglyph descriptors for */
|
||||||
/* composite glyphs. There are `num_subglyphs' */
|
/* composite glyphs. There are `num_subglyphs' */
|
||||||
/* elements in there. */
|
/* elements in there. Currently internal to */
|
||||||
|
/* FreeType. */
|
||||||
/* */
|
/* */
|
||||||
/* control_data :: Certain font drivers can also return the */
|
/* control_data :: Certain font drivers can also return the */
|
||||||
/* control data for a given glyph image (e.g. */
|
/* control data for a given glyph image (e.g. */
|
||||||
|
@ -1359,7 +1441,7 @@ FT_BEGIN_HEADER
|
||||||
FT_Library library;
|
FT_Library library;
|
||||||
FT_Face face;
|
FT_Face face;
|
||||||
FT_GlyphSlot next;
|
FT_GlyphSlot next;
|
||||||
FT_UInt flags;
|
FT_UInt reserved; /* retained for binary compatibility */
|
||||||
FT_Generic generic;
|
FT_Generic generic;
|
||||||
|
|
||||||
FT_Glyph_Metrics metrics;
|
FT_Glyph_Metrics metrics;
|
||||||
|
@ -1474,13 +1556,13 @@ FT_BEGIN_HEADER
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <Enum> */
|
/* <Enum> */
|
||||||
/* FT_Open_Flags */
|
/* FT_OPEN_XXX */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* An enumeration used to list the bit flags used within the */
|
/* A list of bit-field constants used within the `flags' field of the */
|
||||||
/* `flags' field of the @FT_Open_Args structure. */
|
/* @FT_Open_Args structure. */
|
||||||
/* */
|
/* */
|
||||||
/* <Fields> */
|
/* <Values> */
|
||||||
/* FT_OPEN_MEMORY :: This is a memory-based stream. */
|
/* FT_OPEN_MEMORY :: This is a memory-based stream. */
|
||||||
/* */
|
/* */
|
||||||
/* FT_OPEN_STREAM :: Copy the stream from the `stream' field. */
|
/* FT_OPEN_STREAM :: Copy the stream from the `stream' field. */
|
||||||
|
@ -1492,35 +1574,31 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
/* FT_OPEN_PARAMS :: Use the `num_params' & `params' field. */
|
/* FT_OPEN_PARAMS :: Use the `num_params' & `params' field. */
|
||||||
/* */
|
/* */
|
||||||
/* ft_open_memory :: deprecated. use @FT_OPEN_MEMORY instead */
|
/* ft_open_memory :: Deprecated; use @FT_OPEN_MEMORY instead. */
|
||||||
/* */
|
/* */
|
||||||
/* ft_open_stream :: deprecated. use @FT_OPEN_STREAM instead */
|
/* ft_open_stream :: Deprecated; use @FT_OPEN_STREAM instead. */
|
||||||
/* */
|
/* */
|
||||||
/* ft_open_pathname :: deprecated. use @FT_OPEN_PATHNAME instead */
|
/* ft_open_pathname :: Deprecated; use @FT_OPEN_PATHNAME instead. */
|
||||||
/* */
|
/* */
|
||||||
/* ft_open_driver :: deprecated, use @FT_OPEN_DRIVER instead */
|
/* ft_open_driver :: Deprecated; use @FT_OPEN_DRIVER instead. */
|
||||||
/* */
|
/* */
|
||||||
/* ft_open_params :: deprecated, use @FT_OPEN_PARAMS instead */
|
/* ft_open_params :: Deprecated; use @FT_OPEN_PARAMS instead. */
|
||||||
/* */
|
/* */
|
||||||
/* <Note> */
|
/* <Note> */
|
||||||
/* The `FT_OPEN_MEMORY', `FT_OPEN_STREAM', and `FT_OPEN_PATHNAME' */
|
/* The `FT_OPEN_MEMORY', `FT_OPEN_STREAM', and `FT_OPEN_PATHNAME' */
|
||||||
/* flags are mutually exclusive. */
|
/* flags are mutually exclusive. */
|
||||||
/* */
|
/* */
|
||||||
typedef enum
|
#define FT_OPEN_MEMORY 0x1
|
||||||
{
|
#define FT_OPEN_STREAM 0x2
|
||||||
FT_OPEN_MEMORY = 1,
|
#define FT_OPEN_PATHNAME 0x4
|
||||||
FT_OPEN_STREAM = 2,
|
#define FT_OPEN_DRIVER 0x8
|
||||||
FT_OPEN_PATHNAME = 4,
|
#define FT_OPEN_PARAMS 0x10
|
||||||
FT_OPEN_DRIVER = 8,
|
|
||||||
FT_OPEN_PARAMS = 16
|
|
||||||
|
|
||||||
} FT_Open_Flags;
|
#define ft_open_memory FT_OPEN_MEMORY /* deprecated */
|
||||||
|
#define ft_open_stream FT_OPEN_STREAM /* deprecated */
|
||||||
#define ft_open_memory FT_OPEN_MEMORY /* deprecated */
|
#define ft_open_pathname FT_OPEN_PATHNAME /* deprecated */
|
||||||
#define ft_open_stream FT_OPEN_STREAM /* deprecated */
|
#define ft_open_driver FT_OPEN_DRIVER /* deprecated */
|
||||||
#define ft_open_pathname FT_OPEN_PATHNAME /* deprecated */
|
#define ft_open_params FT_OPEN_PARAMS /* deprecated */
|
||||||
#define ft_open_driver FT_OPEN_DRIVER /* deprecated */
|
|
||||||
#define ft_open_params FT_OPEN_PARAMS /* deprecated */
|
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
|
@ -1602,14 +1680,14 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
typedef struct FT_Open_Args_
|
typedef struct FT_Open_Args_
|
||||||
{
|
{
|
||||||
FT_Open_Flags flags;
|
FT_UInt flags;
|
||||||
const FT_Byte* memory_base;
|
const FT_Byte* memory_base;
|
||||||
FT_Long memory_size;
|
FT_Long memory_size;
|
||||||
FT_String* pathname;
|
FT_String* pathname;
|
||||||
FT_Stream stream;
|
FT_Stream stream;
|
||||||
FT_Module driver;
|
FT_Module driver;
|
||||||
FT_Int num_params;
|
FT_Int num_params;
|
||||||
FT_Parameter* params;
|
FT_Parameter* params;
|
||||||
|
|
||||||
} FT_Open_Args;
|
} FT_Open_Args;
|
||||||
|
|
||||||
|
@ -1853,7 +1931,7 @@ FT_BEGIN_HEADER
|
||||||
/* character dimensions is zero, its value is set equal to the other. */
|
/* character dimensions is zero, its value is set equal to the other. */
|
||||||
/* */
|
/* */
|
||||||
/* <InOut> */
|
/* <InOut> */
|
||||||
/* size :: A handle to a target size object. */
|
/* face :: A handle to a target face object. */
|
||||||
/* */
|
/* */
|
||||||
/* <Input> */
|
/* <Input> */
|
||||||
/* char_width :: The character width, in 26.6 fractional points. */
|
/* char_width :: The character width, in 26.6 fractional points. */
|
||||||
|
@ -1870,7 +1948,7 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
/* <Note> */
|
/* <Note> */
|
||||||
/* When dealing with fixed-size faces (i.e., non-scalable formats), */
|
/* When dealing with fixed-size faces (i.e., non-scalable formats), */
|
||||||
/* use the function @FT_Set_Pixel_Sizes. */
|
/* @FT_Set_Pixel_Sizes provides a more convenient interface. */
|
||||||
/* */
|
/* */
|
||||||
FT_EXPORT( FT_Error )
|
FT_EXPORT( FT_Error )
|
||||||
FT_Set_Char_Size( FT_Face face,
|
FT_Set_Char_Size( FT_Face face,
|
||||||
|
@ -1903,7 +1981,6 @@ FT_BEGIN_HEADER
|
||||||
/* <Return> */
|
/* <Return> */
|
||||||
/* FreeType error code. 0 means success. */
|
/* FreeType error code. 0 means success. */
|
||||||
/* */
|
/* */
|
||||||
/* */
|
|
||||||
/* <Note> */
|
/* <Note> */
|
||||||
/* The values of `pixel_width' and `pixel_height' correspond to the */
|
/* The values of `pixel_width' and `pixel_height' correspond to the */
|
||||||
/* pixel values of the _typographic_ character size, which are NOT */
|
/* pixel values of the _typographic_ character size, which are NOT */
|
||||||
|
@ -1919,6 +1996,11 @@ FT_BEGIN_HEADER
|
||||||
/* guarantee in any way that you will get glyph bitmaps that all fit */
|
/* guarantee in any way that you will get glyph bitmaps that all fit */
|
||||||
/* within an 8x8 cell (sometimes even far from it). */
|
/* within an 8x8 cell (sometimes even far from it). */
|
||||||
/* */
|
/* */
|
||||||
|
/* For bitmap fonts, `pixel_height' usually is a reliable value for */
|
||||||
|
/* the height of the bitmap cell. Drivers for bitmap font formats */
|
||||||
|
/* which contain a single bitmap strike only (BDF, PCF, FNT) ignore */
|
||||||
|
/* `pixel_width'. */
|
||||||
|
/* */
|
||||||
FT_EXPORT( FT_Error )
|
FT_EXPORT( FT_Error )
|
||||||
FT_Set_Pixel_Sizes( FT_Face face,
|
FT_Set_Pixel_Sizes( FT_Face face,
|
||||||
FT_UInt pixel_width,
|
FT_UInt pixel_width,
|
||||||
|
@ -2010,7 +2092,7 @@ FT_BEGIN_HEADER
|
||||||
FT_Int32 load_flags );
|
FT_Int32 load_flags );
|
||||||
|
|
||||||
|
|
||||||
/****************************************************************************
|
/***************************************************************************
|
||||||
*
|
*
|
||||||
* @enum:
|
* @enum:
|
||||||
* FT_LOAD_XXX
|
* FT_LOAD_XXX
|
||||||
|
@ -2131,6 +2213,7 @@ FT_BEGIN_HEADER
|
||||||
* being used. This can be important for certain fonts where unhinted
|
* being used. This can be important for certain fonts where unhinted
|
||||||
* output is better than auto-hinted one.
|
* output is better than auto-hinted one.
|
||||||
*/
|
*/
|
||||||
|
#define FT_LOAD_DEFAULT 0x0
|
||||||
#define FT_LOAD_NO_SCALE 0x1
|
#define FT_LOAD_NO_SCALE 0x1
|
||||||
#define FT_LOAD_NO_HINTING 0x2
|
#define FT_LOAD_NO_HINTING 0x2
|
||||||
#define FT_LOAD_RENDER 0x4
|
#define FT_LOAD_RENDER 0x4
|
||||||
|
@ -2151,16 +2234,43 @@ FT_BEGIN_HEADER
|
||||||
|
|
||||||
/* */
|
/* */
|
||||||
|
|
||||||
|
|
||||||
#define FT_LOAD_TARGET_( x ) ( (FT_Int32)( (x) & 15 ) << 16 )
|
#define FT_LOAD_TARGET_( x ) ( (FT_Int32)( (x) & 15 ) << 16 )
|
||||||
#define FT_LOAD_TARGET_MODE( x ) ( (FT_Render_Mode)( ( (x) >> 16 ) & 15 ) )
|
#define FT_LOAD_TARGET_MODE( x ) ( (FT_Render_Mode)( ( (x) >> 16 ) & 15 ) )
|
||||||
|
|
||||||
|
|
||||||
|
/***************************************************************************
|
||||||
|
*
|
||||||
|
* @enum:
|
||||||
|
* FT_LOAD_TARGET_XXX
|
||||||
|
*
|
||||||
|
* @description:
|
||||||
|
* A list of load targets. XXX
|
||||||
|
*
|
||||||
|
* @values:
|
||||||
|
* FT_LOAD_TARGET_NORMAL ::
|
||||||
|
* XXX
|
||||||
|
*
|
||||||
|
* FT_LOAD_TARGET_LIGHT ::
|
||||||
|
* XXX
|
||||||
|
*
|
||||||
|
* FT_LOAD_TARGET_MONO ::
|
||||||
|
* XXX
|
||||||
|
*
|
||||||
|
* FT_LOAD_TARGET_LCD ::
|
||||||
|
* XXX
|
||||||
|
*
|
||||||
|
* FT_LOAD_TARGET_LCD_V ::
|
||||||
|
* XXX
|
||||||
|
*/
|
||||||
|
|
||||||
#define FT_LOAD_TARGET_NORMAL FT_LOAD_TARGET_( FT_RENDER_MODE_NORMAL )
|
#define FT_LOAD_TARGET_NORMAL FT_LOAD_TARGET_( FT_RENDER_MODE_NORMAL )
|
||||||
#define FT_LOAD_TARGET_LIGHT FT_LOAD_TARGET_( FT_RENDER_MODE_LIGHT )
|
#define FT_LOAD_TARGET_LIGHT FT_LOAD_TARGET_( FT_RENDER_MODE_LIGHT )
|
||||||
#define FT_LOAD_TARGET_MONO FT_LOAD_TARGET_( FT_RENDER_MODE_MONO )
|
#define FT_LOAD_TARGET_MONO FT_LOAD_TARGET_( FT_RENDER_MODE_MONO )
|
||||||
#define FT_LOAD_TARGET_LCD FT_LOAD_TARGET_( FT_RENDER_MODE_LCD )
|
#define FT_LOAD_TARGET_LCD FT_LOAD_TARGET_( FT_RENDER_MODE_LCD )
|
||||||
#define FT_LOAD_TARGET_LCD_V FT_LOAD_TARGET_( FT_RENDER_MODE_LCD_V )
|
#define FT_LOAD_TARGET_LCD_V FT_LOAD_TARGET_( FT_RENDER_MODE_LCD_V )
|
||||||
|
|
||||||
#define FT_LOAD_DEFAULT 0x0
|
/* */
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
|
@ -2186,7 +2296,7 @@ FT_BEGIN_HEADER
|
||||||
/* The transformation is only applied to scalable image formats after */
|
/* The transformation is only applied to scalable image formats after */
|
||||||
/* the glyph has been loaded. It means that hinting is unaltered by */
|
/* the glyph has been loaded. It means that hinting is unaltered by */
|
||||||
/* the transformation and is performed on the character size given in */
|
/* the transformation and is performed on the character size given in */
|
||||||
/* the last call to @FT_Set_Char_Sizes or @FT_Set_Pixel_Sizes. */
|
/* the last call to @FT_Set_Char_Size or @FT_Set_Pixel_Sizes. */
|
||||||
/* */
|
/* */
|
||||||
FT_EXPORT( void )
|
FT_EXPORT( void )
|
||||||
FT_Set_Transform( FT_Face face,
|
FT_Set_Transform( FT_Face face,
|
||||||
|
@ -2205,6 +2315,10 @@ FT_BEGIN_HEADER
|
||||||
/* conversion performed on the outline, as well as specific */
|
/* conversion performed on the outline, as well as specific */
|
||||||
/* hinting optimizations. */
|
/* hinting optimizations. */
|
||||||
/* */
|
/* */
|
||||||
|
/* For bitmap fonts the `bitmap->pixel_mode' field in the */
|
||||||
|
/* @FT_GlyphSlotRec structure gives the format of the returned */
|
||||||
|
/* bitmap. */
|
||||||
|
/* */
|
||||||
/* <Values> */
|
/* <Values> */
|
||||||
/* FT_RENDER_MODE_NORMAL :: */
|
/* FT_RENDER_MODE_NORMAL :: */
|
||||||
/* This is the default render mode; it corresponds to 8-bit */
|
/* This is the default render mode; it corresponds to 8-bit */
|
||||||
|
@ -2212,11 +2326,10 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
/* FT_RENDER_MODE_LIGHT :: */
|
/* FT_RENDER_MODE_LIGHT :: */
|
||||||
/* This is similar to @FT_RENDER_MODE_NORMAL, except that this */
|
/* This is similar to @FT_RENDER_MODE_NORMAL, except that this */
|
||||||
/* changes the hinting to prevent stem width quantization. This */
|
/* changes the hinting to prevent stem width quantization. This */
|
||||||
/* results in glyph shapes that are more similar to the original, */
|
/* results in glyph shapes that are more similar to the original, */
|
||||||
/* while being a bit more fuzzy ("better shapes", instead of */
|
/* while being a bit more fuzzy ("better shapes", instead of */
|
||||||
/* "better contrast" if you want :-) THIS IS STILL EXPERIMENTAL, */
|
/* "better contrast" if you want :-). */
|
||||||
/* FOR NOW, THIS WILL PRODUCE RESULTS SIMILAR TO NORMAL MODE !! */
|
|
||||||
/* */
|
/* */
|
||||||
/* FT_RENDER_MODE_MONO :: */
|
/* FT_RENDER_MODE_MONO :: */
|
||||||
/* This mode corresponds to 1-bit bitmaps. */
|
/* This mode corresponds to 1-bit bitmaps. */
|
||||||
|
@ -2225,8 +2338,7 @@ FT_BEGIN_HEADER
|
||||||
/* This mode corresponds to horizontal RGB/BGR sub-pixel displays, */
|
/* This mode corresponds to horizontal RGB/BGR sub-pixel displays, */
|
||||||
/* like LCD-screens. It produces 8-bit bitmaps that are 3 times */
|
/* like LCD-screens. It produces 8-bit bitmaps that are 3 times */
|
||||||
/* the width of the original glyph outline in pixels, and which use */
|
/* the width of the original glyph outline in pixels, and which use */
|
||||||
/* the @FT_PIXEL_MODE_LCD mode. THIS IS STILL EXPERIMENTAL, DO NOT */
|
/* the @FT_PIXEL_MODE_LCD mode. */
|
||||||
/* USE FOR NOW !! */
|
|
||||||
/* */
|
/* */
|
||||||
/* FT_RENDER_MODE_LCD_V :: */
|
/* FT_RENDER_MODE_LCD_V :: */
|
||||||
/* This mode corresponds to vertical RGB/BGR sub-pixel displays */
|
/* This mode corresponds to vertical RGB/BGR sub-pixel displays */
|
||||||
|
@ -2237,8 +2349,7 @@ FT_BEGIN_HEADER
|
||||||
/* <Note> */
|
/* <Note> */
|
||||||
/* The LCD-optimized glyph bitmaps produced by FT_Render_Glyph are */
|
/* The LCD-optimized glyph bitmaps produced by FT_Render_Glyph are */
|
||||||
/* _not filtered_ to reduce color-fringes. It is up to the caller to */
|
/* _not filtered_ to reduce color-fringes. It is up to the caller to */
|
||||||
/* perform this pass. THIS IS STILL EXPERIMENTAL, DO NOT USE FOR NOW */
|
/* perform this pass. */
|
||||||
/* !! */
|
|
||||||
/* */
|
/* */
|
||||||
typedef enum FT_Render_Mode_
|
typedef enum FT_Render_Mode_
|
||||||
{
|
{
|
||||||
|
@ -2770,7 +2881,7 @@ FT_BEGIN_HEADER
|
||||||
/* <Note> */
|
/* <Note> */
|
||||||
/* The optimization for FT_DivFix() is simple: If (a << 16) fits in */
|
/* The optimization for FT_DivFix() is simple: If (a << 16) fits in */
|
||||||
/* 32 bits, then the division is computed directly. Otherwise, we */
|
/* 32 bits, then the division is computed directly. Otherwise, we */
|
||||||
/* use a specialized version of the old @FT_MulDiv64. */
|
/* use a specialized version of @FT_MulDiv. */
|
||||||
/* */
|
/* */
|
||||||
FT_EXPORT( FT_Long )
|
FT_EXPORT( FT_Long )
|
||||||
FT_DivFix( FT_Long a,
|
FT_DivFix( FT_Long a,
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
/* */
|
/* */
|
||||||
/* FreeType API for accessing BDF-specific strings (specification). */
|
/* FreeType API for accessing BDF-specific strings (specification). */
|
||||||
/* */
|
/* */
|
||||||
/* Copyright 2002 by */
|
/* Copyright 2002, 2003 by */
|
||||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||||
/* */
|
/* */
|
||||||
/* This file is part of the FreeType project, and may only be used, */
|
/* This file is part of the FreeType project, and may only be used, */
|
||||||
|
@ -49,22 +49,22 @@ FT_BEGIN_HEADER
|
||||||
* FT_PropertyType
|
* FT_PropertyType
|
||||||
*
|
*
|
||||||
* @description:
|
* @description:
|
||||||
* list of BDF property types
|
* A list of BDF property types.
|
||||||
*
|
*
|
||||||
* @values:
|
* @values:
|
||||||
* BDF_PROPERTY_TYPE_NONE ::
|
* BDF_PROPERTY_TYPE_NONE ::
|
||||||
* value 0 is used to indicate a missing property
|
* Value 0 is used to indicate a missing property.
|
||||||
*
|
*
|
||||||
* BDF_PROPERTY_TYPE_ATOM ::
|
* BDF_PROPERTY_TYPE_ATOM ::
|
||||||
* property is a string atom
|
* Property is a string atom.
|
||||||
*
|
*
|
||||||
* BDF_PROPERTY_TYPE_INTEGER ::
|
* BDF_PROPERTY_TYPE_INTEGER ::
|
||||||
* property is a 32-bit signed integer
|
* Property is a 32-bit signed integer.
|
||||||
*
|
*
|
||||||
* BDF_PROPERTY_TYPE_CARDINAL ::
|
* BDF_PROPERTY_TYPE_CARDINAL ::
|
||||||
* property is a 32-bit unsigned integer
|
* Property is a 32-bit unsigned integer.
|
||||||
*/
|
*/
|
||||||
typedef enum
|
typedef enum BDF_PropertyType_
|
||||||
{
|
{
|
||||||
BDF_PROPERTY_TYPE_NONE = 0,
|
BDF_PROPERTY_TYPE_NONE = 0,
|
||||||
BDF_PROPERTY_TYPE_ATOM = 1,
|
BDF_PROPERTY_TYPE_ATOM = 1,
|
||||||
|
@ -76,34 +76,44 @@ FT_BEGIN_HEADER
|
||||||
|
|
||||||
/**********************************************************************
|
/**********************************************************************
|
||||||
*
|
*
|
||||||
* @type: BDF_Property
|
* @type:
|
||||||
|
* BDF_Property
|
||||||
*
|
*
|
||||||
* @description:
|
* @description:
|
||||||
* handle to a @BDF_PropertyRec structure used to model a given
|
* A handle to a @BDF_PropertyRec structure to model a given
|
||||||
* BDF/PCF property
|
* BDF/PCF property.
|
||||||
*/
|
*/
|
||||||
typedef struct BDF_PropertyRec_* BDF_Property;
|
typedef struct BDF_PropertyRec_* BDF_Property;
|
||||||
|
|
||||||
|
|
||||||
/**********************************************************************
|
/**********************************************************************
|
||||||
*
|
*
|
||||||
* @struct: BDF_PropertyRec
|
* @struct:
|
||||||
|
* BDF_PropertyRec
|
||||||
*
|
*
|
||||||
* @description:
|
* @description:
|
||||||
* models a given BDF/PCF property
|
* This structure models a given BDF/PCF property.
|
||||||
*
|
*
|
||||||
* @note:
|
* @fields:
|
||||||
* type :: property type
|
* type ::
|
||||||
* u.atom :: atom string, when type is @BDF_PROPERTY_TYPE_ATOM
|
* The property type.
|
||||||
* u.integer :: signed integer, when type is @BDF_PROPERTY_TYPE_INTEGER
|
*
|
||||||
* u.cardinal :: unsigned integer, when type is @BDF_PROPERTY_TYPE_CARDINAL
|
* u.atom ::
|
||||||
|
* The atom string, if type is @BDF_PROPERTY_TYPE_ATOM.
|
||||||
|
*
|
||||||
|
* u.integer ::
|
||||||
|
* A signed integer, if type is @BDF_PROPERTY_TYPE_INTEGER.
|
||||||
|
*
|
||||||
|
* u.cardinal ::
|
||||||
|
* An unsigned integer, if type is @BDF_PROPERTY_TYPE_CARDINAL.
|
||||||
*/
|
*/
|
||||||
typedef struct BDF_PropertyRec_
|
typedef struct BDF_PropertyRec_
|
||||||
{
|
{
|
||||||
BDF_PropertyType type;
|
BDF_PropertyType type;
|
||||||
union {
|
union {
|
||||||
const char* atom;
|
const char* atom;
|
||||||
FT_Int32 integer;
|
FT_Int32 integer;
|
||||||
FT_UInt32 cardinal;
|
FT_UInt32 cardinal;
|
||||||
|
|
||||||
} u;
|
} u;
|
||||||
|
|
||||||
|
@ -121,7 +131,7 @@ FT_BEGIN_HEADER
|
||||||
*
|
*
|
||||||
* @input:
|
* @input:
|
||||||
* face ::
|
* face ::
|
||||||
* handle to input face
|
* A handle to the input face.
|
||||||
*
|
*
|
||||||
* @output:
|
* @output:
|
||||||
* acharset_encoding ::
|
* acharset_encoding ::
|
||||||
|
@ -131,7 +141,7 @@ FT_BEGIN_HEADER
|
||||||
* Charset registry, as a C string, owned by the face.
|
* Charset registry, as a C string, owned by the face.
|
||||||
*
|
*
|
||||||
* @return:
|
* @return:
|
||||||
* FreeType rror code. 0 means success.
|
* FreeType error code. 0 means success.
|
||||||
*
|
*
|
||||||
* @note:
|
* @note:
|
||||||
* This function only works with BDF faces, returning an error otherwise.
|
* This function only works with BDF faces, returning an error otherwise.
|
||||||
|
@ -141,31 +151,33 @@ FT_BEGIN_HEADER
|
||||||
const char* *acharset_encoding,
|
const char* *acharset_encoding,
|
||||||
const char* *acharset_registry );
|
const char* *acharset_registry );
|
||||||
|
|
||||||
|
|
||||||
/**********************************************************************
|
/**********************************************************************
|
||||||
*
|
*
|
||||||
* @function:
|
* @function:
|
||||||
* FT_Get_BDF_Property
|
* FT_Get_BDF_Property
|
||||||
*
|
*
|
||||||
* @description:
|
* @description:
|
||||||
* Retrieves a BDF property from a BDF or PCF font file
|
* Retrieves a BDF property from a BDF or PCF font file.
|
||||||
*
|
*
|
||||||
* @input:
|
* @input:
|
||||||
* face :: handle to input face
|
* face :: A handle to the input face.
|
||||||
* name :: property name
|
*
|
||||||
|
* name :: The property name.
|
||||||
*
|
*
|
||||||
* @output:
|
* @output:
|
||||||
* aproperty :: the property
|
* aproperty :: The property.
|
||||||
*
|
*
|
||||||
* @return:
|
* @return:
|
||||||
* FreeType error code. 0 means success.
|
* FreeType error code. 0 means success.
|
||||||
*
|
*
|
||||||
* @note:
|
* @note:
|
||||||
* This function works with BDF _and_ PCF fonts. It returns an error
|
* This function works with BDF _and_ PCF fonts. It returns an error
|
||||||
* otherwise. it also returns an error when the property is not in the
|
* otherwise. It also returns an error if the property is not in the
|
||||||
* font.
|
* font.
|
||||||
*
|
*
|
||||||
* in case of error, "aproperty->type" is always set to
|
* In case of error, "aproperty->type" is always set to
|
||||||
* @BDF_PROPERTY_TYPE_NONE
|
* @BDF_PROPERTY_TYPE_NONE.
|
||||||
*/
|
*/
|
||||||
FT_EXPORT( FT_Error )
|
FT_EXPORT( FT_Error )
|
||||||
FT_Get_BDF_Property( FT_Face face,
|
FT_Get_BDF_Property( FT_Face face,
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
/* */
|
/* */
|
||||||
/* FreeType Cache subsystem (specification). */
|
/* FreeType Cache subsystem (specification). */
|
||||||
/* */
|
/* */
|
||||||
/* Copyright 1996-2001 by */
|
/* Copyright 1996-2001, 2002, 2003 by */
|
||||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||||
/* */
|
/* */
|
||||||
/* This file is part of the FreeType project, and may only be used, */
|
/* This file is part of the FreeType project, and may only be used, */
|
||||||
|
@ -71,7 +71,6 @@ FT_BEGIN_HEADER
|
||||||
/* FTC_Node_Unref */
|
/* FTC_Node_Unref */
|
||||||
/* */
|
/* */
|
||||||
/* FTC_Font */
|
/* FTC_Font */
|
||||||
/* FTC_ImageDesc */
|
|
||||||
/* FTC_ImageCache */
|
/* FTC_ImageCache */
|
||||||
/* FTC_ImageCache_New */
|
/* FTC_ImageCache_New */
|
||||||
/* FTC_ImageCache_Lookup */
|
/* FTC_ImageCache_Lookup */
|
||||||
|
@ -242,9 +241,9 @@ FT_BEGIN_HEADER
|
||||||
/* If you lookup nodes, you have the ability to "acquire" them, i.e., */
|
/* If you lookup nodes, you have the ability to "acquire" them, i.e., */
|
||||||
/* to increment their reference count. This will prevent the node */
|
/* to increment their reference count. This will prevent the node */
|
||||||
/* from being flushed out of the cache until you explicitly "release" */
|
/* from being flushed out of the cache until you explicitly "release" */
|
||||||
/* it (see @FTC_Node_Release). */
|
/* it (see @FTC_Node_Unref). */
|
||||||
/* */
|
/* */
|
||||||
/* See also @FTC_BitsetCache_Lookup and @FTC_ImageCache_Lookup. */
|
/* See also @FTC_SBitCache_Lookup and @FTC_ImageCache_Lookup. */
|
||||||
/* */
|
/* */
|
||||||
typedef struct FTC_NodeRec_* FTC_Node;
|
typedef struct FTC_NodeRec_* FTC_Node;
|
||||||
|
|
||||||
|
@ -368,12 +367,12 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* Retrieves the @FT_Face and @FT_Size objects that correspond to a */
|
/* Retrieves the @FT_Face and @FT_Size objects that correspond to a */
|
||||||
/* given @FTC_SizeID. */
|
/* given font. */
|
||||||
/* */
|
/* */
|
||||||
/* <Input> */
|
/* <Input> */
|
||||||
/* manager :: A handle to the cache manager. */
|
/* manager :: A handle to the cache manager. */
|
||||||
/* */
|
/* */
|
||||||
/* size_id :: The ID of the `font size' to use. */
|
/* font :: The font to use. */
|
||||||
/* */
|
/* */
|
||||||
/* <Output> */
|
/* <Output> */
|
||||||
/* aface :: A pointer to the handle of the face object. Set it to */
|
/* aface :: A pointer to the handle of the face object. Set it to */
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
/* */
|
/* */
|
||||||
/* FreeType convenience functions to handle glyphs (specification). */
|
/* FreeType convenience functions to handle glyphs (specification). */
|
||||||
/* */
|
/* */
|
||||||
/* Copyright 1996-2001 by */
|
/* Copyright 1996-2001, 2002, 2003 by */
|
||||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||||
/* */
|
/* */
|
||||||
/* This file is part of the FreeType project, and may only be used, */
|
/* This file is part of the FreeType project, and may only be used, */
|
||||||
|
@ -282,7 +282,64 @@ FT_BEGIN_HEADER
|
||||||
FT_Matrix* matrix,
|
FT_Matrix* matrix,
|
||||||
FT_Vector* delta );
|
FT_Vector* delta );
|
||||||
|
|
||||||
/* */
|
|
||||||
|
/*************************************************************************/
|
||||||
|
/* */
|
||||||
|
/* <Enum> */
|
||||||
|
/* FT_Glyph_BBox_Mode */
|
||||||
|
/* */
|
||||||
|
/* <Description> */
|
||||||
|
/* The mode how the values of @FT_Glyph_Get_CBox are returned. */
|
||||||
|
/* */
|
||||||
|
/* <Values> */
|
||||||
|
/* FT_GLYPH_BBOX_UNSCALED :: */
|
||||||
|
/* Return unscaled font units. */
|
||||||
|
/* */
|
||||||
|
/* FT_GLYPH_BBOX_SUBPIXELS :: */
|
||||||
|
/* Return unfitted 26.6 coordinates. */
|
||||||
|
/* */
|
||||||
|
/* FT_GLYPH_BBOX_GRIDFIT :: */
|
||||||
|
/* Return grid-fitted 26.6 coordinates. */
|
||||||
|
/* */
|
||||||
|
/* FT_GLYPH_BBOX_TRUNCATE :: */
|
||||||
|
/* Return coordinates in integer pixels. */
|
||||||
|
/* */
|
||||||
|
/* FT_GLYPH_BBOX_PIXELS :: */
|
||||||
|
/* Return grid-fitted pixel coordinates. */
|
||||||
|
/* */
|
||||||
|
typedef enum FT_Glyph_BBox_Mode_
|
||||||
|
{
|
||||||
|
FT_GLYPH_BBOX_UNSCALED = 0,
|
||||||
|
FT_GLYPH_BBOX_SUBPIXELS = 0,
|
||||||
|
FT_GLYPH_BBOX_GRIDFIT = 1,
|
||||||
|
FT_GLYPH_BBOX_TRUNCATE = 2,
|
||||||
|
FT_GLYPH_BBOX_PIXELS = 3
|
||||||
|
|
||||||
|
} FT_Glyph_BBox_Mode;
|
||||||
|
|
||||||
|
|
||||||
|
/*************************************************************************/
|
||||||
|
/* */
|
||||||
|
/* <Enum> */
|
||||||
|
/* ft_glyph_bbox_xxx */
|
||||||
|
/* */
|
||||||
|
/* <Description> */
|
||||||
|
/* These constants are deprecated. Use the corresponding */
|
||||||
|
/* @FT_Glyph_BBox_Mode values instead. */
|
||||||
|
/* */
|
||||||
|
/* <Values> */
|
||||||
|
/* ft_glyph_bbox_unscaled :: see @FT_GLYPH_BBOX_UNSCALED */
|
||||||
|
/* ft_glyph_bbox_subpixels :: see @FT_GLYPH_BBOX_SUBPIXELS */
|
||||||
|
/* ft_glyph_bbox_gridfit :: see @FT_GLYPH_BBOX_GRIDFIT */
|
||||||
|
/* ft_glyph_bbox_truncate :: see @FT_GLYPH_BBOX_TRUNCATE */
|
||||||
|
/* ft_glyph_bbox_pixels :: see @FT_GLYPH_BBOX_PIXELS */
|
||||||
|
/* */
|
||||||
|
#define ft_glyph_bbox_unscaled FT_GLYPH_BBOX_UNSCALED
|
||||||
|
#define ft_glyph_bbox_subpixels FT_GLYPH_BBOX_SUBPIXELS
|
||||||
|
#define ft_glyph_bbox_gridfit FT_GLYPH_BBOX_GRIDFIT
|
||||||
|
#define ft_glyph_bbox_truncate FT_GLYPH_BBOX_TRUNCATE
|
||||||
|
#define ft_glyph_bbox_pixels FT_GLYPH_BBOX_PIXELS
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
|
@ -316,11 +373,9 @@ FT_BEGIN_HEADER
|
||||||
/* convention. */
|
/* convention. */
|
||||||
/* */
|
/* */
|
||||||
/* If the glyph has been loaded with FT_LOAD_NO_SCALE, `bbox_mode' */
|
/* If the glyph has been loaded with FT_LOAD_NO_SCALE, `bbox_mode' */
|
||||||
/* must be set to `ft_glyph_bbox_unscaled' to get unscaled font */
|
/* must be set to `FT_GLYPH_BBOX_UNSCALED' to get unscaled font */
|
||||||
/* units. */
|
/* units in 26.6 pixel format. The value `FT_GLYPH_BBOX_SUBPIXELS' */
|
||||||
/* */
|
/* is another name for this constant. */
|
||||||
/* If `bbox_mode' is set to `ft_glyph_bbox_subpixels' the bbox */
|
|
||||||
/* coordinates are returned in 26.6 pixels (i.e. 1/64th of pixels). */
|
|
||||||
/* */
|
/* */
|
||||||
/* Note that the maximum coordinates are exclusive, which means that */
|
/* Note that the maximum coordinates are exclusive, which means that */
|
||||||
/* one can compute the width and height of the glyph image (be it in */
|
/* one can compute the width and height of the glyph image (be it in */
|
||||||
|
@ -330,7 +385,7 @@ FT_BEGIN_HEADER
|
||||||
/* height = bbox.yMax - bbox.yMin; */
|
/* height = bbox.yMax - bbox.yMin; */
|
||||||
/* */
|
/* */
|
||||||
/* Note also that for 26.6 coordinates, if `bbox_mode' is set to */
|
/* Note also that for 26.6 coordinates, if `bbox_mode' is set to */
|
||||||
/* `ft_glyph_bbox_gridfit', the coordinates will also be grid-fitted, */
|
/* `FT_GLYPH_BBOX_GRIDFIT', the coordinates will also be grid-fitted, */
|
||||||
/* which corresponds to: */
|
/* which corresponds to: */
|
||||||
/* */
|
/* */
|
||||||
/* bbox.xMin = FLOOR(bbox.xMin); */
|
/* bbox.xMin = FLOOR(bbox.xMin); */
|
||||||
|
@ -339,23 +394,11 @@ FT_BEGIN_HEADER
|
||||||
/* bbox.yMax = CEILING(bbox.yMax); */
|
/* bbox.yMax = CEILING(bbox.yMax); */
|
||||||
/* */
|
/* */
|
||||||
/* To get the bbox in pixel coordinates, set `bbox_mode' to */
|
/* To get the bbox in pixel coordinates, set `bbox_mode' to */
|
||||||
/* `ft_glyph_bbox_truncate'. */
|
/* `FT_GLYPH_BBOX_TRUNCATE'. */
|
||||||
/* */
|
/* */
|
||||||
/* To get the bbox in grid-fitted pixel coordinates, set `bbox_mode' */
|
/* To get the bbox in grid-fitted pixel coordinates, set `bbox_mode' */
|
||||||
/* to `ft_glyph_bbox_pixels'. */
|
/* to `FT_GLYPH_BBOX_PIXELS'. */
|
||||||
/* */
|
/* */
|
||||||
/* The default value for `bbox_mode' is `ft_glyph_bbox_pixels'. */
|
|
||||||
/* */
|
|
||||||
enum
|
|
||||||
{
|
|
||||||
ft_glyph_bbox_unscaled = 0, /* return unscaled font units */
|
|
||||||
ft_glyph_bbox_subpixels = 0, /* return unfitted 26.6 coordinates */
|
|
||||||
ft_glyph_bbox_gridfit = 1, /* return grid-fitted 26.6 coordinates */
|
|
||||||
ft_glyph_bbox_truncate = 2, /* return coordinates in integer pixels */
|
|
||||||
ft_glyph_bbox_pixels = 3 /* return grid-fitted pixel coordinates */
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
FT_EXPORT( void )
|
FT_EXPORT( void )
|
||||||
FT_Glyph_Get_CBox( FT_Glyph glyph,
|
FT_Glyph_Get_CBox( FT_Glyph glyph,
|
||||||
FT_UInt bbox_mode,
|
FT_UInt bbox_mode,
|
||||||
|
@ -391,8 +434,7 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
/* <Note> */
|
/* <Note> */
|
||||||
/* The glyph image is translated with the `origin' vector before */
|
/* The glyph image is translated with the `origin' vector before */
|
||||||
/* rendering. In case of error, it it translated back to its */
|
/* rendering. */
|
||||||
/* original position and the glyph is left untouched. */
|
|
||||||
/* */
|
/* */
|
||||||
/* The first parameter is a pointer to a FT_Glyph handle, that will */
|
/* The first parameter is a pointer to a FT_Glyph handle, that will */
|
||||||
/* be replaced by this function. Typically, you would use (omitting */
|
/* be replaced by this function. Typically, you would use (omitting */
|
||||||
|
@ -413,7 +455,7 @@ FT_BEGIN_HEADER
|
||||||
/* // convert to a bitmap (default render mode + destroy old) */
|
/* // convert to a bitmap (default render mode + destroy old) */
|
||||||
/* if ( glyph->format != FT_GLYPH_FORMAT_BITMAP ) */
|
/* if ( glyph->format != FT_GLYPH_FORMAT_BITMAP ) */
|
||||||
/* { */
|
/* { */
|
||||||
/* error = FT_Glyph_To_Bitmap( &glyph, ft_render_mode_default, */
|
/* error = FT_Glyph_To_Bitmap( &glyph, FT_RENDER_MODE_DEFAULT, */
|
||||||
/* 0, 1 ); */
|
/* 0, 1 ); */
|
||||||
/* if ( error ) // glyph unchanged */
|
/* if ( error ) // glyph unchanged */
|
||||||
/* ... */
|
/* ... */
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
/* */
|
/* */
|
||||||
/* Gzip-compressed stream support. */
|
/* Gzip-compressed stream support. */
|
||||||
/* */
|
/* */
|
||||||
/* Copyright 2002 by */
|
/* Copyright 2002, 2003 by */
|
||||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||||
/* */
|
/* */
|
||||||
/* This file is part of the FreeType project, and may only be used, */
|
/* This file is part of the FreeType project, and may only be used, */
|
||||||
|
@ -40,47 +40,54 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
|
|
||||||
|
|
||||||
/************************************************************************
|
/************************************************************************
|
||||||
*
|
*
|
||||||
* @type: FT_Stream_OpenGzip
|
* @function:
|
||||||
|
* FT_Stream_OpenGzip
|
||||||
*
|
*
|
||||||
* @description:
|
* @description:
|
||||||
* open a new stream to parse gzip-compressed font files. This is
|
* Open a new stream to parse gzip-compressed font files. This is
|
||||||
* mainly used to support the compressed *.pcf.gz fonts that come
|
* mainly used to support the compressed *.pcf.gz fonts that come
|
||||||
* with XFree86
|
* with XFree86.
|
||||||
*
|
*
|
||||||
* @input:
|
* @input:
|
||||||
* stream :: target embedding stream
|
* stream :: The target embedding stream.
|
||||||
* source :: source stream, used to
|
*
|
||||||
|
* source :: The source stream.
|
||||||
*
|
*
|
||||||
* @return:
|
* @return:
|
||||||
* error code. 0 means success
|
* FreeType error code. 0 means success.
|
||||||
*
|
*
|
||||||
* @note:
|
* @note:
|
||||||
* the source stream must be opened _before_ calling this function.
|
* The source stream must be opened _before_ calling this function.
|
||||||
*
|
*
|
||||||
* calling @FT_Stream_Close on the new stream will *not* call
|
* Calling the internal function FT_Stream_Close on the new stream will
|
||||||
* @FT_Stream_Close on the source stream. None of the stream objects
|
* *not* call FT_Stream_Close on the source stream. None of the stream
|
||||||
* will be released to the heap.
|
* objects will be released to the heap.
|
||||||
*
|
*
|
||||||
* the stream implementation is very basic, and resets the decompression
|
* The stream implementation is very basic and resets the decompression
|
||||||
* process each time seeking backwards is needed within the stream
|
* process each time seeking backwards is needed within the stream.
|
||||||
*
|
*
|
||||||
* in certain builds of the library, gzip compression recognition is
|
* In certain builds of the library, gzip compression recognition is
|
||||||
* automatic when calling @FT_New_Face or @FT_Open_Face. This means that
|
* automatically handled when calling @FT_New_Face or @FT_Open_Face.
|
||||||
* if no font driver is capable of handling the raw compressed file,
|
* This means that if no font driver is capable of handling the raw
|
||||||
* the library will try to open a gzip stream from it and re-open
|
* compressed file, the library will try to open a gzipped stream from
|
||||||
* the face with it.
|
* it and re-open the face with it.
|
||||||
*
|
*
|
||||||
* this function may return "FT_Err_Unimplemented" if your build of
|
* This function may return "FT_Err_Unimplemented" if your build of
|
||||||
* FreeType was not compiled with zlib support.
|
* FreeType was not compiled with zlib support.
|
||||||
*/
|
*/
|
||||||
FT_EXPORT( FT_Error )
|
FT_EXPORT( FT_Error )
|
||||||
FT_Stream_OpenGzip( FT_Stream stream,
|
FT_Stream_OpenGzip( FT_Stream stream,
|
||||||
FT_Stream source );
|
FT_Stream source );
|
||||||
|
|
||||||
/* */
|
/* */
|
||||||
|
|
||||||
|
|
||||||
FT_END_HEADER
|
FT_END_HEADER
|
||||||
|
|
||||||
#endif /* __FTGZIP_H__ */
|
#endif /* __FTGZIP_H__ */
|
||||||
|
|
||||||
|
|
||||||
|
/* END */
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
/* FreeType glyph image formats and default raster interface */
|
/* FreeType glyph image formats and default raster interface */
|
||||||
/* (specification). */
|
/* (specification). */
|
||||||
/* */
|
/* */
|
||||||
/* Copyright 1996-2001, 2002 by */
|
/* Copyright 1996-2001, 2002, 2003 by */
|
||||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||||
/* */
|
/* */
|
||||||
/* This file is part of the FreeType project, and may only be used, */
|
/* This file is part of the FreeType project, and may only be used, */
|
||||||
|
@ -261,7 +261,8 @@ FT_BEGIN_HEADER
|
||||||
/* `FT_PIXEL_MODE_GRAY'; it gives the number of gray */
|
/* `FT_PIXEL_MODE_GRAY'; it gives the number of gray */
|
||||||
/* levels used in the bitmap. */
|
/* levels used in the bitmap. */
|
||||||
/* */
|
/* */
|
||||||
/* pixel_mode :: The pixel_mode, i.e., how pixel bits are stored. */
|
/* pixel_mode :: The pixel mode, i.e., how pixel bits are stored. */
|
||||||
|
/* See @FT_Pixel_Mode for possible values. */
|
||||||
/* */
|
/* */
|
||||||
/* palette_mode :: This field is only used with paletted pixel modes; */
|
/* palette_mode :: This field is only used with paletted pixel modes; */
|
||||||
/* it indicates how the palette is stored. */
|
/* it indicates how the palette is stored. */
|
||||||
|
@ -357,11 +358,11 @@ FT_BEGIN_HEADER
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <Enum> */
|
/* <Enum> */
|
||||||
/* FT_Outline_Flags */
|
/* FT_OUTLINE_FLAGS */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* A simple type used to enumerates the flags in an outline's */
|
/* A list of bit-field constants use for the flags in an outline's */
|
||||||
/* `outline_flags' field. */
|
/* `flags' field. */
|
||||||
/* */
|
/* */
|
||||||
/* <Values> */
|
/* <Values> */
|
||||||
/* FT_OUTLINE_NONE :: Value 0 is reserved. */
|
/* FT_OUTLINE_NONE :: Value 0 is reserved. */
|
||||||
|
@ -414,27 +415,24 @@ FT_BEGIN_HEADER
|
||||||
/* completely ignored by a given */
|
/* completely ignored by a given */
|
||||||
/* scan-converter. */
|
/* scan-converter. */
|
||||||
/* */
|
/* */
|
||||||
typedef enum FT_Outline_Flags_
|
#define FT_OUTLINE_NONE 0x0
|
||||||
{
|
#define FT_OUTLINE_OWNER 0x1
|
||||||
FT_OUTLINE_NONE = 0,
|
#define FT_OUTLINE_EVEN_ODD_FILL 0x2
|
||||||
FT_OUTLINE_OWNER = 1,
|
#define FT_OUTLINE_REVERSE_FILL 0x4
|
||||||
FT_OUTLINE_EVEN_ODD_FILL = 2,
|
#define FT_OUTLINE_IGNORE_DROPOUTS 0x8
|
||||||
FT_OUTLINE_REVERSE_FILL = 4,
|
|
||||||
FT_OUTLINE_IGNORE_DROPOUTS = 8,
|
|
||||||
FT_OUTLINE_HIGH_PRECISION = 256,
|
|
||||||
FT_OUTLINE_SINGLE_PASS = 512
|
|
||||||
|
|
||||||
} FT_Outline_Flags;
|
#define FT_OUTLINE_HIGH_PRECISION 0x100
|
||||||
|
#define FT_OUTLINE_SINGLE_PASS 0x200
|
||||||
|
|
||||||
|
|
||||||
/*************************************************************************
|
/*************************************************************************
|
||||||
*
|
*
|
||||||
* @enum:
|
* @enum:
|
||||||
* ft_outline_xxx
|
* ft_outline_flags
|
||||||
*
|
*
|
||||||
* @description:
|
* @description:
|
||||||
* These constants are deprecated. Please use the corresponding
|
* These constants are deprecated. Please use the corresponding
|
||||||
* @FT_OUTLINE_XXX values.
|
* @FT_OUTLINE_FLAGS values.
|
||||||
*
|
*
|
||||||
* @values:
|
* @values:
|
||||||
* ft_outline_none :: See @FT_OUTLINE_NONE.
|
* ft_outline_none :: See @FT_OUTLINE_NONE.
|
||||||
|
@ -689,8 +687,8 @@ FT_BEGIN_HEADER
|
||||||
/* */
|
/* */
|
||||||
/* FT_GLYPH_FORMAT_COMPOSITE :: */
|
/* FT_GLYPH_FORMAT_COMPOSITE :: */
|
||||||
/* The glyph image is a composite of several other images. This */
|
/* The glyph image is a composite of several other images. This */
|
||||||
/* format is _only_ used with @FT_LOAD_FLAG_NO_RECURSE, and is */
|
/* format is _only_ used with @FT_LOAD_NO_RECURSE, and is used to */
|
||||||
/* used to report compound glyphs (like accented characters). */
|
/* report compound glyphs (like accented characters). */
|
||||||
/* */
|
/* */
|
||||||
/* FT_GLYPH_FORMAT_BITMAP :: */
|
/* FT_GLYPH_FORMAT_BITMAP :: */
|
||||||
/* The glyph image is a bitmap, and can be described as an */
|
/* The glyph image is a bitmap, and can be described as an */
|
||||||
|
@ -937,11 +935,11 @@ FT_BEGIN_HEADER
|
||||||
/*************************************************************************/
|
/*************************************************************************/
|
||||||
/* */
|
/* */
|
||||||
/* <Enum> */
|
/* <Enum> */
|
||||||
/* FT_Raster_Flag */
|
/* FT_RASTER_FLAG_XXX */
|
||||||
/* */
|
/* */
|
||||||
/* <Description> */
|
/* <Description> */
|
||||||
/* An enumeration to list the bit flags as used in the `flags' field */
|
/* A list of bit flag constants as used in the `flags' field of a */
|
||||||
/* of a FT_Raster_Params structure. */
|
/* @FT_Raster_Params structure. */
|
||||||
/* */
|
/* */
|
||||||
/* <Values> */
|
/* <Values> */
|
||||||
/* FT_RASTER_FLAG_DEFAULT :: This value is 0. */
|
/* FT_RASTER_FLAG_DEFAULT :: This value is 0. */
|
||||||
|
@ -949,7 +947,7 @@ FT_BEGIN_HEADER
|
||||||
/* FT_RASTER_FLAG_AA :: This flag is set to indicate that an */
|
/* FT_RASTER_FLAG_AA :: This flag is set to indicate that an */
|
||||||
/* anti-aliased glyph image should be */
|
/* anti-aliased glyph image should be */
|
||||||
/* generated. Otherwise, it will be */
|
/* generated. Otherwise, it will be */
|
||||||
/* monochrome (1-bit) */
|
/* monochrome (1-bit). */
|
||||||
/* */
|
/* */
|
||||||
/* FT_RASTER_FLAG_DIRECT :: This flag is set to indicate direct */
|
/* FT_RASTER_FLAG_DIRECT :: This flag is set to indicate direct */
|
||||||
/* rendering. In this mode, client */
|
/* rendering. In this mode, client */
|
||||||
|
@ -974,15 +972,12 @@ FT_BEGIN_HEADER
|
||||||
/* in direct rendering mode where all spans */
|
/* in direct rendering mode where all spans */
|
||||||
/* are generated if no clipping box is set. */
|
/* are generated if no clipping box is set. */
|
||||||
/* */
|
/* */
|
||||||
typedef enum
|
#define FT_RASTER_FLAG_DEFAULT 0x0
|
||||||
{
|
#define FT_RASTER_FLAG_AA 0x1
|
||||||
FT_RASTER_FLAG_DEFAULT = 0,
|
#define FT_RASTER_FLAG_DIRECT 0x2
|
||||||
FT_RASTER_FLAG_AA = 1,
|
#define FT_RASTER_FLAG_CLIP 0x4
|
||||||
FT_RASTER_FLAG_DIRECT = 2,
|
|
||||||
FT_RASTER_FLAG_CLIP = 4
|
|
||||||
|
|
||||||
} FT_Raster_Flag;
|
|
||||||
|
|
||||||
|
/* deprecated */
|
||||||
#define ft_raster_flag_default FT_RASTER_FLAG_DEFAULT
|
#define ft_raster_flag_default FT_RASTER_FLAG_DEFAULT
|
||||||
#define ft_raster_flag_aa FT_RASTER_FLAG_AA
|
#define ft_raster_flag_aa FT_RASTER_FLAG_AA
|
||||||
#define ft_raster_flag_direct FT_RASTER_FLAG_DIRECT
|
#define ft_raster_flag_direct FT_RASTER_FLAG_DIRECT
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
/* */
|
/* */
|
||||||
/* FreeType incremental loading (specification). */
|
/* FreeType incremental loading (specification). */
|
||||||
/* */
|
/* */
|
||||||
/* Copyright 2002 by */
|
/* Copyright 2002, 2003 by */
|
||||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||||
/* */
|
/* */
|
||||||
/* This file is part of the FreeType project, and may only be used, */
|
/* This file is part of the FreeType project, and may only be used, */
|
||||||
|
@ -186,10 +186,10 @@ FT_BEGIN_HEADER
|
||||||
*/
|
*/
|
||||||
typedef FT_Error
|
typedef FT_Error
|
||||||
(*FT_Incremental_GetGlyphMetricsFunc)
|
(*FT_Incremental_GetGlyphMetricsFunc)
|
||||||
( FT_Incremental incremental,
|
( FT_Incremental incremental,
|
||||||
FT_UInt glyph_index,
|
FT_UInt glyph_index,
|
||||||
FT_Bool vertical,
|
FT_Bool vertical,
|
||||||
FT_Incremental_MetricsRec *ametrics );
|
FT_Incremental_MetricsRec *ametrics );
|
||||||
|
|
||||||
|
|
||||||
/**************************************************************************
|
/**************************************************************************
|
||||||
|
@ -199,7 +199,7 @@ FT_BEGIN_HEADER
|
||||||
*
|
*
|
||||||
* @description:
|
* @description:
|
||||||
* A table of functions for accessing fonts that load data
|
* A table of functions for accessing fonts that load data
|
||||||
* incrementally. Used in @FT_Incremental_Interface.
|
* incrementally. Used in @FT_Incremental_InterfaceRec.
|
||||||
*
|
*
|
||||||
* @fields:
|
* @fields:
|
||||||
* get_glyph_data ::
|
* get_glyph_data ::
|
||||||
|
@ -246,8 +246,7 @@ FT_BEGIN_HEADER
|
||||||
* parameter.data = &inc_int;
|
* parameter.data = &inc_int;
|
||||||
*
|
*
|
||||||
* // set up FT_Open_Args structure
|
* // set up FT_Open_Args structure
|
||||||
* open_args.flags = (FT_Open_Flags)( FT_OPEN_PATHNAME |
|
* open_args.flags = FT_OPEN_PATHNAME | FT_OPEN_PARAMS;
|
||||||
* FT_OPEN_PARAMS );
|
|
||||||
* open_args.pathname = my_font_pathname;
|
* open_args.pathname = my_font_pathname;
|
||||||
* open_args.num_params = 1;
|
* open_args.num_params = 1;
|
||||||
* open_args.params = ¶meter; // we use one optional argument
|
* open_args.params = ¶meter; // we use one optional argument
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
/* */
|
/* */
|
||||||
/* FreeType module error offsets (specification). */
|
/* FreeType module error offsets (specification). */
|
||||||
/* */
|
/* */
|
||||||
/* Copyright 2001, 2002 by */
|
/* Copyright 2001, 2002, 2003 by */
|
||||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||||
/* */
|
/* */
|
||||||
/* This file is part of the FreeType project, and may only be used, */
|
/* This file is part of the FreeType project, and may only be used, */
|
||||||
|
@ -23,8 +23,8 @@
|
||||||
/* The lower byte gives the error code, the higher byte gives the */
|
/* The lower byte gives the error code, the higher byte gives the */
|
||||||
/* module. The base module has error offset 0. For example, the error */
|
/* module. The base module has error offset 0. For example, the error */
|
||||||
/* `FT_Err_Invalid_File_Format' has value 0x003, the error */
|
/* `FT_Err_Invalid_File_Format' has value 0x003, the error */
|
||||||
/* `TT_Err_Invalid_File_Format' has value 0xB03, the error */
|
/* `TT_Err_Invalid_File_Format' has value 0xF03, the error */
|
||||||
/* `T1_Err_Invalid_File_Format' has value 0xC03, etc. */
|
/* `T1_Err_Invalid_File_Format' has value 0x1003, etc. */
|
||||||
/* */
|
/* */
|
||||||
/* Undefine the macro FT_CONFIG_OPTION_USE_MODULE_ERRORS in ftoption.h */
|
/* Undefine the macro FT_CONFIG_OPTION_USE_MODULE_ERRORS in ftoption.h */
|
||||||
/* to make the higher byte always zero (disabling the module error */
|
/* to make the higher byte always zero (disabling the module error */
|
||||||
|
@ -102,21 +102,25 @@
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
FT_MODERRDEF( Base, 0x000, "base module" )
|
FT_MODERRDEF( Base, 0x000, "base module" )
|
||||||
FT_MODERRDEF( Autohint, 0x100, "autohinter module" )
|
FT_MODERRDEF( Autohint, 0x100, "autohinter module" )
|
||||||
FT_MODERRDEF( Cache, 0x200, "cache module" )
|
FT_MODERRDEF( BDF, 0x200, "BDF module" )
|
||||||
FT_MODERRDEF( CFF, 0x300, "CFF module" )
|
FT_MODERRDEF( Cache, 0x300, "cache module" )
|
||||||
FT_MODERRDEF( CID, 0x400, "CID module" )
|
FT_MODERRDEF( CFF, 0x400, "CFF module" )
|
||||||
FT_MODERRDEF( PCF, 0x500, "PCF module" )
|
FT_MODERRDEF( CID, 0x500, "CID module" )
|
||||||
FT_MODERRDEF( PSaux, 0x600, "PS auxiliary module" )
|
FT_MODERRDEF( Gzip, 0x600, "Gzip module" )
|
||||||
FT_MODERRDEF( PSnames, 0x700, "PS names module" )
|
FT_MODERRDEF( PCF, 0x700, "PCF module" )
|
||||||
FT_MODERRDEF( Raster, 0x800, "raster module" )
|
FT_MODERRDEF( PFR, 0x800, "PFR module" )
|
||||||
FT_MODERRDEF( SFNT, 0x900, "SFNT module" )
|
FT_MODERRDEF( PSaux, 0x900, "PS auxiliary module" )
|
||||||
FT_MODERRDEF( Smooth, 0xA00, "smooth raster module" )
|
FT_MODERRDEF( PShinter, 0xA00, "PS hinter module" )
|
||||||
FT_MODERRDEF( TrueType, 0xB00, "TrueType module" )
|
FT_MODERRDEF( PSnames, 0xB00, "PS names module" )
|
||||||
FT_MODERRDEF( Type1, 0xC00, "Type 1 module" )
|
FT_MODERRDEF( Raster, 0xC00, "raster module" )
|
||||||
FT_MODERRDEF( Winfonts, 0xD00, "Windows FON/FNT module" )
|
FT_MODERRDEF( SFNT, 0xD00, "SFNT module" )
|
||||||
FT_MODERRDEF( PFR, 0xE00, "PFR module" )
|
FT_MODERRDEF( Smooth, 0xE00, "smooth raster module" )
|
||||||
|
FT_MODERRDEF( TrueType, 0xF00, "TrueType module" )
|
||||||
|
FT_MODERRDEF( Type1, 0x1000, "Type 1 module" )
|
||||||
|
FT_MODERRDEF( Type42, 0x1100, "Type 42 module" )
|
||||||
|
FT_MODERRDEF( Winfonts, 0x1200, "Windows FON/FNT module" )
|
||||||
|
|
||||||
|
|
||||||
#ifdef FT_MODERR_END_LIST
|
#ifdef FT_MODERR_END_LIST
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue