1 /* libtiff/tiffconf.h.  Generated by configure.  */
2 /*
3   Configuration defines for installed libtiff.
4   This file maintained for backward compatibility. Do not use definitions
5   from this file in your programs.
6 */
7 #ifndef _TIFFCONF_
8 #define _TIFFCONF_
9 
10 #include "build/build_config.h"
11 #include "core/fxcrt/fx_system.h"
12 
13 //NOTE: The tiff codec requires an ANSI C compiler environment for building and
14 //    presumes an ANSI C environment for use.
15 
16 # define HAVE_SYS_TYPES_H 1
17 # define HAVE_FCNTL_H 1
18 
19 /* Compatibility stuff. */
20 
21 /* Define to 1 if you have the <assert.h> header file. */
22 #define HAVE_ASSERT_H 1
23 
24 /* Define as 0 or 1 according to the floating point format suported by the
25    machine */
26 #define HAVE_IEEEFP 1
27 
28 /* Define to 1 if you have the <string.h> header file. */
29 //#define HAVE_STRING_H 1
30 //fx_system.h already include the string.h in ANSIC
31 
32 /* Define to 1 if you have the <search.h> header file. */
33 #if defined(OS_WIN)
34 // search.h is always available in VS 2015 and above, and may be
35 // available in earlier versions.
36 #define HAVE_SEARCH_H 1
37 #endif
38 
39 /* The size of a `int'. */
40 /* According typedef int  int32_t; in the fx_system.h*/
41 #define SIZEOF_INT 4
42 
43 /* Sunliang.Liu 20110325. We should config the correct long size for tif
44    fax4decode optimize in tif_fax3.c  -- Linux64 decode issue.
45    TESTDOC: Bug #23661 - z1.tif. */
46 #if _FX_CPU_ == _FX_X64_ || _FX_CPU_ == _FX_IA64_
47 /* The size of `unsigned long', as computed by sizeof. */
48 #define SIZEOF_UNSIGNED_LONG 8
49 #else
50 #define SIZEOF_UNSIGNED_LONG 4
51 #endif
52 
53 /* The size of void*. */
54 #ifdef __LP64__
55 #define SIZEOF_VOIDP 8
56 #else
57 #define SIZEOF_VOIDP 4
58 #endif
59 
60 /* Signed 8-bit type */
61 #define TIFF_INT8_T signed char
62 
63 /* Unsigned 8-bit type */
64 #define TIFF_UINT8_T unsigned char
65 
66 /* Signed 16-bit type */
67 #define TIFF_INT16_T signed short
68 
69 /* Unsigned 16-bit type */
70 #define TIFF_UINT16_T unsigned short
71 
72 /* Signed 32-bit type */
73 #define TIFF_INT32_T signed int
74 
75 /* Unsigned 32-bit type */
76 #define TIFF_UINT32_T unsigned int
77 
78 /* Signed 32-bit type formatter */
79 #define TIFF_INT32_FORMAT "%d"
80 
81 /* Unsigned 32-bit type formatter */
82 #define TIFF_UINT32_FORMAT "%u"
83 
84 #ifdef _MSC_VER   // windows
85 
86 /* Signed 64-bit type formatter */
87 #define TIFF_INT64_FORMAT "%I64d"
88 
89 /* Unsigned 64-bit type formatter */
90 #define TIFF_UINT64_FORMAT "%I64u"
91 
92 /* Signed 64-bit type */
93 #define TIFF_INT64_T signed __int64
94 
95 /* Unsigned 64-bit type */
96 #define TIFF_UINT64_T unsigned __int64
97 
98 #else           // linux/unix
99 
100 #if 0 //_FX_CPU_ == _FX_X64_  // linux/unix 64
101 
102 /* Signed 64-bit type formatter */
103 #define TIFF_INT64_FORMAT "%ld"
104 
105 /* Unsigned 64-bit type formatter */
106 #define TIFF_UINT64_FORMAT "%lu"
107 
108 /* Signed 64-bit type */
109 #define TIFF_INT64_T signed long
110 
111 #else           // linux/unix 32
112 
113 /* Signed 64-bit type formatter */
114 #define TIFF_INT64_FORMAT "%lld"
115 
116 /* Unsigned 64-bit type formatter */
117 #define TIFF_UINT64_FORMAT "%llu"
118 
119 /* Signed 64-bit type */
120 #define TIFF_INT64_T signed long long
121 
122 #endif            // end _FX_CPU_
123 
124 /* Unsigned 64-bit type */
125 #define TIFF_UINT64_T unsigned long long
126 
127 #endif
128 
129 
130 /* Signed size type */
131 #ifdef _MSC_VER
132 
133 #if defined(_WIN64)
134 #define TIFF_SSIZE_T signed __int64
135 #define TIFF_SSIZE_T_MAX INT64_MAX
136 #else
137 #define TIFF_SSIZE_T signed int
138 #define TIFF_SSIZE_T_MAX INT_MAX
139 #endif
140 
141 #else
142 
143 #define TIFF_SSIZE_T signed long
144 #define TIFF_SSIZE_T_MAX LONG_MAX
145 
146 #endif
147 
148 /* Signed size type formatter */
149 #if defined(_WIN64)
150 #define TIFF_SSIZE_FORMAT "%I64d"
151 #else
152 #define TIFF_SSIZE_FORMAT "%ld"
153 #endif
154 
155 /* Pointer difference type */
156 #ifdef _MSC_VER
157 #define TIFF_PTRDIFF_T long
158 #else
159 #define TIFF_PTRDIFF_T ptrdiff_t
160 #endif
161 
162 /* Signed 64-bit type */
163 /*#define TIFF_INT64_T signed __int64*/
164 
165 /* Unsigned 64-bit type */
166 /*#define TIFF_UINT64_T unsigned __int64*/
167 
168 /* Define to `__inline__' or `__inline' if that's what the C compiler
169    calls it, or to nothing if 'inline' is not supported under any name.  */
170 #ifndef __cplusplus
171 # ifndef inline
172 #  define inline __inline
173 # endif
174 #endif
175 
176 #define lfind _lfind
177 
178 #define BSDTYPES
179 
180 /* Set the native cpu bit order (FILLORDER_LSB2MSB or FILLORDER_MSB2LSB) */
181 #define HOST_FILLORDER FILLORDER_LSB2MSB
182 
183 /* Native cpu byte order: 1 if big-endian (Motorola) or 0 if little-endian
184    (Intel) */
185 #if _FX_ENDIAN_ == _FX_BIG_ENDIAN_
186 # define HOST_BIGENDIAN 1
187 #else
188 # define HOST_BIGENDIAN 0
189 #endif
190 
191 /* Support CCITT Group 3 & 4 algorithms */
192 #define CCITT_SUPPORT 1
193 
194 /* Support JPEG compression (requires IJG JPEG library) */
195 #define JPEG_SUPPORT 1
196 
197 /* Support LogLuv high dynamic range encoding */
198 #define LOGLUV_SUPPORT 1
199 
200 /* Support LZW algorithm */
201 #define LZW_SUPPORT 1
202 
203 /* Support NeXT 2-bit RLE algorithm */
204 #define NEXT_SUPPORT 1
205 
206 /* Support Old JPEG compresson (read contrib/ojpeg/README first! Compilation
207    fails with unpatched IJG JPEG library) */
208 /* #undef OJPEG_SUPPORT */
209 
210 /* Support Macintosh PackBits algorithm */
211 #define PACKBITS_SUPPORT 1
212 
213 /* Support Pixar log-format algorithm (requires Zlib) */
214 #define PIXARLOG_SUPPORT 1
215 
216 /* Support ThunderScan 4-bit RLE algorithm */
217 #define THUNDER_SUPPORT 1
218 
219 /* Support Deflate compression */
220 /* #undef ZIP_SUPPORT */
221 
222 /* Support strip chopping (whether or not to convert single-strip uncompressed
223    images to mutiple strips of ~8Kb to reduce memory usage) */
224 #define STRIPCHOP_DEFAULT TIFF_STRIPCHOP
225 
226 /* Enable SubIFD tag (330) support */
227 #define SUBIFD_SUPPORT 1
228 
229 /* Treat extra sample as alpha (default enabled). The RGBA interface will
230    treat a fourth sample with no EXTRASAMPLE_ value as being ASSOCALPHA. Many
231    packages produce RGBA files but don't mark the alpha properly. */
232 #define DEFAULT_EXTRASAMPLE_AS_ALPHA 1
233 
234 /* Pick up YCbCr subsampling info from the JPEG data stream to support files
235    lacking the tag (default enabled). */
236 #define CHECK_JPEG_YCBCR_SUBSAMPLING 1
237 
238 /* Support MS MDI magic number files as TIFF */
239 #define MDI_SUPPORT 1
240 
241 /*
242  * Feature support definitions.
243  * XXX: These macros are obsoleted. Don't use them in your apps!
244  * Macros stays here for backward compatibility and should be always defined.
245  */
246 #define COLORIMETRY_SUPPORT
247 #define YCBCR_SUPPORT
248 #define CMYK_SUPPORT
249 #define ICC_SUPPORT
250 #define PHOTOSHOP_SUPPORT
251 #define IPTC_SUPPORT
252 
253 #endif /* _TIFFCONF_ */
254