Warning: That file was not part of the compilation database. It may have many parsing errors.
1 | /* ************************************************************************** */ |
---|---|
2 | /* * * */ |
3 | /* * project : libmng * */ |
4 | /* * file : libmng_conf.h copyright (c) G.Juyn 2000-2004 * */ |
5 | /* * version : 1.0.9 * */ |
6 | /* * * */ |
7 | /* * purpose : main configuration file * */ |
8 | /* * * */ |
9 | /* * author : G.Juyn * */ |
10 | /* * * */ |
11 | /* * comment : The configuration file. Change this to include/exclude * */ |
12 | /* * the options you want or do not want in libmng. * */ |
13 | /* * * */ |
14 | /* * changes : 0.5.2 - 06/02/2000 - G.Juyn * */ |
15 | /* * - separated configuration-options into this file * */ |
16 | /* * - changed to most likely configuration (?) * */ |
17 | /* * 0.5.2 - 06/03/2000 - G.Juyn * */ |
18 | /* * - changed options to create a standard so-library * */ |
19 | /* * with everything enabled * */ |
20 | /* * 0.5.2 - 06/04/2000 - G.Juyn * */ |
21 | /* * - changed options to create a standard win32-dll * */ |
22 | /* * with everything enabled * */ |
23 | /* * * */ |
24 | /* * 0.9.2 - 08/05/2000 - G.Juyn * */ |
25 | /* * - changed file-prefixes * */ |
26 | /* * * */ |
27 | /* * 0.9.3 - 08/12/2000 - G.Juyn * */ |
28 | /* * - added workaround for faulty PhotoShop iCCP chunk * */ |
29 | /* * 0.9.3 - 09/16/2000 - G.Juyn * */ |
30 | /* * - removed trace-options from default SO/DLL builds * */ |
31 | /* * * */ |
32 | /* * 1.0.4 - 06/22/2002 - G.Juyn * */ |
33 | /* * - B526138 - returned IJGSRC6B calling convention to * */ |
34 | /* * default for MSVC * */ |
35 | /* * * */ |
36 | /* * 1.0.5 - 09/14/2002 - G.Juyn * */ |
37 | /* * - added event handling for dynamic MNG * */ |
38 | /* * - added 'supports' call to check function availability * */ |
39 | /* * * */ |
40 | /* * 1.0.6 - 06/22/2002 - G.R-P * */ |
41 | /* * - added MNG_NO_INCLUDE_JNG conditional * */ |
42 | /* * - added MNG_SKIPCHUNK_evNT conditional * */ |
43 | /* * 1.0.6 - 07/14/2002 - G.R-P * */ |
44 | /* * - added MNG_NO_SUPPORT_FUNCQUERY conditional * */ |
45 | /* * * */ |
46 | /* * 1.0.7 - 03/07/2004 - G.R-P * */ |
47 | /* * - added MNG_VERSION_QUERY_SUPPORT_ conditional * */ |
48 | /* * * */ |
49 | /* * 1.0.9 - 05/12/2004 - G.Juyn * */ |
50 | /* * - clearified MNG_BIGENDIAN_SUPPORTED conditional * */ |
51 | /* * - added MNG_LITTLEENDIAN_SUPPORTED conditional * */ |
52 | /* * * */ |
53 | /* ************************************************************************** */ |
54 | |
55 | |
56 | #if defined(__BORLANDC__) && defined(MNG_STRICT_ANSI) |
57 | #pragma option -A /* force ANSI-C */ |
58 | #endif |
59 | |
60 | #ifndef _libmng_conf_h_ |
61 | #define _libmng_conf_h_ |
62 | |
63 | #ifdef MNG_MOZILLA_CFG |
64 | #include "special\mozcfg\mozlibmngconf.h" |
65 | #endif |
66 | |
67 | /* ************************************************************************** */ |
68 | /* * * */ |
69 | /* * User-selectable compile-time options * */ |
70 | /* * * */ |
71 | /* ************************************************************************** */ |
72 | |
73 | /* enable exactly one(1) of the MNG-(sub)set selectors */ |
74 | /* use this to select which (sub)set of the MNG specification you wish |
75 | to support */ |
76 | /* generally you'll want full support as the library provides it automatically |
77 | for you! if you're really strung on memory-requirements you can opt |
78 | to enable less support (but it's just NOT a good idea!) */ |
79 | /* NOTE that this isn't actually implemented yet */ |
80 | |
81 | #if !defined(MNG_SUPPORT_FULL) && !defined(MNG_SUPPORT_LC) && !defined(MNG_SUPPORT_VLC) |
82 | #define MNG_SUPPORT_FULL |
83 | /* #define MNG_SUPPORT_LC */ |
84 | /* #define MNG_SUPPORT_VLC */ |
85 | #endif |
86 | |
87 | /* ************************************************************************** */ |
88 | |
89 | /* enable JPEG support if required */ |
90 | /* use this to enable the JNG support routines */ |
91 | /* this requires an external jpeg package; |
92 | currently only IJG's jpgsrc6b is supported! */ |
93 | /* NOTE that the IJG code can be either 8- or 12-bit (eg. not both); |
94 | so choose the one you've defined in jconfig.h; if you don't know what |
95 | the heck I'm talking about, just leave it at 8-bit support (thank you!) */ |
96 | |
97 | #ifndef MNG_NO_INCLUDE_JNG |
98 | #ifdef MNG_SUPPORT_FULL /* full support includes JNG */ |
99 | #define MNG_SUPPORT_IJG6B |
100 | #endif |
101 | |
102 | #ifndef MNG_SUPPORT_IJG6B |
103 | #if defined(MNG_BUILD_SO) || defined(MNG_USE_SO) || defined(MNG_BUILD_DLL) || defined(MNG_USE_DLL) |
104 | #define MNG_SUPPORT_IJG6B |
105 | #endif |
106 | #endif |
107 | |
108 | #if defined(MNG_SUPPORT_IJG6B) && !defined(MNG_SUPPORT_JPEG8) && !defined(MNG_SUPPORT_JPEG12) |
109 | #define MNG_SUPPORT_JPEG8 |
110 | /* #define MNG_SUPPORT_JPEG12 */ |
111 | #endif |
112 | |
113 | /* The following is required to export the IJG routines from the DLL in |
114 | the Windows-standard calling convention; |
115 | currently this only works for Borland C++ !!! */ |
116 | |
117 | #if defined(MNG_BUILD_DLL) || defined(MNG_USE_DLL) |
118 | #if defined(MNG_SUPPORT_IJG6B) && defined(__BORLANDC__) |
119 | #define MNG_DEFINE_JPEG_STDCALL |
120 | #endif |
121 | #endif |
122 | #endif |
123 | |
124 | /* ************************************************************************** */ |
125 | |
126 | /* enable required high-level functions */ |
127 | /* use this to select the high-level functions you require */ |
128 | /* if you only need to display a MNG, disable write support! */ |
129 | /* if you only need to examine a MNG, disable write & display support! */ |
130 | /* if you only need to copy a MNG, disable display support! */ |
131 | /* if you only need to create a MNG, disable read & display support! */ |
132 | /* NOTE that turning all options off will be very unuseful! */ |
133 | |
134 | #if !defined(MNG_SUPPORT_READ) && !defined(MNG_SUPPORT_WRITE) && !defined(MNG_SUPPORT_DISPLAY) |
135 | #define MNG_SUPPORT_READ |
136 | #if defined(MNG_BUILD_SO) || defined(MNG_USE_SO) || defined(MNG_BUILD_DLL) || defined(MNG_USE_DLL) |
137 | #define MNG_SUPPORT_WRITE |
138 | #endif |
139 | #define MNG_SUPPORT_DISPLAY |
140 | #endif |
141 | |
142 | /* ************************************************************************** */ |
143 | |
144 | /* enable chunk access functions */ |
145 | /* use this to select whether you need access to the individual chunks */ |
146 | /* useful if you want to examine a read MNG (you'll also need MNG_STORE_CHUNKS !)*/ |
147 | /* required if you need to create & write a new MNG! */ |
148 | |
149 | #ifndef MNG_ACCESS_CHUNKS |
150 | #if defined(MNG_BUILD_SO) || defined(MNG_USE_SO) || defined(MNG_BUILD_DLL) || defined(MNG_USE_DLL) |
151 | #define MNG_ACCESS_CHUNKS |
152 | #endif |
153 | #endif |
154 | |
155 | /* ************************************************************************** */ |
156 | |
157 | /* enable exactly one(1) of the color-management functionality selectors */ |
158 | /* use this to select the level of automatic color support */ |
159 | /* MNG_FULL_CMS requires the lcms (little cms) external package ! */ |
160 | /* if you want your own app (or the OS) to handle color-management |
161 | select MNG_APP_CMS */ |
162 | |
163 | #define MNG_GAMMA_ONLY |
164 | /* #define MNG_FULL_CMS */ |
165 | /* #define MNG_APP_CMS */ |
166 | |
167 | /* ************************************************************************** */ |
168 | |
169 | /* enable automatic dithering */ |
170 | /* use this if you need dithering support to convert high-resolution |
171 | images to a low-resolution output-device */ |
172 | /* NOTE that this is not supported yet */ |
173 | |
174 | /* #define MNG_AUTO_DITHER */ |
175 | |
176 | /* ************************************************************************** */ |
177 | |
178 | /* enable whether chunks should be stored for reference later */ |
179 | /* use this if you need to examine the chunks of a MNG you have read, |
180 | or (re-)write a MNG you have read */ |
181 | /* turn this off if you want to reduce memory-consumption */ |
182 | |
183 | #ifndef MNG_STORE_CHUNKS |
184 | #if defined(MNG_BUILD_SO) || defined(MNG_USE_SO) || defined(MNG_BUILD_DLL) || defined(MNG_USE_DLL) |
185 | #define MNG_STORE_CHUNKS |
186 | #endif |
187 | #endif |
188 | |
189 | /* ************************************************************************** */ |
190 | |
191 | /* enable internal memory management (if your compiler supports it) */ |
192 | /* use this if your compiler supports the 'standard' memory functions |
193 | (calloc & free), and you want the library to use these functions and not |
194 | bother your app with memory-callbacks */ |
195 | |
196 | /* #define MNG_INTERNAL_MEMMNGMT */ |
197 | |
198 | /* ************************************************************************** */ |
199 | |
200 | /* enable internal tracing-functionality (manual debugging purposes) */ |
201 | /* use this if you have trouble location bugs or problems */ |
202 | /* NOTE that you'll need to specify the trace callback function! */ |
203 | |
204 | /* #define MNG_SUPPORT_TRACE */ |
205 | |
206 | /* ************************************************************************** */ |
207 | |
208 | /* enable extended error- and trace-telltaling */ |
209 | /* use this if you need explanatory messages with errors and/or tracing */ |
210 | |
211 | #if !defined(MNG_ERROR_TELLTALE) && !defined(MNG_TRACE_TELLTALE) |
212 | #if defined(MNG_BUILD_SO) || defined(MNG_USE_SO) || defined(MNG_BUILD_DLL) || defined(MNG_USE_DLL) |
213 | #define MNG_ERROR_TELLTALE |
214 | #define MNG_TRACE_TELLTALE |
215 | #endif |
216 | #endif |
217 | |
218 | /* ************************************************************************** */ |
219 | |
220 | /* enable BIG/LITTLE endian optimizations */ |
221 | /* enable BIG if you're on an architecture that supports big-endian reads |
222 | and writes that aren't word-aligned */ |
223 | /* according to reliable sources this only works for PowerPC (bigendian mode) |
224 | and 680x0 */ |
225 | /* enable LITTLE if you're on an architecture that supports little-endian */ |
226 | /* when in doubt leave both off !!! */ |
227 | |
228 | /* #define MNG_BIGENDIAN_SUPPORTED */ |
229 | /* #define MNG_LITTLEENDIAN_SUPPORTED */ |
230 | |
231 | /* ************************************************************************** */ |
232 | /* enable 'version' functions */ |
233 | #if !defined(MNG_VERSION_QUERY_SUPPORT) && \ |
234 | !defined(MNG_NO_VERSION_QUERY_SUPPORT) |
235 | #define MNG_VERSION_QUERY_SUPPORT |
236 | #endif |
237 | |
238 | /* enable 'supports' function */ |
239 | /* use this if you need to query the availability of functions at runtime; |
240 | useful for apps that dynamically load the library and that need specific |
241 | functions */ |
242 | |
243 | #if !defined(MNG_NO_SUPPORT_FUNCQUERY) && !defined(MNG_SUPPORT_FUNCQUERY) |
244 | #if defined(MNG_BUILD_SO) || defined(MNG_USE_SO) || \ |
245 | defined(MNG_BUILD_DLL) || defined(MNG_USE_DLL) |
246 | #define MNG_SUPPORT_FUNCQUERY |
247 | #endif |
248 | #endif |
249 | |
250 | /* ************************************************************************** */ |
251 | |
252 | /* enable dynamic MNG features */ |
253 | /* use this if you would like to have dynamic support for specifically |
254 | designed MNGs; eg. this is useful for 'rollover' effects such as common |
255 | on the world wide web */ |
256 | |
257 | #ifndef MNG_SUPPORT_DYNAMICMNG |
258 | #if defined(MNG_BUILD_SO) || defined(MNG_USE_SO) || defined(MNG_BUILD_DLL) || defined(MNG_USE_DLL) |
259 | #define MNG_SUPPORT_DYNAMICMNG |
260 | #endif |
261 | #endif |
262 | #ifndef MNG_SUPPORT_DYNAMICMNG |
263 | #ifndef MNG_SKIPCHUNK_evNT |
264 | #define MNG_SKIPCHUNK_evNT |
265 | #endif |
266 | #endif |
267 | |
268 | #ifdef MNG_INCLUDE_JNG |
269 | #ifndef MNG_NO_ACCESS_JPEG |
270 | #ifndef MNG_ACCESS_JPEG |
271 | #define MNG_ACCESS_JPEG |
272 | #endif |
273 | #endif |
274 | #endif |
275 | |
276 | #ifdef MNG_INCLUDE_ZLIB |
277 | #ifndef MNG_NO_ACCESS_ZLIB |
278 | #ifndef MNG_ACCESS_ZLIB |
279 | #define MNG_ACCESS_ZLIB |
280 | #endif |
281 | #endif |
282 | #endif |
283 | |
284 | /* ************************************************************************** */ |
285 | /* * * */ |
286 | /* * End of user-selectable compile-time options * */ |
287 | /* * * */ |
288 | /* ************************************************************************** */ |
289 | |
290 | #endif /* _libmng_conf_h_ */ |
291 | |
292 | /* ************************************************************************** */ |
293 | /* * end of file * */ |
294 | /* ************************************************************************** */ |
295 | |
296 |
Warning: That file was not part of the compilation database. It may have many parsing errors.