summaryrefslogtreecommitdiff
path: root/src/freetype2/freetype/config/ftoption.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/freetype2/freetype/config/ftoption.h')
-rw-r--r--src/freetype2/freetype/config/ftoption.h75
1 files changed, 57 insertions, 18 deletions
diff --git a/src/freetype2/freetype/config/ftoption.h b/src/freetype2/freetype/config/ftoption.h
index 5323975..759b3a3 100644
--- a/src/freetype2/freetype/config/ftoption.h
+++ b/src/freetype2/freetype/config/ftoption.h
@@ -4,7 +4,7 @@
/* */
/* User-selectable configuration macros (specification only). */
/* */
-/* Copyright 1996-2001, 2002, 2003, 2004, 2005, 2006, 2007 by */
+/* Copyright 1996-2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@@ -112,7 +112,28 @@ FT_BEGIN_HEADER
/* file `ftconfig.h' either statically or through the */
/* `configure' script on supported platforms. */
/* */
-#undef FT_CONFIG_OPTION_FORCE_INT64
+#undef FT_CONFIG_OPTION_FORCE_INT64
+
+
+ /*************************************************************************/
+ /* */
+ /* If this macro is defined, do not try to use an assembler version of */
+ /* performance-critical functions (e.g. FT_MulFix). You should only do */
+ /* that to verify that the assembler function works properly, or to */
+ /* execute benchmark tests of the various implementations. */
+/* #define FT_CONFIG_OPTION_NO_ASSEMBLER */
+
+
+ /*************************************************************************/
+ /* */
+ /* If this macro is defined, try to use an inlined assembler version of */
+ /* the `FT_MulFix' function, which is a `hotspot' when loading and */
+ /* hinting glyphs, and which should be executed as fast as possible. */
+ /* */
+ /* Note that if your compiler or CPU is not supported, this will default */
+ /* to the standard and portable implementation found in `ftcalc.c'. */
+ /* */
+#define FT_CONFIG_OPTION_INLINE_MULFIX
/*************************************************************************/
@@ -163,7 +184,7 @@ FT_BEGIN_HEADER
/* Do not #undef this macro here since the build system might define */
/* it for certain configurations only. */
/* */
-/* #define FT_CONFIG_OPTION_SYSTEM_ZLIB */
+/* #define FT_CONFIG_OPTION_SYSTEM_ZLIB */
/*************************************************************************/
@@ -204,27 +225,27 @@ FT_BEGIN_HEADER
/* 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_DEF(x) x */
+/* #define FT_EXPORT(x) extern x */
+/* #define FT_EXPORT_DEF(x) x */
/*************************************************************************/
/* */
/* Glyph Postscript Names handling */
/* */
- /* By default, FreeType 2 is compiled with the `PSNames' module. This */
+ /* By default, FreeType 2 is compiled with the `psnames' module. This */
/* module is in charge of converting a glyph name string into a */
/* Unicode value, or return a Macintosh standard glyph name for the */
/* use with the TrueType `post' table. */
/* */
- /* Undefine this macro if you do not want `PSNames' compiled in your */
+ /* Undefine this macro if you do not want `psnames' compiled in your */
/* build of FreeType. This has the following effects: */
/* */
/* - The TrueType driver will provide its own set of glyph names, */
/* if you build it to support postscript names in the TrueType */
/* `post' table. */
/* */
- /* - The Type 1 driver will not be able to synthetize a Unicode */
+ /* - The Type 1 driver will not be able to synthesize a Unicode */
/* charmap out of the glyphs found in the fonts. */
/* */
/* You would normally undefine this configuration macro when building */
@@ -240,12 +261,12 @@ FT_BEGIN_HEADER
/* By default, FreeType 2 is built with the `PSNames' module compiled */
/* in. Among other things, the module is used to convert a glyph name */
/* into a Unicode value. This is especially useful in order to */
- /* synthetize on the fly a Unicode charmap from the CFF/Type 1 driver */
+ /* synthesize on the fly a Unicode charmap from the CFF/Type 1 driver */
/* through a big table named the `Adobe Glyph List' (AGL). */
/* */
/* Undefine this macro if you do not want the Adobe Glyph List */
/* compiled in your `PSNames' module. The Type 1 driver will not be */
- /* able to synthetize a Unicode charmap out of the glyphs found in the */
+ /* able to synthesize a Unicode charmap out of the glyphs found in the */
/* fonts. */
/* */
#define FT_CONFIG_OPTION_ADOBE_GLYPH_LIST
@@ -261,7 +282,7 @@ FT_BEGIN_HEADER
/* */
/* Note that the `FOND' resource isn't checked. */
/* */
-#define FT_CONFIG_OPTION_MAC_FONTS
+#define FT_CONFIG_OPTION_MAC_FONTS
/*************************************************************************/
@@ -375,6 +396,20 @@ FT_BEGIN_HEADER
#undef FT_CONFIG_OPTION_USE_MODULE_ERRORS
+ /*************************************************************************/
+ /* */
+ /* Position Independent Code */
+ /* */
+ /* If this macro is set (which is _not_ the default), FreeType2 will */
+ /* avoid creating constants that require address fixups. Instead the */
+ /* constants will be moved into a struct and additional intialization */
+ /* code will be used. */
+ /* */
+ /* Setting this macro is needed for systems that prohibit address */
+ /* fixups, such as BREW. */
+ /* */
+/* #define FT_CONFIG_OPTION_PIC */
+
/*************************************************************************/
/*************************************************************************/
@@ -418,7 +453,7 @@ FT_BEGIN_HEADER
/* does not contain any glyph name though. */
/* */
/* Accessing SFNT names is done through the functions declared in */
- /* `freetype/ftnames.h'. */
+ /* `freetype/ftsnames.h'. */
/* */
#define TT_CONFIG_OPTION_SFNT_NAMES
@@ -436,6 +471,8 @@ FT_BEGIN_HEADER
#define TT_CONFIG_CMAP_FORMAT_8
#define TT_CONFIG_CMAP_FORMAT_10
#define TT_CONFIG_CMAP_FORMAT_12
+#define TT_CONFIG_CMAP_FORMAT_13
+#define TT_CONFIG_CMAP_FORMAT_14
/*************************************************************************/
@@ -466,9 +503,9 @@ FT_BEGIN_HEADER
/* If you define TT_CONFIG_OPTION_UNPATENTED_HINTING, a special version */
/* of the TrueType bytecode interpreter is used that doesn't implement */
/* any of the patented opcodes and algorithms. Note that the */
- /* the TT_CONFIG_OPTION_UNPATENTED_HINTING macro is *ignored* if you */
- /* define TT_CONFIG_OPTION_BYTECODE_INTERPRETER; with other words, */
- /* either define TT_CONFIG_OPTION_BYTECODE_INTERPRETER or */
+ /* TT_CONFIG_OPTION_UNPATENTED_HINTING macro is *ignored* if you define */
+ /* TT_CONFIG_OPTION_BYTECODE_INTERPRETER; in other words, either define */
+ /* TT_CONFIG_OPTION_BYTECODE_INTERPRETER or */
/* TT_CONFIG_OPTION_UNPATENTED_HINTING but not both at the same time. */
/* */
/* This macro is only useful for a small number of font files (mostly */
@@ -547,7 +584,7 @@ FT_BEGIN_HEADER
/* and avar tables). This has many similarities to Type 1 Multiple */
/* Masters support. */
/* */
-#define TT_CONFIG_OPTION_GX_VAR_SUPPORT
+#define TT_CONFIG_OPTION_GX_VAR_SUPPORT
/*************************************************************************/
@@ -624,7 +661,8 @@ FT_BEGIN_HEADER
/*************************************************************************/
/* */
- /* Compile autofit module with CJK script support. */
+ /* Compile autofit module with CJK (Chinese, Japanese, Korean) script */
+ /* support. */
/* */
#define AF_CONFIG_OPTION_CJK
@@ -651,11 +689,12 @@ FT_BEGIN_HEADER
/*
- * This variable is defined if either unpatented or native TrueType
+ * This macro is defined if either unpatented or native TrueType
* hinting is requested by the definitions above.
*/
#ifdef TT_CONFIG_OPTION_BYTECODE_INTERPRETER
#define TT_USE_BYTECODE_INTERPRETER
+#undef TT_CONFIG_OPTION_UNPATENTED_HINTING
#elif defined TT_CONFIG_OPTION_UNPATENTED_HINTING
#define TT_USE_BYTECODE_INTERPRETER
#endif