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: [PATCH] Autogen bootstrap targets and make them preinstall


Paolo Bonzini wrote:
I got tired of updating the same thing three times, so I decided it was time to let Autogen do some more. I'm quite pleased of the result, and it will make it *much* easier to add yummy things like profiledbootstrap4-lean. ;-)

All bootstrap-related targets are automatically generated from parameters in Makefile.def.

The new targets are

- distclean-stageN: quite clear.
- new-stageN-start: same as stageN in the gcc makefile
- new-stageN-end: same as unstageN in the gcc makefile
- new-stageN-bubble (N=1,2): If a stage has been built, forces an
  incremental rebuild of the stages up to N.  Then, if the successive
  stage has been already configured, it disables reconfiguration of
  stage N+1.  If the stage has not been built, this does nothing.

With this patch, after any all-stageN-gcc has been successfully built, "make new-bootstrap" will act as a bubblestrap because it invokes new-stage3-bubble to make stage3. If one does not want the bubblestrap behavior, they'll use new-restage3 or new-cleanstrap.

I include the Makefile.in diff because it is quite easy to read, more than Makefile.tpl. :-( New-bootstrapped i686-pc-linux-gnu, ok for mainline and src if the gcc patch is accepted?

Yes.


I like it a lot. It's in such a form that I feel I could easily make further improvements without losing the abstraction. :-)

I'm still not happy with the level of recursive-Make-calls-to-the-same-file usage, but I think it's managable, and potentially fixable without major architectural changes.


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