diff options
author | Laurent GUERBY <laurent@guerby.net> | 2008-09-21 11:45:23 +0000 |
---|---|---|
committer | Laurent Guerby <guerby@gcc.gnu.org> | 2008-09-21 11:45:23 +0000 |
commit | 7193e639277dc5eaf892bfa397a9608a2d24ed5e (patch) | |
tree | 6f1af2bb95b0dba92fa9fef1cff2bfb7e4406de2 /libada/configure.ac | |
parent | aa4652fac00c70ea32498ba2d1fb939e9fc0e274 (diff) | |
download | gcc-7193e639277dc5eaf892bfa397a9608a2d24ed5e.zip gcc-7193e639277dc5eaf892bfa397a9608a2d24ed5e.tar.gz gcc-7193e639277dc5eaf892bfa397a9608a2d24ed5e.tar.bz2 |
re PR ada/5911 (Support for multilib in Ada)
2008-09-21 Laurent Guerby <laurent@guerby.net>
PR ada/5911
* gcc-interface/Makefile.in: Add multilib handling for x86_64
and sparc.
* system-linux-sparcv9.ads: New file.
2008-09-21 Laurent Guerby <laurent@guerby.net>
Paolo Bonzini <bonzini@gnu.org>
PR ada/5911
* Makefile.in (all, install, mostlyclean, clean, distclean): Add
multilib handling.
* configure.ac: Add multilib handling.
* configure: Regenerate.
Co-Authored-By: Paolo Bonzini <bonzini@gnu.org>
From-SVN: r140525
Diffstat (limited to 'libada/configure.ac')
-rw-r--r-- | libada/configure.ac | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/libada/configure.ac b/libada/configure.ac index b0a46d0..c456e17 100644 --- a/libada/configure.ac +++ b/libada/configure.ac @@ -49,6 +49,54 @@ AC_ARG_ENABLE([maintainer-mode], [MAINT='#']) AC_SUBST([MAINT])dnl +AC_CANONICAL_SYSTEM +target_alias=${target_alias-$host_alias} + +AM_ENABLE_MULTILIB(, ..) +# Calculate toolexeclibdir +# Also toolexecdir, though it's only used in toolexeclibdir +case ${enable_version_specific_runtime_libs} in + yes) + # Need the gcc compiler version to know where to install libraries + # and header files if --enable-version-specific-runtime-libs option + # is selected. + toolexecdir='$(libdir)/gcc/$(target_alias)' + toolexeclibdir='$(toolexecdir)/$(gcc_version)$(MULTISUBDIR)' + ;; + no) + if test -n "$with_cross_host" && + test x"$with_cross_host" != x"no"; then + # Install a library built with a cross compiler in tooldir, not libdir. + toolexecdir='$(exec_prefix)/$(target_alias)' + toolexeclibdir='$(toolexecdir)/lib' + else + toolexecdir='$(libdir)/gcc-lib/$(target_alias)' + toolexeclibdir='$(libdir)' + fi + multi_os_directory=`$CC -print-multi-os-directory` + case $multi_os_directory in + .) ;; # Avoid trailing /. + *) toolexeclibdir=$toolexeclibdir/$multi_os_directory ;; + esac + ;; +esac +AC_SUBST(toolexecdir) +AC_SUBST(toolexeclibdir) +#TODO: toolexeclibdir is currently disregarded + +# Check the compiler. +# The same as in boehm-gc and libstdc++. Have to borrow it from there. +# We must force CC to /not/ be precious variables; otherwise +# the wrong, non-multilib-adjusted value will be used in multilibs. +# As a side effect, we have to subst CFLAGS ourselves. + +m4_rename([_AC_ARG_VAR_PRECIOUS],[real_PRECIOUS]) +m4_define([_AC_ARG_VAR_PRECIOUS],[]) +AC_PROG_CC +m4_rename([real_PRECIOUS],[_AC_ARG_VAR_PRECIOUS]) + +AC_SUBST(CFLAGS) + AC_ARG_ENABLE([shared], [AC_HELP_STRING([--disable-shared], [don't provide a shared libgnat])], |