Thomas G. Lane | 36a4ccc | 1994-09-24 00:00:00 +0000 | [diff] [blame] | 1 | /* |
Guido Vollbeding | 5996a25 | 2009-06-27 00:00:00 +0000 | [diff] [blame] | 2 | * jconfig.txt |
Thomas G. Lane | 36a4ccc | 1994-09-24 00:00:00 +0000 | [diff] [blame] | 3 | * |
DRC | 5033f3e | 2014-05-18 18:33:44 +0000 | [diff] [blame] | 4 | * This file was part of the Independent JPEG Group's software: |
Thomas G. Lane | 36a4ccc | 1994-09-24 00:00:00 +0000 | [diff] [blame] | 5 | * Copyright (C) 1991-1994, Thomas G. Lane. |
DRC | 5033f3e | 2014-05-18 18:33:44 +0000 | [diff] [blame] | 6 | * It was modified by The libjpeg-turbo Project to include only code relevant |
| 7 | * to libjpeg-turbo. |
DRC | 7e3acc0 | 2015-10-10 10:25:46 -0500 | [diff] [blame] | 8 | * For conditions of distribution and use, see the accompanying README.ijg |
| 9 | * file. |
Thomas G. Lane | 36a4ccc | 1994-09-24 00:00:00 +0000 | [diff] [blame] | 10 | * |
| 11 | * This file documents the configuration options that are required to |
| 12 | * customize the JPEG software for a particular system. |
| 13 | * |
| 14 | * The actual configuration options for a particular installation are stored |
| 15 | * in jconfig.h. On many machines, jconfig.h can be generated automatically |
| 16 | * or copied from one of the "canned" jconfig files that we supply. But if |
| 17 | * you need to generate a jconfig.h file by hand, this file tells you how. |
| 18 | * |
| 19 | * DO NOT EDIT THIS FILE --- IT WON'T ACCOMPLISH ANYTHING. |
| 20 | * EDIT A COPY NAMED JCONFIG.H. |
| 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 | |
Thomas G. Lane | 36a4ccc | 1994-09-24 00:00:00 +0000 | [diff] [blame] | 29 | /* Does your compiler support the declaration "unsigned char" ? |
| 30 | * How about "unsigned short" ? |
| 31 | */ |
| 32 | #define HAVE_UNSIGNED_CHAR |
| 33 | #define HAVE_UNSIGNED_SHORT |
| 34 | |
| 35 | /* Define "void" as "char" if your compiler doesn't know about type void. |
| 36 | * NOTE: be sure to define void such that "void *" represents the most general |
| 37 | * pointer type, e.g., that returned by malloc(). |
| 38 | */ |
| 39 | /* #define void char */ |
| 40 | |
| 41 | /* Define "const" as empty if your compiler doesn't know the "const" keyword. |
| 42 | */ |
| 43 | /* #define const */ |
| 44 | |
| 45 | /* Define this if an ordinary "char" type is unsigned. |
| 46 | * If you're not sure, leaving it undefined will work at some cost in speed. |
| 47 | * If you defined HAVE_UNSIGNED_CHAR then the speed difference is minimal. |
| 48 | */ |
DRC | 61976bd | 2014-04-20 19:13:10 +0000 | [diff] [blame] | 49 | #undef __CHAR_UNSIGNED__ |
Thomas G. Lane | 36a4ccc | 1994-09-24 00:00:00 +0000 | [diff] [blame] | 50 | |
| 51 | /* Define this if your system has an ANSI-conforming <stddef.h> file. |
| 52 | */ |
| 53 | #define HAVE_STDDEF_H |
| 54 | |
| 55 | /* Define this if your system has an ANSI-conforming <stdlib.h> file. |
| 56 | */ |
| 57 | #define HAVE_STDLIB_H |
| 58 | |
| 59 | /* Define this if your system does not have an ANSI/SysV <string.h>, |
| 60 | * but does have a BSD-style <strings.h>. |
| 61 | */ |
| 62 | #undef NEED_BSD_STRINGS |
| 63 | |
| 64 | /* Define this if your system does not provide typedef size_t in any of the |
| 65 | * ANSI-standard places (stddef.h, stdlib.h, or stdio.h), but places it in |
| 66 | * <sys/types.h> instead. |
| 67 | */ |
| 68 | #undef NEED_SYS_TYPES_H |
| 69 | |
Thomas G. Lane | 36a4ccc | 1994-09-24 00:00:00 +0000 | [diff] [blame] | 70 | /* Although a real ANSI C compiler can deal perfectly well with pointers to |
| 71 | * unspecified structures (see "incomplete types" in the spec), a few pre-ANSI |
| 72 | * and pseudo-ANSI compilers get confused. To keep one of these bozos happy, |
| 73 | * define INCOMPLETE_TYPES_BROKEN. This is not recommended unless you |
| 74 | * actually get "missing structure definition" warnings or errors while |
| 75 | * compiling the JPEG code. |
| 76 | */ |
| 77 | #undef INCOMPLETE_TYPES_BROKEN |
| 78 | |
Guido Vollbeding | a4ecaac | 2010-05-16 00:00:00 +0000 | [diff] [blame] | 79 | /* Define "boolean" as unsigned char, not int, on Windows systems. |
| 80 | */ |
| 81 | #ifdef _WIN32 |
DRC | e5eaf37 | 2014-05-09 18:00:32 +0000 | [diff] [blame] | 82 | #ifndef __RPCNDR_H__ /* don't conflict if rpcndr.h already read */ |
Guido Vollbeding | a4ecaac | 2010-05-16 00:00:00 +0000 | [diff] [blame] | 83 | typedef unsigned char boolean; |
| 84 | #endif |
DRC | e5eaf37 | 2014-05-09 18:00:32 +0000 | [diff] [blame] | 85 | #define HAVE_BOOLEAN /* prevent jmorecfg.h from redefining it */ |
Guido Vollbeding | a4ecaac | 2010-05-16 00:00:00 +0000 | [diff] [blame] | 86 | #endif |
| 87 | |
Thomas G. Lane | 36a4ccc | 1994-09-24 00:00:00 +0000 | [diff] [blame] | 88 | |
| 89 | /* |
| 90 | * The following options affect code selection within the JPEG library, |
| 91 | * but they don't need to be visible to applications using the library. |
| 92 | * To minimize application namespace pollution, the symbols won't be |
| 93 | * defined unless JPEG_INTERNALS has been defined. |
| 94 | */ |
| 95 | |
| 96 | #ifdef JPEG_INTERNALS |
| 97 | |
| 98 | /* Define this if your compiler implements ">>" on signed values as a logical |
| 99 | * (unsigned) shift; leave it undefined if ">>" is a signed (arithmetic) shift, |
| 100 | * which is the normal and rational definition. |
| 101 | */ |
| 102 | #undef RIGHT_SHIFT_IS_UNSIGNED |
| 103 | |
| 104 | |
| 105 | #endif /* JPEG_INTERNALS */ |
| 106 | |
| 107 | |
| 108 | /* |
| 109 | * The remaining options do not affect the JPEG library proper, |
| 110 | * but only the sample applications cjpeg/djpeg (see cjpeg.c, djpeg.c). |
| 111 | * Other applications can ignore these. |
| 112 | */ |
| 113 | |
| 114 | #ifdef JPEG_CJPEG_DJPEG |
| 115 | |
| 116 | /* These defines indicate which image (non-JPEG) file formats are allowed. */ |
| 117 | |
DRC | e5eaf37 | 2014-05-09 18:00:32 +0000 | [diff] [blame] | 118 | #define BMP_SUPPORTED /* BMP image file format */ |
| 119 | #define GIF_SUPPORTED /* GIF image file format */ |
| 120 | #define PPM_SUPPORTED /* PBMPLUS PPM/PGM image file format */ |
| 121 | #undef RLE_SUPPORTED /* Utah RLE image file format */ |
| 122 | #define TARGA_SUPPORTED /* Targa image file format */ |
Thomas G. Lane | 36a4ccc | 1994-09-24 00:00:00 +0000 | [diff] [blame] | 123 | |
| 124 | /* Define this if you want to name both input and output files on the command |
| 125 | * line, rather than using stdout and optionally stdin. You MUST do this if |
| 126 | * your system can't cope with binary I/O to stdin/stdout. See comments at |
| 127 | * head of cjpeg.c or djpeg.c. |
| 128 | */ |
| 129 | #undef TWO_FILE_COMMANDLINE |
| 130 | |
Thomas G. Lane | 36a4ccc | 1994-09-24 00:00:00 +0000 | [diff] [blame] | 131 | /* By default, we open image files with fopen(...,"rb") or fopen(...,"wb"). |
| 132 | * This is necessary on systems that distinguish text files from binary files, |
| 133 | * and is harmless on most systems that don't. If you have one of the rare |
| 134 | * systems that complains about the "b" spec, define this symbol. |
| 135 | */ |
| 136 | #undef DONT_USE_B_MODE |
| 137 | |
| 138 | /* Define this if you want percent-done progress reports from cjpeg/djpeg. |
| 139 | */ |
| 140 | #undef PROGRESS_REPORT |
| 141 | |
| 142 | |
| 143 | #endif /* JPEG_CJPEG_DJPEG */ |