aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorClaudio Bley2013-11-01 10:52:22 +0200
committerEli Zaretskii2013-11-01 10:52:22 +0200
commitd14c81eec79c626f017e015c7ecf24d7662504bc (patch)
treed1d11da65e91b55be23b665b5b601bee5dfc5b15
parent983d0df5e186d445d2b1936536363e9343fd0c60 (diff)
downloademacs-d14c81eec79c626f017e015c7ecf24d7662504bc.tar.gz
emacs-d14c81eec79c626f017e015c7ecf24d7662504bc.zip
Support newer versions of libjpeg on MS-Windows.
src/image.c (Qlibjpeg_version): New variable. (syms_of_image): DEFSYM and initialize it. lisp/term/w32-win.el (dynamic-library-alist): Support newer versions of libjpeg starting with v7: look only for the DLL from the version against which Emacs was built.
-rw-r--r--lisp/ChangeLog6
-rw-r--r--lisp/term/w32-win.el11
-rw-r--r--src/ChangeLog5
-rw-r--r--src/image.c19
4 files changed, 35 insertions, 6 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index e99950276d8..eecc10efbb9 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,9 @@
12013-11-01 Claudio Bley <claudio.bley@googlemail.com>
2
3 * term/w32-win.el (dynamic-library-alist): Support newer versions
4 of libjpeg starting with v7: look only for the DLL from the
5 version against which Emacs was built.
6
12013-11-01 Bozhidar Batsov <bozhidar@batsov.com> 72013-11-01 Bozhidar Batsov <bozhidar@batsov.com>
2 8
3 * progmodes/ruby-mode.el (ruby-indent-tabs-mode) 9 * progmodes/ruby-mode.el (ruby-indent-tabs-mode)
diff --git a/lisp/term/w32-win.el b/lisp/term/w32-win.el
index 9690a5a7d75..bf5f1b6435c 100644
--- a/lisp/term/w32-win.el
+++ b/lisp/term/w32-win.el
@@ -221,8 +221,17 @@ See the documentation of `create-fontset-from-fontset-spec' for the format.")
221 '(png "libpng12d.dll" "libpng12.dll" "libpng3.dll" "libpng.dll" 221 '(png "libpng12d.dll" "libpng12.dll" "libpng3.dll" "libpng.dll"
222 ;; these are libpng 1.2.8 from GTK+ 222 ;; these are libpng 1.2.8 from GTK+
223 "libpng13d.dll" "libpng13.dll")) 223 "libpng13d.dll" "libpng13.dll"))
224 '(jpeg "jpeg62.dll" "libjpeg.dll" "jpeg-62.dll" "jpeg.dll")
225 '(tiff "libtiff3.dll" "libtiff.dll") 224 '(tiff "libtiff3.dll" "libtiff.dll")
225 (if (> libjpeg-version 62)
226 ;; Versions of libjpeg after 6b are incompatible with
227 ;; earlier versions, and each of versions 7, 8, and 9 is
228 ;; also incompatible with the preceding ones (the core data
229 ;; structures used for communications with the library
230 ;; gained additional members with each new version). So we
231 ;; must use only the version of the library which Emacs was
232 ;; compiled against.
233 (list 'jpeg (format "libjpeg-%d.dll" (/ libjpeg-version 10)))
234 '(jpeg "jpeg62.dll" "libjpeg.dll" "jpeg-62.dll" "jpeg.dll"))
226 ;; Versions of giflib 5.0.0 and later changed signatures of 235 ;; Versions of giflib 5.0.0 and later changed signatures of
227 ;; several functions used by Emacs, which makes those versions 236 ;; several functions used by Emacs, which makes those versions
228 ;; incompatible with previous ones. We select the correct 237 ;; incompatible with previous ones. We select the correct
diff --git a/src/ChangeLog b/src/ChangeLog
index 0c76b176a1f..0d58733f4bf 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,8 @@
12013-11-01 Claudio Bley <claudio.bley@googlemail.com>
2
3 * image.c (Qlibjpeg_version): New variable.
4 (syms_of_image): DEFSYM and initialize it.
5
12013-10-31 Jan Djärv <jan.h.d@swipnet.se> 62013-10-31 Jan Djärv <jan.h.d@swipnet.se>
2 7
3 * emacs.c (main): Skip -psn args on OSX even if ! isatty (0). 8 * emacs.c (main): Skip -psn args on OSX even if ! isatty (0).
diff --git a/src/image.c b/src/image.c
index 6691cfc8a10..fca1bb077f6 100644
--- a/src/image.c
+++ b/src/image.c
@@ -87,11 +87,12 @@ typedef struct w32_bitmap_record Bitmap_Record;
87#define x_defined_color w32_defined_color 87#define x_defined_color w32_defined_color
88#define DefaultDepthOfScreen(screen) (one_w32_display_info.n_cbits) 88#define DefaultDepthOfScreen(screen) (one_w32_display_info.n_cbits)
89 89
90/* Versions of libpng and libgif that we were compiled with, or -1 if 90/* Versions of libpng, libgif, and libjpeg that we were compiled with,
91 no PNG/GIF support was compiled in. This is tested by w32-win.el 91 or -1 if no PNG/GIF support was compiled in. This is tested by
92 to correctly set up the alist used to search for the respective 92 w32-win.el to correctly set up the alist used to search for the
93 image libraries. */ 93 respective image libraries. */
94Lisp_Object Qlibpng_version, Qlibgif_version; 94Lisp_Object Qlibpng_version, Qlibgif_version, Qlibjpeg_version;
95
95#endif /* HAVE_NTGUI */ 96#endif /* HAVE_NTGUI */
96 97
97#ifdef HAVE_NS 98#ifdef HAVE_NS
@@ -9411,6 +9412,14 @@ non-numeric, there is no explicit limit on the size of images. */);
9411#else 9412#else
9412 make_number (-1) 9413 make_number (-1)
9413#endif 9414#endif
9415 );
9416 DEFSYM (Qlibjpeg_version, "libjpeg-version");
9417 Fset (Qlibjpeg_version,
9418#if HAVE_JPEG
9419 make_number (JPEG_LIB_VERSION)
9420#else
9421 make_number (-1)
9422#endif
9414 ); 9423 );
9415#endif 9424#endif
9416 9425