Add new make targets world-bin and install-world-bin
authorAndrew Dunstan <andrew@dunslane.net>
Thu, 1 Jul 2021 18:21:09 +0000 (14:21 -0400)
committerAndrew Dunstan <andrew@dunslane.net>
Thu, 1 Jul 2021 19:12:21 +0000 (15:12 -0400)
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
doc/src/sgml/installation.sgml

index afdfd9f0a6114c66cb6a7815cf40eda4474055be..0ef3147738edcb396f1687df696e8c61886148ed 100644 (file)
@@ -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)
index 61d0bc8c43f3378befae315dfe7fc0f53796e8f9..9968f2a61cc9b199e02c25b3ccfc459e2a3a7e73 100644 (file)
@@ -473,6 +473,15 @@ All of PostgreSQL successfully made. Ready to install.
    The last line displayed should be:
 <screen>
 PostgreSQL, contrib, and documentation successfully made. Ready to install.
+</screen>
+  </para>
+
+  <para>
+   If you want to build everything that can be built, including the
+   additional modules (<filename>contrib</filename>), but without
+   the documentation, type instead:
+<screen>
+<userinput>make world-bin</userinput>
 </screen>
    </para>
 
@@ -552,6 +561,12 @@ build-postgresql:
     This also installs the documentation.
    </para>
 
+   <para>
+    If you built the world without the documentation above, type instead:
+<screen>
+<userinput>make install-world-bin</userinput>
+   </para>
+
    <para>
     You can use <literal>make install-strip</literal> instead of
     <literal>make install</literal> to strip the executable files and