http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55243
--- Comment #29 from Georg-Johann Lay <gjl at gcc dot gnu.org> 2012-12-17 22:53:42 UTC --- (In reply to comment #24) >> What I don't understand is what is bad with Rolf's proposal of defining >> STAMP? > > We simply don't need to stamp anything for the gnattools. > >> Stamping is not that unusual in the build process. Up to now it was not >> needed, but is it that critical to set STAMP like proposed above? > > Well, building the gnattools works flawlessly for all targets except for AVR, That argument doues not count, IMO. Almost nothing in GCC was added without precedent: Features were added because backend X needed them or frontend Y needed them. To reject an extension just because only one target needs it, is not an convincing argument. It's still not known why the ada / gnat stuff rebuilds stuff already there a sectons time and at a stage ada / gnat don't expect such a build. Throwing out the need of STAMP works, but it does not answer the question why ada does things it does not expect at a stage it does not expect. (In reply to comment #26) >> There are other backends like x86 and mips that use STAMP in their t-snip, so >> I wonder how you can conclude that ada does not include code that might >> require STAMP? > >I didn't say that though, rather that we don't need STAMP for the gnattools. If I understand correctly, someone familiar with the gnat build machiney and philosophy might want to find out why it performs a mistimed rebuild of things that are elready supposed to be there? BTW, avr/t-multilib cannot be generated from scratch in the build directory because it is included in Makefile. The dependencies in gcc_update:files_and_dependencies() look reasonable.