From b8c4261e5e8dc5c20d033970ec584991638ca041 Mon Sep 17 00:00:00 2001 From: Andrew Dunstan Date: Thu, 1 Jul 2021 14:21:09 -0400 Subject: [PATCH] Add new make targets world-bin and install-world-bin These are the same as world and install-world respectively, but without building or installing the documentation. There are many reasons for wanting to be able to do this, including speed, lack of documentation building tools, and wanting to build other formats of the documentation. Plans for simplifying the buildfarm client code include using these targets. Backpatch to all live branches. Discussion: https://postgr.es/m/6a421136-d462-b043-a8eb-e75b2861f3df@dunslane.net --- GNUmakefile.in | 10 ++++++++++ doc/src/sgml/installation.sgml | 15 +++++++++++++++ 2 files changed, 25 insertions(+) diff --git a/GNUmakefile.in b/GNUmakefile.in index afdfd9f0a6..0ef3147738 100644 --- a/GNUmakefile.in +++ b/GNUmakefile.in @@ -23,6 +23,11 @@ world: # build src/ before contrib/ world-contrib-recurse: world-src-recurse +$(call recurse,world-bin,src config contrib,all) + +# build src/ before contrib/ +world-bin-contrib-recurse: world-bin-src-recurse + html man: $(MAKE) -C doc $@ @@ -39,6 +44,11 @@ install-world: # build src/ before contrib/ install-world-contrib-recurse: install-world-src-recurse +$(call recurse,install-world-bin,src config contrib,install) + +# build src/ before contrib/ +install-world-bin-contrib-recurse: install-world-bin-src-recurse + $(call recurse,installdirs uninstall init-po update-po,doc src config) $(call recurse,distprep coverage,doc src config contrib) diff --git a/doc/src/sgml/installation.sgml b/doc/src/sgml/installation.sgml index 61d0bc8c43..9968f2a61c 100644 --- a/doc/src/sgml/installation.sgml +++ b/doc/src/sgml/installation.sgml @@ -473,6 +473,15 @@ All of PostgreSQL successfully made. Ready to install. The last line displayed should be: PostgreSQL, contrib, and documentation successfully made. Ready to install. + + + + + If you want to build everything that can be built, including the + additional modules (contrib), but without + the documentation, type instead: + +make world-bin @@ -552,6 +561,12 @@ build-postgresql: This also installs the documentation. + + If you built the world without the documentation above, type instead: + +make install-world-bin + + You can use make install-strip instead of make install to strip the executable files and