Jim Meyering wrote: > Benno Schulenberg wrote: >> On Tue, 28 Jul 2009 23:34 +0100, "Pádraig Brady" <p...@draigbrady.com> wrote: >>> I've just pushed: >>> http://git.savannah.gnu.org/gitweb/?p=coreutils.git;a=commit;h=8aeda9b >> >> Thanks. Since that change versions 7.5 and 7.6 have been released, but >> http://www.gnu.org/software/coreutils/manual/html_node/index.html#toc_System-context >> still contains the mistake. Apparently the online manual pages are not >> automatically regenerated after a release: > > Thanks for the report. > That's part of the release process, > even mostly documented in README-release, > but I haven't done that part for the last few releases. > I'll see about automating it further. That'll help ensure > it is run more consistently.
I've updated it. Here's how I did it: >From c48003a53cbeee75dd34f5c3932a60ee97defb28 Mon Sep 17 00:00:00 2001 From: Jim Meyering <meyer...@redhat.com> Date: Mon, 21 Sep 2009 08:56:17 +0200 Subject: [PATCH] maint: automate the web-doc updating procedure * gnu-web-doc-update: New script, destined for gnulib. * README-release: Refer to the new script. --- README-release | 13 ++----------- gnu-web-doc-update | 40 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+), 11 deletions(-) create mode 100755 gnu-web-doc-update diff --git a/README-release b/README-release index 8dcab97..d20a911 100644 --- a/README-release +++ b/README-release @@ -81,17 +81,8 @@ Once all the builds and tests have passed, Then go here to approve it: https://savannah.gnu.org/news/approve.php?group=coreutils -* For non-alpha releases, update the on-line manual at +* After each non-alpha release, update the on-line manual accessible via http://www.gnu.org/software/coreutils/manual/ - Run `make web-manual', then copy the contents of doc/manual - into a CVS checkout of the coreutils manual repository. - Also edit coreutils.html (FIXME? why?) before doing a CVS commit. - - CVS_RSH=ssh \ - cvs -d:ext:$u...@cvs.savannah.gnu.org:/web/coreutils co coreutils - - Be sure to "cvs add -ko" any files that "cvs status" marks with "?". - That is necessary whenever a new texinfo node is added. Each becomes - a new file in html_node that must then be "cvs add"ed. + by running the gnu-web-doc-update script. diff --git a/gnu-web-doc-update b/gnu-web-doc-update new file mode 100755 index 0000000..41e989a --- /dev/null +++ b/gnu-web-doc-update @@ -0,0 +1,40 @@ +#!/bin/sh +# Run this after each non-alpha release, to update the web documentation at +# http://www.gnu.org/software/$pkg/manual/ +# Requirements: everything required to bootstrap your package, +# plus these: git, cvs, cvsu, rsync, mktemp + +version=$(cat .prev-version) +pkg=$(sed -n 's/^PACKAGE = \(.*\)/\1/p' Makefile) +tmp_branch=web-doc-$version-$$ + +cleanup() +{ + __st=$?; + rm -rf "$tmp" + git checkout master + git branch -d $tmp_branch + exit $__st +} +trap cleanup 0 +trap 'exit $?' 1 2 13 15 + +# We must build using sources for which --version reports the +# 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 + +tmp=$(mktemp -d --tmpdir=. web-doc-update.XXXXXX) || exit 1 +( cd $tmp \ + && cvs -d $u...@cvs.sv.gnu.org:/webcvs/$pkg co $pkg ) +rsync -avP doc/manual/ $tmp/$pkg/manual + +( + cd $tmp/$pkg/manual + + # Add any new files: + cvsu --types='?'|sed s/..// | xargs --no-run-if-empty -- cvs add -ko + + cvs ci -m $version +) -- 1.6.5.rc1.211.g63a3f