aboutsummaryrefslogtreecommitdiff
path: root/gcc/configure
diff options
context:
space:
mode:
authorDanny Smith <dannysmith@users.sourceforge.net>2006-11-01 06:23:12 +0000
committerDanny Smith <dannysmith@gcc.gnu.org>2006-11-01 06:23:12 +0000
commit97388150b4635856c7b8dabc45dbf5f3ddf47a79 (patch)
treea6f02d60df84edc128eac9c800531bb6b5dc6bbb /gcc/configure
parentd5523ce18d221e06e62cf2ef506fb5ffffa4fd2d (diff)
downloadgcc-97388150b4635856c7b8dabc45dbf5f3ddf47a79.zip
gcc-97388150b4635856c7b8dabc45dbf5f3ddf47a79.tar.gz
gcc-97388150b4635856c7b8dabc45dbf5f3ddf47a79.tar.bz2
target.h (targetm.cxx.use_atexit_for_cxa_atexit): New target hook.
* target.h (targetm.cxx.use_atexit_for_cxa_atexit): New target hook. * target-def.h: (TARGET_CXX_USE_ATEXIT_FOR_CXA_ATEXIT): Define default. * config/i386/mingw32.h (TARGET_CXX_USE_ATEXIT_FOR_CXA_ATEXIT): Override default. * doc/tm.texi (TARGET_CXX_USE_ATEXIT_FOR_CXA_ATEXIT): Document. * configure.ac (use_cxa_atexit): As a special case, don't test for libc definition of __cxa_atexit on mingw32 * configure: Regenerate. * config.gcc (i[34567]86-pc-mingw32): Default to enable__cxa_atexit=yes. cp * decl.c (get_atexit_node): Reference atexit, not __cxa_exit. if targetm.cxx.use_atexit_for cxa_atexit. (start_cleanup_fn): Likewise. (register_dtor_fn): Likewise. From-SVN: r118371
Diffstat (limited to 'gcc/configure')
-rwxr-xr-xgcc/configure11
1 files changed, 10 insertions, 1 deletions
diff --git a/gcc/configure b/gcc/configure
index cbf94b5..49535d5 100755
--- a/gcc/configure
+++ b/gcc/configure
@@ -12428,7 +12428,14 @@ use_cxa_atexit=no
if test x$enable___cxa_atexit = xyes || \
test x$enable___cxa_atexit = x -a x$default_use_cxa_atexit = xyes; then
if test x$host = x$target; then
- echo "$as_me:$LINENO: checking for __cxa_atexit" >&5
+ case $host in
+ # mingw32 doesn't have __cxa_atexit but uses atexit registration
+ # keyed to flag_use_cxa_atexit
+ *-*-mingw32*)
+ use_cxa_atexit=yes
+ ;;
+ *)
+ echo "$as_me:$LINENO: checking for __cxa_atexit" >&5
echo $ECHO_N "checking for __cxa_atexit... $ECHO_C" >&6
if test "${ac_cv_func___cxa_atexit+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -12524,6 +12531,8 @@ else
echo "__cxa_atexit can't be enabled on this target"
fi
+ ::
+ esac
else
# We can't check for __cxa_atexit when building a cross, so assume
# it is available