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: automatic dependencies for gcc


>>>>> "Ralf" == Ralf Wildenhues <Ralf.Wildenhues@gmx.de> writes:

>> -@item GNU make version 3.79.1 (or later)
>> +@item GNU make version 3.80 (or later)

Ralf> Do you check this at build time?

No.

Ralf> It seems that 3.79.1 errors out when it sees '|' in dependencies, so
Ralf> I guess there is no problem concerning silent failure.

Yeah.

Ralf> I forgot one more thing here.  If gcc is interrupted, it may leave an
Ralf> incomplete dependency file here, which can lead to make erroring out
Ralf> next time (make won't remove the .Po file upon interrupt, as it's not
Ralf> listed as target).  You could use $(*D)/$(DEPDIR)/$(*F).Tpo and a
Ralf> subsequent mv to *.Po as automake does.

Thanks.  I'll look into this.

I suspect we ought to fix gcc as well, though I'm concerned about
compatibility.  It seems weird to have a bunch of -M* options
specifically added for this automake feature, and then have to work
around an oddity.  Perhaps we could add yet another -M option to
finesse the compatibility problem... and I guess add another special
case to automake.  I dunno.

Ralf> Another thing: have you tried a parallel (make -jN) build with this on a
Ralf> multi-way system?

Yes, I've done a number of -j4 bootstraps on the compile farm machine
gcc11.  That is a 4 CPU x86-64 machine.

Even so I managed to omit a needed dependency which was caught only by
Geoff's tester :(

Ralf> Yet another thing: you removed this from objcp/Make-lang.in:

Thanks.  I will fix this shortly.
I'm doing yet another build to try to reproduce it first.

Tom


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