blob: 15a98177bc4fa6aeb85c3d1ecf1e85d379e9d6fd [file] [log] [blame]
Dees_Troy51a0e822012-09-05 15:24:24 -04001/* android jconfig.h */
2/*
3 * jconfig.doc
4 *
5 * Copyright (C) 1991-1994, Thomas G. Lane.
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.doc)
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
96/*
97 * The following options affect code selection within the JPEG library,
98 * but they don't need to be visible to applications using the library.
99 * To minimize application namespace pollution, the symbols won't be
100 * defined unless JPEG_INTERNALS has been defined.
101 */
102
103#ifdef JPEG_INTERNALS
104
105/* Define this if your compiler implements ">>" on signed values as a logical
106 * (unsigned) shift; leave it undefined if ">>" is a signed (arithmetic) shift,
107 * which is the normal and rational definition.
108 */
109#undef RIGHT_SHIFT_IS_UNSIGNED
110
111
112#endif /* JPEG_INTERNALS */
113
114
115/*
116 * The remaining options do not affect the JPEG library proper,
117 * but only the sample applications cjpeg/djpeg (see cjpeg.c, djpeg.c).
118 * Other applications can ignore these.
119 */
120
121#ifdef JPEG_CJPEG_DJPEG
122
123/* These defines indicate which image (non-JPEG) file formats are allowed. */
124
125#define BMP_SUPPORTED /* BMP image file format */
126#define GIF_SUPPORTED /* GIF image file format */
127#define PPM_SUPPORTED /* PBMPLUS PPM/PGM image file format */
128#undef RLE_SUPPORTED /* Utah RLE image file format */
129#define TARGA_SUPPORTED /* Targa image file format */
130
131/* Define this if you want to name both input and output files on the command
132 * line, rather than using stdout and optionally stdin. You MUST do this if
133 * your system can't cope with binary I/O to stdin/stdout. See comments at
134 * head of cjpeg.c or djpeg.c.
135 */
136#undef TWO_FILE_COMMANDLINE
137
138/* Define this if your system needs explicit cleanup of temporary files.
139 * This is crucial under MS-DOS, where the temporary "files" may be areas
140 * of extended memory; on most other systems it's not as important.
141 */
142#undef NEED_SIGNAL_CATCHER
143
144/* By default, we open image files with fopen(...,"rb") or fopen(...,"wb").
145 * This is necessary on systems that distinguish text files from binary files,
146 * and is harmless on most systems that don't. If you have one of the rare
147 * systems that complains about the "b" spec, define this symbol.
148 */
149#undef DONT_USE_B_MODE
150
151/* Define this if you want percent-done progress reports from cjpeg/djpeg.
152 */
153#undef PROGRESS_REPORT
154
155
156#endif /* JPEG_CJPEG_DJPEG */