aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Dunstan <andrew@dunslane.net>2021-07-01 14:21:09 -0400
committerAndrew Dunstan <andrew@dunslane.net>2021-07-01 15:12:21 -0400
commitb8c4261e5e8dc5c20d033970ec584991638ca041 (patch)
tree25f61cb22f0cf1ae8c62ce800f60feb70d37a65b
parentb741f4c3ee67666aa333dbb25bd71906b3474def (diff)
downloadpostgresql-b8c4261e5e8dc5c20d033970ec584991638ca041.tar.gz
postgresql-b8c4261e5e8dc5c20d033970ec584991638ca041.zip
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
-rw-r--r--GNUmakefile.in10
-rw-r--r--doc/src/sgml/installation.sgml15
2 files changed, 25 insertions, 0 deletions
diff --git a/GNUmakefile.in b/GNUmakefile.in
index afdfd9f0a61..0ef3147738e 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 61d0bc8c43f..9968f2a61cc 100644
--- a/doc/src/sgml/installation.sgml
+++ b/doc/src/sgml/installation.sgml
@@ -474,6 +474,15 @@ All of PostgreSQL successfully made. Ready to install.
<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>
<para>
@@ -553,6 +562,12 @@ build-postgresql:
</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
libraries as they are installed. This will save some space. If