aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Dunstan <andrew@dunslane.net>2021-07-01 14:51:54 -0400
committerAndrew Dunstan <andrew@dunslane.net>2021-07-01 14:51:54 -0400
commitc71471c96f1682d133dd718ed5129f0be7ebb295 (patch)
tree0b38c1daf3c5c676f23a5c702084baa74908ba26
parenta40f8ea0f5550930eb743e76cb23a742f5e7befa (diff)
downloadpostgresql-c71471c96f1682d133dd718ed5129f0be7ebb295.tar.gz
postgresql-c71471c96f1682d133dd718ed5129f0be7ebb295.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 99d0426622f..0667ba4f3f0 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 eb5cabbc28a..60ab2ae9b99 100644
--- a/doc/src/sgml/installation.sgml
+++ b/doc/src/sgml/installation.sgml
@@ -1627,6 +1627,15 @@ 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>
If you want to invoke the build from another makefile rather than
manually, you must unset <varname>MAKELEVEL</varname> or set it to zero,
@@ -1704,6 +1713,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