aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorDaniel Colascione2012-10-08 02:26:10 -0800
committerDaniel Colascione2012-10-08 02:26:10 -0800
commit93aa5c811f28ab0d3f7a8d0a37971efd35dfbcab (patch)
tree0d5a5e00c82b9079b2d154710daee756118cc482 /src
parent5c0255d90bf07b0fc59a7fe74f35f4b704ebbab4 (diff)
downloademacs-93aa5c811f28ab0d3f7a8d0a37971efd35dfbcab.tar.gz
emacs-93aa5c811f28ab0d3f7a8d0a37971efd35dfbcab.zip
Improve fix for jpeglib build break
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog5
-rw-r--r--src/image.c25
2 files changed, 20 insertions, 10 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 250024ba6c5..f9a47ebb4b6 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,8 @@
12012-10-08 Daniel Colascione <dancol@dancol.org>
2
3 * image.c: Permanent fix for JPEG compilation issue --- limit
4 jpeglib `boolean' redefinition to Cygwin builds.
5
12012-10-08 Eli Zaretskii <eliz@gnu.org> 62012-10-08 Eli Zaretskii <eliz@gnu.org>
2 7
3 * image.c (CHECK_LIB_AVAILABLE): Remove, no longer used. 8 * image.c (CHECK_LIB_AVAILABLE): Remove, no longer used.
diff --git a/src/image.c b/src/image.c
index 790ede4c35e..6058bdf444c 100644
--- a/src/image.c
+++ b/src/image.c
@@ -6061,21 +6061,26 @@ jpeg_image_p (Lisp_Object object)
6061#define __WIN32__ 1 6061#define __WIN32__ 1
6062#endif 6062#endif
6063 6063
6064#if 0 /* FIXME */ 6064/* rpcndr.h (via windows.h) and jpeglib.h both define boolean types.
6065/* Work around conflict between jpeg boolean and rpcndr.h 6065 Some versions of jpeglib try to detect whether rpcndr.h is loaded,
6066 under Windows. */ 6066 using the Windows boolean type instead of the jpeglib boolean type
6067 if so. Cygwin jpeglib, however, doesn't try to detect whether its
6068 headers are included along with windows.h, so under Cygwin, jpeglib
6069 attempts to define a conflicting boolean type. Worse, forcing
6070 Cygwin jpeglib headers to use the Windows boolean type doesn't work
6071 because it created an ABI incompatibility between the
6072 already-compiled jpeg library and the header interface definition.
6073
6074 The best we can do is to define jpeglib's boolean type to a
6075 different name. This name, jpeg_boolean, remains in effect through
6076 the rest of image.c.
6077*/
6078#if defined (CYGWIN) && defined (HAVE_NTGUI)
6067#define boolean jpeg_boolean 6079#define boolean jpeg_boolean
6068#endif 6080#endif
6069#include <jpeglib.h> 6081#include <jpeglib.h>
6070#include <jerror.h> 6082#include <jerror.h>
6071 6083
6072/* Don't undefine boolean --- use the JPEG boolean
6073 through the rest of the file. */
6074
6075#ifdef HAVE_STLIB_H_1
6076#define HAVE_STDLIB_H 1
6077#endif
6078
6079#ifdef WINDOWSNT 6084#ifdef WINDOWSNT
6080 6085
6081/* JPEG library details. */ 6086/* JPEG library details. */