pgsql: Fix partial-build problems introduced by having more generated h

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Fix partial-build problems introduced by having more generated h
Date: 2018-04-09 20:42:38
Message-ID: E1f5dcc-0003ve-N9@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Fix partial-build problems introduced by having more generated headers.

Commit 372728b0d created some problems for usages like building a
subdirectory without having first done "make all" at the top level,
or for proceeding directly to "make install" without "make all".
The only reasonably clean way to fix this seems to be to force the
submake-generated-headers rule to fire in *any* "make all" or "make
install" command anywhere in the tree. To avoid lots of redundant work,
as well as parallel make jobs possibly clobbering each others' output, we
still need to be sure that the rule fires only once in a recursive build.
For that, adopt the same MAKELEVEL hack previously used for "temp-install".
But try to document it a bit better.

The submake-errcodes mechanism previously used in src/port/ and src/common/
is subsumed by this, so we can get rid of those special cases. It was
inadequate for src/common/ anyway after the aforesaid commit, and it always
risked parallel attempts to build errcodes.h.

Discussion: https://postgr.es/m/E1f5FAB-0006LU-MB@gemulon.postgresql.org

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/3b8f6e75f3c8c6d192621f21624cc8cee04ec3cb

Modified Files
--------------
doc/src/sgml/Makefile | 2 ++
src/Makefile | 5 -----
src/Makefile.global.in | 39 +++++++++++++++++++++++++++++++++------
src/backend/Makefile | 8 --------
src/backend/jit/llvm/Makefile | 1 -
src/common/Makefile | 7 -------
src/pl/plpython/Makefile | 3 ---
src/port/Makefile | 7 -------
src/test/modules/Makefile | 2 --
src/test/regress/GNUmakefile | 4 +---
10 files changed, 36 insertions(+), 42 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Tom Lane 2018-04-09 20:46:34 Re: pgsql: Merge catalog/pg_foo_fn.h headers back into pg_foo.h headers.
Previous Message Alvaro Herrera 2018-04-09 20:34:56 Re: pgsql: Support partition pruning at execution time