From: Tom Lane Date: Thu, 9 Aug 2018 19:21:09 +0000 (-0400) Subject: Document need to clear MAKELEVEL when invoking PG build from a makefile. X-Git-Tag: REL_12_BETA1~1745 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=8694a1ce406d58873e7332fa725baeeff18f57b2;p=postgresql Document need to clear MAKELEVEL when invoking PG build from a makefile. Since commit 3b8f6e75f, failure to do this would lead to submake-generated-headers not doing anything, so that references to generated or symlinked headers would fail. Previous to that, the omission only led to temp-install not doing anything, which apparently affects many fewer people (doesn't anybody use "make check" in their build rules??). Hence, backpatch to v11 but not further. Per complaints from Christoph Berg, Jakob Egger, and others. --- diff --git a/doc/src/sgml/installation.sgml b/doc/src/sgml/installation.sgml index fa90e9104a..a88cd21f45 100644 --- a/doc/src/sgml/installation.sgml +++ b/doc/src/sgml/installation.sgml @@ -1599,12 +1599,13 @@ su - postgres Build - To start the build, type: + To start the build, type either of: make +make all - (Remember to use GNU make.) The build - will take a few minutes depending on your + (Remember to use GNU make.) + The build will take a few minutes depending on your hardware. The last line displayed should be: All of PostgreSQL successfully made. Ready to install. @@ -1623,6 +1624,18 @@ All of PostgreSQL successfully made. Ready to install. PostgreSQL, contrib, and documentation successfully made. Ready to install. + + + If you want to invoke the build from another makefile rather than + manually, you must unset MAKELEVEL or set it to zero, + for instance like this: + +build-postgresql: + $(MAKE) -C postgresql MAKELEVEL=0 all + + Failure to do that can lead to strange error messages, typically about + missing header files. +