diff options
author | Daniel Jacobowitz <dan@codesourcery.com> | 2007-01-04 04:22:37 +0000 |
---|---|---|
committer | Daniel Jacobowitz <drow@gcc.gnu.org> | 2007-01-04 04:22:37 +0000 |
commit | fa9585134f6f58fa0d3da3ca4ad5493855aea2dc (patch) | |
tree | ecf7edd5c93f496f2642ef1338e111c0d7a42345 /libgcc/configure.ac | |
parent | de43c613ab910ecc5c551e1646cc6a4241a00035 (diff) | |
download | gcc-fa9585134f6f58fa0d3da3ca4ad5493855aea2dc.zip gcc-fa9585134f6f58fa0d3da3ca4ad5493855aea2dc.tar.gz gcc-fa9585134f6f58fa0d3da3ca4ad5493855aea2dc.tar.bz2 |
Makefile.def (target_modules): Add libgcc.
./ * Makefile.def (target_modules): Add libgcc.
(lang_env_dependencies): Remove default items. Use no_c and no_gcc.
* Makefile.tpl (clean-target-libgcc): Delete.
(configure-target-[+module+]): Emit --disable-bootstrap dependencies
on gcc even for bootstrapped modules. Rewrite handling of
lang_env_dependencies to loop over target_modules.
* configure.in (target_libraries): Add target-libgcc.
* Makefile.in, configure: Regenerated.
gcc/
* config.gcc: Mention libgcc/config.host.
* Makefile.in: Update comments mentioning libgcc.
(LIBGCC, INSTALL_LIBGCC, GCC_PARTS, mklibgcc): Delete.
(all.cross, start.encap, rest.encap, rest.cross): Update
dependencies for libgcc move.
(libgcc.mk, LIBGCC_DEPS, libgcov.a, libgcc.a, stmp-multilib)
(clean-target, clean-target-libgcc): Delete.
(srcdirify, GCC_EXTRA_PARTS): New macros.
(libgcc-support, libgcc.mvars): New rules.
(distclean): Remove mention of mklibgcc.
(install): Don't reference INSTALL_LIBGCC.
(install-common): Don't reference EXTRA_PARTS.
(install-libgcc, install-multilib): Delete rules.
* mklibgcc.in: Delete file.
* doc/configfiles.texi: Don't mention mklibgcc.
* config/i386/t-darwin (SHLIB_VERPFX): Delete (moved to libgcc).
* config/i386/t-darwin64 (SHLIB_VERPFX): Likewise.
* config/rs6000/t-darwin (SHLIB_VERPFX): Likewise.
* config/rs6000/t-ppccomm (TARGET_LIBGCC2_CFLAGS, SHLIB_MAPFILES)
(mklibgcc, ldblspecs): Likewise.
* config/i386/t-nwld (libgcc.def, libc.def, libpcre.def)
(posixpre.def): Use $(T).
(SHLIB_EXT, SHLIB_NAME, SHLIB_SLIBDIR_QUAL, SHLIB_DEF, SHLIB_MAP)
(SHLIB_SRC, SHLIB_INSTALL): Delete.
(SHLIB_LINK): Make dummy.
* config/t-slibgcc-darwin: Delete contents except for dummy SHLIB_LINK.
* config/frv/t-linux (EXTRA_MULTILIB_PARTS): Clear.
* config/alpha/t-crtfm: Use $(T) in rules for EXTRA_PARTS.
* config/alpha/t-vms, config/alpha/t-vms64, config/fr30/t-fr30,
config/i386/t-rtems-i386, config/ia64/t-ia64, config/rs6000/t-beos,
config/rs6000/t-newas, config/sparc/t-elf: Likewise.
* configure.ac (all_outputs): Remove mklibgcc.
* configure: Regenerated.
libgcc/
* Makefile.in, config/i386/t-darwin, config/i386/t-darwin64,
config/i386/t-nwld, config/rs6000/t-darwin, config/rs6000/t-ldbl128,
config/i386/t-crtfm, config/alpha/t-crtfm, config/ia64/t-ia64,
config/sparc/t-crtfm, config/t-slibgcc-darwin,
config/rs6000/t-ppccomm, config.host, configure.ac, empty.mk,
shared-object.mk, siditi-object.mk, static-object.mk: New files.
* configure: Generated.
Co-Authored-By: Paolo Bonzini <bonzini@gnu.org>
From-SVN: r120429
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 0000000..1a36964 --- /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 |