diff options
author | mdejong <mdejong> | 2002-03-15 01:10:18 (GMT) |
---|---|---|
committer | mdejong <mdejong> | 2002-03-15 01:10:18 (GMT) |
commit | 93f80c911dda1024d86d0faf63274fa858cc60f1 (patch) | |
tree | 69d06455b401989ef8a5ae460127b03d813d591d /win/configure.in | |
parent | d2a773ac3184a75ad5c98c315ea7cce8646fcf2a (diff) | |
download | tcl-93f80c911dda1024d86d0faf63274fa858cc60f1.zip tcl-93f80c911dda1024d86d0faf63274fa858cc60f1.tar.gz tcl-93f80c911dda1024d86d0faf63274fa858cc60f1.tar.bz2 |
* win/configure: Regen.
* win/configure.in: Add configure time test for SEH
support in the compiler.
* win/tclWin32Dll.c (ESP, EBP, TclpCheckStackSpace,
_except_checkstackspace_handler):
* win/tclWinChan.c (ESP, EBP, Tcl_MakeFileChannel,
_except_makefilechannel_handler):
* win/tclWinFCmd.c (ESP, EBP, DoRenameFile,
_except_dorenamefile_handler,
DoCopyFile, _except_docopyfile_handler):
Implement SEH support under gcc using inline asm.
Tcl and Tk should now compile with Mingw 1.1. [Patch 525746]
Diffstat (limited to 'win/configure.in')
-rw-r--r-- | win/configure.in | 30 |
1 files changed, 29 insertions, 1 deletions
diff --git a/win/configure.in b/win/configure.in index de84e19..067a790 100644 --- a/win/configure.in +++ b/win/configure.in @@ -3,7 +3,7 @@ # generate the file "configure", which is run during Tcl installation # to configure the system for the local environment. # -# RCS: @(#) $Id: configure.in,v 1.47 2002/03/06 15:20:23 dkf Exp $ +# RCS: @(#) $Id: configure.in,v 1.48 2002/03/15 01:10:19 mdejong Exp $ AC_INIT(../generic/tcl.h) @@ -83,6 +83,34 @@ if test "$ac_cv_cygwin" = "yes" ; then Use the Mingw version of gcc from www.mingw.org instead.]) fi + +AC_CACHE_CHECK(for SEH support in compiler, + tcl_cv_seh, +AC_TRY_RUN([ +#define WIN32_LEAN_AND_MEAN +#include <windows.h> +#undef WIN32_LEAN_AND_MEAN + +int main(int argc, char** argv) { + int a, b = 0; + __try { + a = 666 / b; + } + __except (EXCEPTION_EXECUTE_HANDLER) { + return 0; + } + return 1; +} +], + tcl_cv_seh=yes, + tcl_cv_seh=no, + tcl_cv_seh=no) +) +if test "$tcl_cv_seh" = "no" ; then + AC_DEFINE(HAVE_NO_SEH,, + [Defined when mingw does not support SEH]) +fi + #-------------------------------------------------------------------- # Determines the correct binary file extension (.o, .obj, .exe etc.) #-------------------------------------------------------------------- |