]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix MS-Windows build broken by 2012-09-15T07:06:56Z!eggert@cs.ucla.edu, completing...
authorEli Zaretskii <eliz@gnu.org>
Sat, 15 Sep 2012 08:03:11 +0000 (11:03 +0300)
committerEli Zaretskii <eliz@gnu.org>
Sat, 15 Sep 2012 08:03:11 +0000 (11:03 +0300)
 src/w32xfns.c:
 src/w32uniscribe.c:
 src/w32term.c:
 src/w32select.c:
 src/w32reg.c:
 src/w32proc.c:
 src/w32menu.c:
 src/w32inevt.c:
 src/w32heap.c:
 src/w32font.c:
 src/w32fns.c:
 src/w32console.c:
 src/w32.c:
 src/w16select.c: Remove inclusion of setjmp.h, as it is now included
 by lisp.h.  This completes removal of setjmp.h inclusion
 erroneously announced in the previous commit.
 src/lisp.h [!HAVE__SETJMP, !HAVE_SIGSETJMP]: Make the commentary
 more accurate.
 src/image.c (_setjmp) [!HAVE__SETJMP]: Define only if 'setjmp' is
 not defined as a macro.  The latter happens on MS-Windows.

17 files changed:
src/ChangeLog
src/image.c
src/lisp.h
src/w16select.c
src/w32.c
src/w32console.c
src/w32fns.c
src/w32font.c
src/w32heap.c
src/w32inevt.c
src/w32menu.c
src/w32proc.c
src/w32reg.c
src/w32select.c
src/w32term.c
src/w32uniscribe.c
src/w32xfns.c

index fb59e9e24dc780cd41a231de21de677e87d829a5..f9d31b08abda3efe905b812da729099424cc8cba 100644 (file)
@@ -1,8 +1,34 @@
+2012-09-15  Eli Zaretskii  <eliz@gnu.org>
+
+       * w32xfns.c:
+       * w32uniscribe.c:
+       * w32term.c:
+       * w32select.c:
+       * w32reg.c:
+       * w32proc.c:
+       * w32menu.c:
+       * w32inevt.c:
+       * w32heap.c:
+       * w32font.c:
+       * w32fns.c:
+       * w32console.c:
+       * w32.c:
+       * w16select.c: Remove inclusion of setjmp.h, as it is now included
+       by lisp.h.  This completes removal of setjmp.h inclusion
+       erroneously announced in the previous commit.  (Bug#12446)
+
+       * lisp.h [!HAVE__SETJMP, !HAVE_SIGSETJMP]: Make the commentary
+       more accurate.
+
+       * image.c (_setjmp) [!HAVE__SETJMP]: Define only if 'setjmp' is
+       not defined as a macro.  The latter happens on MS-Windows.
+       (Bug#12446)
+
 2012-09-15  Paul Eggert  <eggert@cs.ucla.edu>
 
        Port better to POSIX hosts lacking _setjmp (Bug#12446).
        * lisp.h: Include <setjmp.h> here, since we use its symbols here.
-       All instances of '#include <setjmp.h>' removed, if the
+       Some instances of '#include <setjmp.h>' removed, if the
        only reason for the instance was because "lisp.h" was included.
        (sys_jmp_buf, sys_setjmp, sys_longjmp): New symbols.
        Unless otherwise specified, replace all uses of jmp_buf, _setjmp,
index 6803dbe8f00b453da2eab8258daea836e622ddb7..02151c500ccf42b27df2824508ca512e168a055a 100644 (file)
@@ -5516,9 +5516,13 @@ init_png_functions (Lisp_Object libraries)
 
 /* Possibly inefficient/inexact substitutes for _setjmp and _longjmp.
    Do not use sys_setjmp, as PNG supports only jmp_buf.  The _longjmp
-   substitute may munge the signal mask, but that should be OK here.  */
+   substitute may munge the signal mask, but that should be OK here.
+   MinGW (MS-Windows) uses _setjmp and defines setjmp to _setjmp in
+   the system header setjmp.h; don't mess up that.  */
 #ifndef HAVE__SETJMP
-# define _setjmp(j) setjmp (j)
+# ifndef setjmp
+#  define _setjmp(j) setjmp (j)
+# endif
 # define _longjmp longjmp
 #endif
 
index 335ed8ba8312b346064d6955484a0b3004dae10e..447c6bd296b5812b1ff169e83ffc21e835aa8e9f 100644 (file)
@@ -1977,7 +1977,8 @@ typedef sigjmp_buf sys_jmp_buf;
 # define sys_setjmp(j) sigsetjmp (j, 0)
 # define sys_longjmp(j, v) siglongjmp (j, v)
 #else
-/* A non-POSIX platform; assume longjmp does not affect the sigmask.  */
+/* A platform that uses neither _longjmp nor siglongjmp; assume
+   longjmp does not affect the sigmask.  */
 typedef jmp_buf sys_jmp_buf;
 # define sys_setjmp(j) setjmp (j)
 # define sys_longjmp(j, v) longjmp (j, v)
index 2026de7421dcc7ce3b8486f1c4893f084d8441fb..a3f6f1fb9aef005d947bb9fa0a59f4ece19150de 100644 (file)
@@ -31,7 +31,6 @@ along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 #include <dpmi.h>
 #include <go32.h>
 #include <sys/farptr.h>
-#include <setjmp.h>
 #include "lisp.h"
 #include "dispextern.h"        /* frame.h seems to want this */
 #include "frame.h"     /* Need this to get the X window of selected_frame */
index 04f7471577c46b66edc8b0fdc879ef199201b924..bcb0511e2faa7f02ce079ef87488545430128268 100644 (file)
--- a/src/w32.c
+++ b/src/w32.c
@@ -33,7 +33,6 @@ along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 #include <sys/utime.h>
 #include <mbstring.h>  /* for _mbspbrk */
 #include <math.h>
-#include <setjmp.h>
 #include <time.h>
 
 /* must include CRT headers *before* config.h */
index 76585851e7f5fd0f3ee2579cbf96e5d7ad4090df..b22b09af2f2b4c07985554cc1e1da624044cd128 100644 (file)
@@ -26,7 +26,6 @@ along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 
 #include <stdio.h>
 #include <windows.h>
-#include <setjmp.h>
 
 #include "lisp.h"
 #include "character.h"
index ec1acbd89d9854065856eb95598c21a92ae44477..be008bb18c8ae173d87e7d73c5c21c2c34ad3ba5 100644 (file)
@@ -26,7 +26,6 @@ along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 #include <limits.h>
 #include <errno.h>
 #include <math.h>
-#include <setjmp.h>
 
 #include "lisp.h"
 #include "w32term.h"
index 8b3a0e4312e678f3d40297a5ad9b147ada7b7a4e..833b7cdfb2516992c431ae5da70e8728a84e40ec 100644 (file)
@@ -21,7 +21,6 @@ along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 #include <math.h>
 #include <ctype.h>
 #include <commdlg.h>
-#include <setjmp.h>
 
 #include "lisp.h"
 #include "w32term.h"
index 26cc9aa0a0f6ab97520626bbf320ed7d8aa55527..dc65198f90bed08ae1a33942f417f506a9b87907 100644 (file)
@@ -22,7 +22,6 @@ along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 
 #include <config.h>
 #include <stdio.h>
-#include <setjmp.h>
 
 #include "w32heap.h"
 #include "lisp.h"  /* for VALMASK */
index 731dd6715dc241d0af4ec28eee2b97934c602c3e..ee07db5335b4354d1bed2f08b4da51adcdb2c071 100644 (file)
@@ -25,7 +25,6 @@ along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 #include <config.h>
 #include <stdio.h>
 #include <windows.h>
-#include <setjmp.h>
 
 #ifndef MOUSE_MOVED
 #define MOUSE_MOVED   1
index d4de73a0de757758ce768735f080802eb81e33a6..fa7db64f147b4887fbdb9c2f933d5231889002f0 100644 (file)
@@ -22,7 +22,6 @@ along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 #include <signal.h>
 #include <stdio.h>
 #include <mbstring.h>
-#include <setjmp.h>
 
 #include "lisp.h"
 #include "keyboard.h"
index 74427e76a4ff52d63e9a1bacbf077abb961d9dfa..26a0925ad8718f3f8a2cdba3c17ac9937d7dc5ee 100644 (file)
@@ -28,7 +28,6 @@ along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 #include <fcntl.h>
 #include <signal.h>
 #include <sys/file.h>
-#include <setjmp.h>
 
 /* must include CRT headers *before* config.h */
 #include <config.h>
index 9c727ae5ab75e386bda1d2d561b740cbdd26edcd..8a6a3c853b1982eaab69ced04f7c4d13e689d5eb 100644 (file)
@@ -19,7 +19,6 @@ along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 /* Written by Kevin Gallo */
 
 #include <config.h>
-#include <setjmp.h>
 #include "lisp.h"
 #include "w32term.h"
 #include "blockinput.h"
index 3fb88d4f17fd3996067e478fcfdd39902bee4163..11c68c9c617a1302eb6812c8b49a5b002ac14e84 100644 (file)
@@ -73,7 +73,6 @@ along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
  */
 
 #include <config.h>
-#include <setjmp.h>
 #include "lisp.h"
 #include "w32term.h"   /* for all of the w32 includes */
 #include "w32heap.h"   /* os_subtype */
index 28c1c593cf645ecd02c7e7796177ce015d2a7477..69a16e1852b5a3aeeea9e64ac1f1afc4f0b4cd60 100644 (file)
@@ -20,7 +20,6 @@ along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 #include <config.h>
 #include <signal.h>
 #include <stdio.h>
-#include <setjmp.h>
 #include "lisp.h"
 #include "blockinput.h"
 #include "w32term.h"
index cf99d14dc77a55a3714630f62bd9b1001bbd4973..5d160b9d42f22dad437e8010a485c4d37370784c 100644 (file)
@@ -27,7 +27,6 @@ along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 #define _WIN32_WINNT 0x500
 #include <windows.h>
 #include <usp10.h>
-#include <setjmp.h>
 
 #include "lisp.h"
 #include "w32term.h"
index 820dbcc76c60d63369bbb73c91e87572eb4ebf0c..33f40fc7c019af0acca18e009d7620b04b5c3fb2 100644 (file)
@@ -19,7 +19,6 @@ along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 #include <config.h>
 #include <signal.h>
 #include <stdio.h>
-#include <setjmp.h>
 #include "lisp.h"
 #include "keyboard.h"
 #include "frame.h"