1/* 2 * jconfig.txt 3 * 4 * This file was part of the Independent JPEG Group's software: 5 * Copyright (C) 1991-1994, Thomas G. Lane. 6 * It was modified by The libjpeg-turbo Project to include only code relevant 7 * to libjpeg-turbo. 8 * For conditions of distribution and use, see the accompanying README.ijg 9 * file. 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 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 */ 49#undef __CHAR_UNSIGNED__ 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 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 79/* Define "boolean" as unsigned char, not int, on Windows systems. 80 */ 81#ifdef _WIN32 82#ifndef __RPCNDR_H__ /* don't conflict if rpcndr.h already read */ 83typedef unsigned char boolean; 84#endif 85#define HAVE_BOOLEAN /* prevent jmorecfg.h from redefining it */ 86#endif 87 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 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 */ 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 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 */ 144