forked from minhngoc25a/freetype2
* INSTALL: Revised.
* builds/compiler/bcc-dev.mk, builds/compiler/visualage.mk, builds/compiler/bcc.mk, builds/win32/w32-bcc.mk, builds/win32/w32-bccd.mk: Revised. * include/freetype/config/ftbuild.h, include/freetype/internal/internal.h: Revised. * include/freetype/ftimage.h: Updated to new header inclusion scheme. * builds/toplevel.mk (.PHONY): Adding `distclean'. * builds/unix/detect.mk (.PHONY): Adding `devel', `unix', `lcc', `setup'. * INSTALL: Slightly updated the quick starter documentation to include IDE compilation, prevent against BSD Make, and specify "make setup" instead of a single "make" for build configuration. * include/config/ftbuild.h, include/internal/internal.h: Added new configuration files used to determine the location of all public, configuration, and internal header files for FreeType 2. Modified all headers under "include/freetype" to reflect this change. Note that we still need to change the library source files themselves though. builds/win32/detect.mk: Added new files to support compilation with the free Borland C++ command-line compiler. Modified the detection rules to recognize the new "bcc32" target in "make setup bcc32". src/truetype/ttobjs.c, src/truetype/ttgload.c, src/truetype/ttinterp.c: Fixed a few comparisons that Borland C++ didn't really like. Basically, this compiler complains when FT_UInt is compared to FT_UShort (apparently, it promotes `UShort' to `Int' in these cases).
This commit is contained in:
parent
b1aabf4c5e
commit
4c80f0c9ca
49
ChangeLog
49
ChangeLog
|
@ -1,27 +1,44 @@
|
|||
2000-12-01 Werner Lemberg <wl@gnu.org>
|
||||
|
||||
* INSTALL: Revised.
|
||||
* builds/compiler/bcc-dev.mk, builds/compiler/visualage.mk,
|
||||
builds/compiler/bcc.mk, builds/win32/w32-bcc.mk,
|
||||
builds/win32/w32-bccd.mk: Revised.
|
||||
* include/freetype/config/ftbuild.h,
|
||||
include/freetype/internal/internal.h: Revised.
|
||||
* include/freetype/ftimage.h: Updated to new header inclusion scheme.
|
||||
|
||||
2000-11-30 Werner Lemberg <wl@gnu.org>
|
||||
|
||||
* builds/toplevel.mk (.PHONY): Adding `distclean'.
|
||||
* builds/unix/detect.mk (.PHONY): Adding `devel', `unix', `lcc',
|
||||
`setup'.
|
||||
|
||||
2000-11-30 David Turner <david.turner@freetype.ogr>
|
||||
|
||||
* INSTALL: slightly updated the quick starter documentation to
|
||||
include IDE compilation, prevent agains BSD Make, and specify
|
||||
"make setup" instead of a single "make" for build configuration.
|
||||
* INSTALL: Slightly updated the quick starter documentation to
|
||||
include IDE compilation, prevent against BSD Make, and specify "make
|
||||
setup" instead of a single "make" for build configuration.
|
||||
|
||||
* include/config/ftbuild.h, include/internal/internal.h: added
|
||||
a new configuration file used to determine where are all public,
|
||||
configuration and internal header files for FreeType 2. I also
|
||||
modified all headers under "include/freetype" to reflect this
|
||||
change. Note that we still need to change the library source
|
||||
files themselves though..
|
||||
* include/config/ftbuild.h, include/internal/internal.h: Added new
|
||||
configuration files used to determine the location of all public,
|
||||
configuration, and internal header files for FreeType 2. Modified
|
||||
all headers under "include/freetype" to reflect this change. Note
|
||||
that we still need to change the library source files themselves
|
||||
though.
|
||||
|
||||
* builds/compiler/bcc.mk, builds/compiler/bcc-dev.mk,
|
||||
builds/win32/w32-bcc.mk, builds/win32/w32-bccd.mk,
|
||||
builds/win32/detect.mk: added new files to support compilation with
|
||||
the free Borland C++ command-line compiler. Modified the detection
|
||||
rules to recognize the new "bcc32" target in "make setup bcc32"
|
||||
builds/win32/detect.mk: Added new files to support compilation with
|
||||
the free Borland C++ command-line compiler. Modified the detection
|
||||
rules to recognize the new "bcc32" target in "make setup bcc32".
|
||||
|
||||
* src/sfnt/ttcmap.c, src/sfnt/ttpost.c, src/sfnt/ttsbit.c,
|
||||
src/truetype/ttobjs.c, src/truetype/ttgload.c, src/truetype/ttinterp.c:
|
||||
fixed a few comparisons that Borland C++ didn't really like. Basically,
|
||||
this compiler complains when a FT_UInt is compared to a FT_UShort
|
||||
(apparently, it promotes the UShort to an Int in these cases)
|
||||
src/truetype/ttobjs.c, src/truetype/ttgload.c,
|
||||
src/truetype/ttinterp.c: Fixed a few comparisons that Borland C++
|
||||
didn't really like. Basically, this compiler complains when FT_UInt
|
||||
is compared to FT_UShort (apparently, it promotes `UShort' to `Int'
|
||||
in these cases).
|
||||
|
||||
2000-11-30 Tom Kacvinsky <tjk@ams.org>
|
||||
|
||||
|
|
113
INSTALL
113
INSTALL
|
@ -1,90 +1,93 @@
|
|||
In order to build the library, read the `BUILD' document in the `docs'
|
||||
directory. This is only a quick starter:
|
||||
directory. This is only a quick starter:
|
||||
|
||||
I. From the command line:
|
||||
|
||||
You need to have GNU Make installed on your system to compile the
|
||||
library from the command line. This will _not_ work with other
|
||||
Make tools (including the BSD ones !!)
|
||||
library from the command line. This will _not_ work with other
|
||||
make tools (including BSD make)!
|
||||
|
||||
- Go to the 'freetype2' directory
|
||||
- Go to the `freetype2' directory.
|
||||
|
||||
- on Unix (any C compiler should work):
|
||||
- On Unix (any C compiler should work):
|
||||
|
||||
- make setup (don't worry, this will invoke a configure script)
|
||||
- make
|
||||
- make install
|
||||
- make setup (don't worry, this will invoke a configure script)
|
||||
- make
|
||||
- make install
|
||||
|
||||
alternatively, you can pass parameters to the configure script
|
||||
with the CFG variable, as in:
|
||||
Alternatively, you can pass parameters to the configure script
|
||||
within the CFG variable, as in:
|
||||
|
||||
- make setup CFG="--prefix=/usr"
|
||||
- make
|
||||
- make install
|
||||
- make setup CFG="--prefix=/usr"
|
||||
- make
|
||||
- make install
|
||||
|
||||
- On Windows:
|
||||
|
||||
we provide a version of GNU Make for Win32 on the FreeType site.
|
||||
See http://www.freetype.org/download.html for details..
|
||||
We provide a version of GNU Make for Win32 on the FreeType site.
|
||||
See http://www.freetype.org/download.html for details.
|
||||
|
||||
o if you're using gcc:
|
||||
If you are using gcc:
|
||||
|
||||
- make setup
|
||||
- make
|
||||
- make setup
|
||||
- make
|
||||
|
||||
o if you're using Visual C++:
|
||||
If you are using Visual C++:
|
||||
|
||||
- make setup visualc
|
||||
- make
|
||||
- make setup visualc
|
||||
- make
|
||||
|
||||
o if you're using Win32-lCC:
|
||||
If you are using Win32-lCC:
|
||||
|
||||
- make setup lcc
|
||||
- make
|
||||
- make setup lcc
|
||||
- make
|
||||
|
||||
o if you're using the Borland C++ Builder compiler:
|
||||
If you are using the Borland C++ Builder compiler:
|
||||
|
||||
- make setup bcc32
|
||||
- make
|
||||
- make setup bcc32
|
||||
- make
|
||||
|
||||
|
||||
II. In your own environment (IDE):
|
||||
|
||||
you need to add the directories "freetype2/include" and "freetype2/src"
|
||||
You need to add the directories "freetype2/include" and "freetype2/src"
|
||||
to your include path when compiling the library.
|
||||
|
||||
compile each library component through the following files:
|
||||
Compile each library component through the following files:
|
||||
|
||||
-- base components (required)
|
||||
-- base components (required)
|
||||
|
||||
src/base/ftsystem.c
|
||||
src/base/ftinit.c
|
||||
src/base/ftdebug.c
|
||||
src/base/ftbase.c
|
||||
src/base/ftglyph.c
|
||||
src/base/ftbbox.c
|
||||
src/base/ftmm.c
|
||||
src/base/ftsystem.c
|
||||
src/base/ftinit.c
|
||||
src/base/ftdebug.c
|
||||
src/base/ftbase.c
|
||||
src/base/ftglyph.c
|
||||
src/base/ftbbox.c
|
||||
src/base/ftmm.c
|
||||
|
||||
src/base/ftmac.c -- only on the Macintosh
|
||||
src/base/ftmac.c -- only on the Macintosh
|
||||
|
||||
-- other components are optional
|
||||
-- other components are optional
|
||||
|
||||
src/autohint/autohint.c -- auto hinting module
|
||||
src/cache/ftcache.c -- cache sub-system (in beta)
|
||||
src/sfnt/sfnt.c -- SFNT files support (TrueType & OpenType)
|
||||
src/cff/cff.c -- CFF/OpenType font driver
|
||||
src/psnames/psnames.c -- Postscript glyph names support
|
||||
src/psaux/psaux.c -- Postscript Type 1 parsing
|
||||
src/truetype/truetype.c -- TrueType font driver
|
||||
src/type1/type1.c -- Type 1 font driver
|
||||
src/cid/type1cid.c -- Type 1 CID-keyed font driver
|
||||
src/winfonts/winfonts.c -- Windows FONT / FNT font driver
|
||||
src/autohint/autohint.c -- auto hinting module
|
||||
src/cache/ftcache.c -- cache sub-system (in beta)
|
||||
src/sfnt/sfnt.c -- SFNT files support (TrueType & OpenType)
|
||||
src/cff/cff.c -- CFF/OpenType font driver
|
||||
src/psnames/psnames.c -- Postscript glyph names support
|
||||
src/psaux/psaux.c -- Postscript Type 1 parsing
|
||||
src/truetype/truetype.c -- TrueType font driver
|
||||
src/type1/type1.c -- Type 1 font driver
|
||||
src/cid/type1cid.c -- Type 1 CID-keyed font driver
|
||||
src/winfonts/winfonts.c -- Windows FONT / FNT font driver
|
||||
|
||||
note that:
|
||||
Note:
|
||||
|
||||
'truetype.c' needs 'sfnt.c' and 'psnames.c'
|
||||
'type1.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'
|
||||
`truetype.c' needs `sfnt.c' and `psnames.c'
|
||||
`type1.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'
|
||||
|
||||
etc.
|
||||
etc.
|
||||
|
||||
|
||||
--- end of INSTALL --
|
||||
|
|
|
@ -1,9 +1,20 @@
|
|||
# Copyright 2000 David Turner
|
||||
#
|
||||
# Borland C++-specific with NO OPTIMISATIONS + DEBUGGING
|
||||
# FreeType 2 Borland C++-specific with NO OPTIMIZATIONS + DEBUGGING
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2000 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 := bcc32
|
||||
|
||||
# The object file extension (for standard and static libraries). This can be
|
||||
|
@ -26,7 +37,7 @@ I := -I
|
|||
|
||||
|
||||
# C flag used to define a macro before the compilation of a given source
|
||||
# object. Usually is `-D' like in `-DDEBUG'.
|
||||
# object. Usually it is `-D' like in `-DDEBUG'.
|
||||
#
|
||||
D := -D
|
||||
|
||||
|
@ -37,7 +48,7 @@ D := -D
|
|||
L :=
|
||||
|
||||
|
||||
# Target flag. - no trailing space
|
||||
# Target flag -- no trailing space.
|
||||
#
|
||||
T := -o
|
||||
|
||||
|
@ -61,9 +72,10 @@ ANSIFLAGS := -A
|
|||
# Library linking
|
||||
#
|
||||
ifndef CLEAN_LIBRARY
|
||||
CLEAN_LIBRARY = $(DELETE) $(subst $(SEP),$(HOSTSEP),$(PROJECT_LIBRARY)) $(NO_OUTPUT)
|
||||
CLEAN_LIBRARY = $(DELETE) $(subst $(SEP),$(HOSTSEP),$(PROJECT_LIBRARY)) \
|
||||
$(NO_OUTPUT)
|
||||
endif
|
||||
TARGET_OBJECTS = $(subst $(SEP),\\,$(OBJECTS_LIST))
|
||||
LINK_LIBRARY = tlib /u $(subst $(SEP),\\,$@) $(TARGET_OBJECTS:%=+%)
|
||||
LINK_LIBRARY = tlib /u $(subst $(SEP),\\,$@) $(TARGET_OBJECTS:%=+%)
|
||||
|
||||
# EOF
|
||||
|
|
|
@ -1,9 +1,20 @@
|
|||
# Copyright 2000 David Turner
|
||||
#
|
||||
# Borland C++-specific rules
|
||||
# FreeType 2 Borland C++-specific rules
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2000 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 := bcc32
|
||||
|
||||
# The object file extension (for standard and static libraries). This can be
|
||||
|
@ -26,7 +37,7 @@ I := -I
|
|||
|
||||
|
||||
# C flag used to define a macro before the compilation of a given source
|
||||
# object. Usually is `-D' like in `-DDEBUG'.
|
||||
# object. Usually it is `-D' like in `-DDEBUG'.
|
||||
#
|
||||
D := -D
|
||||
|
||||
|
@ -37,7 +48,7 @@ D := -D
|
|||
L :=
|
||||
|
||||
|
||||
# Target flag. - no trailing space
|
||||
# Target flag -- no trailing space.
|
||||
#
|
||||
T := -o
|
||||
|
||||
|
@ -61,9 +72,10 @@ ANSIFLAGS := -A
|
|||
# Library linking
|
||||
#
|
||||
ifndef CLEAN_LIBRARY
|
||||
CLEAN_LIBRARY = $(DELETE) $(subst $(SEP),$(HOSTSEP),$(PROJECT_LIBRARY)) $(NO_OUTPUT)
|
||||
CLEAN_LIBRARY = $(DELETE) $(subst $(SEP),$(HOSTSEP),$(PROJECT_LIBRARY)) \
|
||||
$(NO_OUTPUT)
|
||||
endif
|
||||
TARGET_OBJECTS = $(subst $(SEP),\\,$(OBJECTS_LIST))
|
||||
LINK_LIBRARY = tlib /u $(subst $(SEP),\\,$@) $(TARGET_OBJECTS:%=+%)
|
||||
LINK_LIBRARY = tlib /u $(subst $(SEP),\\,$@) $(TARGET_OBJECTS:%=+%)
|
||||
|
||||
# EOF
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
|
||||
# command line compiler name
|
||||
#
|
||||
CC := icc
|
||||
CC := icc
|
||||
|
||||
|
||||
# The object file extension (for standard and static libraries). This can be
|
||||
|
@ -39,7 +39,7 @@ I := /I
|
|||
|
||||
|
||||
# C flag used to define a macro before the compilation of a given source
|
||||
# object. Usually is `-D' like in `-DDEBUG'.
|
||||
# object. Usually it is `-D' like in `-DDEBUG'.
|
||||
#
|
||||
D := /D
|
||||
|
||||
|
|
|
@ -34,7 +34,7 @@
|
|||
# details on host platform detection and library builds.
|
||||
|
||||
|
||||
.PHONY: setup
|
||||
.PHONY: setup distclean
|
||||
|
||||
# The `space' variable is used to avoid trailing spaces in defining the
|
||||
# `T' variable later.
|
||||
|
|
|
@ -12,6 +12,7 @@
|
|||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
.PHONY: devel lcc setup unix
|
||||
|
||||
ifeq ($(PLATFORM),ansi)
|
||||
|
||||
|
|
|
@ -89,7 +89,7 @@ ifeq ($(PLATFORM),ansi)
|
|||
mingw32: setup
|
||||
endif
|
||||
|
||||
ifneq ($(findstring bcc32,$(MAKECMDGOALS)),) # Borland C++
|
||||
ifneq ($(findstring bcc32,$(MAKECMDGOALS)),) # Borland C++
|
||||
CONFIG_FILE := w32-bcc.mk
|
||||
SEP := $(BACKSLASH)
|
||||
CC := bcc32
|
||||
|
|
|
@ -1,7 +1,18 @@
|
|||
#
|
||||
# Borland C++ on Win32
|
||||
# FreeType 2 Borland C++ on Win32
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2000 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.
|
||||
|
||||
|
||||
SEP := /
|
||||
include $(TOP)/builds/win32/win32-def.mk
|
||||
include $(TOP)/builds/compiler/bcc.mk
|
||||
|
|
|
@ -1,7 +1,18 @@
|
|||
#
|
||||
# Borland C++ on Win32 + debugging
|
||||
# FreeType 2 Borland C++ on Win32 + debugging
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2000 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.
|
||||
|
||||
|
||||
SEP := /
|
||||
include $(TOP)/builds/win32/win32-def.mk
|
||||
include $(TOP)/builds/compiler/bcc-dev.mk
|
||||
|
|
|
@ -139,44 +139,31 @@ FT_BEGIN_HEADER
|
|||
} FT_LruRec;
|
||||
|
||||
|
||||
FT_EXPORT( FT_Error )
|
||||
FT_Lru_New( const FT_Lru_Class* clazz,
|
||||
FT_UInt max_elements,
|
||||
FT_Pointer user_data,
|
||||
FT_Memory memory,
|
||||
FT_Bool pre_alloc,
|
||||
FT_Lru *anlru );
|
||||
FT_EXPORT( FT_Error ) FT_Lru_New( const FT_Lru_Class* clazz,
|
||||
FT_UInt max_elements,
|
||||
FT_Pointer user_data,
|
||||
FT_Memory memory,
|
||||
FT_Bool pre_alloc,
|
||||
FT_Lru *anlru );
|
||||
|
||||
FT_EXPORT( void ) FT_Lru_Reset( FT_Lru lru );
|
||||
|
||||
FT_EXPORT( void )
|
||||
FT_Lru_Reset( FT_Lru lru );
|
||||
FT_EXPORT( void ) FT_Lru_Done ( FT_Lru lru );
|
||||
|
||||
FT_EXPORT( FT_Error ) FT_Lru_Lookup_Node( FT_Lru lru,
|
||||
FT_LruKey key,
|
||||
FT_LruNode *anode );
|
||||
|
||||
FT_EXPORT( void )
|
||||
FT_Lru_Done ( FT_Lru lru );
|
||||
FT_EXPORT( FT_Error ) FT_Lru_Lookup( FT_Lru lru,
|
||||
FT_LruKey key,
|
||||
FT_Pointer *anobject );
|
||||
|
||||
|
||||
FT_EXPORT( FT_Error )
|
||||
FT_Lru_Lookup_Node( FT_Lru lru,
|
||||
FT_LruKey key,
|
||||
FT_LruNode *anode );
|
||||
|
||||
|
||||
FT_EXPORT( FT_Error )
|
||||
FT_Lru_Lookup( FT_Lru lru,
|
||||
FT_LruKey key,
|
||||
FT_Pointer *anobject );
|
||||
|
||||
|
||||
FT_EXPORT( void )
|
||||
FT_Lru_Remove_Node( FT_Lru lru,
|
||||
FT_LruNode node );
|
||||
FT_EXPORT( void ) FT_Lru_Remove_Node( FT_Lru lru,
|
||||
FT_LruNode node );
|
||||
|
||||
|
||||
FT_EXPORT( void )
|
||||
FT_Lru_Remove_Selection( FT_Lru lru,
|
||||
FT_Lru_Selector selector,
|
||||
FT_Pointer data );
|
||||
FT_EXPORT( void ) FT_Lru_Remove_Selection( FT_Lru lru,
|
||||
FT_Lru_Selector selector,
|
||||
FT_Pointer data );
|
||||
|
||||
FT_END_HEADER
|
||||
|
||||
|
|
|
@ -2,8 +2,7 @@
|
|||
/* */
|
||||
/* ftbuild.h */
|
||||
/* */
|
||||
/* This file is used to define important macros needed to */
|
||||
/* perform a build of the FreeType 2 library.. */
|
||||
/* Build macros of the FreeType 2 library. */
|
||||
/* */
|
||||
/* Copyright 1996-2000 by */
|
||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||
|
@ -16,171 +15,188 @@
|
|||
/* */
|
||||
/***************************************************************************/
|
||||
|
||||
|
||||
#ifndef __FT_BUILD_H__
|
||||
#define __FT_BUILD_H__
|
||||
|
||||
/****************************************************************************
|
||||
*
|
||||
* the macro FT_ROOT is used to define the root of all public header
|
||||
* files for FreeType 2. By default, it is set to "freetype", which
|
||||
* means that all public files should be included with a line like:
|
||||
*
|
||||
* #include <freetype/....>
|
||||
*
|
||||
* you can re-define it to something different, depending on the way
|
||||
* you installed the library on your system.
|
||||
*
|
||||
*/
|
||||
#ifndef FT_ROOT
|
||||
# define FT_ROOT freetype
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* The macro FT_ROOT is used to define the root of all public header */
|
||||
/* files for FreeType 2. By default, it is set to "freetype", which */
|
||||
/* means that all public files should be included with a line like: */
|
||||
/* */
|
||||
/* #include <freetype/...> */
|
||||
/* */
|
||||
/* Redefine it to something different if necessary, depending where the */
|
||||
/* library is installed on the particular system. */
|
||||
/* */
|
||||
#ifndef FT_ROOT
|
||||
#define FT_ROOT freetype
|
||||
#endif
|
||||
|
||||
/****************************************************************************
|
||||
*
|
||||
* the macro FT_CONFIG_ROOT is used to define the root of all configuration
|
||||
* header files for FreeType 2. By default, it is set to "freetype/config",
|
||||
* which means that all config files should be included with a line like:
|
||||
*
|
||||
* #include <freetype/config/...>
|
||||
*
|
||||
* you can re-define it to something different, depending on the way
|
||||
* you installed the library on your system.
|
||||
*
|
||||
*/
|
||||
#ifndef FT_CONFIG_ROOT
|
||||
# define FT_CONFIG_ROOT FT_ROOT/config
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* The macro FT_CONFIG_ROOT is used to define the root of all */
|
||||
/* configuration header files for FreeType 2. By default, it is set to */
|
||||
/* "freetype/config", which means that all config files should be */
|
||||
/* include with a line like: */
|
||||
/* */
|
||||
/* #include <freetype/config/...> */
|
||||
/* */
|
||||
/* Redefine it to something different, depending where the library is */
|
||||
/* installed on the particular system. */
|
||||
/* */
|
||||
#ifndef FT_CONFIG_ROOT
|
||||
#define FT_CONFIG_ROOT FT_ROOT/config
|
||||
#endif
|
||||
|
||||
/****************************************************************************
|
||||
*
|
||||
* the macro FT_PUBLIC_FILE is used to include a FreeType 2 public file
|
||||
* its parameter is the file pathname, relative to the public root of a
|
||||
* given header file.
|
||||
*/
|
||||
#define FT_PUBLIC_FILE(x) <FT_ROOT/x>
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* The macro FT_PUBLIC_FILE is used to include a FreeType 2 public file. */
|
||||
/* Its parameter is the file pathname, relative to the public root of a */
|
||||
/* given header file. */
|
||||
/* */
|
||||
#define FT_PUBLIC_FILE( x ) <FT_ROOT/x>
|
||||
|
||||
|
||||
/****************************************************************************
|
||||
*
|
||||
* the macro FT_CONFIG_FILE is used to include a FreeType 2 config file
|
||||
* its parameter is the file pathname, relative to the configurationroot of a
|
||||
* given header file.
|
||||
*/
|
||||
#define FT_CONFIG_FILE(x) <FT_CONFIG_ROOT/x>
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* The macro FT_CONFIG_FILE is used to include a FreeType 2 config file. */
|
||||
/* Its parameter is the file pathname, relative to the configuration */
|
||||
/* root directory of a given header file. */
|
||||
/* */
|
||||
#define FT_CONFIG_FILE( x ) <FT_CONFIG_ROOT/x>
|
||||
|
||||
|
||||
/****************************************************************************
|
||||
*
|
||||
* the macro FT_INTERNAL_FILE is used to include a FreeType 2 internal file
|
||||
* its parameter is the file pathname, relative to the configurationroot of a
|
||||
* given header file.
|
||||
*/
|
||||
#define FT_INTERNAL_FILE(x) <FT_ROOT/internal/x>
|
||||
|
||||
/****************************************************************************
|
||||
*
|
||||
* the macro FT_COMPONENT_FILE is used to include a given FreeType 2 component
|
||||
* source file (be it a header, a C source file, or an included file).
|
||||
*
|
||||
* it's first argument is the component/module's directory according to
|
||||
* the normal FT2 source directory hierarchy, and the second one the
|
||||
* file name.
|
||||
*
|
||||
* note that you can also put all library source files in a single
|
||||
* directory and compile them normally by defining the macro
|
||||
* FT_FLAT_COMPILATION
|
||||
*/
|
||||
#define FT_COMPONENT_FILE(d,x) <FT_ROOT/d/x>
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* The macro FT_INTERNAL_FILE is used to include a FreeType 2 internal */
|
||||
/* file. Its parameter is the file pathname, relative to the */
|
||||
/* configuration root directory of a given header file. */
|
||||
/* */
|
||||
#define FT_INTERNAL_FILE( x ) <FT_ROOT/internal/x>
|
||||
|
||||
|
||||
/****************************************************************************
|
||||
*
|
||||
* the macro FT_SOURCE_FILE is used to include a given FreeType 2 component
|
||||
* source file (be it a header, a C source file, or an included file).
|
||||
*
|
||||
* it's first argument is the component/module's directory according to
|
||||
* the normal FT2 source directory hierarchy, and the second one the
|
||||
* file name.
|
||||
*
|
||||
* note that you can also put all library source files in a single
|
||||
* directory and compile them normally by defining the macro
|
||||
* FT_FLAT_COMPILATION
|
||||
*/
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* The macro FT_COMPONENT_FILE is used to include a given FreeType 2 */
|
||||
/* component source file (be it a header, a C source file, or an */
|
||||
/* included file). */
|
||||
/* */
|
||||
/* Its first argument is the component/module's directory according to */
|
||||
/* the normal FreeType 2 source directory hierarchy, and the second one */
|
||||
/* the file name. */
|
||||
/* */
|
||||
/* Note that you can also put all library source files in a single */
|
||||
/* directory and compile them normally by defining the macro */
|
||||
/* FT_FLAT_COMPILATION. */
|
||||
/* */
|
||||
#define FT_COMPONENT_FILE( d, x ) <FT_ROOT/d/x>
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* The macro FT_SOURCE_FILE is used to include a given FreeType 2 */
|
||||
/* component source file (be it a header, a C source file, or an */
|
||||
/* included file). */
|
||||
/* */
|
||||
/* Its first argument is the component/module's directory according to */
|
||||
/* the normal FreeType 2 source directory hierarchy, and the second one */
|
||||
/* the file name. */
|
||||
/* */
|
||||
/* Note that you can also put all library source files in a single */
|
||||
/* directory and compile them normally by defining the macro */
|
||||
/* FT_FLAT_COMPILATION. */
|
||||
/* */
|
||||
#ifdef FT_FLAT_COMPILATION
|
||||
# define FT_SOURCE_FILE(d,x) <d/x>
|
||||
#define FT_SOURCE_FILE( d, x ) <d/x>
|
||||
#else
|
||||
# define FT_SOURCE_FILE(d,x) "x"
|
||||
#define FT_SOURCE_FILE( d, x ) "x"
|
||||
#endif
|
||||
|
||||
|
||||
/****************************************************************************
|
||||
*
|
||||
* <Macro> FT_BEGIN_HEADER
|
||||
*
|
||||
* <Description>
|
||||
* this macro is used in association with @FT_END_HEADER in header
|
||||
* files to ensure that the declarations within are properly encapsulated
|
||||
* in an 'extern "C" { .. }' block when included from a C++ compiler
|
||||
*/
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* <Macro> */
|
||||
/* FT_BEGIN_HEADER */
|
||||
/* */
|
||||
/* <Description> */
|
||||
/* This macro is used in association with @FT_END_HEADER in header */
|
||||
/* files to ensure that the declarations within are properly */
|
||||
/* encapsulated in an `extern "C" { .. }' block when included from a */
|
||||
/* C++ compiler. */
|
||||
/* */
|
||||
#ifdef __cplusplus
|
||||
# define FT_BEGIN_HEADER extern "C" {
|
||||
#define FT_BEGIN_HEADER extern "C" {
|
||||
#else
|
||||
# define FT_BEGIN_HEADER /* nothing */
|
||||
#define FT_BEGIN_HEADER /* nothing */
|
||||
#endif
|
||||
|
||||
/****************************************************************************
|
||||
*
|
||||
* <Macro> FT_END_HEADER
|
||||
*
|
||||
* <Description>
|
||||
* this macro is used in association with @FT_BEGIN_HEADER in header
|
||||
* files to ensure that the declarations within are properly encapsulated
|
||||
* in an 'extern "C" { .. }' block when included from a C++ compiler
|
||||
*/
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* <Macro> */
|
||||
/* FT_END_HEADER */
|
||||
/* */
|
||||
/* <Description> */
|
||||
/* This macro is used in association with @FT_BEGIN_HEADER in header */
|
||||
/* files to ensure that the declarations within are properly */
|
||||
/* encapsulated in an `extern "C" { .. }' block when included from a */
|
||||
/* C++ compiler. */
|
||||
/* */
|
||||
#ifdef __cplusplus
|
||||
# define FT_END_HEADER }
|
||||
#define FT_END_HEADER }
|
||||
#else
|
||||
# define FT_END_HEADER /* nothing */
|
||||
#define FT_END_HEADER /* nothing */
|
||||
#endif
|
||||
|
||||
/****************************************************************************
|
||||
*
|
||||
* we will now define several aliases for the FreeType 2 public and
|
||||
* configuration files..
|
||||
*
|
||||
*/
|
||||
|
||||
/* configuration files */
|
||||
#define FT_CONFIG_CONFIG_H FT_CONFIG_FILE(ftconfig.h)
|
||||
#define FT_CONFIG_OPTIONS_H FT_CONFIG_FILE(ftoption.h)
|
||||
#define FT_CONFIG_MODULES_H FT_CONFIG_FILE(ftmodule.h)
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Aliases for the FreeType 2 public and configuration files. */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
/* public headers */
|
||||
#define FT_ERRORS_H FT_PUBLIC_FILE(fterrors.h)
|
||||
#define FT_SYSTEM_H FT_PUBLIC_FILE(ftsystem.h)
|
||||
#define FT_IMAGE_H FT_PUBLIC_FILE(ftimage.h)
|
||||
/* don't add spaces around arguments to FT_CONFIG_FILE! */
|
||||
|
||||
#define FT_TYPES_H FT_PUBLIC_FILE(fttypes.h)
|
||||
/* configuration files */
|
||||
#define FT_CONFIG_CONFIG_H FT_CONFIG_FILE(ftconfig.h)
|
||||
#define FT_CONFIG_OPTIONS_H FT_CONFIG_FILE(ftoption.h)
|
||||
#define FT_CONFIG_MODULES_H FT_CONFIG_FILE(ftmodule.h)
|
||||
|
||||
#define FT_FREETYPE_H FT_PUBLIC_FILE(freetype.h)
|
||||
#define FT_GLYPH_H FT_PUBLIC_FILE(ftglyph.h)
|
||||
#define FT_BBOX_H FT_PUBLIC_FILE(ftbbox.h)
|
||||
#define FT_CACHE_H FT_PUBLIC_FILE(ftcache.h)
|
||||
#define FT_LIST_H FT_PUBLIC_FILE(ftlist.h)
|
||||
#define FT_MAC_H FT_PUBLIC_FILE(ftmac.h)
|
||||
#define FT_MULTIPLE_MASTERS_H FT_PUBLIC_FILE(ftmm.h)
|
||||
#define FT_MODULE_H FT_PUBLIC_FILE(ftmodule.h)
|
||||
#define FT_NAMES_H FT_PUBLIC_FILE(ftnames.h)
|
||||
#define FT_OUTLINE_H FT_PUBLIC_FILE(ftoutln.h)
|
||||
#define FT_RENDER_H FT_PUBLIC_FILE(ftrender.h)
|
||||
#define FT_SYNTHESIS_H FT_PUBLIC_FILE(ftsynth.h)
|
||||
#define FT_TYPE1_TABLES_H FT_PUBLIC_FILE(t1tables.h)
|
||||
#define FT_TRUETYPE_NAMES_H FT_PUBLIC_FILE(ttnameid.h)
|
||||
#define FT_TRUETYPE_TABLES_H FT_PUBLIC_FILE(tttables.h)
|
||||
#define FT_TRUETYPE_TAGS_H FT_PUBLIC_FILE(tttags.h)
|
||||
/* public headers */
|
||||
#define FT_ERRORS_H FT_PUBLIC_FILE(fterrors.h)
|
||||
#define FT_SYSTEM_H FT_PUBLIC_FILE(ftsystem.h)
|
||||
#define FT_IMAGE_H FT_PUBLIC_FILE(ftimage.h)
|
||||
|
||||
/* now include internal headers definitions from <freetype/internal/..>*/
|
||||
#define FT_TYPES_H FT_PUBLIC_FILE(fttypes.h)
|
||||
|
||||
#define FT_FREETYPE_H FT_PUBLIC_FILE(freetype.h)
|
||||
#define FT_GLYPH_H FT_PUBLIC_FILE(ftglyph.h)
|
||||
#define FT_BBOX_H FT_PUBLIC_FILE(ftbbox.h)
|
||||
#define FT_CACHE_H FT_PUBLIC_FILE(ftcache.h)
|
||||
#define FT_LIST_H FT_PUBLIC_FILE(ftlist.h)
|
||||
#define FT_MAC_H FT_PUBLIC_FILE(ftmac.h)
|
||||
#define FT_MULTIPLE_MASTERS_H FT_PUBLIC_FILE(ftmm.h)
|
||||
#define FT_MODULE_H FT_PUBLIC_FILE(ftmodule.h)
|
||||
#define FT_NAMES_H FT_PUBLIC_FILE(ftnames.h)
|
||||
#define FT_OUTLINE_H FT_PUBLIC_FILE(ftoutln.h)
|
||||
#define FT_RENDER_H FT_PUBLIC_FILE(ftrender.h)
|
||||
#define FT_SYNTHESIS_H FT_PUBLIC_FILE(ftsynth.h)
|
||||
#define FT_TYPE1_TABLES_H FT_PUBLIC_FILE(t1tables.h)
|
||||
#define FT_TRUETYPE_NAMES_H FT_PUBLIC_FILE(ttnameid.h)
|
||||
#define FT_TRUETYPE_TABLES_H FT_PUBLIC_FILE(tttables.h)
|
||||
#define FT_TRUETYPE_TAGS_H FT_PUBLIC_FILE(tttags.h)
|
||||
|
||||
|
||||
/* now include internal headers definitions from <freetype/internal/...> */
|
||||
#include FT_PUBLIC_FILE(internal/internal.h)
|
||||
|
||||
|
||||
#endif /* __FT_BUILD_H__ */
|
||||
|
||||
|
||||
/* END */
|
||||
|
|
|
@ -50,16 +50,16 @@
|
|||
#undef FT_NEED_EXTERN_C
|
||||
|
||||
|
||||
#ifndef FT_ERRORDEF
|
||||
#ifndef FT_ERRORDEF
|
||||
|
||||
# define FT_ERRORDEF( e, v, s ) e = v,
|
||||
# define FT_ERROR_START_LIST enum {
|
||||
# define FT_ERROR_END_LIST FT_Err_Max };
|
||||
#define FT_ERRORDEF( e, v, s ) e = v,
|
||||
#define FT_ERROR_START_LIST enum {
|
||||
#define FT_ERROR_END_LIST FT_Err_Max };
|
||||
|
||||
# ifdef __cplusplus
|
||||
# define FT_NEED_EXTERN_C
|
||||
extern "C" {
|
||||
# endif
|
||||
#ifdef __cplusplus
|
||||
#define FT_NEED_EXTERN_C
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#endif /* !FT_ERRORDEF */
|
||||
|
||||
|
|
|
@ -24,13 +24,16 @@
|
|||
/*************************************************************************/
|
||||
|
||||
|
||||
#ifndef FTIMAGE_H
|
||||
#define FTIMAGE_H
|
||||
#ifndef __FTIMAGE_H__
|
||||
#define __FTIMAGE_H__
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#ifndef FT_BUILD_H
|
||||
# define FT_BUILD_H <freetype/config/ftbuild.h>
|
||||
#endif
|
||||
#include FT_BUILD_H
|
||||
|
||||
FT_BEGIN_HEADER
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
|
@ -992,12 +995,10 @@
|
|||
} FT_Raster_Funcs;
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
FT_END_HEADER
|
||||
|
||||
|
||||
#endif /* FTIMAGE_H */
|
||||
#endif /* __FTIMAGE_H__ */
|
||||
|
||||
|
||||
/* END */
|
||||
|
|
|
@ -1,29 +1,55 @@
|
|||
/* this file is automatically included by <freetype/config/ftbuild.h> */
|
||||
/* do not include it manually !! */
|
||||
/***************************************************************************/
|
||||
/* */
|
||||
/* internal.h */
|
||||
/* */
|
||||
/* Internal header files (specification only). */
|
||||
/* */
|
||||
/* Copyright 1996-2000 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. */
|
||||
/* */
|
||||
/***************************************************************************/
|
||||
|
||||
/* internal header files */
|
||||
#define FT_INTERNAL_OBJECTS_H FT_INTERNAL_FILE(ftobjs.h)
|
||||
#define FT_INTERNAL_STREAM_H FT_INTERNAL_FILE(ftstream.h)
|
||||
#define FT_INTERNAL_MEMORY_H FT_INTERNAL_FILE(ftmemory.h)
|
||||
#define FT_INTERNAL_EXTENSION_H FT_INTERNAL_FILE(ftextend.h)
|
||||
#define FT_INTERNAL_DEBUG_H FT_INTERNAL_FILE(ftdebug.h)
|
||||
#define FT_INTERNAL_CALC_H FT_INTERNAL_FILE(ftcalc.h)
|
||||
#define FT_INTERNAL_DRIVER_H FT_INTERNAL_FILE(ftdriver.h)
|
||||
|
||||
#define FT_INTERNAL_SFNT_H FT_INTERNAL_FILE(sfnt.h)
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* This file is automatically included by `ftbuild.h'. */
|
||||
/* Do not include it manually! */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
#define FT_INTERNAL_TRUETYPE_TYPES_H FT_INTERNAL_FILE(tttypes.h)
|
||||
#define FT_INTERNAL_TRUETYPE_ERRORS_H FT_INTERNAL_FILE(tterrors.h)
|
||||
|
||||
#define FT_INTERNAL_TYPE1_ERRORS_H FT_INTERNAL_FILE(t1errors.h)
|
||||
#define FT_INTERNAL_TYPE1_TYPES_H FT_INTERNAL_FILE(t1types.h)
|
||||
/* don't add spaces around the argument of FT_INTERNAL_FILE! */
|
||||
|
||||
#define FT_INTERNAL_CFF_ERRORS_H FT_INTERNAL_FILE(t2errors.h)
|
||||
#define FT_INTERNAL_CFF_TYPES_H FT_INTERNAL_FILE(t2types.h)
|
||||
#define FT_INTERNAL_OBJECTS_H FT_INTERNAL_FILE(ftobjs.h)
|
||||
#define FT_INTERNAL_STREAM_H FT_INTERNAL_FILE(ftstream.h)
|
||||
#define FT_INTERNAL_MEMORY_H FT_INTERNAL_FILE(ftmemory.h)
|
||||
#define FT_INTERNAL_EXTENSION_H FT_INTERNAL_FILE(ftextend.h)
|
||||
#define FT_INTERNAL_DEBUG_H FT_INTERNAL_FILE(ftdebug.h)
|
||||
#define FT_INTERNAL_CALC_H FT_INTERNAL_FILE(ftcalc.h)
|
||||
#define FT_INTERNAL_DRIVER_H FT_INTERNAL_FILE(ftdriver.h)
|
||||
|
||||
#define FT_INTERNAL_POSTSCRIPT_NAMES_H FT_INTERNAL_FILE(psnames.h)
|
||||
#define FT_INTERNAL_POSTSCRIPT_AUX_H FT_INTERNAL_FILE(psaux.h)
|
||||
#define FT_INTERNAL_SFNT_H FT_INTERNAL_FILE(sfnt.h)
|
||||
|
||||
#define FT_INTERNAL_AUTOHINT_H FT_INTERNAL_FILE(autohint.h)
|
||||
#define FT_INTERNAL_FNT_TYPES_H FT_INTERNAL_FILE(fnttypes.h)
|
||||
#define FT_INTERNAL_TRUETYPE_TYPES_H FT_INTERNAL_FILE(tttypes.h)
|
||||
#define FT_INTERNAL_TRUETYPE_ERRORS_H FT_INTERNAL_FILE(tterrors.h)
|
||||
|
||||
#define FT_INTERNAL_TYPE1_ERRORS_H FT_INTERNAL_FILE(t1errors.h)
|
||||
#define FT_INTERNAL_TYPE1_TYPES_H FT_INTERNAL_FILE(t1types.h)
|
||||
|
||||
#define FT_INTERNAL_CFF_ERRORS_H FT_INTERNAL_FILE(t2errors.h)
|
||||
#define FT_INTERNAL_CFF_TYPES_H FT_INTERNAL_FILE(t2types.h)
|
||||
|
||||
#define FT_INTERNAL_POSTSCRIPT_NAMES_H FT_INTERNAL_FILE(psnames.h)
|
||||
#define FT_INTERNAL_POSTSCRIPT_AUX_H FT_INTERNAL_FILE(psaux.h)
|
||||
|
||||
#define FT_INTERNAL_AUTOHINT_H FT_INTERNAL_FILE(autohint.h)
|
||||
#define FT_INTERNAL_FNT_TYPES_H FT_INTERNAL_FILE(fnttypes.h)
|
||||
|
||||
|
||||
/* END */
|
||||
|
|
|
@ -49,7 +49,7 @@ FT_BEGIN_HEADER
|
|||
/* T1_Encoding */
|
||||
/* */
|
||||
/* <Description> */
|
||||
/* A structure modeling a custom encoding */
|
||||
/* A structure modeling a custom encoding. */
|
||||
/* */
|
||||
/* <Fields> */
|
||||
/* num_chars :: The number of character codes in the encoding. */
|
||||
|
|
|
@ -38,7 +38,7 @@ FT_BEGIN_HEADER
|
|||
/* A structure used to model a CFF Index table. */
|
||||
/* */
|
||||
/* <Fields> */
|
||||
/* stream :: source input stream */
|
||||
/* stream :: The source input stream. */
|
||||
/* */
|
||||
/* count :: The number of elements in the index. */
|
||||
/* */
|
||||
|
@ -47,7 +47,7 @@ FT_BEGIN_HEADER
|
|||
/* data_offset :: The position of first data byte in the index's */
|
||||
/* bytes. */
|
||||
/* */
|
||||
/* offsets :: table of element offsets in the index */
|
||||
/* offsets :: A table of element offsets in the index. */
|
||||
/* */
|
||||
/* bytes :: If the index is loaded in memory, its bytes. */
|
||||
/* */
|
||||
|
|
Loading…
Reference in New Issue