-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 According to Ralf Wildenhues on 4/19/2009 5:00 AM: >>> issues: move-if-change may not be found but needed (oh well), and >> gnulib has the current version of move-if-change. Do we need to import it >> back into autoconf to keep the 'autom4te-update' target happy? > > Well, my git Autoconf tree doesn't have the file at all. Do I need some > magic gnulib-tool incantation to import it, and if yes, maybe Autoconf > should have a bootstrap script to abstract this away?
Done with the following patch. > Thanks, done. I've taken liberty to _not_ synchronize the GPLv3+ > headers which are present in git Automake, so updating in Autoconf > can be done at once. There has been some off-list discussion with the FSF on how to use GPLv3+. I guess it's time we open the current proposal to the autoconf list for public feedback. Yes, I'd like to use GPLv3 for autoconf 2.64, and I agree that deferring the copyright change in lib/Autom4te until everything is ready to switch at once makes sense (in running 'make fetch' today to test my patch, I had to repeat your trick of not checking in the license changes). - -- Don't work too hard, make some time for fun as well! Eric Blake [email protected] -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (Cygwin) Comment: Public key at home.comcast.net/~ericblake/eblake.gpg Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iEYEARECAAYFAkntwcUACgkQ84KuGfSFAYBJDACgifp1j2/1WwWLeQCqZcyPZ/Zh rL4AoJj54+avVsqhCZ5bjn2o86iL2GT2 =1mAW -----END PGP SIGNATURE-----
>From c474ab908444e2d6703bd22e4122e551fcdaa96b Mon Sep 17 00:00:00 2001 From: Eric Blake <[email protected]> Date: Tue, 21 Apr 2009 06:41:24 -0600 Subject: [PATCH] Shuffle maintainer-specific rules. * Makefile.am (maintainer-check-tests): Delete. (autom4te-update): Move... * cfg.mk (autom4te-update): ...here. (fetch): Depend on autom4te-update. Split... (gnulib-update): ...into new rule. Import move-if-change from gnulib. * maint.mk (maintainer-distcheck): Absorb former maintainer-check rule. * build-aux/move-if-change: New file, undistributed. * .gitattributes: Handle new upstream file. * .gitignore: Ignore maintainer cruft. * HACKING: Update maintainer instructions. * build-aux/config.guess: Update from upstream. * build-aux/config.sub: Likewise. * build-aux/gendocs.sh: Likewise. * build-aux/texinfo.tex: Likewise. * doc/gendocs_template: Likewise. * doc/standards.texi: Likewise. Signed-off-by: Eric Blake <[email protected]> --- .gitattributes | 3 ++ .gitignore | 1 + ChangeLog | 22 +++++++++++++ HACKING | 5 ++- Makefile.am | 36 --------------------- build-aux/config.guess | 7 +++- build-aux/config.sub | 3 +- build-aux/gendocs.sh | 8 ++-- build-aux/move-if-change | 77 ++++++++++++++++++++++++++++++++++++++++++++++ build-aux/texinfo.tex | 6 +++- cfg.mk | 40 ++++++++++++++++++++++- doc/gendocs_template | 10 +++--- doc/standards.texi | 6 ++-- maint.mk | 1 + 14 files changed, 169 insertions(+), 56 deletions(-) create mode 100755 build-aux/move-if-change diff --git a/.gitattributes b/.gitattributes index c4e3035..80c4fdf 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,12 +1,15 @@ # See README-hacking for ideas on making these settings useful. *.texi* diff=texinfo ChangeLog merge=merge-changelog + +# Exempt upstream files from whitespace rules. config.guess -whitespace config.sub -whitespace elisp-comp -whitespace install-sh -whitespace mdate-sh -whitespace missing -whitespace +move-if-change -whitespace texinfo.tex -whitespace fdl.texi -whitespace fdl-1.3.texi -whitespace diff --git a/.gitignore b/.gitignore index 314e323..96e8b08 100644 --- a/.gitignore +++ b/.gitignore @@ -3,6 +3,7 @@ .#* .version CVS +Fetchdir INSTALL Makefile Makefile.in diff --git a/ChangeLog b/ChangeLog index cfda3aa..943a6cf 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,25 @@ +2009-04-21 Eric Blake <[email protected]> + + Shuffle maintainer-specific rules. + * Makefile.am (maintainer-check-tests): Delete. + (autom4te-update): Move... + * cfg.mk (autom4te-update): ...here. + (fetch): Depend on autom4te-update. Split... + (gnulib-update): ...into new rule. Import move-if-change from + gnulib. + * maint.mk (maintainer-distcheck): Absorb former maintainer-check + rule. + * build-aux/move-if-change: New file, undistributed. + * .gitattributes: Handle new upstream file. + * .gitignore: Ignore maintainer cruft. + * HACKING: Update maintainer instructions. + * build-aux/config.guess: Update from upstream. + * build-aux/config.sub: Likewise. + * build-aux/gendocs.sh: Likewise. + * build-aux/texinfo.tex: Likewise. + * doc/gendocs_template: Likewise. + * doc/standards.texi: Likewise. + 2009-04-19 Ralf Wildenhues <[email protected]> Sync autom4te perl modules from Automake. diff --git a/HACKING b/HACKING index 89d17bb..42a31bf 100644 --- a/HACKING +++ b/HACKING @@ -51,9 +51,10 @@ release: - Run `make syntax-check' This makes sure that the source files follow some consistent rules. The checks live in maint.mk, which is intended to be shared across - several projects. + several projects. (Help in merging this to use gnulib's maint.mk + would be appreciated). -- Run `make maintainer-check' +- Run `make maintainer-distcheck' This is quite long. It basically runs the test suite using a C++ compiler instead of a C compiler, and within a severe environment (POSIXLY_CORRECT). diff --git a/Makefile.am b/Makefile.am index 919a298..7836735 100644 --- a/Makefile.am +++ b/Makefile.am @@ -46,42 +46,6 @@ $(srcdir)/INSTALL: $(top_srcdir)/doc/install.texi $(top_srcdir)/doc/install.texi endif -## maintainer-check ## -maintainer-check: maintainer-check-tests -maintainer-check-tests: all - cd tests && $(MAKE) $(AM_MAKEFLAGS) maintainer-check - - -## ----------------------------------- ## -## Updating Perl files from Automake. ## -## ----------------------------------- ## - -WGET = wget -WGETFLAGS = -C off - -## Fetch the latest versions of files we care about. -automake_gitweb = \ - http://git.savannah.gnu.org/gitweb/?p=automake.git;a=blob_plain;hb=HEAD; -autom4te_files = \ - Autom4te/Configure_ac.pm \ - Autom4te/Channels.pm \ - Autom4te/FileUtils.pm \ - Autom4te/Struct.pm \ - Autom4te/XFile.pm - -autom4te-update: - rm -f -r Fetchdir > /dev/null 2>&1 - mkdir -p Fetchdir/Autom4te - for file in $(autom4te_files); do \ - infile=`echo $$file | sed 's/Autom4te/Automake/g'`; \ - $(WGET) $(WGET_FLAGS) \ - "$(automake_gitweb)f=lib/$$infile" \ - -O "Fetchdir/$$file" || exit; \ - done - perl -pi -e 's/Automake::/Autom4te::/g' Fetchdir/Autom4te/*.pm - for file in $(autom4te_files); do \ - $(move_if_change) Fetchdir/$$file $(srcdir)/lib/$$file || exit; \ - done # Version string management. There are two files to be aware of: # .tarball-version - present only in a distribution tarball, and not in diff --git a/build-aux/config.guess b/build-aux/config.guess index e5716ee..3eda297 100755 --- a/build-aux/config.guess +++ b/build-aux/config.guess @@ -1115,8 +1115,11 @@ EOF pc:*:*:*) # Left here for compatibility: # uname -m prints for DJGPP always 'pc', but it prints nothing about - # the processor, so we play safe by assuming i386. - echo i386-pc-msdosdjgpp + # the processor, so we play safe by assuming i586. + # Note: whatever this is, it MUST be the same as what config.sub + # prints for the "djgpp" host, or else GDB configury will decide that + # this is a cross-build. + echo i586-pc-msdosdjgpp exit ;; Intel:Mach:3*:*) echo i386-pc-mach3 diff --git a/build-aux/config.sub b/build-aux/config.sub index d546a94..a39437d 100755 --- a/build-aux/config.sub +++ b/build-aux/config.sub @@ -4,7 +4,7 @@ # 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 # Free Software Foundation, Inc. -timestamp='2009-02-03' +timestamp='2009-04-17' # This file is (in principle) common to ALL GNU software. # The presence of a machine in this file suggests that SOME GNU software @@ -272,6 +272,7 @@ case $basic_machine in | mipsisa64sr71k | mipsisa64sr71kel \ | mipstx39 | mipstx39el \ | mn10200 | mn10300 \ + | moxie \ | mt \ | msp430 \ | nios | nios2 \ diff --git a/build-aux/gendocs.sh b/build-aux/gendocs.sh index ba76744..a1ed4b4 100755 --- a/build-aux/gendocs.sh +++ b/build-aux/gendocs.sh @@ -2,7 +2,7 @@ # gendocs.sh -- generate a GNU manual in many formats. This script is # mentioned in maintain.texi. See the help message below for usage details. -scriptversion=2009-01-02.08 +scriptversion=2009-04-08.09 # Copyright 2003, 2004, 2005, 2006, 2007, 2008, 2009 # Free Software Foundation, Inc. @@ -19,7 +19,7 @@ scriptversion=2009-01-02.08 # # You should have received a copy of the GNU General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. -# +# # Original author: Mohit Agarwal. # Send bug reports and any other correspondence to [email protected]. @@ -98,7 +98,7 @@ You can set the environment variables MAKEINFO, TEXI2DVI, and DVIPS to control the programs that get executed, and GENDOCS_TEMPLATE_DIR to control where the gendocs_template file is looked for. (With --docbook, the environment variables DOCBOOK2HTML, DOCBOOK2PDF, DOCBOOK2PS, and -DOCBOOK2TXT are also respected.) +DOCBOOK2TXT are also respected.) By default, makeinfo is run in the default (English) locale, since that's the language of most Texinfo manuals. If you happen to have a @@ -247,7 +247,7 @@ if test -z "$use_texi2html"; then cd ${split_html_dir} || exit 1 tar -czf $dotdot_outdir/${PACKAGE}.html_node.tar.gz -- *.html ) - html_node_tgz_size=`calcsize $outdir/${PACKAGE}.html_node.tar.gz` + html_node_tgz_size=`calcsize $outdir/${PACKAGE}.html_node.tar.gz` rm -f $outdir/html_node/*.html mkdir -p $outdir/html_node/ mv ${split_html_dir}/*.html $outdir/html_node/ diff --git a/build-aux/move-if-change b/build-aux/move-if-change new file mode 100755 index 0000000..a542417 --- /dev/null +++ b/build-aux/move-if-change @@ -0,0 +1,77 @@ +#!/bin/sh +# Like mv $1 $2, but if the files are the same, just delete $1. +# Status is zero if successful, nonzero otherwise. + +VERSION='2007-09-28 23:10'; # UTC +# The definition above must lie within the first 8 lines in order +# for the Emacs time-stamp write hook (at end) to update it. +# If you change this file with Emacs, please let the write hook +# do its job. Otherwise, update this string manually. + +# Copyright (C) 2002-2007 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +usage="usage: $0 SOURCE DEST" + +help="$usage + or: $0 OPTION +If SOURCE is different than DEST, then move it to DEST; else remove SOURCE. + + --help display this help and exit + --version output version information and exit + +Report bugs to <[email protected]>." + +version=`expr "$VERSION" : '\([^ ]*\)'` +version="move-if-change (gnulib) $version +Copyright (C) 2007 Free Software Foundation, Inc. +License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> +This is free software: you are free to change and redistribute it. +There is NO WARRANTY, to the extent permitted by law." + + +for arg +do + case $arg in + --help | --hel | --he | --h) + exec echo "$help" ;; + --version | --versio | --versi | --vers | --ver | --ve | --v) + exec echo "$version" ;; + --) + shift + break ;; + -*) + echo "$0: invalid option: $arg" >&2 + exit 1 ;; + *) + break ;; + esac +done + +test $# = 2 || { echo "$0: $usage" >&2; exit 1; } + +if test -r "$2" && cmp -s -- "$1" "$2"; then + rm -f -- "$1" +else + mv -f -- "$1" "$2" +fi + +## Local Variables: +## eval: (add-hook 'write-file-hooks 'time-stamp) +## time-stamp-start: "VERSION='" +## time-stamp-format: "%:y-%02m-%02d %02H:%02M" +## time-stamp-time-zone: "UTC" +## time-stamp-end: "'; # UTC" +## End: diff --git a/build-aux/texinfo.tex b/build-aux/texinfo.tex index 7f876b4..23a30bc 100644 --- a/build-aux/texinfo.tex +++ b/build-aux/texinfo.tex @@ -3,7 +3,7 @@ % Load plain if necessary, i.e., if running under initex. \expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi % -\def\texinfoversion{2009-03-22.17} +\def\texinfoversion{2009-03-28.05} % % Copyright 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995, % 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, @@ -9272,8 +9272,12 @@ directory should work if nowhere else does.} @markupsetuplqdefault @markupsetuprqdefault +...@c Gnulib now utterly and painfully insists on no trailing whitespace. +...@c So we have to nuke it. + @c Local variables: @c eval: (add-hook 'write-file-hooks 'time-stamp) +...@c eval: (add-hook 'write-file-hooks 'nuke-trailing-whitespace) @c page-delimiter: "^\\\\message" @c time-stamp-start: "def\\\\texinfoversion{" @c time-stamp-format: "%:y-%02m-%02d.%02H" diff --git a/cfg.mk b/cfg.mk index a27bfcf..07da748 100644 --- a/cfg.mk +++ b/cfg.mk @@ -44,8 +44,10 @@ gpg_key_ID = F4850180 gnulib_dir = '$(abs_srcdir)'/../gnulib # Update files from gnulib. -.PHONY: fetch -fetch: +.PHONY: fetch gnulib-update autom4te-update +fetch: gnulib-update autom4te-update + +gnulib-update: cp $(gnulib_dir)/build-aux/announce-gen $(srcdir)/build-aux cp $(gnulib_dir)/build-aux/config.guess $(srcdir)/build-aux cp $(gnulib_dir)/build-aux/config.sub $(srcdir)/build-aux @@ -56,6 +58,7 @@ fetch: cp $(gnulib_dir)/build-aux/install-sh $(srcdir)/build-aux cp $(gnulib_dir)/build-aux/mdate-sh $(srcdir)/build-aux cp $(gnulib_dir)/build-aux/missing $(srcdir)/build-aux + cp $(gnulib_dir)/build-aux/move-if-change $(srcdir)/build-aux cp $(gnulib_dir)/build-aux/vc-list-files $(srcdir)/build-aux cp $(gnulib_dir)/build-aux/texinfo.tex $(srcdir)/build-aux cp $(gnulib_dir)/doc/fdl.texi $(srcdir)/doc @@ -65,6 +68,39 @@ fetch: cp $(gnulib_dir)/doc/standards.texi $(srcdir)/doc cp $(gnulib_dir)/top/GNUmakefile $(srcdir) +WGET = wget +WGETFLAGS = -C off + +## Fetch the latest versions of files we care about. +automake_gitweb = \ + http://git.savannah.gnu.org/gitweb/?p=automake.git;a=blob_plain;hb=HEAD; +autom4te_files = \ + Autom4te/Configure_ac.pm \ + Autom4te/Channels.pm \ + Autom4te/FileUtils.pm \ + Autom4te/Struct.pm \ + Autom4te/XFile.pm + +move_if_change = '$(abs_srcdir)'/build-aux/move-if-change + +autom4te-update: + rm -fr Fetchdir > /dev/null 2>&1 + mkdir -p Fetchdir/Autom4te + for file in $(autom4te_files); do \ + infile=`echo $$file | sed 's/Autom4te/Automake/g'`; \ + $(WGET) $(WGET_FLAGS) \ + "$(automake_gitweb)f=lib/$$infile" \ + -O "Fetchdir/$$file" || exit; \ + done + perl -pi -e 's/Automake::/Autom4te::/g' Fetchdir/Autom4te/*.pm + for file in $(autom4te_files); do \ + $(move_if_change) Fetchdir/$$file $(srcdir)/lib/$$file || exit; \ + done + rm -fr Fetchdir > /dev/null 2>&1 + @echo + @echo "Please avoid committing copyright changes until GPLv3 is sorted" + @echo + # Tests not to run. local-checks-to-skip ?= \ changelog-check sc_unmarked_diagnostics diff --git a/doc/gendocs_template b/doc/gendocs_template index 94cecef..1bb1a5c 100644 --- a/doc/gendocs_template +++ b/doc/gendocs_template @@ -15,7 +15,7 @@ <p>This manual (%%PACKAGE%%) is available in the following formats:</p> <ul> -<li><a href="%%PACKAGE%%.html">HTML +<li><a href="%%PACKAGE%%.html">HTML (%%HTML_MONO_SIZE%%K bytes)</a> - entirely on one web page.</li> <li><a href="html_node/index.html">HTML</a> - with one web page per node.</li> @@ -28,7 +28,7 @@ chapter.</li> %%ENDIF HTML_CHAPTER%% <li><a href="%%PACKAGE%%.html.gz">HTML compressed - (%%HTML_MONO_GZ_SIZE%%K gzipped characters)</a> - entirely on + (%%HTML_MONO_GZ_SIZE%%K gzipped characters)</a> - entirely on one web page.</li> <li><a href="%%PACKAGE%%.html_node.tar.gz">HTML compressed (%%HTML_NODE_TGZ_SIZE%%K gzipped tar file)</a> - @@ -69,7 +69,7 @@ script</a>.)</p> <!-- If needed, change the copyright block at the bottom. In general, --> <!-- all pages on the GNU web server should have the section about --> <!-- verbatim copying. Please do NOT remove this without talking --> -<!-- with the webmasters first. --> +<!-- with the webmasters first. --> <!-- Please make sure the copyright date is consistent with the document --> <!-- and that it is like this "2001, 2002" not this "2001-2002." --> </div><!-- for id="content", starts in the include above --> @@ -77,9 +77,9 @@ script</a>.)</p> <div id="footer"> <p> -Please send FSF & GNU inquiries to +Please send FSF & GNU inquiries to <a href="mailto:[email protected]"><em>[email protected]</em></a>. -There are also <a href="/contact/">other ways to contact</a> +There are also <a href="/contact/">other ways to contact</a> the FSF. <br /> Please send broken links and other corrections or suggestions to diff --git a/doc/standards.texi b/doc/standards.texi index a2ddaf2..c56fed8 100644 --- a/doc/standards.texi +++ b/doc/standards.texi @@ -3,7 +3,7 @@ @setfilename standards.info @settitle GNU Coding Standards @c This date is automagically updated when you save this file: -...@set lastupdate January 31, 2009 +...@set lastupdate April 16, 2009 @c %**end of header @dircategory GNU organization @@ -313,7 +313,7 @@ Source Language write modern GUI functionality within Guile. We don't reject programs written in other ``scripting languages'' such as Perl and Python, but using Guile is very important for the overall consistency of the GNU -system. +system. @node Compatibility @@ -4041,7 +4041,7 @@ Releases The @file{README} file should also refer to the file which contains the copying conditions. The GNU GPL, if used, should be in a file called @file{COPYING}. If the GNU LGPL is used, it should be in a file called -...@file{copying.lib}. +...@file{copying.lesser}. Naturally, all the source files must be in the distribution. It is okay to include non-source files in the distribution, provided they are diff --git a/maint.mk b/maint.mk index 5f5a48c..1b35a3b 100644 --- a/maint.mk +++ b/maint.mk @@ -480,6 +480,7 @@ cvs-check: vc-diff-check maintainer-distcheck: $(MAKE) distcheck + $(MAKE) -C tests $(AM_MAKEFLAGS) maintainer-check $(MAKE) my-distcheck # Don't make a distribution if checks fail. -- 1.6.1.2
