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