In libjpeg-turbo 2.1.x and prior, the WITH_12BIT CMake variable was used to enable 12-bit JPEG support at compile time, because the libjpeg API library could not handle multiple JPEG data precisions at run time. The initial approach to handling multiple JPEG data precisions at run time (7fec5074f9) created a whole new API, library, and applications for 12-bit data precision, so it made sense to repurpose WITH_12BIT to allow 12-bit data precision to be disabled.e8b40f3c2bmade it so that the libjpeg API library can handle multiple JPEG data precisions at run time via a handful of straightforward API extensions. Referring to6c2bc901e2, it hasn't been possible to build libjpeg-turbo with both forward and backward libjpeg API/ABI compatibility since libjpeg-turbo 1.4.x. Thus, whereas we retain full backward API/ABI compatibility with libjpeg v6b-v8, forward libjpeg API/ABI compatibility ceased being realistic years ago, so it no longer makes sense to provide compile-time options that give a false sense of forward API/ABI compatibility by allowing some (but not all) of our libjpeg API extensions to be disabled. Such options are difficult to maintain and clutter the code with #ifdefs.
45 lines
1.3 KiB
C
45 lines
1.3 KiB
C
/* Version ID for the JPEG library.
|
|
* Might be useful for tests like "#if JPEG_LIB_VERSION >= 60".
|
|
*/
|
|
#define JPEG_LIB_VERSION @JPEG_LIB_VERSION@
|
|
|
|
/* libjpeg-turbo version */
|
|
#define LIBJPEG_TURBO_VERSION @VERSION@
|
|
|
|
/* libjpeg-turbo version in integer form */
|
|
#define LIBJPEG_TURBO_VERSION_NUMBER @LIBJPEG_TURBO_VERSION_NUMBER@
|
|
|
|
/* Support arithmetic encoding when using 8-bit samples */
|
|
#cmakedefine C_ARITH_CODING_SUPPORTED 1
|
|
|
|
/* Support arithmetic decoding when using 8-bit samples */
|
|
#cmakedefine D_ARITH_CODING_SUPPORTED 1
|
|
|
|
/* Use accelerated SIMD routines when using 8-bit samples */
|
|
#cmakedefine WITH_SIMD 1
|
|
|
|
#ifdef _WIN32
|
|
|
|
#undef RIGHT_SHIFT_IS_UNSIGNED
|
|
|
|
/* Define "boolean" as unsigned char, not int, per Windows custom */
|
|
#ifndef __RPCNDR_H__ /* don't conflict if rpcndr.h already read */
|
|
typedef unsigned char boolean;
|
|
#endif
|
|
#define HAVE_BOOLEAN /* prevent jmorecfg.h from redefining it */
|
|
|
|
/* Define "INT32" as int, not long, per Windows custom */
|
|
#if !(defined(_BASETSD_H_) || defined(_BASETSD_H)) /* don't conflict if basetsd.h already read */
|
|
typedef short INT16;
|
|
typedef signed int INT32;
|
|
#endif
|
|
#define XMD_H /* prevent jmorecfg.h from redefining it */
|
|
|
|
#else
|
|
|
|
/* Define if your (broken) compiler shifts signed values as if they were
|
|
unsigned. */
|
|
#cmakedefine RIGHT_SHIFT_IS_UNSIGNED 1
|
|
|
|
#endif
|