Clark Williams wrote:
-----BEGIN PGP SIGNED MESSAGE-----
Manas Saksena wrote:
> DJ Delorie wrote:
>> > If you punt on bootstrapping
>> Keep in mind that our group specializes in cross compiling, so
>> bootstrapping is not something we usually punt ;-)
> What I meant was that you dont have to use the same SRPMs to do
> the initial bootstrap. That makes your SRPMs a bit-cleaner and
> they dont have to be cluttered with "bootstrap" special case.
> And, once you have built your initial toolchain, you can use
> that to bootstrap subsequent builds. Only occasionally, you
> have to and do a full bootstrap all over again.
I see a difference in philosophy developing already :)
I actually agree with your philosophy. And, have lived that life in my
past job, where we built everything from scratch in a known controlled
But, I am also trying to balance that with the goal of having a large
(if not all) part of fedora built for ARM, staying synchronized with
the Fedora package base, and having native toolchains etc.
In general we bootstrap all the time, since we're trying to
pieces work together. Either that or we're incredibly pedantic. Probably
The advantage of bootstrapping every time is that you know all the parts
with the same set of assumptions. It's not nearly as bad as
bootstrapping a native,
since you don't have the stageN steps to manage.
For my part, I see much more potential for configuration problems with
mix-n-match the set of arm-linux-gcc, arm-linux-binutils,
potentially arm-linux-gdb packages, than just bootstrapping everything
But, surely, you could have a bootstrap build script that builds a
bootstrap gcc and then builds the rest of the toolchain srpms. And,
then you have a fully controlled build environment that can track
the native fedora versions quite well.
To be fair, I suppose your counter is that my approach would make it
harder to track
the fedora tools. Hmmmm, I'll have to think about that.
Yes, unfortunately. I believe that if you are building any reasonable
subset of Fedora natively, you simply cant do a fully automated
bootstrap due to circular dependencies etc. OTOH, when you cross-build,
you can probably get along further.
So, my thinking is that as we bring in the cross-build capability
incrementally, we dont unnecessarily fork packages from the main fedora
base. Otherwise, you end up with a different distro/toolset, of which
there are plenty of them.
What I would also like is to make sure that whatever we do, we dont take
the full build from scratch/bootstrap option away. So, for e.g., if
someone wants to build the toolchain and a set of packages completely in
a cross-build environment, they should be able to build the whole thing
from scratch. I am assuming that if we have that, then that would serve
your needs. And, I know that there will be cases where we would want to
do that as well.
And, maybe one day we would be able to build the entire distro in a
fully automated, built from scratch manner as well.