Re: pgsql/src/backend/parser (Makefile) - Mailing list pgsql-committers

From Tom Lane
Subject Re: pgsql/src/backend/parser (Makefile)
Date
Msg-id 27708.963806484@sss.pgh.pa.us
Whole thread Raw
In response to Re: pgsql/src/backend/parser (Makefile)  (Peter Eisentraut <peter_e@gmx.net>)
List pgsql-committers
Peter Eisentraut <peter_e@gmx.net> writes:
> Tom Lane writes:
>> There might also be a dependency issue, ie does make realize that
>> updating backend/parser/parse.h means it has to recompile files
>> that are shown as depending on include/parser/parse.h.

> It seems to be a stat() vs lstat() issue; the symlink is automatically
> up-to-date because when make inspects it it will find the timestamp of the
> underlying file. So the answer to your question seems to be yes.

Your example misses the point though, because the symlink can be seen to
be out of date when Make starts up.  If make runs a rule to update
backend/parser/parse.h, will it know *in the same run* that this implies
running rules that are dependent on include/parser/parse.h, or will it
already have decided it does not have to run those rules?  Seems
particularly dangerous in a parallel-make situation.

            regards, tom lane

pgsql-committers by date:

Previous
From: Tom Lane
Date:
Subject: pgsql/contrib/statmath (Makefile README.statmath statmath.c statmath.sql.in)
Next
From: Tom Lane
Date:
Subject: pgsql/src/include (c.h)