git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH] Makefile: include contrib docs in dist-doc tarballs

From
robbat2@gentoo.org <robbat2@gentoo.org>
Date
Jun 23, 2019, 21:50 UTC
Message-ID
<20190623215046.24030-1-robbat2@gentoo.org>
From: "Robin H. Johnson" <robbat2@gentoo.org>

The pre-built htmldoc/manpage tarballs do not include any documentation from the contrib code. As a result, if you want that documentation, you need the full documentation stack to build them.

By including the contrib docs in the tarballs, this is prevented.
The documentation process in the contrib directories could use some
general cleanups, but this gets it going for now.
- Add doc install target that includes the .txt files
- svn-fe has no doc install targets at all.
See-Also: https://bugs.gentoo.org/687886
See-Also: https://bugs.gentoo.org/687848
See-Also: https://bugs.gentoo.org/517794
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
---
 Makefile | 43 +++++++++++++++++++++++++++++++++++--------
 1 file changed, 35 insertions(+), 8 deletions(-)
diff --git a/Makefile b/Makefile
index f58bf14c7b..fc36a9211e 100644
--- a/Makefile
+++ b/Makefile
@@ -3008,21 +3008,48 @@ artifacts-tar:: $(ALL_PROGRAMS) $(SCRIPT_LIB) $(BUILT_INS) $(OTHER_PROGRAMS) \
 
 htmldocs = git-htmldocs-$(GIT_VERSION)
 manpages = git-manpages-$(GIT_VERSION)
-.PHONY: dist-doc distclean
-dist-doc:
+.PHONY: dist-doc distclean contrib-doc
+
+# subdirs with install-html & install-man targets
+contrib_doc_dirs := contrib/contacts contrib/subtree
+doc_dirs := Documentation $(contrib_doc_dirs)
+
+contrib-doc:
+	$(MAKE) -C contrib/svn-fe svn-fe.html svn-fe.1 # no doc target
+	for d in $(contrib_doc_dirs) ; do \
+		$(MAKE) -C $$d doc ; \
+	done
+
+dist-doc: doc contrib-doc
 	$(RM) -r .doc-tmp-dir
 	mkdir .doc-tmp-dir
-	$(MAKE) -C Documentation WEBDOC_DEST=../.doc-tmp-dir install-webdoc
+	for d in $(doc_dirs) ; do \
+		$(MAKE) -C $$d \
+			DESTDIR=$(PWD)/ \
+			htmldir=/.doc-tmp-dir/ \
+			install-html ; \
+	done
+	: # These files have no install targets
+	cp --target .doc-tmp-dir \
+		contrib/subtree/git-subtree.txt \
+		contrib/contacts/git-contacts.txt \
+		contrib/svn-fe/svn-fe.html \
+		contrib/svn-fe/svn-fe.txt
 	cd .doc-tmp-dir && $(TAR) cf ../$(htmldocs).tar .
 	gzip -n -9 -f $(htmldocs).tar
 	:
 	$(RM) -r .doc-tmp-dir
 	mkdir -p .doc-tmp-dir/man1 .doc-tmp-dir/man5 .doc-tmp-dir/man7
-	$(MAKE) -C Documentation DESTDIR=./ \
-		man1dir=../.doc-tmp-dir/man1 \
-		man5dir=../.doc-tmp-dir/man5 \
-		man7dir=../.doc-tmp-dir/man7 \
-		install
+	for d in $(doc_dirs) ; do \
+		$(MAKE) -C $$d DESTDIR=$(PWD)/ \
+		man1dir=/.doc-tmp-dir/man1 \
+		man5dir=/.doc-tmp-dir/man5 \
+		man7dir=/.doc-tmp-dir/man7 \
+		install-man ; \
+	done
+	: # These files have no install targets
+	cp --target .doc-tmp-dir/man1/ \
+		contrib/svn-fe/svn-fe.1
 	cd .doc-tmp-dir && $(TAR) cf ../$(manpages).tar .
 	gzip -n -9 -f $(manpages).tar
 	$(RM) -r .doc-tmp-dir
-- 
2.22.0
Next: Junio C Hamano
Message 1 of 2 in “Makefile: include contrib docs in dist-doc tarballs”
  1. Makefile: include contrib docs in dist-doc tarballsrobbat2@gentoo.org, Jun 23, 2019
  2. Junio C HamanoJun 24, 2019

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.