On Tue, 19 Dec 2017 11:37:43 +0300 Petr Ovtchenkov <p...@void-ptr.info> wrote:
ping^3 > On Thu, 16 Nov 2017 20:55:37 +0300 > Petr Ovtchenkov <p...@void-ptr.info> wrote: > > > On Wed, 20 Sep 2017 13:44:59 +0300 > > Petr Ovtchenkov <p...@void-ptr.info> wrote: > > > > > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71212 > > > > > > On Fri, 20 May 2016 16:10:50 +0300 > > > Petr Ovtchenkov <p...@void-ptr.info> wrote: > > > > > > > Some old ad-hoc (adding -I/usr/include to compiler > > > > flags) break compilation of libstdc++ for foreign > > > > target architecture (due to compiler see includes > > > > of native). > > > > Reference for terms: > > > > https://gcc.gnu.org/onlinedocs/gccint/Configure-Terms.html > > > > Present of "CANADIAN=yes" lead to inclusion of > > headers from build (-I/usr/include). "CANADIAN=yes" used _only_ > > to set "-I/usr/include". > > > > Inclusion of build headers in cross-compilation > > process is not a mistake only in case of native (i.e. it is mistake > > for cross, for canadian, for crossed native and for crossback), > > but sometimes give "success". > > > > Note, that build/host/target may be different not only due to > > different architectures, but due to different sysroots > > (libc, kernel, binutils, etc.). > > > > CANADIAN is set to "yes" by code > > > > - # If Canadian cross, then don't pick up tools from the build directory. > > - # Used only in GLIBCXX_EXPORT_INCLUDES. > > - if test -n "$with_cross_host" && > > - test x"$build_alias" != x"$with_cross_host" && > > - test x"$build" != x"$target"; > > - then > > - CANADIAN=yes > > - else > > - CANADIAN=no > > - fi > > > > and it add "-I/usr/include" to compiler flags for building libstdc++. > > This is wrong. > > > > Reference to patch: > > https://gcc.gnu.org/ml/gcc-patches/2017-09/msg01332.html