This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PING^3] [PATCH] Remove CANADIAN, that break compilation for foreign target


On Tue, 19 Dec 2017 11:37:43 +0300
Petr Ovtchenkov <ptr@void-ptr.info> wrote:

ping^3

> On Thu, 16 Nov 2017 20:55:37 +0300
> Petr Ovtchenkov <ptr@void-ptr.info> wrote:
> 
> > On Wed, 20 Sep 2017 13:44:59 +0300
> > Petr Ovtchenkov <ptr@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 <ptr@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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]