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