Subject: [PATCH] Fix Info documentation build with Docbook2X 0.8.8

From: [email-masked] (Ludovic Courtès)
Date: Wed, 12 Mar 2008 16:30:10 +0100

Hi,

The attached patch against 1.5.4.4 (from NixOS/Nixpkgs) fixes build of
the user manual in Info (i.e., `git.info') through Docbook2X 0.8.8.
Actually, it does two things:

  1. Fix the value of `DOCBOOK2TEXI' to match the name currently used in
     Docbook2X (I don't know when that name change occurred).

  2. Disable build of `gitman.info', which cannot be built because of
     duplicate node names:

     $ makeinfo gitman.texi
     gitman.texi:273: Node `DESCRIPTION' previously defined at line 153.
     gitman.texi:281: Node `OPTIONS' previously defined at line 163.
     gitman.texi:360: Node `DISCUSSION' previously defined at line 205.
     [...]

A related patch against Docbook2X 0.8.8 is needed to make `--to-stdout'
work as expected [0].

Thanks,
Ludovic.

[0] http://sourceforge.net/tracker/index.php?func=detail&aid=1912754&group_id=7856&atid=107856

This patch does two things: (1) use the right name for `docbook2texi',
and (2) make sure `gitman.info' isn't produced since it's broken (duplicate
node names).

--- git-1.5.4.4/Documentation/Makefile~	2008-03-09 11:18:13.000000000 +0100
+++ git-1.5.4.4/Documentation/Makefile	2008-03-12 16:04:05.000000000 +0100
@@ -53,7 +53,7 @@ DOC_REF = origin/man
 infodir?=$(prefix)/share/info
 MAKEINFO=makeinfo
 INSTALL_INFO=install-info
-DOCBOOK2X_TEXI=docbook2x-texi
+DOCBOOK2X_TEXI=docbook2texi
 ifndef PERL_PATH
 	PERL_PATH = /usr/bin/perl
 endif
@@ -89,7 +89,7 @@ man1: $(DOC_MAN1)
 man5: $(DOC_MAN5)
 man7: $(DOC_MAN7)
 
-info: git.info gitman.info
+info: git.info
 
 install: man
 	$(INSTALL) -d -m 755 $(DESTDIR)$(man1dir)
@@ -101,10 +101,9 @@ install: man
 
 install-info: info
 	$(INSTALL) -d -m 755 $(DESTDIR)$(infodir)
-	$(INSTALL) -m 644 git.info gitman.info $(DESTDIR)$(infodir)
+	$(INSTALL) -m 644 git.info $(DESTDIR)$(infodir)
 	if test -r $(DESTDIR)$(infodir)/dir; then \
 	  $(INSTALL_INFO) --info-dir=$(DESTDIR)$(infodir) git.info ;\
-	  $(INSTALL_INFO) --info-dir=$(DESTDIR)$(infodir) gitman.info ;\
 	else \
 	  echo "No directory found in $(DESTDIR)$(infodir)" >&2 ; \
 	fi