PING
This is a change to top-level configure, not libstdc++ itself, so I
need approval.
On 20/05/14 15:59 +0100, Jonathan Wakely wrote:
On 20/05/14 15:53 +0100, Jonathan Wakely wrote:
The first part of this patch fixes the PR, we should be adding
target-libstdc++-v3 to noconfigdirs, not libstdc++-v3.
The second part disables the target libs that can't be bootstrapped
without libstdc++.
libcilkrts and libsanitizer use lots of std:: stuff.
libitm only uses std::atomic, but in any case fails to build when
--disable-libstdcxx is used, with this error:
xg++: error: unrecognized command line option ‘-funconfigured-libstdc++-v3’
Bootstrapped with and without --disable-libstdcxx and tested on
x86_64-linux.
PR libstdc++/61011
* configure.ac (--disable-libstdcxx): Set noconfigdirs correctly.
Disable libcilkrts, libitm, libsanitizer when not building libstdc++.
* configure: Regenerate.
OK for trunk?
With the patch this time ...
commit c384fef85bca43046b65eb02267169a5613af2b8
Author: Jonathan Wakely <jwak...@redhat.com>
Date: Tue May 20 12:13:43 2014 +0100
PR libstdc++/61011
* configure.ac (--disable-libstdcxx): Set noconfigdirs correctly.
Disable libcilkrts, libitm, libsanitizer when not building libstdc++.
* configure: Regenerate.
diff --git a/configure.ac b/configure.ac
index 07c3a66..548525b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -435,7 +435,7 @@ AS_HELP_STRING([--disable-libstdcxx],
ENABLE_LIBSTDCXX=$enableval,
ENABLE_LIBSTDCXX=default)
[if test "${ENABLE_LIBSTDCXX}" = "no" ; then
- noconfigdirs="$noconfigdirs libstdc++-v3"
+ noconfigdirs="$noconfigdirs target-libstdc++-v3"
fi]
# Save it here so that, even in case of --enable-libgcj, if the Java
@@ -2057,9 +2057,17 @@ case ,${enable_languages},:${enable_objc_gc} in
;;
esac
-# Disable libitm, libsanitizer, libvtv if we're not building C++
+# Disable libcilkrts, libitm, libsanitizer, libvtv if we're not building C++
case ,${enable_languages}, in
- *,c++,*) ;;
+ *,c++,*)
+ # Disable libcilkrts, libitm, libsanitizer if we're not building libstdc++
+ case "${noconfigdirs}" in
+ *target-libstdc++-v3*)
+ noconfigdirs="$noconfigdirs target-libcilkrts target-libitm
target-libsanitizer"
+ ;;
+ *) ;;
+ esac
+ ;;
*)
noconfigdirs="$noconfigdirs target-libcilkrts target-libitm target-libsanitizer
target-libvtv"
;;