Normally after a release, I run build-aux/gnu-web-doc-update. For diffutils, it failed like this, and I nearly failed to notice the failure, because this diagnostic was followed by a lot more output and the final exit status was 0:
make[1]: Nothing to be done for `all-am'. make[1]: Leaving directory `/home/j/w/co/diffutils' ../build-aux/gendocs.sh: cannot find .texinfo or .texi or .txi for diffutils in /home/j/w/co/diffutils/doc. make: *** [web-manual] Error 1 There were two problems. - gnu-web-doc-update would ignore internal failure - the web-manual Makefile rule in maint.mk (invoked by gnu-web-doc-update) did not allow one to pass package-specific options to gendocs.sh, and gendocs.sh default of trying to find $(PACKAGE)-based (aka "diffutils"-based) .texi name failed, since it's called "diff.texi". Here are the gnulib patches: and rather than change the name of the .texi file in diffutils, I'm adding this to cfg.mk gendocs_options_ = -s $(srcdir)/diff.texi >From 03bc12c7cb9ec501356fdbe9555b145f15e43ace Mon Sep 17 00:00:00 2001 From: Jim Meyering <meyer...@redhat.com> Date: Mon, 3 May 2010 23:18:40 +0200 Subject: [PATCH 1/2] gnu-web-doc-update: don't ignore configure or build failure * build-aux/gnu-web-doc-update: Exit nonzero upon internal failure. --- ChangeLog | 3 +++ build-aux/gnu-web-doc-update | 4 +++- 2 files changed, 6 insertions(+), 1 deletions(-) diff --git a/ChangeLog b/ChangeLog index 0a58879..5b349a5 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2010-05-03 Jim Meyering <meyer...@redhat.com> + gnu-web-doc-update: don't ignore configure or build failure + * build-aux/gnu-web-doc-update: Exit nonzero upon internal failure. + announce-gen: backslash-escape '@'s in --help output * build-aux/announce-gen: Fix syntax errors. diff --git a/build-aux/gnu-web-doc-update b/build-aux/gnu-web-doc-update index 2c1a0cc..e834dcf 100755 --- a/build-aux/gnu-web-doc-update +++ b/build-aux/gnu-web-doc-update @@ -90,7 +90,9 @@ trap 'exit $?' 1 2 13 15 # just-released version number, not some string like 7.6.18-20761. # That version string propagates into all documentation. git checkout -b $tmp_branch v$version -./bootstrap && ./configure && make && make web-manual +ok=0 +./bootstrap && ./configure && make && make web-manual && ok=1 +test $ok = 1 || exit 1 tmp=$(mktemp -d --tmpdir=. web-doc-update.XXXXXX) || exit 1 ( cd $tmp \ -- 1.7.1.335.g6845a >From c3561613692e843eaecb45908c0d75c1cc2d3147 Mon Sep 17 00:00:00 2001 From: Jim Meyering <meyer...@redhat.com> Date: Mon, 3 May 2010 23:23:09 +0200 Subject: [PATCH 2/2] maint.mk: allow to pass options to gendocs.sh * top/maint.mk (web-manual): Pass gendocs_options_ to gendocs.sh. (gendocs_options_): New overridable variable. --- ChangeLog | 4 ++++ top/maint.mk | 7 ++++++- 2 files changed, 10 insertions(+), 1 deletions(-) diff --git a/ChangeLog b/ChangeLog index 5b349a5..2dcc856 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2010-05-03 Jim Meyering <meyer...@redhat.com> + maint.mk: allow to pass options to gendocs.sh + * top/maint.mk (web-manual): Pass gendocs_options_ to gendocs.sh. + (gendocs_options_): New overridable variable. + gnu-web-doc-update: don't ignore configure or build failure * build-aux/gnu-web-doc-update: Exit nonzero upon internal failure. diff --git a/top/maint.mk b/top/maint.mk index d105e95..335d078 100644 --- a/top/maint.mk +++ b/top/maint.mk @@ -1085,12 +1085,17 @@ release-prep: $(VC) commit -F .ci-msg -a rm .ci-msg +# Override this with e.g., -s $(srcdir)/some_other_name.texi +# if the default $(PACKAGE)-derived name doesn't apply. +gendocs_options_ ?= + .PHONY: web-manual web-manual: @test -z "$(manual_title)" \ && { echo define manual_title in cfg.mk 1>&2; exit 1; } || : @cd '$(srcdir)/doc'; \ - $(SHELL) ../build-aux/gendocs.sh -o '$(abs_builddir)/doc/manual' \ + $(SHELL) ../build-aux/gendocs.sh $(gendocs_options_) \ + -o '$(abs_builddir)/doc/manual' \ --email $(PACKAGE_BUGREPORT) $(PACKAGE) \ "$(PACKAGE_NAME) - $(manual_title)" @echo " *** Upload the doc/manual directory to web-cvs." -- 1.7.1.335.g6845a