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