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]
Other format: [Raw text]

Re: How to rebuild stage 1?



Even better though would be some option to keep the "old style".  As I
understand it, the point here is to add functionality at top level, but that
shouldn't be at the expense of functionality at the gcc/ level.  Indeed I
see no reason that we can't be upwards compatible.

I can of course provide synonyms like `restageN' instead of `all-stageN'. After the old bootstrapping scheme is deleted you could have sort-of-dummy targets within the gcc directory that resemble the old way, like:


compare:
	cd .. && $(MAKE) compare

quickstrap:
	cd .. && $(MAKE) all-`cat stage_last`

bubblestrap:
	cd .. && $(MAKE)

unstrap restrap:
	@echo Sorry, @$ is not supported; exit 1

This cannot be done now, however, for the obvious reason that restageN is doing something else in the --disable-bootstrap case.

Of course, you'll agree that it is not feasible to provide the very same directory layout.

It looks like we are making good progress fixing the bugs in toplevel bootstrap, even though none of them has been approved yet. After then, we can probably remove the old system around January.

David Edelsohn's AIX bug has been fixed (he has to double check by bootstrapping with XLC, but it should be ok). The sole one that escapes is Andrew and Gaby's, which I think I know how to reproduce and for which I posted a workaround.

It's extremely valuable to have a single script that can do a build given any
GCC version and the fewer the number of parameterizations that are needed in
that script the better.

The number of targets used by such a script will most likely be two: `all' (or `bootstrap'), and `install'.


`make bootstrap' still works, it is just a synonym of `make all'. In this respect we are backwards-compatible. So a possibility would be that such a script:
- does `make bootstrap' if bootstrapping is requested.
- passes `--disable-bootstrap' (which old versions ignore) to configure and does `make all' if bootstrapping is not requested.


Please, if people take a few minutes to write down on the wiki how they work with gcc, I can help them.

Paolo


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