]>
Commit | Line | Data |
---|---|---|
1 | /* ftconfig.h. Generated automatically by configure. */ | |
2 | /***************************************************************************/ | |
3 | /* */ | |
4 | /* ftconfig.in */ | |
5 | /* */ | |
6 | /* UNIX-specific configuration file (specification only). */ | |
7 | /* */ | |
8 | /* Copyright 1996-2000 by */ | |
9 | /* David Turner, Robert Wilhelm, and Werner Lemberg. */ | |
10 | /* */ | |
11 | /* This file is part of the FreeType project, and may only be used, */ | |
12 | /* modified, and distributed under the terms of the FreeType project */ | |
13 | /* license, LICENSE.TXT. By continuing to use, modify, or distribute */ | |
14 | /* this file you indicate that you have read the license and */ | |
15 | /* understand and accept it fully. */ | |
16 | /* */ | |
17 | /***************************************************************************/ | |
18 | ||
19 | ||
20 | /*************************************************************************/ | |
21 | /* */ | |
22 | /* This header file contains a number of macro definitions that are used */ | |
23 | /* by the rest of the engine. Most of the macros here are automatically */ | |
24 | /* determined at compile time, and you should not need to change it to */ | |
25 | /* port FreeType, except to compile the library with a non-ANSI */ | |
26 | /* compiler. */ | |
27 | /* */ | |
28 | /* Note however that if some specific modifications are needed, we */ | |
29 | /* advise you to place a modified copy in your build directory. */ | |
30 | /* */ | |
31 | /* The build directory is usually `freetype/builds/<system>', and */ | |
32 | /* contains system-specific files that are always included first when */ | |
33 | /* building the library. */ | |
34 | /* */ | |
35 | /*************************************************************************/ | |
36 | ||
37 | ||
38 | #ifndef FTCONFIG_H | |
39 | #define FTCONFIG_H | |
40 | ||
41 | ||
42 | /* Include the header file containing all developer build options */ | |
43 | #include <freetype/config/ftoption.h> | |
44 | ||
45 | ||
46 | /*************************************************************************/ | |
47 | /* */ | |
48 | /* PLATFORM-SPECIFIC CONFIGURATION MACROS */ | |
49 | /* */ | |
50 | /* These macros can be toggled to suit a specific system. The current */ | |
51 | /* ones are defaults used to compile FreeType in an ANSI C environment */ | |
52 | /* (16bit compilers are also supported). Copy this file to your own */ | |
53 | /* `freetype/builds/<system>' directory, and edit it to port the engine. */ | |
54 | /* */ | |
55 | /*************************************************************************/ | |
56 | ||
57 | ||
58 | #include "wx/setup.h" | |
59 | ||
60 | #define FT_SIZEOF_INT SIZEOF_INT | |
61 | #define FT_SIZEOF_LONG SIZEOF_LONG | |
62 | ||
63 | ||
64 | /* Preferred alignment of data */ | |
65 | #define FT_ALIGNMENT 8 | |
66 | ||
67 | ||
68 | /* UNUSED is a macro used to indicate that a given parameter is not used */ | |
69 | /* -- this is only used to get rid of unpleasant compiler warnings */ | |
70 | #ifndef FT_UNUSED | |
71 | #define FT_UNUSED( arg ) ( (arg) = (arg) ) | |
72 | #endif | |
73 | ||
74 | ||
75 | /*************************************************************************/ | |
76 | /* */ | |
77 | /* AUTOMATIC CONFIGURATION MACROS */ | |
78 | /* */ | |
79 | /* These macros are computed from the ones defined above. Don't touch */ | |
80 | /* their definition, unless you know precisely what you are doing. No */ | |
81 | /* porter should need to mess with them. */ | |
82 | /* */ | |
83 | /*************************************************************************/ | |
84 | ||
85 | ||
86 | /*************************************************************************/ | |
87 | /* */ | |
88 | /* IntN types */ | |
89 | /* */ | |
90 | /* Used to guarantee the size of some specific integers. */ | |
91 | /* */ | |
92 | typedef signed short FT_Int16; | |
93 | typedef unsigned short FT_UInt16; | |
94 | ||
95 | #if FT_SIZEOF_INT == 4 | |
96 | ||
97 | typedef signed int FT_Int32; | |
98 | typedef unsigned int FT_UInt32; | |
99 | ||
100 | #elif FT_SIZEOF_LONG == 4 | |
101 | ||
102 | typedef signed long FT_Int32; | |
103 | typedef unsigned long FT_UInt32; | |
104 | ||
105 | #else | |
106 | #error "no 32bit type found -- please check your configuration files" | |
107 | #endif | |
108 | ||
109 | #if FT_SIZEOF_LONG == 8 | |
110 | ||
111 | /* FT_LONG64 must be defined if a 64-bit type is available */ | |
112 | #define FT_LONG64 | |
113 | #define FT_INT64 long | |
114 | ||
115 | #else | |
116 | ||
117 | ||
118 | /*************************************************************************/ | |
119 | /* */ | |
120 | /* Many compilers provide the non-ANSI `long long' 64-bit type. You can */ | |
121 | /* activate it by defining the FTCALC_USE_LONG_LONG macro in */ | |
122 | /* `ftoption.h'. */ | |
123 | /* */ | |
124 | /* Note that this will produce many -ansi warnings during library */ | |
125 | /* compilation, and that in many cases, the generated code will be */ | |
126 | /* neither smaller nor faster! */ | |
127 | /* */ | |
128 | #ifdef FTCALC_USE_LONG_LONG | |
129 | ||
130 | #define FT_LONG64 | |
131 | #define FT_INT64 long long | |
132 | ||
133 | #endif /* FTCALC_USE_LONG_LONG */ | |
134 | #endif /* FT_SIZEOF_LONG == 8 */ | |
135 | ||
136 | ||
137 | #ifdef FT_MAKE_OPTION_SINGLE_OBJECT | |
138 | #define LOCAL_DEF static | |
139 | #define LOCAL_FUNC static | |
140 | #else | |
141 | #define LOCAL_DEF extern | |
142 | #define LOCAL_FUNC /* nothing */ | |
143 | #endif | |
144 | ||
145 | #ifdef FT_MAKE_OPTION_SINGLE_LIBRARY_OBJECT | |
146 | #define BASE_DEF( x ) static x | |
147 | #define BASE_FUNC( x ) static x | |
148 | #else | |
149 | #define BASE_DEF( x ) extern x | |
150 | #define BASE_FUNC( x ) extern x | |
151 | #endif | |
152 | ||
153 | #ifndef FT_EXPORT_DEF | |
154 | #define FT_EXPORT_DEF( x ) extern x | |
155 | #endif | |
156 | ||
157 | #ifndef FT_EXPORT_FUNC | |
158 | #define FT_EXPORT_FUNC( x ) extern x | |
159 | #endif | |
160 | ||
161 | #ifndef FT_EXPORT_VAR | |
162 | #define FT_EXPORT_VAR( x ) extern x | |
163 | #endif | |
164 | ||
165 | #endif /* FTCONFIG_H */ | |
166 | ||
167 | ||
168 | /* END */ |