[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Adjust channel definitions for new Automake `ordered' flag.
From: |
Eric Blake |
Subject: |
Re: Adjust channel definitions for new Automake `ordered' flag. |
Date: |
Tue, 21 Apr 2009 06:53:26 -0600 |
User-agent: |
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.21) Gecko/20090302 Thunderbird/2.0.0.21 Mnenhy/0.7.6.666 |
-----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 address@hidden
-----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 <address@hidden>
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 <address@hidden>
---
.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 <address@hidden>
+
+ 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 <address@hidden>
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 address@hidden
@@ -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 <address@hidden>."
+
+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
address@hidden Gnulib now utterly and painfully insists on no trailing
whitespace.
address@hidden So we have to nuke it.
+
@c Local variables:
@c eval: (add-hook 'write-file-hooks 'time-stamp)
address@hidden 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:address@hidden"><em>address@hidden</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:
address@hidden lastupdate January 31, 2009
address@hidden 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
address@hidden
address@hidden
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