logo       

Re: ccache: msg#00886

linux.region.israel

Subject: Re: ccache

On Sat, Sep 28, 2002 at 12:09:14PM +0300, Oleg Goldshmidt wrote:
> Mark Veltzer <mark-zMkqr+MLrVdAfugRpC6u6w@xxxxxxxxxxxxxxxx> writes:
>
> > If you think that this does not take H files into consideration you are
> > wrong. As Muli rightly states ccache takes the output of gcc -M which means
> > the ENTIRE source that the compiler sees (H files and all AFTER
> > preprocessor). In addition, it also stores the flags used for the
> > compilation
> > in the cache. I would rarely see a situation where you would say that YOU
> > DO
> > want the object recompiled unless you switched compilers (I'm not sure but
> > I
> > think that there are plans for ccache to store the compiler version too so
> > if
> > you switch compilers it will detect it and not use the cache. Muli ?!?).
>
> I know all that, and I wrote myself ccache worked on preprocessed
> files. But what if for some reason I made the file dependent on
> something that is not under the compiler's control - a file that is
> not C. Then if that file changed, make would recompile, but ccache
> would grab the existing object from the cache.

True. BUT - ccache would only compile if the preprocessed source is
exactly equivalent before and after. If the preprocessed source is
exactly the same, is there any meaning to the dependency that caused
the recompilation?

> Why would I want that? For instance, because I would want a generated
> compilation timestamp to change... I can't really think of good
> examples, but ccache works, AFAIK, on the basis of MD5 of the
> preprocessed C sources, and make can update the build on the basis of
> timestamps of dependencies external to C sources as well.

Corrrect - but can you think of any example where the preprocessed
source will remain exactly the same, but the code would still need to
be recompiled? It seems a contradiction.
--
Muli Ben-Yehuda http://www.mulix.org/
mulix-BzGcCpaT2IbYtjvyW6yDsg@xxxxxxxxxxxxxxxx:~$ sctrace strace /bin/foo
http://syscalltrack.sf.net/
Quis custodes ipsos custodiet?

Attachment: pgpmQs0UeC71m.pgp
Description: PGP signature

<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise