1 | /* |
---|
2 | * jconfig.txt |
---|
3 | * |
---|
4 | * Copyright (C) 1991-1994, Thomas G. Lane. |
---|
5 | * This file is part of the Independent JPEG Group's software. |
---|
6 | * For conditions of distribution and use, see the accompanying README file. |
---|
7 | * |
---|
8 | * This file documents the configuration options that are required to |
---|
9 | * customize the JPEG software for a particular system. |
---|
10 | * |
---|
11 | * The actual configuration options for a particular installation are stored |
---|
12 | * in jconfig.h. On many machines, jconfig.h can be generated automatically |
---|
13 | * or copied from one of the "canned" jconfig files that we supply. But if |
---|
14 | * you need to generate a jconfig.h file by hand, this file tells you how. |
---|
15 | * |
---|
16 | * DO NOT EDIT THIS FILE --- IT WON'T ACCOMPLISH ANYTHING. |
---|
17 | * EDIT A COPY NAMED JCONFIG.H. |
---|
18 | */ |
---|
19 | |
---|
20 | |
---|
21 | /* |
---|
22 | * These symbols indicate the properties of your machine or compiler. |
---|
23 | * #define the symbol if yes, #undef it if no. |
---|
24 | */ |
---|
25 | |
---|
26 | /* Does your compiler support function prototypes? |
---|
27 | * (If not, you also need to use ansi2knr, see install.txt) |
---|
28 | */ |
---|
29 | #define HAVE_PROTOTYPES |
---|
30 | |
---|
31 | /* Does your compiler support the declaration "unsigned char" ? |
---|
32 | * How about "unsigned short" ? |
---|
33 | */ |
---|
34 | #define HAVE_UNSIGNED_CHAR |
---|
35 | #define HAVE_UNSIGNED_SHORT |
---|
36 | |
---|
37 | /* Define "void" as "char" if your compiler doesn't know about type void. |
---|
38 | * NOTE: be sure to define void such that "void *" represents the most general |
---|
39 | * pointer type, e.g., that returned by malloc(). |
---|
40 | */ |
---|
41 | /* #define void char */ |
---|
42 | |
---|
43 | /* Define "const" as empty if your compiler doesn't know the "const" keyword. |
---|
44 | */ |
---|
45 | /* #define const */ |
---|
46 | |
---|
47 | /* Define this if an ordinary "char" type is unsigned. |
---|
48 | * If you're not sure, leaving it undefined will work at some cost in speed. |
---|
49 | * If you defined HAVE_UNSIGNED_CHAR then the speed difference is minimal. |
---|
50 | */ |
---|
51 | #undef CHAR_IS_UNSIGNED |
---|
52 | |
---|
53 | /* Define this if your system has an ANSI-conforming <stddef.h> file. |
---|
54 | */ |
---|
55 | #define HAVE_STDDEF_H |
---|
56 | |
---|
57 | /* Define this if your system has an ANSI-conforming <stdlib.h> file. |
---|
58 | */ |
---|
59 | #define HAVE_STDLIB_H |
---|
60 | |
---|
61 | /* Define this if your system does not have an ANSI/SysV <string.h>, |
---|
62 | * but does have a BSD-style <strings.h>. |
---|
63 | */ |
---|
64 | #undef NEED_BSD_STRINGS |
---|
65 | |
---|
66 | /* Define this if your system does not provide typedef size_t in any of the |
---|
67 | * ANSI-standard places (stddef.h, stdlib.h, or stdio.h), but places it in |
---|
68 | * <sys/types.h> instead. |
---|
69 | */ |
---|
70 | #undef NEED_SYS_TYPES_H |
---|
71 | |
---|
72 | /* For 80x86 machines, you need to define NEED_FAR_POINTERS, |
---|
73 | * unless you are using a large-data memory model or 80386 flat-memory mode. |
---|
74 | * On less brain-damaged CPUs this symbol must not be defined. |
---|
75 | * (Defining this symbol causes large data structures to be referenced through |
---|
76 | * "far" pointers and to be allocated with a special version of malloc.) |
---|
77 | */ |
---|
78 | #undef NEED_FAR_POINTERS |
---|
79 | |
---|
80 | /* Define this if your linker needs global names to be unique in less |
---|
81 | * than the first 15 characters. |
---|
82 | */ |
---|
83 | #undef NEED_SHORT_EXTERNAL_NAMES |
---|
84 | |
---|
85 | /* Although a real ANSI C compiler can deal perfectly well with pointers to |
---|
86 | * unspecified structures (see "incomplete types" in the spec), a few pre-ANSI |
---|
87 | * and pseudo-ANSI compilers get confused. To keep one of these bozos happy, |
---|
88 | * define INCOMPLETE_TYPES_BROKEN. This is not recommended unless you |
---|
89 | * actually get "missing structure definition" warnings or errors while |
---|
90 | * compiling the JPEG code. |
---|
91 | */ |
---|
92 | #undef INCOMPLETE_TYPES_BROKEN |
---|
93 | |
---|
94 | /* Define "boolean" as unsigned char, not int, on Windows systems. |
---|
95 | */ |
---|
96 | #ifdef _WIN32 |
---|
97 | #ifndef __RPCNDR_H__ /* don't conflict if rpcndr.h already read */ |
---|
98 | typedef unsigned char boolean; |
---|
99 | #endif |
---|
100 | #define HAVE_BOOLEAN /* prevent jmorecfg.h from redefining it */ |
---|
101 | #endif |
---|
102 | |
---|
103 | |
---|
104 | /* |
---|
105 | * The following options affect code selection within the JPEG library, |
---|
106 | * but they don't need to be visible to applications using the library. |
---|
107 | * To minimize application namespace pollution, the symbols won't be |
---|
108 | * defined unless JPEG_INTERNALS has been defined. |
---|
109 | */ |
---|
110 | |
---|
111 | #ifdef JPEG_INTERNALS |
---|
112 | |
---|
113 | /* Define this if your compiler implements ">>" on signed values as a logical |
---|
114 | * (unsigned) shift; leave it undefined if ">>" is a signed (arithmetic) shift, |
---|
115 | * which is the normal and rational definition. |
---|
116 | */ |
---|
117 | #undef RIGHT_SHIFT_IS_UNSIGNED |
---|
118 | |
---|
119 | |
---|
120 | #endif /* JPEG_INTERNALS */ |
---|
121 | |
---|
122 | |
---|
123 | /* |
---|
124 | * The remaining options do not affect the JPEG library proper, |
---|
125 | * but only the sample applications cjpeg/djpeg (see cjpeg.c, djpeg.c). |
---|
126 | * Other applications can ignore these. |
---|
127 | */ |
---|
128 | |
---|
129 | #ifdef JPEG_CJPEG_DJPEG |
---|
130 | |
---|
131 | /* These defines indicate which image (non-JPEG) file formats are allowed. */ |
---|
132 | |
---|
133 | #define BMP_SUPPORTED /* BMP image file format */ |
---|
134 | #define GIF_SUPPORTED /* GIF image file format */ |
---|
135 | #define PPM_SUPPORTED /* PBMPLUS PPM/PGM image file format */ |
---|
136 | #undef RLE_SUPPORTED /* Utah RLE image file format */ |
---|
137 | #define TARGA_SUPPORTED /* Targa image file format */ |
---|
138 | |
---|
139 | /* Define this if you want to name both input and output files on the command |
---|
140 | * line, rather than using stdout and optionally stdin. You MUST do this if |
---|
141 | * your system can't cope with binary I/O to stdin/stdout. See comments at |
---|
142 | * head of cjpeg.c or djpeg.c. |
---|
143 | */ |
---|
144 | #undef TWO_FILE_COMMANDLINE |
---|
145 | |
---|
146 | /* Define this if your system needs explicit cleanup of temporary files. |
---|
147 | * This is crucial under MS-DOS, where the temporary "files" may be areas |
---|
148 | * of extended memory; on most other systems it's not as important. |
---|
149 | */ |
---|
150 | #undef NEED_SIGNAL_CATCHER |
---|
151 | |
---|
152 | /* By default, we open image files with fopen(...,"rb") or fopen(...,"wb"). |
---|
153 | * This is necessary on systems that distinguish text files from binary files, |
---|
154 | * and is harmless on most systems that don't. If you have one of the rare |
---|
155 | * systems that complains about the "b" spec, define this symbol. |
---|
156 | */ |
---|
157 | #undef DONT_USE_B_MODE |
---|
158 | |
---|
159 | /* Define this if you want percent-done progress reports from cjpeg/djpeg. |
---|
160 | */ |
---|
161 | #undef PROGRESS_REPORT |
---|
162 | |
---|
163 | |
---|
164 | #endif /* JPEG_CJPEG_DJPEG */ |
---|