aboutsummaryrefslogtreecommitdiff
path: root/configure.ac
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2017-11-06 08:29:48 -0800
committerH.J. Lu <hjl.tools@gmail.com>2017-11-06 08:29:57 -0800
commitabcb584d0eae7270b35e1b3fed1f9661e26b8be0 (patch)
tree135e0a2bd7688a052a8bc3b1ddc9cbce570d3873 /configure.ac
parent4e2dff67beeb063cb36fe100d9d2b3f2f88d80c6 (diff)
downloadglibc-abcb584d0eae7270b35e1b3fed1f9661e26b8be0.zip
glibc-abcb584d0eae7270b35e1b3fed1f9661e26b8be0.tar.gz
glibc-abcb584d0eae7270b35e1b3fed1f9661e26b8be0.tar.bz2
Use newly built crt*.o files to build shared objects [BZ #22362]
When multi-lib GCC is used to build glibc, the search order of GCC driver for crt*.o is -B*/`gcc -print-multi-directory`, the installed diretory, -B*/. This patch adds multi-lib support to csu/Makefile so that -B/glibc-build-directory/csu/ will pick up the newly built crt*.o. Tested on x86-64 for i686 and x32. [BZ #22362] * Makerules (make-link-multidir): New. * config.make.in (multidir): New. * configure.ac (libc_cv_multidir): New. AC_SUBST. * configure: Regenerated. * csu/Makefile [$(multidir) != .](multilib-extra-objs): New. [$(multidir) != .](extra-objs): Add $(multilib-extra-objs). [$(multidir) != .]($(addprefix $(objpfx)$(multidir)/, $(install-lib))): New target.
Diffstat (limited to 'configure.ac')
-rw-r--r--configure.ac5
1 files changed, 5 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac
index 148f7d1..9f25c9f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1783,6 +1783,11 @@ fi
rm -f conftest.*])
AC_SUBST(libc_cv_pie_default)
+# Set the `multidir' variable by grabbing the variable from the compiler.
+# We do it once and save the result in a generated makefile.
+libc_cv_multidir=`${CC-cc} $CFLAGS $CPPFLAGS -print-multi-directory`
+AC_SUBST(libc_cv_multidir)
+
AC_SUBST(profile)
AC_SUBST(static_nss)