1 |
greg |
3.1 |
/* RCSid: $Id$ */ |
2 |
|
|
/* |
3 |
|
|
* Copyright (c) 1988-1997 Sam Leffler |
4 |
|
|
* Copyright (c) 1991-1997 Silicon Graphics, Inc. |
5 |
|
|
* |
6 |
|
|
* Permission to use, copy, modify, distribute, and sell this software and |
7 |
|
|
* its documentation for any purpose is hereby granted without fee, provided |
8 |
|
|
* that (i) the above copyright notices and this permission notice appear in |
9 |
|
|
* all copies of the software and related documentation, and (ii) the names of |
10 |
|
|
* Sam Leffler and Silicon Graphics may not be used in any advertising or |
11 |
|
|
* publicity relating to the software without the specific, prior written |
12 |
|
|
* permission of Sam Leffler and Silicon Graphics. |
13 |
|
|
* |
14 |
|
|
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, |
15 |
|
|
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY |
16 |
|
|
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. |
17 |
|
|
* |
18 |
|
|
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR |
19 |
|
|
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, |
20 |
|
|
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, |
21 |
|
|
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF |
22 |
|
|
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE |
23 |
|
|
* OF THIS SOFTWARE. |
24 |
|
|
*/ |
25 |
|
|
|
26 |
|
|
#ifndef _TIFFCONF_ |
27 |
|
|
#define _TIFFCONF_ |
28 |
|
|
/* |
29 |
|
|
* Library Configuration Definitions. |
30 |
|
|
* |
31 |
|
|
* This file defines the default configuration for the library. |
32 |
|
|
* If the target system does not have make or a way to specify |
33 |
|
|
* #defines on the command line, this file can be edited to |
34 |
|
|
* configure the library. Otherwise, one can override portability |
35 |
|
|
* and configuration-related definitions from a Makefile or command |
36 |
|
|
* line by defining FEATURE_SUPPORT and COMPRESSION_SUPPORT (see below). |
37 |
|
|
*/ |
38 |
|
|
|
39 |
|
|
/* |
40 |
|
|
* General portability-related defines: |
41 |
|
|
* |
42 |
|
|
* HAVE_IEEEFP define as 0 or 1 according to the floating point |
43 |
|
|
* format suported by the machine |
44 |
|
|
* BSDTYPES define this if your system does NOT define the |
45 |
|
|
* usual 4BSD typedefs u_int et. al. |
46 |
|
|
* HAVE_MMAP enable support for memory mapping read-only files; |
47 |
|
|
* this is typically deduced by the configure script |
48 |
|
|
* HOST_FILLORDER native cpu bit order: one of FILLORDER_MSB2LSB |
49 |
|
|
* or FILLODER_LSB2MSB; this is typically set by the |
50 |
|
|
* configure script |
51 |
|
|
* HOST_BIGENDIAN native cpu byte order: 1 if big-endian (Motorola) |
52 |
|
|
* or 0 if little-endian (Intel); this may be used |
53 |
|
|
* in codecs to optimize code |
54 |
|
|
* USE_64BIT_API set to 1 if tif_unix.c should use lseek64(), |
55 |
|
|
* fstat64() and stat64 allowing 2-4GB files. |
56 |
|
|
*/ |
57 |
|
|
#ifndef HAVE_IEEEFP |
58 |
|
|
#define HAVE_IEEEFP 1 |
59 |
|
|
#endif |
60 |
|
|
#ifndef HOST_FILLORDER |
61 |
|
|
#define HOST_FILLORDER FILLORDER_MSB2LSB |
62 |
|
|
#endif |
63 |
|
|
#ifndef HOST_BIGENDIAN |
64 |
|
|
#define HOST_BIGENDIAN 1 |
65 |
|
|
#endif |
66 |
|
|
|
67 |
|
|
#ifndef USE_64BIT_API |
68 |
|
|
# define USE_64BIT_API 0 |
69 |
|
|
#endif |
70 |
|
|
|
71 |
|
|
#ifndef FEATURE_SUPPORT |
72 |
|
|
/* |
73 |
|
|
* Feature support definitions: |
74 |
|
|
* |
75 |
|
|
* COLORIMETRY_SUPPORT enable support for 6.0 colorimetry tags |
76 |
|
|
* YCBCR_SUPPORT enable support for 6.0 YCbCr tags |
77 |
|
|
* CMYK_SUPPORT enable support for 6.0 CMYK tags |
78 |
|
|
* ICC_SUPPORT enable support for ICC profile tag |
79 |
|
|
* PHOTOSHOP_SUPPORT enable support for PHOTOSHOP resource tag |
80 |
|
|
* IPTC_SUPPORT enable support for RichTIFF IPTC tag |
81 |
|
|
*/ |
82 |
|
|
#define COLORIMETRY_SUPPORT |
83 |
|
|
#define YCBCR_SUPPORT |
84 |
|
|
#define CMYK_SUPPORT |
85 |
|
|
#define ICC_SUPPORT |
86 |
|
|
#define PHOTOSHOP_SUPPORT |
87 |
|
|
#define IPTC_SUPPORT |
88 |
|
|
#endif /* FEATURE_SUPPORT */ |
89 |
|
|
|
90 |
|
|
#ifndef COMPRESSION_SUPPORT |
91 |
|
|
/* |
92 |
|
|
* Compression support defines: |
93 |
|
|
* |
94 |
|
|
* CCITT_SUPPORT enable support for CCITT Group 3 & 4 algorithms |
95 |
|
|
* PACKBITS_SUPPORT enable support for Macintosh PackBits algorithm |
96 |
|
|
* LZW_SUPPORT enable support for LZW algorithm |
97 |
|
|
* THUNDER_SUPPORT enable support for ThunderScan 4-bit RLE algorithm |
98 |
|
|
* NEXT_SUPPORT enable support for NeXT 2-bit RLE algorithm |
99 |
|
|
* OJPEG_SUPPORT enable support for 6.0-style JPEG DCT algorithms |
100 |
|
|
* (no builtin support, only a codec hook) |
101 |
|
|
* JPEG_SUPPORT enable support for post-6.0-style JPEG DCT algorithms |
102 |
|
|
* (requires freely available IJG software, see tif_jpeg.c) |
103 |
|
|
* ZIP_SUPPORT enable support for Deflate algorithm |
104 |
|
|
* (requires freely available zlib software, see tif_zip.c) |
105 |
|
|
* PIXARLOG_SUPPORT enable support for Pixar log-format algorithm |
106 |
|
|
* LOGLUV_SUPPORT enable support for LogLuv high dynamic range encoding |
107 |
|
|
*/ |
108 |
|
|
#define CCITT_SUPPORT |
109 |
|
|
#define PACKBITS_SUPPORT |
110 |
|
|
#define LZW_SUPPORT |
111 |
|
|
#define THUNDER_SUPPORT |
112 |
|
|
#define NEXT_SUPPORT |
113 |
|
|
#define LOGLUV_SUPPORT |
114 |
|
|
#endif /* COMPRESSION_SUPPORT */ |
115 |
|
|
|
116 |
|
|
/* |
117 |
|
|
* If JPEG compression is enabled then we must also include |
118 |
|
|
* support for the colorimetry and YCbCr-related tags. |
119 |
|
|
*/ |
120 |
|
|
#ifdef JPEG_SUPPORT |
121 |
|
|
#ifndef YCBCR_SUPPORT |
122 |
|
|
#define YCBCR_SUPPORT |
123 |
|
|
#endif |
124 |
|
|
#ifndef COLORIMETRY_SUPPORT |
125 |
|
|
#define COLORIMETRY_SUPPORT |
126 |
|
|
#endif |
127 |
|
|
#endif /* JPEG_SUPPORT */ |
128 |
|
|
|
129 |
|
|
/* |
130 |
|
|
* ``Orthogonal Features'' |
131 |
|
|
* |
132 |
|
|
* STRIPCHOP_DEFAULT default handling of strip chopping support (whether |
133 |
|
|
* or not to convert single-strip uncompressed images |
134 |
|
|
* to mutiple strips of ~8Kb--to reduce memory use) |
135 |
|
|
* SUBIFD_SUPPORT enable support for SubIFD tag (thumbnails and such) |
136 |
|
|
*/ |
137 |
|
|
#ifndef STRIPCHOP_DEFAULT |
138 |
|
|
#define STRIPCHOP_DEFAULT TIFF_STRIPCHOP /* default is to enable */ |
139 |
|
|
#endif |
140 |
|
|
#ifndef SUBIFD_SUPPORT |
141 |
|
|
#define SUBIFD_SUPPORT 1 /* enable SubIFD tag (330) support */ |
142 |
|
|
#endif |
143 |
|
|
#endif /* _TIFFCONF_ */ |