This is the mail archive of the gcc@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]

Re: what should bootstrap *really* do?


On Nov 14, 2000, DJ Delorie <dj@redhat.com> wrote:

> I've heard lots of conflicting uses for "make bootstrap".  What
> exactly *should* a bootstrap do?

IMO, whatever works best for users, since that's the recommended
installation procedure.  Thinking of someone whose build machine
crashes part-way through the build, runs out of disk space, needs to
tweak a configuration parameter here or there, I think `make
bootstrap' should proceed from the stage in which the previous build
stopped, not from stage1.

Needs of developers are certainly different.  I like the idea of
cleanstrap, and that of cleaning the next stage in case you rebuild
anything in a certain stage, but I'd rather have give this a different
target name, such as depstrap.

> Also, when I put builds in stage directories, things like libgcc1 and
> fixincludes happen for each stage.  I'm not sure if this matters or
> not to people.

Probably not, as long as bootstrap-lean still works.  Another
alternative is to have this stuff in some other directory, and have
each stage `cd that/directory && $(MAKE) fixinc' or `libgcc1'.  We
might even do it for the whole libgcc, since I doesn't see much sense
in rebuilding it for every stage.  This would be significant
build-time savings on targets with lots of multilibs.  After all,
`make compare' doesn't compare libgcc object files any more, and
comparing those of gcc itself is probably enough.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer                  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicamp        oliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist    *Please* write to mailing lists, not to me

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