diff options
Diffstat (limited to 'libstdc++-v3/configure.in')
-rw-r--r-- | libstdc++-v3/configure.in | 127 |
1 files changed, 87 insertions, 40 deletions
diff --git a/libstdc++-v3/configure.in b/libstdc++-v3/configure.in index 8131c26256e..663e4f3d7fa 100644 --- a/libstdc++-v3/configure.in +++ b/libstdc++-v3/configure.in @@ -1,9 +1,15 @@ # Process this file with autoconf to produce a configure script, like so: -# aclocal, autoconf, autoheader, automake +# aclocal && autoconf && autoheader && automake AC_PREREQ(2.13) AC_INIT(src/ios.cc) +# This works around the fact that libtool configuration may change LD +# for this particular configuration, but some shells, instead of +# keeping the changes in LD private, export them just because LD is +# exported. +ORIGINAL_LD_FOR_MULTILIBS=$LD + PACKAGE=libstdc++ AC_SUBST(PACKAGE) # For typical GNU versioning info, format is MAJOR.MINOR.MICRO @@ -14,8 +20,9 @@ libtool_VERSION=4:0:0 AC_SUBST(libtool_VERSION) # Gets build, host, target, *_vendor, *_cpu, *_os, etc. -# AC 2.50 sets target_alias iff the user specified --target, but we use it -# everywhere, so we set it here just to be sure. +# AC 2.5x sets target_alias iff the user specified --target, but we use it +# everywhere, so we set it here just to be sure. In AC 2.13 +# AC_CANONICAL_TARGET was known as AC_CANONICAL_SYSTEM. AC_CANONICAL_SYSTEM target_alias=${target_alias-$target} AC_SUBST(target_alias) @@ -24,7 +31,7 @@ AM_INIT_AUTOMAKE($PACKAGE, $release_VERSION) AM_CONFIG_HEADER(config.h) # Runs configure.host and configure.target, as well as finds CC, CXX -# and assorted other critical bits. Have to run this before the +# and assorted other critical bits. Have to run this before the # GLIBCPP_ENABLE_* macros below. GLIBCPP_CONFIGURE(.) @@ -48,6 +55,7 @@ GLIBCPP_ENABLE_CHEADERS([c_std]) GLIBCPP_ENABLE_THREADS GLIBCPP_ENABLE_CXX_FLAGS([none]) GLIBCPP_ENABLE_SJLJ_EXCEPTIONS +GLIBCPP_ENABLE_LIBUNWIND_EXCEPTIONS GLIBCPP_ENABLE_CONCEPT_CHECKS @@ -141,48 +149,61 @@ if test -n "$with_cross_host" || test x"$build" != x"$host"; then AC_DEFINE(HAVE_FREXPF) AC_DEFINE(HAVE_HYPOTF) ;; + *-mingw32*) + AC_CHECK_HEADERS([sys/types.h locale.h float.h]) + GLIBCPP_CHECK_LINKER_FEATURES + GLIBCPP_CHECK_COMPLEX_MATH_SUPPORT + GLIBCPP_CHECK_WCHAR_T_SUPPORT + os_include_dir="config/os/mingw32" + ;; *) os_include_dir="config/os/newlib" AC_DEFINE(HAVE_HYPOT) ;; esac - # GLIBCPP_CHECK_STDLIB_SUPPORT - AC_DEFINE(HAVE_STRTOF) - AC_DEFINE(HAVE_STRTOLD) - # AC_FUNC_MMAP - AC_DEFINE(HAVE_MMAP) - - AC_DEFINE(HAVE_ACOSF) - AC_DEFINE(HAVE_ASINF) - AC_DEFINE(HAVE_ATAN2F) - AC_DEFINE(HAVE_ATANF) - AC_DEFINE(HAVE_CEILF) - AC_DEFINE(HAVE_COPYSIGN) - AC_DEFINE(HAVE_COPYSIGNF) - AC_DEFINE(HAVE_COSF) - AC_DEFINE(HAVE_COSHF) - AC_DEFINE(HAVE_EXPF) - AC_DEFINE(HAVE_FABSF) - AC_DEFINE(HAVE_FINITE) - AC_DEFINE(HAVE_FINITEF) - AC_DEFINE(HAVE_FLOORF) - AC_DEFINE(HAVE_FMODF) - AC_DEFINE(HAVE_FREXPF) - AC_DEFINE(HAVE_ISINF) - AC_DEFINE(HAVE_ISINFF) - AC_DEFINE(HAVE_ISNAN) - AC_DEFINE(HAVE_ISNANF) - AC_DEFINE(HAVE_LDEXPF) - AC_DEFINE(HAVE_LOG10F) - AC_DEFINE(HAVE_LOGF) - AC_DEFINE(HAVE_MODFF) - AC_DEFINE(HAVE_POWF) - AC_DEFINE(HAVE_SINF) - AC_DEFINE(HAVE_SINHF) - AC_DEFINE(HAVE_SQRTF) - AC_DEFINE(HAVE_TANF) - AC_DEFINE(HAVE_TANHF) + case "$target_alias" in + *-mingw32*) + ;; + *) + # GLIBCPP_CHECK_STDLIB_SUPPORT + AC_DEFINE(HAVE_STRTOF) + AC_DEFINE(HAVE_STRTOLD) + # AC_FUNC_MMAP + AC_DEFINE(HAVE_MMAP) + + AC_DEFINE(HAVE_ACOSF) + AC_DEFINE(HAVE_ASINF) + AC_DEFINE(HAVE_ATAN2F) + AC_DEFINE(HAVE_ATANF) + AC_DEFINE(HAVE_CEILF) + AC_DEFINE(HAVE_COPYSIGN) + AC_DEFINE(HAVE_COPYSIGNF) + AC_DEFINE(HAVE_COSF) + AC_DEFINE(HAVE_COSHF) + AC_DEFINE(HAVE_EXPF) + AC_DEFINE(HAVE_FABSF) + AC_DEFINE(HAVE_FINITE) + AC_DEFINE(HAVE_FINITEF) + AC_DEFINE(HAVE_FLOORF) + AC_DEFINE(HAVE_FMODF) + AC_DEFINE(HAVE_FREXPF) + AC_DEFINE(HAVE_ISINF) + AC_DEFINE(HAVE_ISINFF) + AC_DEFINE(HAVE_ISNAN) + AC_DEFINE(HAVE_ISNANF) + AC_DEFINE(HAVE_LDEXPF) + AC_DEFINE(HAVE_LOG10F) + AC_DEFINE(HAVE_LOGF) + AC_DEFINE(HAVE_MODFF) + AC_DEFINE(HAVE_POWF) + AC_DEFINE(HAVE_SINF) + AC_DEFINE(HAVE_SINHF) + AC_DEFINE(HAVE_SQRTF) + AC_DEFINE(HAVE_TANF) + AC_DEFINE(HAVE_TANHF) + ;; + esac # At some point, we should differentiate between architectures # like x86, which have long double versions, and alpha/powerpc/etc., @@ -301,6 +322,7 @@ AC_OUTPUT(Makefile \ libmath/Makefile libio/Makefile libsupc++/Makefile \ po/Makefile testsuite/Makefile mkcheck testsuite_flags, [if test -n "$CONFIG_FILES"; then + LD="${ORIGINAL_LD_FOR_MULTILIBS}" ac_file=Makefile . ${glibcpp_basedir}/../config-ml.in grep '^MULTISUBDIR =' Makefile >> src/Makefile grep '^MULTISUBDIR =' Makefile >> libsupc++/Makefile @@ -318,6 +340,31 @@ glibcpp_basedir=${glibcpp_basedir} CC="${CC}" CXX="${CXX}" ) +dnl In autoconf 2.5x, AC_OUTPUT is replaced by three AC_ macros: +dnl AC_CONFIG_FILES(Makefile \ +dnl include/Makefile src/Makefile \ +dnl libmath/Makefile libio/Makefile libsupc++/Makefile \ +dnl po/Makefile testsuite/Makefile mkcheck testsuite_flags) +dnl AC_CONFIG_COMMANDS([default], +dnl [if test -n "$CONFIG_FILES"; then +dnl ac_file=Makefile . ${glibcpp_basedir}/../config-ml.in +dnl grep '^MULTISUBDIR =' Makefile >> src/Makefile +dnl grep '^MULTISUBDIR =' Makefile >> libsupc++/Makefile +dnl fi +dnl chmod +x mkcheck +dnl chmod +x testsuite_flags +dnl ], +dnl srcdir=${srcdir} +dnl host=${host} +dnl target=${target} +dnl with_multisubdir=${with_multisubdir} +dnl ac_configure_args="${multilib_arg} ${ac_configure_args}" +dnl CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} +dnl glibcpp_basedir=${glibcpp_basedir} +dnl CC="${CC}" +dnl CXX="${CXX}" +dnl ) +dnl AC_OUTPUT # Sanity checking & User-visible messages. |