Message ID | 20140530170921.GK6953@redhat.com |
---|---|
State | New |
Headers | show |
On 05/30/14 11:09, Jonathan Wakely wrote: > 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 <jwakely@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. While it may be a top-level configure change, I'd consider it part of the libstdc++ world by extension. Approved. Jeff
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" ;;