On Tue, Nov 13, 2012 at 3:48 PM, Paolo Bonzini <bonz...@gnu.org> wrote: > Il 14/11/2012 00:43, H.J. Lu ha scritto: >> This works. > > Ok, then please test remove install-sh and friends and do > autoconf/automake again. If it works, commit the result (I don't care > if you make it one or two commits). > > Then, wait 24 hours for breakages and commit the multilib patch. > > Paolo
This is the multilib patch I will commit later. -- H.J. --- 2012-11-14 H.J. Lu <hongjiu...@intel.com> PR other/55291 * configure.ac (--enable-version-specific-runtime-libs): New option. (AC_CANONICAL_SYSTEM): New. (AM_ENABLE_MULTILIB): Moved right after AM_INIT_AUTOMAKE. (toolexecdir): Support multilib. (toolexeclibdir): Likewise. (multilib_arg): New. * Makefile.in: Regenerated. * aclocal.m4: Likewise. * configure: Likewise. * asan/Makefile.in: Likewise. * interception/Makefile.in: Likewise. * sanitizer_common/Makefile.in: Likewise. diff --git a/libsanitizer/configure.ac b/libsanitizer/configure.ac index 0b6cdef..27a7f95 100644 --- a/libsanitizer/configure.ac +++ b/libsanitizer/configure.ac @@ -4,7 +4,56 @@ AC_PREREQ([2.64]) AC_INIT(package-unused, version-unused, libsanitizer) AC_CONFIG_SRCDIR([include/sanitizer/common_interface_defs.h]) + +AC_MSG_CHECKING([for --enable-version-specific-runtime-libs]) +AC_ARG_ENABLE(version-specific-runtime-libs, +[ --enable-version-specific-runtime-libs Specify that runtime libraries should be installed in a compiler-specific directory ], +[case "$enableval" in + yes) version_specific_libs=yes ;; + no) version_specific_libs=no ;; + *) AC_MSG_ERROR([Unknown argument to enable/disable version-specific libs]);; + esac], +[version_specific_libs=no]) +AC_MSG_RESULT($version_specific_libs) + +# Do not delete or change the following two lines. For why, see +# http://gcc.gnu.org/ml/libstdc++/2003-07/msg00451.html +AC_CANONICAL_SYSTEM +target_alias=${target_alias-$host_alias} +AC_SUBST(target_alias) + AM_INIT_AUTOMAKE(foreign) +AM_ENABLE_MULTILIB(, ..) + +# Calculate toolexeclibdir +# Also toolexecdir, though it's only used in toolexeclibdir +case ${version_specific_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) # Checks for programs. AC_PROG_CC @@ -17,14 +66,11 @@ AM_PROG_LIBTOOL AC_SUBST(enable_shared) AC_SUBST(enable_static) -#AM_ENABLE_MULTILIB(, ..) -target_alias=${target_alias-$host_alias} -AC_SUBST(target_alias) - -toolexecdir='$(libdir)/gcc-lib/$(target_alias)' -toolexeclibdir='$(libdir)' -AC_SUBST(toolexecdir) -AC_SUBST(toolexeclibdir) +if test "${multilib}" = "yes"; then + multilib_arg="--enable-multilib" +else + multilib_arg= +fi AC_CONFIG_FILES([Makefile])