ref: c713d924d8107d8c2ccd0e27832a09992397eeae
parent: a9f2ddd3dc0af3e10aca8287671cf4a5a922a48f
author: Werner Lemberg <[email protected]>
date: Tue Aug 1 09:17:04 EDT 2000
Added #ifdef's for C++ to all header files.
--- a/builds/unix/ftconfig.in
+++ b/builds/unix/ftconfig.in
@@ -42,6 +42,11 @@
#include <freetype/config/ftoption.h>
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
/*************************************************************************/
/* */
/* PLATFORM-SPECIFIC CONFIGURATION MACROS */
@@ -165,6 +170,12 @@
#ifndef FT_EXPORT_VAR
#define FT_EXPORT_VAR( x ) extern x
#endif
+
+
+#ifdef __cplusplus
+ }
+#endif
+
#endif /* FTCONFIG_H */
--- a/include/freetype/config/ftconfig.h
+++ b/include/freetype/config/ftconfig.h
@@ -44,6 +44,11 @@
#include <freetype/config/ftoption.h>
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
/*************************************************************************/
/* */
/* PLATFORM-SPECIFIC CONFIGURATION MACROS */
@@ -180,6 +185,11 @@
#ifndef FT_EXPORT_VAR
#define FT_EXPORT_VAR( x ) extern x
#endif
+
+#ifdef __cplusplus
+ }
+#endif
+
#endif /* FTCONFIG_H */
--- a/include/freetype/config/ftoption.h
+++ b/include/freetype/config/ftoption.h
@@ -20,6 +20,11 @@
#define FTOPTION_H
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
/*************************************************************************/
/* */
/* USER-SELECTABLE CONFIGURATION MACROS */
@@ -387,6 +392,11 @@
/* driver. */
/* */
#undef T1_CONFIG_OPTION_NO_MM_SUPPORT
+
+
+#ifdef __cplusplus
+ }
+#endif
#endif /* FTOPTION_H */
--- a/include/freetype/fterrors.h
+++ b/include/freetype/fterrors.h
@@ -44,6 +44,11 @@
#define FTERRORS_H
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
#ifndef FT_ERRORDEF
#define FT_ERRORDEF( e, v, s ) e = v,
@@ -158,6 +163,11 @@
#undef FT_ERROR_START_LIST
#undef FT_ERROR_END_LIST
#undef FT_ERRORDEF
+
+
+#ifdef __cplusplus
+ }
+#endif
#endif /* FTERRORS_H */
--- a/include/freetype/ftmac.h
+++ b/include/freetype/ftmac.h
@@ -25,6 +25,11 @@
#define FT_MAC_H
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
/*************************************************************************/
/* */
/* <Function> */
@@ -59,6 +64,11 @@
Handle fond,
FT_Long face_index,
FT_Face* aface );
+
+
+#ifdef __cplusplus
+ }
+#endif
#endif /* FT_MAC_H */
--- a/include/freetype/ftnames.h
+++ b/include/freetype/ftnames.h
@@ -26,6 +26,11 @@
#include <freetype/freetype.h>
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
typedef struct FT_SfntName_
{
FT_UShort platform_id;
@@ -45,6 +50,11 @@
FT_UInt index,
FT_SfntName* aname );
+
+#ifdef __cplusplus
+ }
+#endif
+
#endif /* FTNAMES_H */
--- a/include/freetype/ftsystem.h
+++ b/include/freetype/ftsystem.h
@@ -20,6 +20,11 @@
#define FTSYSTEM_H
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
/*************************************************************************/
/* */
/* M E M O R Y M A N A G E M E N T */
@@ -93,6 +98,11 @@
unsigned char* cursor;
unsigned char* limit;
};
+
+
+#ifdef __cplusplus
+ }
+#endif
#endif /* FTSYSTEM_H */
--- a/include/freetype/fttypes.h
+++ b/include/freetype/fttypes.h
@@ -24,6 +24,11 @@
#include <freetype/ftimage.h>
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
/*************************************************************************/
/* */
/* <Type> */
@@ -392,6 +397,11 @@
#define FT_IS_EMPTY( list ) ( (list).head == 0 )
+
+
+#ifdef __cplusplus
+ }
+#endif
#endif /* FTTYPES_H */
--- a/include/freetype/internal/autohint.h
+++ b/include/freetype/internal/autohint.h
@@ -73,6 +73,11 @@
#include <freetype/freetype.h>
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
typedef struct FT_AutoHinterRec_ *FT_AutoHinter;
@@ -187,6 +192,11 @@
FT_AutoHinter_Done_Global_Func done_global_hints;
} FT_AutoHinter_Interface;
+
+
+#ifdef __cplusplus
+ }
+#endif
#endif /* AUTOHINT_H */
--- a/include/freetype/internal/ftdriver.h
+++ b/include/freetype/internal/ftdriver.h
@@ -24,6 +24,11 @@
#include <freetype/config/ftconfig.h>
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
typedef FT_Error (*FTDriver_initFace)( FT_Stream stream,
FT_Face face,
FT_Int typeface_index,
@@ -174,6 +179,11 @@
FTDriver_getAdvances get_advances;
} FT_Driver_Class;
+
+
+#ifdef __cplusplus
+ }
+#endif
#endif /* FTDRIVER_H */
--- a/include/freetype/internal/ftmemory.h
+++ b/include/freetype/internal/ftmemory.h
@@ -24,6 +24,11 @@
#include <freetype/fttypes.h>
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
/*************************************************************************/
/* */
/* <Macro> */
@@ -119,6 +124,11 @@
(_count_)*sizeof ( _type_ ) ) )
#define FREE( _pointer_ ) FT_Free( memory, (void**)&(_pointer_) )
+
+
+#ifdef __cplusplus
+ }
+#endif
#endif /* FTMEMORY_H */
--- a/include/freetype/internal/psnames.h
+++ b/include/freetype/internal/psnames.h
@@ -24,6 +24,11 @@
#include <freetype/freetype.h>
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
/*************************************************************************/
/* */
/* <FuncType> */
@@ -212,6 +217,11 @@
const unsigned short* adobe_expert_encoding;
} PSNames_Interface;
+
+
+#ifdef __cplusplus
+ }
+#endif
#endif /* PSNAMES_H */
--- a/include/freetype/internal/sfnt.h
+++ b/include/freetype/internal/sfnt.h
@@ -25,6 +25,11 @@
#include <freetype/internal/tttypes.h>
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
/*************************************************************************/
/* */
/* <FuncType> */
@@ -484,6 +489,11 @@
TT_CharMap_Free_Func free_charmap;
} SFNT_Interface;
+
+
+#ifdef __cplusplus
+ }
+#endif
#endif /* SFNT_H */
--- a/include/freetype/internal/t1errors.h
+++ b/include/freetype/internal/t1errors.h
@@ -20,6 +20,11 @@
#define T1ERRORS_H
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
/************************ error codes declaration **************/
/* The error codes are grouped into `classes' used to indicate the */
@@ -59,6 +64,11 @@
#define T1_Err_Syntax_Error FT_Err_Invalid_File_Format
#define T1_Err_Stack_Underflow FT_Err_Invalid_File_Format
#define T1_Err_Stack_Overflow FT_Err_Invalid_File_Format
+
+
+#ifdef __cplusplus
+ }
+#endif
#endif /* T1ERRORS_H */
--- a/include/freetype/internal/t1types.h
+++ b/include/freetype/internal/t1types.h
@@ -25,6 +25,11 @@
#include <freetype/internal/psnames.h>
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
/*************************************************************************/
/*************************************************************************/
/*************************************************************************/
@@ -180,6 +185,11 @@
CID_Subrs* subrs;
} CID_FaceRec;
+
+
+#ifdef __cplusplus
+ }
+#endif
#endif /* T1TYPES_H */
--- a/include/freetype/internal/t2errors.h
+++ b/include/freetype/internal/t2errors.h
@@ -20,6 +20,11 @@
#define T2ERRORS_H
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
/*************************************************************************/
/* */
/* Error codes declaration */
@@ -113,6 +118,11 @@
#define T2_Err_Invalid_Vert_Metrics 0x543
#define T2_Err_Could_Not_Find_Context 0x550
+
+
+#ifdef __cplusplus
+ }
+#endif
#endif /* T2ERRORS_H */
--- a/include/freetype/internal/t2types.h
+++ b/include/freetype/internal/t2types.h
@@ -24,6 +24,11 @@
#include <freetype/freetype.h>
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
/*************************************************************************/
/* */
/* <Struct> */
@@ -210,6 +215,11 @@
CFF_FD_Select fd_select;
} CFF_Font;
+
+
+#ifdef __cplusplus
+ }
+#endif
#endif /* T2TYPES_H */
--- a/include/freetype/internal/tterrors.h
+++ b/include/freetype/internal/tterrors.h
@@ -20,6 +20,11 @@
#define TTERRORS_H
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
/*************************************************************************/
/* */
/* Error codes declaration */
@@ -113,6 +118,11 @@
#define TT_Err_Invalid_Vert_Metrics 0x443
#define TT_Err_Could_Not_Find_Context 0x450
+
+
+#ifdef __cplusplus
+ }
+#endif
#endif /* TTERRORS_H */
--- a/include/freetype/internal/tttypes.h
+++ b/include/freetype/internal/tttypes.h
@@ -24,6 +24,11 @@
#include <freetype/tttables.h>
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
/*************************************************************************/
/*************************************************************************/
/*************************************************************************/
@@ -1574,6 +1579,11 @@
void* other;
};
+
+
+#ifdef __cplusplus
+ }
+#endif
#endif /* TTTYPES_H */
--- a/include/freetype/t1tables.h
+++ b/include/freetype/t1tables.h
@@ -24,6 +24,11 @@
#include <freetype/freetype.h>
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
/* Note that we separate font data in T1_FontInfo and T1_Private */
/* structures in order to support Multiple Master fonts. */
@@ -227,6 +232,11 @@
FT_ULong data_offset;
} CID_Info;
+
+
+#ifdef __cplusplus
+ }
+#endif
#endif /* T1TABLES_H */
--- a/include/freetype/ttnameid.h
+++ b/include/freetype/ttnameid.h
@@ -20,6 +20,11 @@
#define TTNAMEID_H
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
/*************************************************************************/
/* */
/* Possible values for the `platform' identifier code in the name */
@@ -690,6 +695,11 @@
#endif /* !HAVE_LIMIT_ON_IDENTS */
+
+
+#ifdef __cplusplus
+ }
+#endif
#endif /* TTNAMEID_H */
--- a/include/freetype/tttags.h
+++ b/include/freetype/tttags.h
@@ -23,6 +23,11 @@
#include <freetype/freetype.h> /* for MAKE_TT_TAG() */
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
#define TTAG_cmap FT_MAKE_TAG( 'c', 'm', 'a', 'p' )
#define TTAG_cvt FT_MAKE_TAG( 'c', 'v', 't', ' ' )
#define TTAG_CFF FT_MAKE_TAG( 'C', 'F', 'F', ' ' )
@@ -59,6 +64,11 @@
#define TTAG_VDMX FT_MAKE_TAG( 'V', 'D', 'M', 'X' )
#define TTAG_vhea FT_MAKE_TAG( 'v', 'h', 'e', 'a' )
#define TTAG_vmtx FT_MAKE_TAG( 'v', 'm', 't', 'x' )
+
+#ifdef __cplusplus
+ }
+#endif
+
#endif /* TTAGS_H */
--- a/src/autohint/ahangles.h
+++ b/src/autohint/ahangles.h
@@ -38,6 +38,11 @@
#include <freetype/internal/ftobjs.h>
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
/* PI expressed in ah_angles -- we don't really need an important */
/* precision, so 256 should be enough */
#define AH_PI 256
@@ -55,6 +60,11 @@
LOCAL_DEF
AH_Angle ah_angle( FT_Vector* v );
+
+
+#ifdef __cplusplus
+ }
+#endif
#endif /* AHANGLES_H */
--- a/src/autohint/ahglobal.h
+++ b/src/autohint/ahglobal.h
@@ -37,6 +37,11 @@
#include <freetype/internal/ftobjs.h> /* for LOCAL_DEF/LOCAL_FUNC */
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
#define AH_IS_TOP_BLUE( b ) ( (b) == ah_blue_capital_top || \
(b) == ah_blue_small_top )
@@ -44,6 +49,11 @@
/* compute global metrics automatically */
LOCAL_DEF
FT_Error ah_hinter_compute_globals( AH_Hinter* hinter );
+
+
+#ifdef __cplusplus
+ }
+#endif
#endif /* AHGLOBAL_H */
--- a/src/autohint/ahglyph.h
+++ b/src/autohint/ahglyph.h
@@ -34,6 +34,11 @@
#endif
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
typedef enum AH_UV_
{
ah_uv_fxy,
@@ -85,6 +90,11 @@
LOCAL_DEF
void ah_outline_done( AH_Outline* outline );
+
+
+#ifdef __cplusplus
+ }
+#endif
#endif /* AHGLYPH_H */
--- a/src/autohint/ahhint.h
+++ b/src/autohint/ahhint.h
@@ -34,6 +34,11 @@
#endif
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
#define AH_HINT_DEFAULT 0
#define AH_HINT_NO_ALIGNMENT 1
#define AH_HINT_NO_HORZ_EDGES 0x20000L
@@ -64,6 +69,11 @@
void ah_hinter_done_global_hints( AH_Hinter* hinter,
void* global_hints );
+
+
+#ifdef __cplusplus
+ }
+#endif
#endif /* AHHINT_H */
--- a/src/autohint/ahloader.h
+++ b/src/autohint/ahloader.h
@@ -36,6 +36,11 @@
#define AHLOADER_H
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
#ifdef _STANDALONE_
typedef struct AH_GlyphLoad_
@@ -117,6 +122,12 @@
#define ah_loader_copy_points FT_GlyphLoader_Copy_Points
#endif /* _STANDALONE_ */
+
+
+#ifdef __cplusplus
+ }
+#endif
+
#endif /* AHLOADER_H */
--- a/src/autohint/ahmodule.h
+++ b/src/autohint/ahmodule.h
@@ -24,7 +24,18 @@
#include <freetype/ftmodule.h>
+
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
FT_EXPORT_VAR( const FT_Module_Class ) autohint_module_class;
+
+#ifdef __cplusplus
+ }
+#endif
+
#endif /* AHMODULE_H */
--- a/src/autohint/ahoptim.h
+++ b/src/autohint/ahoptim.h
@@ -34,6 +34,11 @@
#endif
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
/* the maximal number of stem configurations to record */
/* during optimization */
#define AH_MAX_CONFIGS 8
@@ -128,6 +133,11 @@
/* release the optimization data */
void AH_Optimizer_Done( AH_Optimizer* optimizer );
+
+
+#ifdef __cplusplus
+ }
+#endif
#endif /* AHOPTIM_H */
--- a/src/autohint/ahtypes.h
+++ b/src/autohint/ahtypes.h
@@ -54,6 +54,11 @@
#endif
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
/*************************************************************************/
/*************************************************************************/
/*************************************************************************/
@@ -484,6 +489,11 @@
FT_Vector pp2;
} AH_Hinter;
+
+
+#ifdef __cplusplus
+ }
+#endif
#endif /* AHTYPES_H */
--- a/src/cff/t2driver.h
+++ b/src/cff/t2driver.h
@@ -21,7 +21,17 @@
#include <freetype/internal/ftdriver.h>
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
FT_EXPORT_VAR( const FT_Driver_Class ) cff_driver_class;
+
+
+#ifdef __cplusplus
+ }
+#endif
#endif /* T2DRIVER_H */
--- a/src/cid/cidriver.h
+++ b/src/cid/cidriver.h
@@ -21,7 +21,17 @@
#include <freetype/internal/ftdriver.h>
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
FT_EXPORT_VAR( const FT_Driver_Class ) t1cid_driver_class;
+
+#ifdef __cplusplus
+ }
+#endif
+
#endif /* CIDRIVER_H */
--- a/src/psnames/psmodule.h
+++ b/src/psnames/psmodule.h
@@ -21,7 +21,18 @@
#include <freetype/ftmodule.h>
+
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
FT_EXPORT_VAR( const FT_Module_Class ) psnames_module_class;
+
+#ifdef __cplusplus
+ }
+#endif
+
#endif /* PSDRIVER_H */
--- a/src/raster1/ftrend1.h
+++ b/src/raster1/ftrend1.h
@@ -19,9 +19,15 @@
#ifndef FTREND1_H
#define FTREND1_H
+
#include <freetype/ftrender.h>
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
FT_EXPORT_VAR( const FT_Renderer_Class ) ft_raster1_renderer_class;
/* this renderer is _NOT_ part of the default modules, you'll need */
@@ -29,6 +35,11 @@
/* used for backwards-compatibility with FT 1.x anyway. */
/* */
FT_EXPORT_VAR( const FT_Renderer_Class ) ft_raster5_renderer_class;
+
+
+#ifdef __cplusplus
+ }
+#endif
#endif /* FTREND1_H */
--- a/src/sfnt/sfdriver.h
+++ b/src/sfnt/sfdriver.h
@@ -21,7 +21,18 @@
#include <freetype/ftmodule.h>
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
FT_EXPORT_VAR( const FT_Module_Class ) sfnt_module_class;
+
+
+#ifdef __cplusplus
+ }
+#endif
+
#endif /* SFDRIVER_H */
--- a/src/smooth/ftsmooth.h
+++ b/src/smooth/ftsmooth.h
@@ -21,6 +21,12 @@
#include <freetype/ftrender.h>
+
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
#ifndef FT_CONFIG_OPTION_NO_STD_RASTER
FT_EXPORT_VAR( const FT_Renderer_Class ) ft_std_renderer_class;
#endif
@@ -28,6 +34,11 @@
#ifndef FT_CONFIG_OPTION_NO_SMOOTH_RASTER
FT_EXPORT_VAR( const FT_Renderer_Class ) ft_smooth_renderer_class;
#endif
+
+#ifdef __cplusplus
+ }
+#endif
+
#endif /* FTSMOOTH_H */
--- a/src/truetype/ttdriver.h
+++ b/src/truetype/ttdriver.h
@@ -22,7 +22,17 @@
#include <freetype/internal/ftdriver.h>
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
FT_EXPORT_VAR( const FT_Driver_Class ) tt_driver_class;
+
+
+#ifdef __cplusplus
+ }
+#endif
#endif /* TTDRIVER_H */
--- a/src/type1/t1driver.h
+++ b/src/type1/t1driver.h
@@ -21,7 +21,17 @@
#include <freetype/internal/ftdriver.h>
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
FT_EXPORT_VAR( const FT_Driver_Class ) t1_driver_class;
+
+
+#ifdef __cplusplus
+ }
+#endif
#endif /* T1DRIVER_H */
--- a/src/type1z/z1driver.h
+++ b/src/type1z/z1driver.h
@@ -21,7 +21,17 @@
#include <freetype/internal/ftdriver.h>
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
FT_EXPORT_VAR( const FT_Driver_Class ) t1_driver_class;
+
+#ifdef __cplusplus
+ }
+#endif
+
#endif /* Z1DRIVER_H */
--- a/src/winfonts/winfnt.h
+++ b/src/winfonts/winfnt.h
@@ -22,6 +22,11 @@
#include <freetype/internal/ftdriver.h>
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+
typedef struct WinMZ_Header_
{
FT_UShort magic;
@@ -142,6 +147,11 @@
FT_EXPORT_VAR( const FT_Driver_Class ) winfnt_driver_class;
+
+
+#ifdef __cplusplus
+ }
+#endif
#endif /* WINFNT_H */