diff options
author | Peter Eisentraut <peter_e@gmx.net> | 2010-08-24 18:06:12 +0000 |
---|---|---|
committer | Peter Eisentraut <peter_e@gmx.net> | 2010-08-24 18:06:12 +0000 |
commit | 5c788e7cf5026be1cad634f12bb42111a411cd9e (patch) | |
tree | 7f359b7432505f997bcca2bbb3e26035b4541438 /src | |
parent | b1e2e9c1ef21395138d0bbe451768a7fdcfa7e68 (diff) | |
download | postgresql-5c788e7cf5026be1cad634f12bb42111a411cd9e.tar.gz postgresql-5c788e7cf5026be1cad634f12bb42111a411cd9e.zip |
When in automatic dependency mode, never delete any intermediate
files automatically. Otherwise, the following could happen: When
starting from a clean source tree, the first build would delete the
intermediate file, but also create the dependency file, which
mentions the intermediate file, thus making it non-intermediate.
The second build will then need to rebuild the now non-intermediate
missing file. So the second build will do work even though nothing
had changed. One place where this happens is the .c -> .o -> .so
chain for some contrib modules.
Diffstat (limited to 'src')
-rw-r--r-- | src/Makefile.global.in | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/src/Makefile.global.in b/src/Makefile.global.in index 280578a4c39..4fe2d75b03f 100644 --- a/src/Makefile.global.in +++ b/src/Makefile.global.in @@ -1,5 +1,5 @@ # -*-makefile-*- -# $PostgreSQL: pgsql/src/Makefile.global.in,v 1.264 2010/07/06 22:03:05 tgl Exp $ +# $PostgreSQL: pgsql/src/Makefile.global.in,v 1.265 2010/08/24 18:06:12 petere Exp $ #------------------------------------------------------------------------------ # All PostgreSQL makefiles include this file and use the variables it sets, @@ -580,6 +580,17 @@ clean distclean maintainer-clean: clean-deps clean-deps: @rm -rf $(DEPDIR) +# When in automatic dependency mode, never delete any intermediate +# files automatically. Otherwise, the following could happen: When +# starting from a clean source tree, the first build would delete the +# intermediate file, but also create the dependency file, which +# mentions the intermediate file, thus making it non-intermediate. +# The second build will then need to rebuild the now non-intermediate +# missing file. So the second build will do work even though nothing +# had changed. One place where this happens is the .c -> .o -> .so +# chain for some contrib modules. +.SECONDARY: + endif # autodepend |