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