diff options
Diffstat (limited to 'libgcc/configure.ac')
-rw-r--r-- | libgcc/configure.ac | 157 |
1 files changed, 157 insertions, 0 deletions
diff --git a/libgcc/configure.ac b/libgcc/configure.ac new file mode 100644 index 00000000000..1a36964c34e --- /dev/null +++ b/libgcc/configure.ac @@ -0,0 +1,157 @@ +dnl Process this file with autoconf to produce a configure script. + +sinclude(../config/acx.m4) +sinclude(../config/no-executables.m4) + +AC_PREREQ(2.59) +AC_INIT([GNU C Runtime Library], 1.0,,[libgcc]) +AC_CONFIG_SRCDIR([static-object.mk]) + +AC_ARG_WITH(target-subdir, +[ --with-target-subdir=SUBDIR Configuring in a subdirectory for target]) +AC_ARG_WITH(cross-host, +[ --with-cross-host=HOST Configuring with a cross compiler]) +AC_ARG_WITH(ld, +[ --with-ld arrange to use the specified ld (full pathname)]) + +if test "${srcdir}" = "."; then + if test -n "${with_build_subdir}"; then + libgcc_topdir="${srcdir}/../.." + with_target_subdir= + elif test -z "${with_target_subdir}"; then + libgcc_topdir="${srcdir}/.." + else + if test "${with_target_subdir}" != "."; then + libgcc_topdir="${srcdir}/${with_multisrctop}../.." + else + libgcc_topdir="${srcdir}/${with_multisrctop}.." + fi + fi +else + libgcc_topdir="${srcdir}/.." +fi +AC_SUBST(libgcc_topdir) +AC_CONFIG_AUX_DIR($libgcc_topdir) + +AC_ARG_ENABLE(shared, +[ --disable-shared don't provide a shared libgcc], +[ + case $enable_shared in + yes | no) ;; + *) + enable_shared=no + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:," + for pkg in $enableval; do + if test "X$pkg" = "Xgcc" || test "X$pkg" = "Xlibgcc"; then + enable_shared=yes + fi + done + IFS="$ac_save_ifs" + ;; + esac +], [enable_shared=yes]) +AC_SUBST(enable_shared) + +AC_ARG_WITH(slibdir, +[ --with-slibdir=DIR shared libraries in DIR [LIBDIR]], +slibdir="$with_slibdir", +if test "${enable_version_specific_runtime_libs+set}" = set; then + slibdir='$(libsubdir)' +elif test "$host" != "$target"; then + slibdir='$(build_tooldir)/lib' +else + slibdir='$(libdir)' +fi) +AC_SUBST(slibdir) + +AC_PROG_INSTALL + +AC_PROG_AWK +# We need awk; bail out if it's missing. +case ${AWK} in + "") AC_MSG_ERROR([can't build without awk, bailing out]) ;; +esac + +AC_CANONICAL_HOST +ACX_NONCANONICAL_HOST + +dnl These must be called before AM_PROG_LIBTOOL, because it may want +dnl to call AC_CHECK_PROG. +AC_CHECK_TOOL(AR, ar) +AC_CHECK_TOOL(LIPO, lipo, :) +AC_CHECK_TOOL(NM, nm) +AC_CHECK_TOOL(RANLIB, ranlib, :) +AC_CHECK_TOOL(STRIP, strip, :) +AC_PROG_LN_S + +GCC_NO_EXECUTABLES +AC_PROG_CC +AC_PROG_CPP_WERROR + +# Check for decimal float support. +AC_CACHE_CHECK([whether decimal floating point is supported], [libgcc_cv_dfp], + [AC_COMPILE_IFELSE([_Decimal32 x;], [libgcc_cv_dfp=yes], + [libgcc_cv_dfp=no])]) +decimal_float=$libgcc_cv_dfp +AC_SUBST(decimal_float) + +# Collect host-machine-specific information. +. ${srcdir}/config.host + +# Check for visibility support. This is after config.host so that +# we can check for asm_hidden_op. +AC_CACHE_CHECK([for __attribute__((visibility("hidden")))], + libgcc_cv_hidden_visibility_attribute, [ + echo 'int __attribute__ ((visibility ("hidden"))) foo (void) { return 1; }' > conftest.c + libgcc_cv_hidden_visibility_attribute=no + if AC_TRY_COMMAND(${CC-cc} -Werror -S conftest.c -o conftest.s 1>&AS_MESSAGE_LOG_FD); then + if grep "\\$asm_hidden_op.*foo" conftest.s >/dev/null; then + libgcc_cv_hidden_visibility_attribute=yes + fi + fi + rm -f conftest.* + ]) + +if test $libgcc_cv_hidden_visibility_attribute = yes; then + vis_hide='-fvisibility=hidden -DHIDE_EXPORTS' +else + vis_hide= +fi +AC_SUBST(vis_hide) + +# Conditionalize the makefile for this target machine. +tmake_file_= +for f in ${tmake_file} +do + if test -f ${srcdir}/config/$f + then + tmake_file_="${tmake_file_} \$(srcdir)/config/$f" + fi +done +tmake_file="${tmake_file_}" +AC_SUBST(tmake_file) + +# Substitute configuration variables +AC_SUBST(extra_parts) +AC_SUBST(asm_hidden_op) + +# We need multilib support. +AC_CONFIG_FILES([Makefile]) +AC_CONFIG_COMMANDS([default], + [[test -z "$CONFIG_HEADERS" || echo timestamp > stamp-h +if test -n "$CONFIG_FILES"; then + # FIXME: We shouldn't need to set ac_file + ac_file=Makefile + . ${libgcc_topdir}/config-ml.in +fi]], +[[srcdir=${srcdir} +host=${host} +target=${target} +with_target_subdir=${with_target_subdir} +with_multisubdir=${with_multisubdir} +ac_configure_args="--enable-multilib ${ac_configure_args}" +CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} +libgcc_topdir=${libgcc_topdir} +CC="${CC}" +]]) +AC_OUTPUT |