automake
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Any way to get rid of -MP parameter to gcc for dependency creation?


From: Xan Lopez
Subject: Re: Any way to get rid of -MP parameter to gcc for dependency creation?
Date: Fri, 7 Jan 2011 13:35:48 +0100

On Fri, Jan 7, 2011 at 7:31 AM, Ralf Wildenhues <address@hidden> wrote:
>> Perhaps a silly question: could it be easier to just post-process the
>> include of all the Plo files to get rid of the duplicates? Since the
>> vast majority of the data is duplicated among the files it seems a
>> reasonable thing to do.
>
> Sure, this seems like a viable workaround when you don't hack on
> Automake.  However, even just generating 45MB of data only to remove it
> again with sed or awk takes time during building, and I'd like to avoid
> that time too if possible.  Further, for some non-GCC compilers, the
> depcomp script generates all the dummy dependencies manually, avoiding
> that will save at least one sed per compiler invocation, and that's an
> advantage as well, even if the relative savings are small compared to
> the time a full build takes.

Right, obviously it's much better if we don't have to generate all the
data in the first place :)

My suggestion was more along the lines of "in case it's
complicated/controversial to introduce a gnu-make mode we could do
this...". But I'm all for doing the right thing if possible.

>> I've tried this and I see no significant win, perhaps a solid 0.2,
>> 0.15 difference (the timing is variable so it's difficult to measure
>> with precision wins that small).
>
> Ah, but that's only because of another bug I didn't look for: automake
> outputs its own 'all' rule unconditionally, i.e., even if you choose to
> override it.  That may have been done in order to "help" those poor
> users adding prerequisites to 'all' instead of using 'all-local', but it
> hurts for this hack.
>
> Can you, just for the sake of measuring performance, edit the generated
> GNUmakefile and remove Automake's 'all' rule from it; something like
>  sed -i '/^all: .*BUILT_SOURCES/,/^$/d' GNUmakefile
>
> It should really prove a big, not a small win, otherwise it's not worth
> looking at this further.

Indeed, it cuts the total time almost exactly in half. Will this also
go into the gnu-make mode or is it something we'd have to hack
locally?

Cheers,

Xan



reply via email to

[Prev in Thread] Current Thread [Next in Thread]