aboutsummaryrefslogtreecommitdiff
path: root/nx-X11/lib/font/FreeType/module
diff options
context:
space:
mode:
Diffstat (limited to 'nx-X11/lib/font/FreeType/module')
-rw-r--r--nx-X11/lib/font/FreeType/module/Imakefile111
-rw-r--r--nx-X11/lib/font/FreeType/module/ft2build.h45
-rw-r--r--nx-X11/lib/font/FreeType/module/ftheader.h550
-rw-r--r--nx-X11/lib/font/FreeType/module/ftmodule.c76
-rw-r--r--nx-X11/lib/font/FreeType/module/ftmodule.h21
-rw-r--r--nx-X11/lib/font/FreeType/module/ftoption.h567
-rw-r--r--nx-X11/lib/font/FreeType/module/ftstdlib.h113
-rw-r--r--nx-X11/lib/font/FreeType/module/fttypes.h571
-rw-r--r--nx-X11/lib/font/FreeType/module/myftstdlib.h82
9 files changed, 2136 insertions, 0 deletions
diff --git a/nx-X11/lib/font/FreeType/module/Imakefile b/nx-X11/lib/font/FreeType/module/Imakefile
new file mode 100644
index 000000000..855220b1e
--- /dev/null
+++ b/nx-X11/lib/font/FreeType/module/Imakefile
@@ -0,0 +1,111 @@
+XCOMM $XFree86: xc/lib/font/FreeType/module/Imakefile,v 1.16 2003/11/05 16:58:35 tsi Exp $
+
+FT2INCDIR = $(TOP)/extras/freetype2/include
+FT2SOURCEDIR = $(TOP)/extras/freetype2/src
+
+/*#define BuildFreetypeDlModule NO*/
+
+#if !defined(BuildFreetypeDlModule)
+# define BuildFreetypeDlModule (HasFreetype2 && HasDlopen)
+#endif
+
+#if !BuildFreetypeDlModule
+EXTRADEFINES = Freetype2BuildDefines -DFONTMODULE
+# else
+# undef MakeDllModules
+# define MakeDllModules YES
+#endif
+
+
+
+DEFINES = $(EXTRADEFINES) -DXFREE86_FT2 $(INTERNALDEFINES)
+#define IHaveModules
+#include <Server.tmpl>
+
+
+#if BuildFreetypeDlModule
+
+FT2INCLUDES = $(FREETYPE2INCLUDES)
+EXTLIB = $(FREETYPE2LIB)
+
+# if !HasFreetype2
+LINKFT2LIB = -L$(BUILDLIBDIR)
+# endif
+#else
+
+FT2INCLUDES = -I$(FT2INCDIR) \
+ -I$(FT2SOURCEDIR)/base \
+ -I$(FT2SOURCEDIR)/gzip \
+ -I$(FT2SOURCEDIR)/raster \
+ -I$(FT2SOURCEDIR)/sfnt \
+ -I$(FT2SOURCEDIR)/truetype \
+ -I$(FT2SOURCEDIR)/cff \
+ -I$(FT2SOURCEDIR)/type1 \
+ -I$(FT2SOURCEDIR)/psaux \
+ -I$(FT2SOURCEDIR)/psnames \
+ -I$(FT2SOURCEDIR)/pshinter \
+ -I$(FT2SOURCEDIR)/autohint \
+ -I$(FT2SOURCEDIR)/bdf \
+ -I$(FT2SOURCEDIR)/pcf \
+ -I$(FT2SOURCEDIR)/lzw
+
+FT2SRCS = ftbase.c ftinit.c ftglyph.c ftbbox.c ftsystem.c fttype1.c ftxf86.c \
+ ftgzip.c raster.c sfnt.c truetype.c cff.c type1.c \
+ psaux.c psnames.c pshinter.c autohint.c ftlzw.c \
+ ftbdf.c bdf.c pcf.c
+FT2OBJS = ftbase.o ftinit.o ftglyph.o ftbbox.o ftsystem.o fttype1.o ftxf86.o \
+ ftgzip.o raster.o sfnt.o truetype.o cff.o type1.o \
+ psaux.o psnames.o pshinter.o autohint.o ftlzw.o \
+ ftbdf.o bdf.o pcf.o
+#endif
+
+INCLUDES = -I. -I.. -I$(FONTINCSRC) -I../../include -I$(XINCLUDESRC) \
+ -I$(SERVERSRC)/include $(FT2INCLUDES) -I$(INCLUDESRC)
+
+SRCS = xttcap.c ftfuncs.c ftenc.c fttools.c $(FT2SRCS) ftmodule.c
+OBJS = xttcap.o ftfuncs.o ftenc.o fttools.o $(FT2OBJS) ftmodule.o
+
+LinkSourceFile(ftenc.c,..)
+LinkSourceFile(ftfuncs.c,..)
+LinkSourceFile(fttools.c,..)
+LinkSourceFile(xttcap.c,..)
+
+#if !BuildFreetypeDlModule
+LinkSourceFile(ftbase.c,$(FT2SOURCEDIR)/base)
+LinkSourceFile(ftinit.c,$(FT2SOURCEDIR)/base)
+LinkSourceFile(ftglyph.c,$(FT2SOURCEDIR)/base)
+LinkSourceFile(ftbbox.c,$(FT2SOURCEDIR)/base)
+LinkSourceFile(ftsystem.c,..)
+LinkSourceFile(ftutil.c,$(FT2SOURCEDIR)/base)
+LinkSourceFile(fttype1.c,$(FT2SOURCEDIR)/base)
+LinkSourceFile(ftxf86.c,$(FT2SOURCEDIR)/base)
+LinkSourceFile(ftgzip.c,$(FT2SOURCEDIR)/gzip)
+LinkSourceFile(raster.c,$(FT2SOURCEDIR)/raster)
+LinkSourceFile(sfnt.c,$(FT2SOURCEDIR)/sfnt)
+LinkSourceFile(truetype.c,$(FT2SOURCEDIR)/truetype)
+LinkSourceFile(cff.c,$(FT2SOURCEDIR)/cff)
+LinkSourceFile(type1.c,$(FT2SOURCEDIR)/type1)
+LinkSourceFile(psaux.c,$(FT2SOURCEDIR)/psaux)
+LinkSourceFile(psnames.c,$(FT2SOURCEDIR)/psnames)
+LinkSourceFile(pshinter.c,$(FT2SOURCEDIR)/pshinter)
+LinkSourceFile(autohint.c,$(FT2SOURCEDIR)/autohint)
+LinkSourceFile(ftbdf.c,$(FT2SOURCEDIR)/base)
+LinkSourceFile(bdf.c,$(FT2SOURCEDIR)/bdf)
+LinkSourceFile(pcf.c,$(FT2SOURCEDIR)/pcf)
+LinkSourceFile(ftlzw.c,$(FT2SOURCEDIR)/lzw)
+#endif
+
+ModuleObjectRule()
+
+#if !BuildFreetypeDlModule
+LibraryModuleTarget(freetype,$(OBJS))
+InstallLibraryModule(freetype,$(MODULEDIR),fonts)
+InstallDriverSDKLibraryModule(freetype,$(DRIVERSDKMODULEDIR),fonts)
+#else
+DepDynamicModuleTarget(Concat3(lib,freetype,.so), $(OBJS), $(LINKFT2LIB) $(OBJS) $(EXTLIB))
+InstallDynamicModule(Concat3(lib,freetype,.so),$(MODULEDIR),fonts)
+InstallDriverSDKDynamicModule(Concat3(lib,freetype,.so),$(DRIVERSDKMODULEDIR),fonts)
+#endif
+
+DependTarget()
+
diff --git a/nx-X11/lib/font/FreeType/module/ft2build.h b/nx-X11/lib/font/FreeType/module/ft2build.h
new file mode 100644
index 000000000..83b9d4802
--- /dev/null
+++ b/nx-X11/lib/font/FreeType/module/ft2build.h
@@ -0,0 +1,45 @@
+/***************************************************************************/
+/* */
+/* ft2build.h */
+/* */
+/* FreeType 2 build and setup macros. */
+/* */
+/* Copyright 1996-2001 by */
+/* David Turner, Robert Wilhelm, and Werner Lemberg. */
+/* */
+/* Modified for XFree86. */
+/* */
+/* 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. */
+/* */
+/***************************************************************************/
+
+/* $XFree86: xc/lib/font/FreeType/ft2build.h,v 1.3 2002/10/01 00:02:10 alanh Exp $ */
+
+/* $XdotOrg: xc/lib/font/FreeType/module/ft2build.h,v 1.3 2005/07/03 07:00:58 daniels Exp $ */
+ /*************************************************************************/
+ /* */
+ /* This file corresponds to the default "ft2build.h" file for */
+ /* FreeType 2. It uses the "freetype" include root. */
+ /* */
+ /* Note that specific platforms might use a different configuration. */
+ /* See builds/unix/ft2unix.h for an example. */
+ /* */
+ /*************************************************************************/
+
+#ifndef __FT2_BUILD_GENERIC_H__
+#define __FT2_BUILD_GENERIC_H__
+
+# if defined (FONTMODULE)
+# include "ftheader.h"
+# else
+#include <freetype/config/ftheader.h>
+# endif
+
+#endif /* __FT2_BUILD_GENERIC_H__ */
+
+
+/* END */
diff --git a/nx-X11/lib/font/FreeType/module/ftheader.h b/nx-X11/lib/font/FreeType/module/ftheader.h
new file mode 100644
index 000000000..ec1671c41
--- /dev/null
+++ b/nx-X11/lib/font/FreeType/module/ftheader.h
@@ -0,0 +1,550 @@
+/***************************************************************************/
+/* */
+/* ftheader.h */
+/* */
+/* Build macros of the FreeType 2 library. */
+/* */
+/* Copyright 1996-2001, 2002 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. */
+/* */
+/***************************************************************************/
+/* $XFree86: xc/lib/font/FreeType/ftheader.h,v 1.4 2003/05/29 03:05:08 dawes Exp $ */
+
+#ifndef __FT_HEADER_H__
+#define __FT_HEADER_H__
+
+ /*@***********************************************************************/
+ /* */
+ /* <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" {
+#else
+#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. */
+ /* */
+#ifdef __cplusplus
+#define FT_END_HEADER }
+#else
+#define FT_END_HEADER /* nothing */
+#endif
+
+
+ /*************************************************************************/
+ /* */
+ /* Aliases for the FreeType 2 public and configuration files. */
+ /* */
+ /*************************************************************************/
+
+ /*************************************************************************/
+ /* */
+ /* <Section> */
+ /* header_file_macros */
+ /* */
+ /* <Title> */
+ /* Header File Macros */
+ /* */
+ /* <Abstract> */
+ /* Macro definitions used to #include specific header files. */
+ /* */
+ /* <Description> */
+ /* The following macros are defined to the name of specific */
+ /* FreeType 2 header files. They can be used directly in #include */
+ /* statements as in: */
+ /* */
+ /* { */
+ /* #include FT_FREETYPE_H */
+ /* #include FT_MULTIPLE_MASTERS_H */
+ /* #include FT_GLYPH_H */
+ /* } */
+ /* */
+ /* There are several reasons why we are now using macros to name */
+ /* public header files. The first one is that such macros are not */
+ /* limited to the infamous 8.3 naming rule required by DOS (and */
+ /* `FT_MULTIPLE_MASTERS_H' is a lot more meaningful than `ftmm.h'). */
+ /* */
+ /* The second reason is that is allows for more flexibility in the */
+ /* way FreeType 2 is installed on a given system. */
+ /* */
+ /*************************************************************************/
+
+ /* configuration files */
+
+ /*************************************************************************/
+ /* */
+ /* @macro: */
+ /* FT_CONFIG_CONFIG_H */
+ /* */
+ /* @description: */
+ /* A macro used in #include statements to name the file containing */
+ /* FreeType 2 configuration data. */
+ /* */
+#ifndef FT_CONFIG_CONFIG_H
+#define FT_CONFIG_CONFIG_H <freetype/config/ftconfig.h>
+#endif
+
+
+ /*************************************************************************/
+ /* */
+ /* @macro: */
+ /* FT_CONFIG_STANDARD_LIBRARY_H */
+ /* */
+ /* @description: */
+ /* A macro used in #include statements to name the file containing */
+ /* FreeType 2 configuration data. */
+ /* */
+#ifndef FT_CONFIG_STANDARD_LIBRARY_H
+#define FT_CONFIG_STANDARD_LIBRARY_H <myftstdlib.h>
+#endif
+
+
+ /*************************************************************************/
+ /* */
+ /* @macro: */
+ /* FT_CONFIG_OPTIONS_H */
+ /* */
+ /* @description: */
+ /* A macro used in #include statements to name the file containing */
+ /* FreeType 2 project-specific configuration options. */
+ /* */
+#ifndef FT_CONFIG_OPTIONS_H
+#define FT_CONFIG_OPTIONS_H <ftoption.h>
+#endif
+
+
+ /*************************************************************************/
+ /* */
+ /* @macro: */
+ /* FT_CONFIG_MODULES_H */
+ /* */
+ /* @description: */
+ /* A macro used in #include statements to name the file containing */
+ /* the list of FreeType 2 modules that are statically linked to new */
+ /* library instances in @FT_Init_FreeType. */
+ /* */
+#ifndef FT_CONFIG_MODULES_H
+#define FT_CONFIG_MODULES_H <ftmodule.h>
+#endif
+
+ /* public headers */
+
+ /*************************************************************************/
+ /* */
+ /* @macro: */
+ /* FT_FREETYPE_H */
+ /* */
+ /* @description: */
+ /* A macro used in #include statements to name the file containing */
+ /* the base FreeType 2 API. */
+ /* */
+#define FT_FREETYPE_H <freetype/freetype.h>
+
+
+ /*************************************************************************/
+ /* */
+ /* @macro: */
+ /* FT_ERRORS_H */
+ /* */
+ /* @description: */
+ /* A macro used in #include statements to name the file containing */
+ /* the list of FreeType 2 error codes (and messages). */
+ /* */
+ /* It is included by @FT_FREETYPE_H. */
+ /* */
+#define FT_ERRORS_H <freetype/fterrors.h>
+
+
+ /*************************************************************************/
+ /* */
+ /* @macro: */
+ /* FT_MODULE_ERRORS_H */
+ /* */
+ /* @description: */
+ /* A macro used in #include statements to name the file containing */
+ /* the list of FreeType 2 module error offsets (and messages). */
+ /* */
+#define FT_MODULE_ERRORS_H <freetype/ftmoderr.h>
+
+
+ /*************************************************************************/
+ /* */
+ /* @macro: */
+ /* FT_SYSTEM_H */
+ /* */
+ /* @description: */
+ /* A macro used in #include statements to name the file containing */
+ /* the FreeType 2 interface to low-level operations (i.e. memory */
+ /* management and stream i/o). */
+ /* */
+ /* It is included by @FT_FREETYPE_H. */
+ /* */
+#define FT_SYSTEM_H <freetype/ftsystem.h>
+
+
+ /*************************************************************************/
+ /* */
+ /* @macro: */
+ /* FT_IMAGE_H */
+ /* */
+ /* @description: */
+ /* A macro used in #include statements to name the file containing */
+ /* types definitions related to glyph images (i.e. bitmaps, outlines, */
+ /* scan-converter parameters). */
+ /* */
+ /* It is included by @FT_FREETYPE_H. */
+ /* */
+#define FT_IMAGE_H <freetype/ftimage.h>
+
+
+ /*************************************************************************/
+ /* */
+ /* @macro: */
+ /* FT_TYPES_H */
+ /* */
+ /* @description: */
+ /* A macro used in #include statements to name the file containing */
+ /* the basic data types defined by FreeType 2. */
+ /* */
+ /* It is included by @FT_FREETYPE_H. */
+ /* */
+#define FT_TYPES_H <fttypes.h>
+
+
+ /*************************************************************************/
+ /* */
+ /* @macro: */
+ /* FT_LIST_H */
+ /* */
+ /* @description: */
+ /* A macro used in #include statements to name the file containing */
+ /* the list management API of FreeType 2. */
+ /* */
+ /* (Most applications will never need to include this file.) */
+ /* */
+#define FT_LIST_H <freetype/ftlist.h>
+
+
+ /*************************************************************************/
+ /* */
+ /* @macro: */
+ /* FT_OUTLINE_H */
+ /* */
+ /* @description: */
+ /* A macro used in #include statements to name the file containing */
+ /* the scalable outline management API of FreeType 2. */
+ /* */
+#define FT_OUTLINE_H <freetype/ftoutln.h>
+
+
+ /*************************************************************************/
+ /* */
+ /* @macro: */
+ /* FT_SIZES_H */
+ /* */
+ /* @description: */
+ /* A macro used in #include statements to name the file containing */
+ /* the API used to manage multiple @FT_Size objects per face. */
+ /* */
+#define FT_SIZES_H <freetype/ftsizes.h>
+
+
+ /*************************************************************************/
+ /* */
+ /* @macro: */
+ /* FT_MODULE_H */
+ /* */
+ /* @description: */
+ /* A macro used in #include statements to name the file containing */
+ /* the module management API of FreeType 2. */
+ /* */
+#define FT_MODULE_H <freetype/ftmodapi.h>
+
+
+ /*************************************************************************/
+ /* */
+ /* @macro: */
+ /* FT_RENDER_H */
+ /* */
+ /* @description: */
+ /* A macro used in #include statements to name the file containing */
+ /* the renderer module management API of FreeType 2. */
+ /* */
+#define FT_RENDER_H <freetype/ftrender.h>
+
+
+ /*************************************************************************/
+ /* */
+ /* @macro: */
+ /* FT_TYPE1_TABLES_H */
+ /* */
+ /* @description: */
+ /* A macro used in #include statements to name the file containing */
+ /* the types and API specific to the Type 1 format. */
+ /* */
+#define FT_TYPE1_TABLES_H <freetype/t1tables.h>
+
+
+ /*************************************************************************/
+ /* */
+ /* @macro: */
+ /* FT_TRUETYPE_IDS_H */
+ /* */
+ /* @description: */
+ /* A macro used in #include statements to name the file containing */
+ /* the enumeration values used to identify name strings, languages, */
+ /* encodings, etc. This file really contains a _large_ set of */
+ /* constant macro definitions, taken from the TrueType and OpenType */
+ /* specifications. */
+ /* */
+#define FT_TRUETYPE_IDS_H <freetype/ttnameid.h>
+
+
+ /*************************************************************************/
+ /* */
+ /* @macro: */
+ /* FT_TRUETYPE_TABLES_H */
+ /* */
+ /* @description: */
+ /* A macro used in #include statements to name the file containing */
+ /* the types and API specific to the TrueType (as well as OpenType) */
+ /* format. */
+ /* */
+#define FT_TRUETYPE_TABLES_H <freetype/tttables.h>
+
+
+ /*************************************************************************/
+ /* */
+ /* @macro: */
+ /* FT_TRUETYPE_TAGS_H */
+ /* */
+ /* @description: */
+ /* A macro used in #include statements to name the file containing */
+ /* the definitions of TrueType 4-byte `tags' used to identify blocks */
+ /* in SFNT-based font formats (i.e. TrueType and OpenType). */
+ /* */
+#define FT_TRUETYPE_TAGS_H <freetype/tttags.h>
+
+
+ /*************************************************************************/
+ /* */
+ /* @macro: */
+ /* FT_BDF_H */
+ /* */
+ /* @description: */
+ /* A macro used in #include statements to name the file containing */
+ /* the definitions of an API to access BDF-specific strings from a */
+ /* face. */
+ /* */
+#define FT_BDF_H <freetype/ftbdf.h>
+
+ /*************************************************************************/
+ /* */
+ /* @macro: */
+ /* FT_GZIP_H */
+ /* */
+ /* @description: */
+ /* A macro used in #include statements to name the file containing */
+ /* the definitions of an API to support for gzip-compressed files. */
+ /* */
+#define FT_GZIP_H <freetype/ftgzip.h>
+
+
+ /*************************************************************************/
+ /* */
+ /* @macro: */
+ /* FT_LZW_H */
+ /* */
+ /* @description: */
+ /* A macro used in #include statements to name the file containing */
+ /* the definitions of an API to support for LZW-compressed files. */
+ /* */
+#define FT_LZW_H <freetype/ftlzw.h>
+
+
+ /*************************************************************************/
+ /* */
+ /* @macro: */
+ /* FT_WINFONTS_H */
+ /* */
+ /* @description: */
+ /* A macro used in #include statements to name the file containing */
+ /* the definitions of an API to support Windows .FNT files */
+ /* */
+#define FT_WINFONTS_H <freetype/ftwinfnt.h>
+
+ /*************************************************************************/
+ /* */
+ /* @macro: */
+ /* FT_GLYPH_H */
+ /* */
+ /* @description: */
+ /* A macro used in #include statements to name the file containing */
+ /* the API of the optional glyph management component. */
+ /* */
+#define FT_GLYPH_H <freetype/ftglyph.h>
+
+
+ /*************************************************************************/
+ /* */
+ /* @macro: */
+ /* FT_BBOX_H */
+ /* */
+ /* @description: */
+ /* A macro used in #include statements to name the file containing */
+ /* the API of the optional exact bounding box computation routines. */
+ /* */
+#define FT_BBOX_H <freetype/ftbbox.h>
+
+
+ /*************************************************************************/
+ /* */
+ /* @macro: */
+ /* FT_CACHE_H */
+ /* */
+ /* @description: */
+ /* A macro used in #include statements to name the file containing */
+ /* the API of the optional FreeType 2 cache sub-system. */
+ /* */
+#define FT_CACHE_H <freetype/ftcache.h>
+
+
+ /*************************************************************************/
+ /* */
+ /* @macro: */
+ /* FT_CACHE_IMAGE_H */
+ /* */
+ /* @description: */
+ /* A macro used in #include statements to name the file containing */
+ /* the `glyph image' API of the FreeType 2 cache sub-system. */
+ /* */
+ /* It is used to define a cache for @FT_Glyph elements. You can also */
+ /* see the API defined in @FT_CACHE_SMALL_BITMAPS_H if you only need */
+ /* to store small glyph bitmaps, as it will use less memory. */
+ /* */
+#define FT_CACHE_IMAGE_H <freetype/cache/ftcimage.h>
+
+
+ /*************************************************************************/
+ /* */
+ /* @macro: */
+ /* FT_CACHE_SMALL_BITMAPS_H */
+ /* */
+ /* @description: */
+ /* A macro used in #include statements to name the file containing */
+ /* the `small bitmaps' API of the FreeType 2 cache sub-system. */
+ /* */
+ /* It is used to define a cache for small glyph bitmaps in a */
+ /* relatively memory-efficient way. You can also use the API defined */
+ /* in @FT_CACHE_IMAGE_H if you want to cache arbitrary glyph images, */
+ /* including scalable outlines. */
+ /* */
+#define FT_CACHE_SMALL_BITMAPS_H <freetype/cache/ftcsbits.h>
+
+
+ /*************************************************************************/
+ /* */
+ /* @macro: */
+ /* FT_CACHE_CHARMAP_H */
+ /* */
+ /* @description: */
+ /* A macro used in #include statements to name the file containing */
+ /* the `charmap' API of the FreeType 2 cache sub-system. */
+ /* */
+#define FT_CACHE_CHARMAP_H <freetype/cache/ftccmap.h>
+
+
+ /*************************************************************************/
+ /* */
+ /* @macro: */
+ /* FT_MAC_H */
+ /* */
+ /* @description: */
+ /* A macro used in #include statements to name the file containing */
+ /* the Macintosh-specific FreeType 2 API. The latter is used to */
+ /* access fonts embedded in resource forks. */
+ /* */
+ /* This header file must be explicitly included by client */
+ /* applications compiled on the Mac (note that the base API still */
+ /* works though). */
+ /* */
+#define FT_MAC_H <freetype/ftmac.h>
+
+
+ /*************************************************************************/
+ /* */
+ /* @macro: */
+ /* FT_MULTIPLE_MASTERS_H */
+ /* */
+ /* @description: */
+ /* A macro used in #include statements to name the file containing */
+ /* the optional multiple-masters management API of FreeType 2. */
+ /* */
+#define FT_MULTIPLE_MASTERS_H <freetype/ftmm.h>
+
+
+ /*************************************************************************/
+ /* */
+ /* @macro: */
+ /* FT_SFNT_NAMES_H */
+ /* */
+ /* @description: */
+ /* A macro used in #include statements to name the file containing */
+ /* the optional FreeType 2 API used to access embedded `name' strings */
+ /* in SFNT-based font formats (i.e. TrueType and OpenType). */
+ /* */
+#define FT_SFNT_NAMES_H <freetype/ftsnames.h>
+
+ /* */
+
+#define FT_TRIGONOMETRY_H <freetype/fttrigon.h>
+#define FT_STROKER_H <freetype/ftstroke.h>
+#define FT_SYNTHESIS_H <freetype/ftsynth.h>
+#define FT_ERROR_DEFINITIONS_H <freetype/fterrdef.h>
+
+#define FT_CACHE_MANAGER_H <freetype/cache/ftcmanag.h>
+
+#define FT_CACHE_INTERNAL_LRU_H <freetype/cache/ftlru.h>
+#define FT_CACHE_INTERNAL_GLYPH_H <freetype/cache/ftcglyph.h>
+#define FT_CACHE_INTERNAL_CACHE_H <freetype/cache/ftccache.h>
+
+#define FT_XFREE86_H <freetype/ftxf86.h>
+
+#define FT_INCREMENTAL_H <freetype/ftincrem.h>
+
+#define FT_TRUETYPE_UNPATENTED_H <freetype/ttunpat.h>
+
+ /* now include internal headers definitions from <freetype/internal/...> */
+
+#define FT_INTERNAL_INTERNAL_H <freetype/internal/internal.h>
+#include FT_INTERNAL_INTERNAL_H
+
+
+#endif /* __FT2_BUILD_H__ */
+
+
+/* END */
diff --git a/nx-X11/lib/font/FreeType/module/ftmodule.c b/nx-X11/lib/font/FreeType/module/ftmodule.c
new file mode 100644
index 000000000..c2fe79089
--- /dev/null
+++ b/nx-X11/lib/font/FreeType/module/ftmodule.c
@@ -0,0 +1,76 @@
+/*
+ * Copyright (C) 1998-2002 The XFree86 Project, Inc. All Rights Reserved.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to
+ * deal in the Software without restriction, including without limitation the
+ * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+ * sell copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * XFREE86 PROJECT BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
+ * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ *
+ * Except as contained in this notice, the name of the XFree86 Project shall
+ * not be used in advertising or otherwise to promote the sale, use or other
+ * dealings in this Software without prior written authorization from the
+ * XFree86 Project.
+ */
+/* $XFree86: xc/lib/font/FreeType/module/ftmodule.c,v 1.18 2003/11/02 04:30:57 dawes Exp $ */
+
+#include "misc.h"
+
+#include <X11/fonts/fontmod.h>
+#include "xf86Module.h"
+
+#ifdef HAVE_XORG_CONFIG_H
+#include <xorg-config.h>
+#endif
+
+static MODULESETUPPROTO(freetypeSetup);
+
+ /*
+ * This is the module data function that is accessed when loading
+ * libfreetype as a module.
+ */
+
+static XF86ModuleVersionInfo VersRec =
+{
+ "freetype",
+ MODULEVENDORSTRING " & the After X-TT Project",
+ MODINFOSTRING1,
+ MODINFOSTRING2,
+ XORG_VERSION_CURRENT,
+ 2, 1, 0,
+ ABI_CLASS_FONT, /* Font module */
+ ABI_FONT_VERSION,
+ MOD_CLASS_FONT,
+ {0,0,0,0} /* signature, to be patched into the file by a tool */
+};
+
+XF86ModuleData freetypeModuleData = { &VersRec, freetypeSetup, NULL };
+
+extern void FreeTypeRegisterFontFileFunctions(void);
+
+FontModule freetypeModule = {
+ FreeTypeRegisterFontFileFunctions,
+ "FreeType",
+ NULL
+};
+
+static pointer
+freetypeSetup(pointer module, pointer opts, int *errmaj, int *errmin)
+{
+ freetypeModule.module = module;
+ LoadFont(&freetypeModule);
+
+ /* Need a non-NULL return */
+ return (pointer)1;
+}
diff --git a/nx-X11/lib/font/FreeType/module/ftmodule.h b/nx-X11/lib/font/FreeType/module/ftmodule.h
new file mode 100644
index 000000000..443c97c29
--- /dev/null
+++ b/nx-X11/lib/font/FreeType/module/ftmodule.h
@@ -0,0 +1,21 @@
+/* $XFree86: xc/lib/font/FreeType/ftmodule.h,v 1.5 2003/10/24 16:33:08 tsi Exp $ */
+
+FT_USE_MODULE(autohint_module_class)
+FT_USE_MODULE(cff_driver_class)
+/* FT_USE_MODULE(t1cid_driver_class) */
+FT_USE_MODULE(pcf_driver_class)
+FT_USE_MODULE(bdf_driver_class)
+FT_USE_MODULE(psaux_module_class)
+FT_USE_MODULE(psnames_module_class)
+FT_USE_MODULE(pshinter_module_class)
+FT_USE_MODULE(ft_raster1_renderer_class)
+FT_USE_MODULE(sfnt_module_class)
+/* FT_USE_MODULE(ft_smooth_renderer_class) */
+/* FT_USE_MODULE(ft_smooth_lcd_renderer_class) */
+/* FT_USE_MODULE(ft_smooth_lcdv_renderer_class) */
+FT_USE_MODULE(tt_driver_class)
+FT_USE_MODULE(t1_driver_class)
+/* FT_USE_MODULE(t42_driver_class) */
+/* FT_USE_MODULE(pfr_driver_class) */
+/* FT_USE_MODULE(winfnt_driver_class) */
+
diff --git a/nx-X11/lib/font/FreeType/module/ftoption.h b/nx-X11/lib/font/FreeType/module/ftoption.h
new file mode 100644
index 000000000..a527ec12d
--- /dev/null
+++ b/nx-X11/lib/font/FreeType/module/ftoption.h
@@ -0,0 +1,567 @@
+/***************************************************************************/
+/* */
+/* ftoption.h */
+/* */
+/* User-selectable configuration macros (specification only). */
+/* */
+/* Copyright 1996-2001, 2002, 2003, 2004 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. */
+/* */
+/***************************************************************************/
+
+
+#ifndef __FTOPTION_H__
+#define __FTOPTION_H__
+
+
+#include <ft2build.h>
+
+
+FT_BEGIN_HEADER
+
+ /*************************************************************************/
+ /* */
+ /* USER-SELECTABLE CONFIGURATION MACROS */
+ /* */
+ /* This file contains the default configuration macro definitions for */
+ /* a standard build of the FreeType library. There are three ways to */
+ /* use this file to build project-specific versions of the library: */
+ /* */
+ /* - You can modify this file by hand, but this is not recommended in */
+ /* cases where you would like to build several versions of the */
+ /* library from a single source directory. */
+ /* */
+ /* - You can put a copy of this file in your build directory, more */
+ /* precisely in "$BUILD/freetype/config/ftoption.h", where "$BUILD" */
+ /* is the name of a directory that is included _before_ the FreeType */
+ /* include path during compilation. */
+ /* */
+ /* The default FreeType Makefiles and Jamfiles use the build */
+ /* directory "builds/<system>" by default, but you can easily change */
+ /* that for your own projects. */
+ /* */
+ /* - Copy the file <ft2build.h> to "$BUILD/ft2build.h" and modify it */
+ /* slightly to pre-define the macro FT_CONFIG_OPTIONS_H used to */
+ /* locate this file during the build. For example, */
+ /* */
+ /* #define FT_CONFIG_OPTIONS_H <myftoptions.h> */
+ /* #include <freetype/config/ftheader.h> */
+ /* */
+ /* will use "$BUILD/myftoptions.h" instead of this file for macro */
+ /* definitions. */
+ /* */
+ /* Note also that you can similarly pre-define the macro */
+ /* FT_CONFIG_MODULES_H used to locate the file listing of the modules */
+ /* that are statically linked to the library at compile time. By */
+ /* default, this file is <freetype/config/ftmodule.h>. */
+ /* */
+ /* We highly recommend using the third method whenever possible. */
+ /* */
+ /*************************************************************************/
+
+
+ /*************************************************************************/
+ /*************************************************************************/
+ /**** ****/
+ /**** G E N E R A L F R E E T Y P E 2 C O N F I G U R A T I O N ****/
+ /**** ****/
+ /*************************************************************************/
+ /*************************************************************************/
+
+
+ /*************************************************************************/
+ /* */
+ /* Many compilers provide a non-ANSI 64-bit data type that can be used */
+ /* by FreeType to speed up some computations. However, this will create */
+ /* some problems when compiling the library in strict ANSI mode. */
+ /* */
+ /* For this reason, the use of 64-bit integers is normally disabled when */
+ /* the __STDC__ macro is defined. You can however disable this by */
+ /* defining the macro FT_CONFIG_OPTION_FORCE_INT64 here. */
+ /* */
+ /* For most compilers, this will only create compilation warnings when */
+ /* building the library. */
+ /* */
+ /* ObNote: The compiler-specific 64-bit integers are detected in the */
+ /* file "ftconfig.h" either statically or through the */
+ /* `configure' script on supported platforms. */
+ /* */
+#undef FT_CONFIG_OPTION_FORCE_INT64
+
+
+ /*************************************************************************/
+ /* */
+ /* LZW-compressed file support. */
+ /* */
+ /* FreeType now handles font files that have been compressed with the */
+ /* 'compress' program. This is mostly used to parse many of the PCF */
+ /* files that come with various X11 distributions. The implementation */
+ /* uses NetBSD's `zopen' to partially uncompress the file on the fly */
+ /* (see src/lzw/ftgzip.c). */
+ /* */
+ /* Define this macro if you want to enable this `feature'. */
+ /* */
+#define FT_CONFIG_OPTION_USE_LZW
+
+
+ /*************************************************************************/
+ /* */
+ /* Gzip-compressed file support. */
+ /* */
+ /* FreeType now handles font files that have been compressed with the */
+ /* 'gzip' program. This is mostly used to parse many of the PCF files */
+ /* that come with XFree86. The implementation uses `zlib' to */
+ /* partially uncompress the file on the fly (see src/gzip/ftgzip.c). */
+ /* */
+ /* Define this macro if you want to enable this `feature'. See also */
+ /* the macro FT_CONFIG_OPTION_SYSTEM_ZLIB below. */
+ /* */
+#define FT_CONFIG_OPTION_USE_ZLIB
+
+
+ /*************************************************************************/
+ /* */
+ /* ZLib library selection */
+ /* */
+ /* 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 */
+ /* installation of the ZLib library. This is useful on systems like */
+ /* Unix or VMS where it generally is already available. */
+ /* */
+ /* If you let it undefined, the component will use its own copy */
+ /* of the zlib sources instead. These have been modified to be */
+ /* included directly within the component and *not* export external */
+ /* function names. This allows you to link any program with FreeType */
+ /* _and_ ZLib without linking conflicts. */
+ /* */
+ /* Do not #undef this macro here since the build system might define */
+ /* it for certain configurations only. */
+ /* */
+/* #define FT_CONFIG_OPTION_SYSTEM_ZLIB */
+
+
+ /*************************************************************************/
+ /* */
+ /* DLL export compilation */
+ /* */
+ /* When compiling FreeType as a DLL, some systems/compilers need a */
+ /* special keyword in front OR after the return type of function */
+ /* declarations. */
+ /* */
+ /* Two macros are used within the FreeType source code to define */
+ /* exported library functions: FT_EXPORT and FT_EXPORT_DEF. */
+ /* */
+ /* FT_EXPORT( return_type ) */
+ /* */
+ /* is used in a function declaration, as in */
+ /* */
+ /* FT_EXPORT( FT_Error ) */
+ /* FT_Init_FreeType( FT_Library* alibrary ); */
+ /* */
+ /* */
+ /* FT_EXPORT_DEF( return_type ) */
+ /* */
+ /* is used in a function definition, as in */
+ /* */
+ /* FT_EXPORT_DEF( FT_Error ) */
+ /* FT_Init_FreeType( FT_Library* alibrary ) */
+ /* { */
+ /* ... some code ... */
+ /* return FT_Err_Ok; */
+ /* } */
+ /* */
+ /* You can provide your own implementation of FT_EXPORT and */
+ /* FT_EXPORT_DEF here if you want. If you leave them undefined, they */
+ /* will be later automatically defined as `extern return_type' to */
+ /* 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_DEF(x) x */
+
+
+ /*************************************************************************/
+ /* */
+ /* Glyph Postscript Names handling */
+ /* */
+ /* 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 */
+ /* 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 */
+ /* charmap out of the glyphs found in the fonts. */
+ /* */
+ /* You would normally undefine this configuration macro when building */
+ /* a version of FreeType that doesn't contain a Type 1 or CFF driver. */
+ /* */
+#define FT_CONFIG_OPTION_POSTSCRIPT_NAMES
+
+
+ /*************************************************************************/
+ /* */
+ /* Postscript Names to Unicode Values support */
+ /* */
+ /* 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 */
+ /* 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 */
+ /* fonts. */
+ /* */
+#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
+
+
+ /*************************************************************************/
+ /* */
+ /* Guessing methods to access embedded resource forks */
+ /* */
+ /* Enable extra Mac fonts support on non-Mac platforms (e.g. */
+ /* GNU/Linux). */
+ /* */
+ /* Resource forks which include fonts data are stored sometimes in */
+ /* locations which users or developers don't expected. In some cases, */
+ /* resource forks start with some offset from the head of a file. In */
+ /* other cases, the actual resource fork is stored in file different */
+ /* from what the user specifies. If this option is activated, */
+ /* FreeType tries to guess whether such offsets or different file */
+ /* names must be used. */
+ /* */
+ /* Note that normal, direct access of resource forks is controlled via */
+ /* the FT_CONFIG_OPTION_MAC_FONTS option. */
+ /* */
+#ifdef FT_CONFIG_OPTION_MAC_FONTS
+#define FT_CONFIG_OPTION_GUESSING_EMBEDDED_RFORK
+#endif
+
+
+ /*************************************************************************/
+ /* */
+ /* Allow the use of FT_Incremental_Interface to load typefaces that */
+ /* contain no glyph data, but supply it via a callback function. */
+ /* This allows FreeType to be used with the PostScript language, using */
+ /* the GhostScript interpreter. */
+ /* */
+/* #define FT_CONFIG_OPTION_INCREMENTAL */
+
+
+ /*************************************************************************/
+ /* */
+ /* The size in bytes of the render pool used by the scan-line converter */
+ /* to do all of its work. */
+ /* */
+ /* This must be greater than 4KByte. */
+ /* */
+#define FT_RENDER_POOL_SIZE 16384L
+
+
+ /*************************************************************************/
+ /* */
+ /* FT_MAX_MODULES */
+ /* */
+ /* The maximum number of modules that can be registered in a single */
+ /* FreeType library object. 32 is the default. */
+ /* */
+#define FT_MAX_MODULES 32
+
+
+ /*************************************************************************/
+ /* */
+ /* Debug level */
+ /* */
+ /* FreeType can be compiled in debug or trace mode. In debug mode, */
+ /* errors are reported through the `ftdebug' component. In trace */
+ /* mode, additional messages are sent to the standard output during */
+ /* execution. */
+ /* */
+ /* Define FT_DEBUG_LEVEL_ERROR to build the library in debug mode. */
+ /* Define FT_DEBUG_LEVEL_TRACE to build it in trace mode. */
+ /* */
+ /* Don't define any of these macros to compile in `release' mode! */
+ /* */
+ /* Do not #undef these macros here since the build system might define */
+ /* them for certain configurations only. */
+ /* */
+/* #define FT_DEBUG_LEVEL_ERROR */
+/* #define FT_DEBUG_LEVEL_TRACE */
+
+
+ /*************************************************************************/
+ /* */
+ /* Memory Debugging */
+ /* */
+ /* FreeType now comes with an integrated memory debugger that is */
+ /* capable of detecting simple errors like memory leaks or double */
+ /* deletes. To compile it within your build of the library, you */
+ /* should define FT_DEBUG_MEMORY here. */
+ /* */
+ /* Note that the memory debugger is only activated at runtime when */
+ /* when the _environment_ variable "FT2_DEBUG_MEMORY" is defined also! */
+ /* */
+ /* Do not #undef this macro here since the build system might define */
+ /* it for certain configurations only. */
+ /* */
+/* #define FT_DEBUG_MEMORY */
+
+
+ /*************************************************************************/
+ /* */
+ /* Module errors */
+ /* */
+ /* If this macro is set (which is _not_ the default), the higher byte */
+ /* of an error code gives the module in which the error has occurred, */
+ /* while the lower byte is the real error code. */
+ /* */
+ /* Setting this macro makes sense for debugging purposes only, since */
+ /* it would break source compatibility of certain programs that use */
+ /* FreeType 2. */
+ /* */
+ /* More details can be found in the files ftmoderr.h and fterrors.h. */
+ /* */
+#undef FT_CONFIG_OPTION_USE_MODULE_ERRORS
+
+
+
+ /*************************************************************************/
+ /*************************************************************************/
+ /**** ****/
+ /**** S F N T D R I V E R C O N F I G U R A T I O N ****/
+ /**** ****/
+ /*************************************************************************/
+ /*************************************************************************/
+
+
+ /*************************************************************************/
+ /* */
+ /* Define TT_CONFIG_OPTION_EMBEDDED_BITMAPS if you want to support */
+ /* embedded bitmaps in all formats using the SFNT module (namely */
+ /* TrueType & OpenType). */
+ /* */
+#define TT_CONFIG_OPTION_EMBEDDED_BITMAPS
+
+
+ /*************************************************************************/
+ /* */
+ /* Define TT_CONFIG_OPTION_POSTSCRIPT_NAMES if you want to be able to */
+ /* load and enumerate the glyph Postscript names in a TrueType or */
+ /* OpenType file. */
+ /* */
+ /* Note that when you do not compile the `PSNames' module by undefining */
+ /* the above FT_CONFIG_OPTION_POSTSCRIPT_NAMES, the `sfnt' module will */
+ /* contain additional code used to read the PS Names table from a font. */
+ /* */
+ /* (By default, the module uses `PSNames' to extract glyph names.) */
+ /* */
+#define TT_CONFIG_OPTION_POSTSCRIPT_NAMES
+
+
+ /*************************************************************************/
+ /* */
+ /* Define TT_CONFIG_OPTION_SFNT_NAMES if your applications need to */
+ /* access the internal name table in a SFNT-based format like TrueType */
+ /* or OpenType. The name table contains various strings used to */
+ /* describe the font, like family name, copyright, version, etc. It */
+ /* does not contain any glyph name though. */
+ /* */
+ /* Accessing SFNT names is done through the functions declared in */
+ /* `freetype/ftnames.h'. */
+ /* */
+#define TT_CONFIG_OPTION_SFNT_NAMES
+
+
+ /*************************************************************************/
+ /* */
+ /* TrueType CMap support */
+ /* */
+ /* Here you can fine-tune which TrueType CMap table format shall be */
+ /* supported. */
+#define TT_CONFIG_CMAP_FORMAT_0
+#define TT_CONFIG_CMAP_FORMAT_2
+#define TT_CONFIG_CMAP_FORMAT_4
+#define TT_CONFIG_CMAP_FORMAT_6
+#define TT_CONFIG_CMAP_FORMAT_8
+#define TT_CONFIG_CMAP_FORMAT_10
+#define TT_CONFIG_CMAP_FORMAT_12
+
+
+ /*************************************************************************/
+ /*************************************************************************/
+ /**** ****/
+ /**** T R U E T Y P E D R I V E R C O N F I G U R A T I O N ****/
+ /**** ****/
+ /*************************************************************************/
+ /*************************************************************************/
+
+ /*************************************************************************/
+ /* */
+ /* Define TT_CONFIG_OPTION_BYTECODE_INTERPRETER if you want to compile */
+ /* a bytecode interpreter in the TrueType driver. Note that there are */
+ /* important patent issues related to the use of the interpreter. */
+ /* */
+ /* By undefining this, you will only compile the code necessary to load */
+ /* TrueType glyphs without hinting. */
+ /* */
+ /* Do not #undef this macro here, since the build system might */
+ /* define it for certain configurations only. */
+ /* */
+/* #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
+
+
+ /*************************************************************************/
+ /* */
+ /* Define TT_CONFIG_OPTION_INTERPRETER_SWITCH to compile the TrueType */
+ /* bytecode interpreter with a huge switch statement, rather than a call */
+ /* table. This results in smaller and faster code for a number of */
+ /* architectures. */
+ /* */
+ /* Note however that on some compiler/processor combinations, undefining */
+ /* this macro will generate faster, though larger, code. */
+ /* */
+#define TT_CONFIG_OPTION_INTERPRETER_SWITCH
+
+
+ /*************************************************************************/
+ /* */
+ /* Define TT_CONFIG_OPTION_COMPONENT_OFFSET_SCALED to compile the */
+ /* TrueType glyph loader to use Apple's definition of how to handle */
+ /* component offsets in composite glyphs. */
+ /* */
+ /* Apple and MS disagree on the default behavior of component offsets */
+ /* in composites. Apple says that they should be scaled by the scale */
+ /* factors in the transformation matrix (roughly, it's more complex) */
+ /* while MS says they should not. OpenType defines two bits in the */
+ /* composite flags array which can be used to disambiguate, but old */
+ /* fonts will not have them. */
+ /* */
+ /* http://partners.adobe.com/asn/developer/opentype/glyf.html */
+ /* http://fonts.apple.com/TTRefMan/RM06/Chap6glyf.html */
+ /* */
+#undef TT_CONFIG_OPTION_COMPONENT_OFFSET_SCALED
+
+
+ /*************************************************************************/
+ /*************************************************************************/
+ /**** ****/
+ /**** T Y P E 1 D R I V E R C O N F I G U R A T I O N ****/
+ /**** ****/
+ /*************************************************************************/
+ /*************************************************************************/
+
+
+ /*************************************************************************/
+ /* */
+ /* T1_MAX_DICT_DEPTH is the maximal depth of nest dictionaries and */
+ /* arrays in the Type 1 stream (see t1load.c). A minimum of 4 is */
+ /* required. */
+ /* */
+#define T1_MAX_DICT_DEPTH 5
+
+
+ /*************************************************************************/
+ /* */
+ /* T1_MAX_SUBRS_CALLS details the maximum number of nested sub-routine */
+ /* calls during glyph loading. */
+ /* */
+#define T1_MAX_SUBRS_CALLS 16
+
+
+ /*************************************************************************/
+ /* */
+ /* T1_MAX_CHARSTRING_OPERANDS is the charstring stack's capacity. A */
+ /* minimum of 16 is required. */
+ /* */
+ /* The Chinese font MingTiEG-Medium (CNS 11643 character set) needs 256. */
+ /* */
+#define T1_MAX_CHARSTRINGS_OPERANDS 256
+
+
+ /*************************************************************************/
+ /* */
+ /* Define this configuration macro if you want to prevent the */
+ /* compilation of `t1afm', which is in charge of reading Type 1 AFM */
+ /* files into an existing face. Note that if set, the T1 driver will be */
+ /* unable to produce kerning distances. */
+ /* */
+#undef T1_CONFIG_OPTION_NO_AFM
+
+
+ /*************************************************************************/
+ /* */
+ /* Define this configuration macro if you want to prevent the */
+ /* compilation of the Multiple Masters font support in the Type 1 */
+ /* driver. */
+ /* */
+#undef T1_CONFIG_OPTION_NO_MM_SUPPORT
+
+ /* */
+
+/*
+ * The FT_CONFIG_OPTION_CHESTER_XXXX macros are used to toggle some recent
+ * improvements to the auto-hinter contributed by David Chester. They will
+ * most likely disappear completely in the next release. For now, you
+ * should always keep them defined.
+ *
+ */
+#define FT_CONFIG_OPTION_CHESTER_HINTS
+
+#ifdef FT_CONFIG_OPTION_CHESTER_HINTS
+
+#define FT_CONFIG_CHESTER_SMALL_F
+#define FT_CONFIG_CHESTER_ASCENDER
+#define FT_CONFIG_CHESTER_SERIF
+#define FT_CONFIG_CHESTER_STEM
+#define FT_CONFIG_CHESTER_BLUE_SCALE
+
+#endif /* FT_CONFIG_OPTION_CHESTER_HINTS */
+
+FT_END_HEADER
+
+
+#endif /* __FTOPTION_H__ */
+
+
+/* END */
diff --git a/nx-X11/lib/font/FreeType/module/ftstdlib.h b/nx-X11/lib/font/FreeType/module/ftstdlib.h
new file mode 100644
index 000000000..3d5b7fc76
--- /dev/null
+++ b/nx-X11/lib/font/FreeType/module/ftstdlib.h
@@ -0,0 +1,113 @@
+/* ftstdlib.h -- modified for XFree86. */
+/* $XFree86: xc/lib/font/FreeType/ftstdlib.h,v 1.5 2003/02/22 06:00:36 dawes Exp $ */
+
+#ifndef __FTSTDLIB_H__
+#define __FTSTDLIB_H__
+
+#ifndef FONTMODULE
+
+#include <limits.h>
+
+#define FT_UINT_MAX UINT_MAX
+#define FT_ULONG_MAX ULONG_MAX
+
+#include <ctype.h>
+
+#define ft_isalnum isalnum
+#define ft_isupper isupper
+#define ft_islower islower
+#define ft_isdigit isdigit
+#define ft_isxdigit isxdigit
+
+
+#include <string.h>
+
+#define ft_strlen strlen
+#define ft_strcat strcat
+#define ft_strcmp strcmp
+#define ft_strncmp strncmp
+#define ft_memcpy memcpy
+#define ft_strcpy strcpy
+#define ft_strncpy strncpy
+#define ft_memset memset
+#define ft_memmove memmove
+#define ft_memcmp memcmp
+
+#include <stdio.h>
+
+#define ft_sprintf sprintf
+
+#include <stdlib.h>
+
+#define ft_qsort qsort
+#define ft_exit exit
+
+#define ft_atoi atoi
+
+#include <setjmp.h>
+
+#define ft_jmp_buf jmp_buf /* note: this cannot be a typedef since */
+ /* jmp_buf is defined as a macro */
+ /* on certain platforms */
+
+#define ft_setjmp setjmp /* same thing here */
+#define ft_longjmp longjmp /* " */
+
+
+#else
+
+#include "Xmd.h"
+#define _XTYPEDEF_BOOL
+#include "Xdefs.h"
+#define DONT_DEFINE_WRAPPERS
+#define DEFINE_SETJMP_WRAPPERS
+#include "xf86_ansic.h"
+#undef DONT_DEFINE_WRAPPERS
+
+#ifndef offsetof
+#define offsetof(TYPE, MEMBER) ((xf86size_t)&((TYPE*)0)->MEMBER)
+#endif
+
+#define FT_UINT_MAX 4294967295U
+#ifdef LONG64
+#define FT_ULONG_MAX 18446744073709551615UL
+#else
+#define FT_ULONG_MAX 4294967295UL
+#endif
+
+#define ft_isalnum xf86isalnum
+#define ft_isupper xf86isupper
+#define ft_islower xf86islower
+#define ft_xdigit xf86isxdigit
+
+#define ft_strlen xf86strlen
+#define ft_strcmp xf86strcmp
+#define ft_strncmp xf86strncmp
+#define ft_memcpy xf86memcpy
+#define ft_strcpy xf86strcpy
+#define ft_strncpy xf86strncpy
+#define ft_memset xf86memset
+#define ft_memmove xf86memmove
+#define ft_memcmp xf86memcmp
+
+#define ft_sprintf xf86sprintf
+
+#define ft_qsort xf86qsort
+#define ft_exit xf86exit
+
+#define ft_atoi xf86atoi
+
+#define ft_jmp_buf jmp_buf
+#define ft_setjmp setjmp
+#define ft_longjmp longjmp
+
+#endif /* FONTMODULE */
+
+
+#include <stdarg.h>
+
+
+#endif /* __FTSTDLIB_H__ */
+
+
+/* END */
diff --git a/nx-X11/lib/font/FreeType/module/fttypes.h b/nx-X11/lib/font/FreeType/module/fttypes.h
new file mode 100644
index 000000000..82bb273e4
--- /dev/null
+++ b/nx-X11/lib/font/FreeType/module/fttypes.h
@@ -0,0 +1,571 @@
+/***************************************************************************/
+/* */
+/* fttypes.h */
+/* */
+/* FreeType simple types definitions (specification only). */
+/* */
+/* Copyright 1996-2001 by */
+/* David Turner, Robert Wilhelm, and Werner Lemberg. */
+/* */
+/* Modified for XFree86. */
+/* */
+/* 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. */
+/* */
+/***************************************************************************/
+/* $XFree86: xc/lib/font/FreeType/fttypes.h,v 1.4 2003/05/29 03:05:08 dawes Exp $ */
+
+#ifndef __FTTYPES_H__
+#define __FTTYPES_H__
+
+
+#include <ft2build.h>
+#include FT_CONFIG_CONFIG_H
+#include FT_SYSTEM_H
+#include FT_IMAGE_H
+
+#ifndef FONTMODULE
+#include <stddef.h>
+#else
+#include "Xmd.h"
+#define _XTYPEDEF_BOOL
+#include "Xdefs.h"
+#include "xf86_ansic.h"
+#ifndef size_t
+#define DONT_DEFINE_WRAPPERS
+#define size_t xf86size_t
+#undef DONT_DEFINE_WRAPPERS
+#endif
+#endif
+
+FT_BEGIN_HEADER
+
+
+ /*************************************************************************/
+ /* */
+ /* <Section> */
+ /* basic_types */
+ /* */
+ /* <Title> */
+ /* Basic Data Types */
+ /* */
+ /* <Abstract> */
+ /* The basic data types defined by the library. */
+ /* */
+ /* <Description> */
+ /* This section contains the basic data types defined by FreeType 2, */
+ /* ranging from simple scalar types to bitmap descriptors. More */
+ /* font-specific structures are defined in a different section. */
+ /* */
+ /* <Order> */
+ /* FT_Byte */
+ /* FT_Char */
+ /* FT_Int */
+ /* FT_UInt */
+ /* FT_Short */
+ /* FT_UShort */
+ /* FT_Long */
+ /* FT_ULong */
+ /* FT_Bool */
+ /* FT_Offset */
+ /* FT_PtrDist */
+ /* FT_String */
+ /* FT_Error */
+ /* FT_Fixed */
+ /* FT_Pointer */
+ /* FT_Pos */
+ /* FT_Vector */
+ /* FT_BBox */
+ /* FT_Matrix */
+ /* FT_FWord */
+ /* FT_UFWord */
+ /* FT_F2Dot14 */
+ /* FT_UnitVector */
+ /* FT_F26Dot6 */
+ /* */
+ /* */
+ /* FT_Generic */
+ /* FT_Generic_Finalizer */
+ /* */
+ /* FT_Bitmap */
+ /* FT_Pixel_Mode */
+ /* FT_Palette_Mode */
+ /* FT_Glyph_Format */
+ /* FT_IMAGE_TAG */
+ /* */
+ /*************************************************************************/
+
+
+ /*************************************************************************/
+ /* */
+ /* <Type> */
+ /* FT_Bool */
+ /* */
+ /* <Description> */
+ /* A typedef of unsigned char, used for simple booleans. */
+ /* */
+ typedef unsigned char FT_Bool;
+
+
+ /*************************************************************************/
+ /* */
+ /* <Type> */
+ /* FT_FWord */
+ /* */
+ /* <Description> */
+ /* A signed 16-bit integer used to store a distance in original font */
+ /* units. */
+ /* */
+ typedef signed short FT_FWord; /* distance in FUnits */
+
+
+ /*************************************************************************/
+ /* */
+ /* <Type> */
+ /* FT_UFWord */
+ /* */
+ /* <Description> */
+ /* An unsigned 16-bit integer used to store a distance in original */
+ /* font units. */
+ /* */
+ typedef unsigned short FT_UFWord; /* unsigned distance */
+
+
+ /*************************************************************************/
+ /* */
+ /* <Type> */
+ /* FT_Char */
+ /* */
+ /* <Description> */
+ /* A simple typedef for the _signed_ char type. */
+ /* */
+ typedef signed char FT_Char;
+
+
+ /*************************************************************************/
+ /* */
+ /* <Type> */
+ /* FT_Byte */
+ /* */
+ /* <Description> */
+ /* A simple typedef for the _unsigned_ char type. */
+ /* */
+ typedef unsigned char FT_Byte;
+
+
+ /*************************************************************************/
+ /* */
+ /* <Type> */
+ /* FT_String */
+ /* */
+ /* <Description> */
+ /* A simple typedef for the char type, usually used for strings. */
+ /* */
+ typedef char FT_String;
+
+
+ /*************************************************************************/
+ /* */
+ /* <Type> */
+ /* FT_Short */
+ /* */
+ /* <Description> */
+ /* A typedef for signed short. */
+ /* */
+ typedef signed short FT_Short;
+
+
+ /*************************************************************************/
+ /* */
+ /* <Type> */
+ /* FT_UShort */
+ /* */
+ /* <Description> */
+ /* A typedef for unsigned short. */
+ /* */
+ typedef unsigned short FT_UShort;
+
+
+ /*************************************************************************/
+ /* */
+ /* <Type> */
+ /* FT_Int */
+ /* */
+ /* <Description> */
+ /* A typedef for the int type. */
+ /* */
+ typedef int FT_Int;
+
+
+ /*************************************************************************/
+ /* */
+ /* <Type> */
+ /* FT_UInt */
+ /* */
+ /* <Description> */
+ /* A typedef for the unsigned int type. */
+ /* */
+ typedef unsigned int FT_UInt;
+
+
+ /*************************************************************************/
+ /* */
+ /* <Type> */
+ /* FT_Long */
+ /* */
+ /* <Description> */
+ /* A typedef for signed long. */
+ /* */
+ typedef signed long FT_Long;
+
+
+ /*************************************************************************/
+ /* */
+ /* <Type> */
+ /* FT_ULong */
+ /* */
+ /* <Description> */
+ /* A typedef for unsigned long. */
+ /* */
+ typedef unsigned long FT_ULong;
+
+
+ /*************************************************************************/
+ /* */
+ /* <Type> */
+ /* FT_F2Dot14 */
+ /* */
+ /* <Description> */
+ /* A signed 2.14 fixed float type used for unit vectors. */
+ /* */
+ typedef signed short FT_F2Dot14;
+
+
+ /*************************************************************************/
+ /* */
+ /* <Type> */
+ /* FT_F26Dot6 */
+ /* */
+ /* <Description> */
+ /* A signed 26.6 fixed float type used for vectorial pixel */
+ /* coordinates. */
+ /* */
+ typedef signed long FT_F26Dot6;
+
+
+ /*************************************************************************/
+ /* */
+ /* <Type> */
+ /* FT_Fixed */
+ /* */
+ /* <Description> */
+ /* This type is used to store 16.16 fixed float values, like scales */
+ /* or matrix coefficients. */
+ /* */
+ typedef signed long FT_Fixed;
+
+
+ /*************************************************************************/
+ /* */
+ /* <Type> */
+ /* FT_Error */
+ /* */
+ /* <Description> */
+ /* The FreeType error code type. A value of 0 is always interpreted */
+ /* as a successful operation. */
+ /* */
+ typedef int FT_Error;
+
+
+ /*************************************************************************/
+ /* */
+ /* <Type> */
+ /* FT_Pointer */
+ /* */
+ /* <Description> */
+ /* A simple typedef for a typeless pointer. */
+ /* */
+ typedef void* FT_Pointer;
+
+
+ /*************************************************************************/
+ /* */
+ /* <Type> */
+ /* FT_Offset */
+ /* */
+ /* <Description> */
+ /* This is equivalent to the ANSI C `size_t' type, i.e. the largest */
+ /* _unsigned_ integer type used to express a file size or position, */
+ /* or a memory block size. */
+ /* */
+ typedef size_t FT_Offset;
+
+
+ /*************************************************************************/
+ /* */
+ /* <Type> */
+ /* FT_PtrDist */
+ /* */
+ /* <Description> */
+ /* This is equivalent to the ANSI C `ptrdiff_t' type, i.e. the */
+ /* largest _signed_ integer type used to express the distance */
+ /* between two pointers. */
+ /* */
+ typedef size_t FT_PtrDist;
+
+
+ /*************************************************************************/
+ /* */
+ /* <Struct> */
+ /* FT_UnitVector */
+ /* */
+ /* <Description> */
+ /* A simple structure used to store a 2D vector unit vector. Uses */
+ /* FT_F2Dot14 types. */
+ /* */
+ /* <Fields> */
+ /* x :: Horizontal coordinate. */
+ /* */
+ /* y :: Vertical coordinate. */
+ /* */
+ typedef struct FT_UnitVector_
+ {
+ FT_F2Dot14 x;
+ FT_F2Dot14 y;
+
+ } FT_UnitVector;
+
+
+ /*************************************************************************/
+ /* */
+ /* <Struct> */
+ /* FT_Matrix */
+ /* */
+ /* <Description> */
+ /* A simple structure used to store a 2x2 matrix. Coefficients are */
+ /* in 16.16 fixed float format. The computation performed is: */
+ /* */
+ /* { */
+ /* x' = x*xx + y*xy */
+ /* y' = x*yx + y*yy */
+ /* } */
+ /* */
+ /* <Fields> */
+ /* xx :: Matrix coefficient. */
+ /* */
+ /* xy :: Matrix coefficient. */
+ /* */
+ /* yx :: Matrix coefficient. */
+ /* */
+ /* yy :: Matrix coefficient. */
+ /* */
+ typedef struct FT_Matrix_
+ {
+ FT_Fixed xx, xy;
+ FT_Fixed yx, yy;
+
+ } FT_Matrix;
+
+
+ /*************************************************************************/
+ /* */
+ /* <Struct> */
+ /* FT_Data */
+ /* */
+ /* <Description> */
+ /* Read-only binary data represented as a pointer and a length. */
+ /* */
+ /* <Fields> */
+ /* pointer :: The data. */
+ /* */
+ /* length :: The length of the data in bytes. */
+ /* */
+ typedef struct FT_Data_
+ {
+ const FT_Byte* pointer;
+ FT_Int length;
+
+ } FT_Data;
+
+
+ /*************************************************************************/
+ /* */
+ /* <FuncType> */
+ /* FT_Generic_Finalizer */
+ /* */
+ /* <Description> */
+ /* Describes a function used to destroy the `client' data of any */
+ /* FreeType object. See the description of the FT_Generic type for */
+ /* details of usage. */
+ /* */
+ /* <Input> */
+ /* The address of the FreeType object which is under finalization. */
+ /* Its client data is accessed through its `generic' field. */
+ /* */
+ typedef void (*FT_Generic_Finalizer)(void* object);
+
+
+ /*************************************************************************/
+ /* */
+ /* <Struct> */
+ /* FT_Generic */
+ /* */
+ /* <Description> */
+ /* Client applications often need to associate their own data to a */
+ /* variety of FreeType core objects. For example, a text layout API */
+ /* might want to associate a glyph cache to a given size object. */
+ /* */
+ /* Most FreeType object contains a `generic' field, of type */
+ /* FT_Generic, which usage is left to client applications and font */
+ /* servers. */
+ /* */
+ /* It can be used to store a pointer to client-specific data, as well */
+ /* as the address of a `finalizer' function, which will be called by */
+ /* FreeType when the object is destroyed (for example, the previous */
+ /* client example would put the address of the glyph cache destructor */
+ /* in the `finalizer' field). */
+ /* */
+ /* <Fields> */
+ /* data :: A typeless pointer to any client-specified data. This */
+ /* field is completely ignored by the FreeType library. */
+ /* */
+ /* finalizer :: A pointer to a `generic finalizer' function, which */
+ /* will be called when the object is destroyed. If this */
+ /* field is set to NULL, no code will be called. */
+ /* */
+ typedef struct FT_Generic_
+ {
+ void* data;
+ FT_Generic_Finalizer finalizer;
+
+ } FT_Generic;
+
+
+ /*************************************************************************/
+ /* */
+ /* <Macro> */
+ /* FT_MAKE_TAG */
+ /* */
+ /* <Description> */
+ /* This macro converts four letter tags which are used to label */
+ /* TrueType tables into an unsigned long to be used within FreeType. */
+ /* */
+ /* <Note> */
+ /* The produced values *must* be 32bit integers. Don't redefine this */
+ /* macro. */
+ /* */
+#define FT_MAKE_TAG( _x1, _x2, _x3, _x4 ) \
+ ( ( (FT_ULong)_x1 << 24 ) | \
+ ( (FT_ULong)_x2 << 16 ) | \
+ ( (FT_ULong)_x3 << 8 ) | \
+ (FT_ULong)_x4 )
+
+
+ /*************************************************************************/
+ /*************************************************************************/
+ /* */
+ /* L I S T M A N A G E M E N T */
+ /* */
+ /*************************************************************************/
+ /*************************************************************************/
+
+
+ /*************************************************************************/
+ /* */
+ /* <Section> */
+ /* list_processing */
+ /* */
+ /*************************************************************************/
+
+
+ /*************************************************************************/
+ /* */
+ /* <Type> */
+ /* FT_ListNode */
+ /* */
+ /* <Description> */
+ /* Many elements and objects in FreeType are listed through a */
+ /* FT_List record (see FT_ListRec). As its name suggests, a */
+ /* FT_ListNode is a handle to a single list element. */
+ /* */
+ typedef struct FT_ListNodeRec_* FT_ListNode;
+
+
+ /*************************************************************************/
+ /* */
+ /* <Type> */
+ /* FT_List */
+ /* */
+ /* <Description> */
+ /* A handle to a list record (see FT_ListRec). */
+ /* */
+ typedef struct FT_ListRec_* FT_List;
+
+
+ /*************************************************************************/
+ /* */
+ /* <Struct> */
+ /* FT_ListNodeRec */
+ /* */
+ /* <Description> */
+ /* A structure used to hold a single list element. */
+ /* */
+ /* <Fields> */
+ /* prev :: The previous element in the list. NULL if first. */
+ /* */
+ /* next :: The next element in the list. NULL if last. */
+ /* */
+ /* data :: A typeless pointer to the listed object. */
+ /* */
+ typedef struct FT_ListNodeRec_
+ {
+ FT_ListNode prev;
+ FT_ListNode next;
+ void* data;
+
+ } FT_ListNodeRec;
+
+
+ /*************************************************************************/
+ /* */
+ /* <Struct> */
+ /* FT_ListRec */
+ /* */
+ /* <Description> */
+ /* A structure used to hold a simple doubly-linked list. These are */
+ /* used in many parts of FreeType. */
+ /* */
+ /* <Fields> */
+ /* head :: The head (first element) of doubly-linked list. */
+ /* */
+ /* tail :: The tail (last element) of doubly-linked list. */
+ /* */
+ typedef struct FT_ListRec_
+ {
+ FT_ListNode head;
+ FT_ListNode tail;
+
+ } FT_ListRec;
+
+
+ /* */
+
+#define FT_IS_EMPTY( list ) ( (list).head == 0 )
+
+ /* return base error code (without module-specific prefix) */
+#define FT_ERROR_BASE( x ) ( (x) & 0xFF )
+
+ /* return module error code */
+#define FT_ERROR_MODULE( x ) ( (x) & 0xFF00U )
+
+#define FT_BOOL( x ) ( (FT_Bool)( x ) )
+
+FT_END_HEADER
+
+#endif /* __FTTYPES_H__ */
+
+
+/* END */
diff --git a/nx-X11/lib/font/FreeType/module/myftstdlib.h b/nx-X11/lib/font/FreeType/module/myftstdlib.h
new file mode 100644
index 000000000..dc9f8658f
--- /dev/null
+++ b/nx-X11/lib/font/FreeType/module/myftstdlib.h
@@ -0,0 +1,82 @@
+/* ftstdlib.h -- modified for XFree86. */
+/* $XFree86: xc/lib/font/FreeType/ftstdlib.h,v 1.5 2003/02/22 06:00:36 dawes Exp $ */
+#ifndef __MYFTSTDLIB_H__
+#define __MYFTSTDLIB_H__
+
+
+#ifndef FONTMODULE
+
+# include <ftstdlib.h>
+# ifndef ft_isdigit
+# define ft_isdigit isdigit
+# endif
+
+#else
+
+#ifndef __FTSTDLIB_H__
+#define __FTSTDLIB_H__
+/* we don't include limits.h */
+#define CHAR_BIT 8
+
+#include "Xmd.h"
+#define _XTYPEDEF_BOOL
+#include "Xdefs.h"
+#define DONT_DEFINE_WRAPPERS
+#define DEFINE_SETJMP_WRAPPERS
+#include "xf86_ansic.h"
+#undef DONT_DEFINE_WRAPPERS
+
+#ifndef offsetof
+#define offsetof(TYPE, MEMBER) ((xf86size_t)&((TYPE*)0)->MEMBER)
+#endif
+
+#define FT_UINT_MAX 4294967295U
+#ifdef LONG64
+#define FT_ULONG_MAX 18446744073709551615UL
+#else
+#define FT_ULONG_MAX 4294967295UL
+#endif
+
+#define ft_isalnum xf86isalnum
+#define ft_isupper xf86isupper
+#define ft_islower xf86islower
+#define ft_isxdigit xf86isxdigit
+/* works around a bug in freetype 2.1.8 */
+#ifndef isdigit
+#define isdigit xf86isdigit
+#endif
+#define ft_isdigit xf86isdigit
+
+#define ft_strlen xf86strlen
+#define ft_strcat xf86strcat
+#define ft_strrchr xf86strrchr
+#define ft_strcmp xf86strcmp
+#define ft_strncmp xf86strncmp
+#define ft_memcpy xf86memcpy
+#define ft_strcpy xf86strcpy
+#define ft_strncpy xf86strncpy
+#define ft_memset xf86memset
+#define ft_memmove xf86memmove
+#define ft_memcmp xf86memcmp
+
+#define ft_sprintf xf86sprintf
+
+#define ft_qsort xf86qsort
+#define ft_exit xf86exit
+
+#define ft_atoi xf86atoi
+
+#define ft_jmp_buf jmp_buf
+#define ft_setjmp setjmp
+#define ft_longjmp longjmp
+
+#endif /* __FTSTDLIB_H__ */
+#endif /* FONTMODULE */
+
+
+#include <stdarg.h>
+
+#endif /* __MYFTSTDLIB_H__ */
+
+
+/* END */