On Sun, 12 Jan 2014 11:08:18 +0100
Michał Górny <mgo...@gentoo.org> wrote:

> Dnia 2014-01-12, o godz. 03:50:53
> Ryan Hill <dirtye...@gentoo.org> napisał(a):

> > Bootstrapping makes distcc impossible, and you can't bootstrap these days
> > without building C and C++.  Even if you're not bootstrapping, the back and
> > middle ends are shared.  You have to build them to build the front-ends.
> > Maybe you could cut out a couple of the target libraries, so you're really
> > not gaining much.
 
> Yes but if C & C++ was installed after it is built, distcc/ccache could
> be then used to build the Fortran & GCJ & so on. Of course, there's
> another matter of matching gcc versions between hosts but that's just
> another problem that needs addressing elsewhere.

Unfortunately not, at least for ccache.  When a new C compiler is installed, it
invalidates the cache that was generated by the previous compiler while building
it because ccache hashes the compiler's mtime.  Furthermore in stage2/3 you
can't use either ccache or distcc.  ccache because the mtime has changed again,
the command line changes between stages (stage1 is built with minimal flags
for speed, stage 2 with normal flags, and stage 3 with -gtoggle to make sure
the addition of debug info doesn't change code generation).  The build system
also bypasses ccache during stage2/3 by directly calling the binary in the
build tree (after all, using cached data between stages would kind of defeat
the purpose of bootstrapping). I'm less familiar with distcc but if the remote
host doesn't have a copy of the just-built compiler I don't think there's much
it can do.

> Considering that it saves you like 5M? I'd rather keep it enabled. 5M
> won't save the day, while waiting extra 2 hours for gcc rebuild because
> some package needs Fortran is irritating. And I say two hours because,
> say, I had to enable USE=gcj earlier and now I have to rebuild that
> huge thing.

Okay, good example.  No[1] one[2] likes[3] building gcj.

[1] http://gcc.gnu.org/ml/gcc/2008-06/msg00425.html
[2] http://gcc.gnu.org/ml/gcc/2010-10/msg00506.html
[3] http://gcc.gnu.org/ml/gcc/2013-11/msg00153.html


-- 
Ryan Hill                        psn: dirtyepic_sk
   gcc-porting/toolchain/wxwidgets @ gentoo.org

47C3 6D62 4864 0E49 8E9E  7F92 ED38 BD49 957A 8463

Attachment: signature.asc
Description: PGP signature

Reply via email to