summaryrefslogtreecommitdiffstats
path: root/win/configure.in
diff options
context:
space:
mode:
authormdejong <mdejong>2002-03-15 01:10:18 (GMT)
committermdejong <mdejong>2002-03-15 01:10:18 (GMT)
commit93f80c911dda1024d86d0faf63274fa858cc60f1 (patch)
tree69d06455b401989ef8a5ae460127b03d813d591d /win/configure.in
parentd2a773ac3184a75ad5c98c315ea7cce8646fcf2a (diff)
downloadtcl-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.in30
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.)
#--------------------------------------------------------------------