jconfig.txt 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143
  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. * These symbols indicate the properties of your machine or compiler.
  24. * #define the symbol if yes, #undef it if no.
  25. */
  26. /* Does your compiler support the declaration "unsigned char" ?
  27. * How about "unsigned short" ?
  28. */
  29. #define HAVE_UNSIGNED_CHAR
  30. #define HAVE_UNSIGNED_SHORT
  31. /* Define "void" as "char" if your compiler doesn't know about type void.
  32. * NOTE: be sure to define void such that "void *" represents the most general
  33. * pointer type, e.g., that returned by malloc().
  34. */
  35. /* #define void char */
  36. /* Define "const" as empty if your compiler doesn't know the "const" keyword.
  37. */
  38. /* #define const */
  39. /* Define this if an ordinary "char" type is unsigned.
  40. * If you're not sure, leaving it undefined will work at some cost in speed.
  41. * If you defined HAVE_UNSIGNED_CHAR then the speed difference is minimal.
  42. */
  43. #undef __CHAR_UNSIGNED__
  44. /* Define this if your system has an ANSI-conforming <stddef.h> file.
  45. */
  46. #define HAVE_STDDEF_H
  47. /* Define this if your system has an ANSI-conforming <stdlib.h> file.
  48. */
  49. #define HAVE_STDLIB_H
  50. /* Define this if your system does not have an ANSI/SysV <string.h>,
  51. * but does have a BSD-style <strings.h>.
  52. */
  53. #undef NEED_BSD_STRINGS
  54. /* Define this if your system does not provide typedef size_t in any of the
  55. * ANSI-standard places (stddef.h, stdlib.h, or stdio.h), but places it in
  56. * <sys/types.h> instead.
  57. */
  58. #undef NEED_SYS_TYPES_H
  59. /* Although a real ANSI C compiler can deal perfectly well with pointers to
  60. * unspecified structures (see "incomplete types" in the spec), a few pre-ANSI
  61. * and pseudo-ANSI compilers get confused. To keep one of these bozos happy,
  62. * define INCOMPLETE_TYPES_BROKEN. This is not recommended unless you
  63. * actually get "missing structure definition" warnings or errors while
  64. * compiling the JPEG code.
  65. */
  66. #undef INCOMPLETE_TYPES_BROKEN
  67. /* Define "boolean" as unsigned char, not int, on Windows systems.
  68. */
  69. #ifdef _WIN32
  70. #ifndef __RPCNDR_H__ /* don't conflict if rpcndr.h already read */
  71. typedef unsigned char boolean;
  72. #endif
  73. #define HAVE_BOOLEAN /* prevent jmorecfg.h from redefining it */
  74. #endif
  75. /*
  76. * The following options affect code selection within the JPEG library,
  77. * but they don't need to be visible to applications using the library.
  78. * To minimize application namespace pollution, the symbols won't be
  79. * defined unless JPEG_INTERNALS has been defined.
  80. */
  81. #ifdef JPEG_INTERNALS
  82. /* Define this if your compiler implements ">>" on signed values as a logical
  83. * (unsigned) shift; leave it undefined if ">>" is a signed (arithmetic) shift,
  84. * which is the normal and rational definition.
  85. */
  86. #undef RIGHT_SHIFT_IS_UNSIGNED
  87. #endif /* JPEG_INTERNALS */
  88. /*
  89. * The remaining options do not affect the JPEG library proper,
  90. * but only the sample applications cjpeg/djpeg (see cjpeg.c, djpeg.c).
  91. * Other applications can ignore these.
  92. */
  93. #ifdef JPEG_CJPEG_DJPEG
  94. /* These defines indicate which image (non-JPEG) file formats are allowed. */
  95. #define BMP_SUPPORTED /* BMP image file format */
  96. #define GIF_SUPPORTED /* GIF image file format */
  97. #define PPM_SUPPORTED /* PBMPLUS PPM/PGM image file format */
  98. #undef RLE_SUPPORTED /* Utah RLE image file format */
  99. #define TARGA_SUPPORTED /* Targa image file format */
  100. /* Define this if you want to name both input and output files on the command
  101. * line, rather than using stdout and optionally stdin. You MUST do this if
  102. * your system can't cope with binary I/O to stdin/stdout. See comments at
  103. * head of cjpeg.c or djpeg.c.
  104. */
  105. #undef TWO_FILE_COMMANDLINE
  106. /* By default, we open image files with fopen(..., "rb") or fopen(..., "wb").
  107. * This is necessary on systems that distinguish text files from binary files,
  108. * and is harmless on most systems that don't. If you have one of the rare
  109. * systems that complains about the "b" spec, define this symbol.
  110. */
  111. #undef DONT_USE_B_MODE
  112. /* Define this if you want percent-done progress reports from cjpeg/djpeg.
  113. */
  114. #undef PROGRESS_REPORT
  115. #endif /* JPEG_CJPEG_DJPEG */