Port _setjmp fix to POSIXish hosts as well as Microsoft.
* nt/config.nt: Attempt to sync with autogen/config.in. (HAVE_SIGSETJMP, HAVE__SETJMP): New macros. (_longjmp, _setjmp): Remove. * src/image.c (_setjmp) [!HAVE__SETJMP]: Restore definition, as it's needed on POSIXish hosts that lack _setjmp. Attempt to solve the Microsoft problem in a different way, by altering nt/config.nt.
This commit is contained in:
parent
7105c8cbf3
commit
39a57ad07b
4 changed files with 22 additions and 11 deletions
|
@ -1,3 +1,10 @@
|
|||
2012-09-15 Paul Eggert <eggert@cs.ucla.edu>
|
||||
|
||||
Port _setjmp fix to POSIXish hosts as well as Microsoft.
|
||||
* config.nt: Attempt to sync with autogen/config.in.
|
||||
(HAVE_SIGSETJMP, HAVE__SETJMP): New macros.
|
||||
(_longjmp, _setjmp): Remove.
|
||||
|
||||
2012-09-14 Juanma Barranquero <lekktu@gmail.com>
|
||||
|
||||
* config.nt: Sync with autogen/config.in.
|
||||
|
|
15
nt/config.nt
15
nt/config.nt
|
@ -800,6 +800,10 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
/* Define to 1 if 'wint_t' is a signed integer type. */
|
||||
#undef HAVE_SIGNED_WINT_T
|
||||
|
||||
/* Define to 1 if sigsetjmp and siglongjmp work. The value of this symbol is
|
||||
irrelevant if HAVE__SETJMP is defined. */
|
||||
#undef HAVE_SIGSETJMP
|
||||
|
||||
/* Define to 1 if the system has the type `sigset_t'. */
|
||||
#undef HAVE_SIGSET_T
|
||||
|
||||
|
@ -1084,6 +1088,9 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
/* Define to 1 if you have the `_ftime' function. */
|
||||
#undef HAVE__FTIME
|
||||
|
||||
/* Define to 1 if _setjmp and _longjmp work. */
|
||||
#define HAVE__SETJMP 1
|
||||
|
||||
/* Define to 1 if you have the `__builtin_unwind_init' function. */
|
||||
#undef HAVE___BUILTIN_UNWIND_INIT
|
||||
|
||||
|
@ -1511,14 +1518,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
declarations. Define as empty for no equivalent. */
|
||||
#undef __restrict_arr
|
||||
|
||||
/* Define to longjmp if _setjmp and _longjmp do not work. Because longjmp may
|
||||
alter signal masks, callers of _longjmp should not assume that it leaves
|
||||
signal masks alone. */
|
||||
#undef _longjmp
|
||||
|
||||
/* Define to setjmp if _setjmp and _longjmp do not work. See _longjmp. */
|
||||
#undef _setjmp
|
||||
|
||||
/* Some platforms that do not use configure define this to include extra
|
||||
configuration information. */
|
||||
#define config_opsysfile <ms-w32.h>
|
||||
|
|
|
@ -1,3 +1,10 @@
|
|||
2012-09-15 Paul Eggert <eggert@cs.ucla.edu>
|
||||
|
||||
Port _setjmp fix to POSIXish hosts as well as Microsoft.
|
||||
* image.c (_setjmp) [!HAVE__SETJMP]: Restore definition, as
|
||||
it's needed on POSIXish hosts that lack _setjmp. Attempt to solve
|
||||
the Microsoft problem in a different way, by altering ../nt/config.nt.
|
||||
|
||||
2012-09-15 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* w32xfns.c:
|
||||
|
|
|
@ -5520,9 +5520,7 @@ init_png_functions (Lisp_Object libraries)
|
|||
MinGW (MS-Windows) uses _setjmp and defines setjmp to _setjmp in
|
||||
the system header setjmp.h; don't mess up that. */
|
||||
#ifndef HAVE__SETJMP
|
||||
# ifndef setjmp
|
||||
# define _setjmp(j) setjmp (j)
|
||||
# endif
|
||||
# define _setjmp(j) setjmp (j)
|
||||
# define _longjmp longjmp
|
||||
#endif
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue