[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
getting ready for Autoconf 2.61
From: |
Paul Eggert |
Subject: |
getting ready for Autoconf 2.61 |
Date: |
Thu, 24 Aug 2006 16:01:23 -0700 |
User-agent: |
Gnus/5.1008 (Gnus v5.10.8) Emacs/21.4 (gnu/linux) |
I installed the following patches to start getting ready for
Autoconf 2.61. I have omitted diff listings where all we
do is rename files, or sync from Automake or Coreutils or Gnulib.
I'd like to put out a beta test version soon.
2006-08-24 Paul Eggert <address@hidden>
Rework to use more-modern build style.
Many files are renamed; all uses of their names were changed.
* .x-sc_trailing_blank: Renamed from .x-sc_trailing_blank.
* .x-sc_useless_cpp_parens: New file.
* build-aux/config.guess: Renamed from config/config.guess. Update.
* build-aux/config.sub: Renamed from config/config.sub. Update.
* build-aux/elisp-comp: Renamed from config/elisp-comp.
* build-aux/install-sh: Renamed from config/install-sh. Update.
* build-aux/mdate-sh: Renamed from config/mdate-sh.
* build-aux/missing: Renamed from config/missing.
* build-aux/texinfo.tex: Renamed from config/texinfo.tex. Update.
* build-aux/vc-list-files: Renamed from config/vc-list-files.
* config/Makefile.am: Removed.
* config/mkinstalldirs: Removed.
* config/move-if-change: Removed.
* m4/m4.m4: Renamed from config/m4.m4. Add (C) to copyright notice.
* Makefile.am (SUBDIRS): Remove config.
(ACLOCAL_AMFLAGS): Include from m4, not config.
(EXTRA_DIST): Add config/announce-gen, config/prev-version.txt.
(WGET, WGETFLAGS): New macros, since Makefile.maint no longer does this.
(autom4te-update): Rewrite with a loop. Get from gnulib, not automake.
Fail if there's an error.
* Makefile.cfg (move_if_change): Remove.
(wget_files): Remove.
(cvs_executable_files): New macro.
(cvs_files): Use it. Remove mkinstalldirs. Add fdl.texi.
(executable-update): Use $(cvs_executable_files).
(local-checks-to-skip): Remove.
* Makefile.maint: Merge from coreutils, plus add our own changes
(gzip_rsyncable): New macro.
(GZIP_ENV): Use it.
(CVS_LIST): Use build-aux/vc-list-files.
(VERSION_REGEXP): New macro.
(local-checks-available): Add patch-check, $(syntax-check-rules),
check-AUTHORS.
(syntax-check-rules): Compute dynamically.
(sc_cast_of_x_alloc_return_value): Work even if no source files.
(sc_cast_of_alloca_return_value): Likewise.
(sc_prohibit_atoi_atof): Simplify regexp.
(sc_no_if_have_config_h, sc_require_config_h):
(sc_prohibit_assert_without_use,
(sc_obsolete_symbols): Check for O_NDELAY.
(sc_texi_notab): Remove.
(sc-changelog): Don't make an exception for '----' lines.
(.re-list): Remove, so we don't have a junk file behind.
(sc_system_h_headers): Remove the need for .re-list.
(sc_the_the): New rule.
(sc_tight_scope): Simplify.
(sc_trailing_space): Renamed from sc_trailing_blank.
(longopt_re): New macro.
(sc_two_space_separator_in_usage): New rule.
(sc_unmarked_diagnostics): Look at all files under CVS.
(sc_useless_cpp_parens, patch-check, check-AUTHORS): New rules.
(news-date-check, changelog-check): Version is OK.
(po-check): Look for lib files even if not in CVS.
(copyright-check): Use $() not ``.
(maintainer-distcheck): Do not depend on changelog-check.
(my-distcheck): Depend on $(release_archive_dir)/$(prev-tgz).
Also check for -Wpointer-arith.
(WGET, WGETFLAGS, tgz-md5, tgz-sha1, bz2-md5, bz2-sha1):
(xdelta-md5, xdelta-sha1, tgz-size, bz2-size, xd-size, rel-check):
Remove.
(announcement): Add --gpg-key-id arg.
(cvs-sv): Remove.
(move_if_change): Just use mv.
(local_updates: Remove wget-update, po-update.
(po_repo, do-po-update, po-update, wget_files, get-targets): Remove.
(config.guess-url_prefix, config.sub-url_prefix): Remove.
(ansi2knr.c-url_prefix, texinfo.tex-url_prefix):
(standards.texi-url_prefix, make-stds.texi-url_prefix, target, url):
($(get-targets)): Remove.
(cvs_files): Remove missing, mkinstalldirs, ansi2knr.c.
(gnulib_repo): Renamed from automake_repo. Get from gnulib now.
(cvs-update): Get from gnulib.
(emut_upload_commands): gnupload is in build-aux now.
(alpha beta major): Add changelog-check. Check version.
* configure.ac (AC_CONFIG_AUX_DIR): Renamed from config to build-aux.
(AC_CONFIG_FILES): Remove.
* bin/autoconf.as: Add spaces to avoid distcheck warning.
* config/announce-gen: Sync from coreutils.
* doc/make-stds.texi: Sync from gnulib.
* doc/standards.texi: Likewise.
* man/Makefile.am: Adjust for config -> build-aux renaming.
* tests/Makefile.am: Prefer $(FOO) to @address@hidden
* tests/local.at: Adjust from config -> build-aux renaming.
* tests/tools.at: Likewise.
* tests/torture.at: Likewise.
Index: .x-sc_space_tab
===================================================================
RCS file: /cvsroot/autoconf/autoconf/.x-sc_space_tab,v
retrieving revision 1.1
diff -p -u -r1.1 .x-sc_space_tab
--- .x-sc_space_tab 10 Apr 2006 18:14:53 -0000 1.1
+++ .x-sc_space_tab 24 Aug 2006 22:53:50 -0000
@@ -1,4 +1,4 @@
-config/config.guess
-config/config.sub
+build-aux/config.guess
+build-aux/config.sub
aclocal.m4
configure
Index: .x-sc_sun_os_names
===================================================================
RCS file: /cvsroot/autoconf/autoconf/.x-sc_sun_os_names,v
retrieving revision 1.1
diff -p -u -r1.1 .x-sc_sun_os_names
--- .x-sc_sun_os_names 10 Apr 2006 18:14:53 -0000 1.1
+++ .x-sc_sun_os_names 24 Aug 2006 22:53:50 -0000
@@ -1 +1 @@
-config/config.guess
+build-aux/config.guess
Index: Makefile.am
===================================================================
RCS file: /cvsroot/autoconf/autoconf/Makefile.am,v
retrieving revision 1.96
diff -p -u -r1.96 Makefile.am
--- Makefile.am 14 May 2005 07:00:39 -0000 1.96
+++ Makefile.am 24 Aug 2006 22:53:50 -0000
@@ -2,8 +2,8 @@
## Makefile for Autoconf.
-## Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004 Free Software
-## Foundation, Inc.
+## Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2006 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
@@ -22,13 +22,14 @@
# bin/ must be run first, as it builds executables needed for tests.
# autom4te uses autotest.m4f to generate `testsuite', so build tests last.
-SUBDIRS = bin . lib config man doc tests
+SUBDIRS = bin . lib man doc tests
-ACLOCAL_AMFLAGS = -I config
+ACLOCAL_AMFLAGS = -I m4
EXTRA_DIST = ChangeLog.0 ChangeLog.1 ChangeLog.2 \
BUGS \
- GNUmakefile Makefile.maint Makefile.cfg
+ GNUmakefile Makefile.maint Makefile.cfg \
+ config/announce-gen config/prev-version.txt
MAINTAINERCLEANFILES = $(srcdir)/INSTALL
@@ -62,6 +63,9 @@ maintainer-check-tests:
## Updating Perl files from Automake. ##
## ----------------------------------- ##
+WGET = wget
+WGETFLAGS = -C off
+
## Fetch the latest versions of files we care about.
automake_cvsweb = \
http://sources.redhat.com/cgi-bin/cvsweb.cgi/~checkout~/automake
@@ -76,16 +80,13 @@ autom4te_files = \
autom4te-update:
rm -f -r Fetchdir > /dev/null 2>&1
- mkdir Fetchdir; mkdir Fetchdir/Autom4te
-## If a get fails then that is a problem.
- (cd Fetchdir && \
- $(WGET)
$(automake_cvsweb)/lib/Automake/Configure_ac.pm?$(automake_cvsargs) -O
Autom4te/Configure_ac.pm; \
- $(WGET) $(automake_cvsweb)/lib/Automake/Channels.pm?$(automake_cvsargs)
-O Autom4te/Channels.pm; \
- $(WGET)
$(automake_cvsweb)/lib/Automake/FileUtils.pm?$(automake_cvsargs) -O
Autom4te/FileUtils.pm; \
- $(WGET) $(automake_cvsweb)/lib/Automake/Struct.pm?$(automake_cvsargs)
-O Autom4te/Struct.pm; \
- $(WGET) $(automake_cvsweb)/lib/Automake/XFile.pm?$(automake_cvsargs) -O
Autom4te/XFile.pm; \
- :)
+ mkdir -p Fetchdir/Autom4te
+ for file in $(autom4te_files); do \
+ $(WGET) $(WGET_FLAGS) \
+ "$(automake_cvsweb)/lib/$file?$(automake_cvsargs)" \
+ -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; \
+ $(move_if_change) Fetchdir/$$file $(srcdir)/lib/$$file || exit; \
done
Index: Makefile.cfg
===================================================================
RCS file: /cvsroot/autoconf/autoconf/Makefile.cfg,v
retrieving revision 1.9
diff -p -u -r1.9 Makefile.cfg
--- Makefile.cfg 10 Apr 2006 20:38:17 -0000 1.9
+++ Makefile.cfg 24 Aug 2006 22:53:50 -0000
@@ -17,7 +17,6 @@
# 02110-1301, USA.
prev_version_file = $(srcdir)/config/prev-version.txt
-move_if_change = $(srcdir)/config/move-if-change
announce_gen = $(srcdir)/config/announce-gen
release_archive_dir = releases
@@ -32,19 +31,19 @@ url_dir_list = \
ftp://$(gnu_rel_host).gnu.org/gnu/autoconf
# Files to update automatically.
-wget_files = \
- $(srcdir)/doc/standards.texi \
+cvs_executable_files = \
+ $(srcdir)/build-aux/config.guess \
+ $(srcdir)/build-aux/config.sub \
+ $(srcdir)/build-aux/elisp-comp \
+ $(srcdir)/build-aux/install-sh \
+ $(srcdir)/build-aux/mdate-sh \
+ $(srcdir)/build-aux/missing \
+
+cvs_files = $(cvs_executable_files) \
+ $(srcdir)/build-aux/texinfo.tex \
+ $(srcdir)/doc/fdl.texi \
$(srcdir)/doc/make-stds.texi \
- $(srcdir)/config/config.guess \
- $(srcdir)/config/config.sub \
- $(srcdir)/config/texinfo.tex
-
-cvs_files = \
- $(srcdir)/config/elisp-comp \
- $(srcdir)/config/install-sh \
- $(srcdir)/config/mdate-sh \
- $(srcdir)/config/missing \
- $(srcdir)/config/mkinstalldirs
+ $(srcdir)/doc/standards.texi
# Keep executables executable. Make it robust to parallel makes.
local_updates = executable-update
@@ -52,12 +51,8 @@ local_updates = executable-update
.PHONY: executable-update
# autom4te-update is defined in Makefile.am.
executable-update: wget-update cvs-update autom4te-update
- chmod a+x $(cvs_files) \
- $(srcdir)/config/config.guess \
- $(srcdir)/config/config.sub
+ chmod a+x $(cvs_executable_files)
# Tests not to run.
local-checks-to-skip ?= \
- po-check m4-check author_mark_check \
- strftime-check syntax-check makefile_path_separator_check \
- makefile-check
+ sc_unmarked_diagnostics
Index: Makefile.maint
===================================================================
RCS file: /cvsroot/autoconf/autoconf/Makefile.maint,v
retrieving revision 1.37
diff -p -u -r1.37 Makefile.maint
--- Makefile.maint 12 Apr 2006 21:24:56 -0000 1.37
+++ Makefile.maint 24 Aug 2006 22:53:50 -0000
@@ -26,25 +26,14 @@ ME := Makefile.maint
# Do not save the original name or timestamp in the .tar.gz file.
# Use --rsyncable if available.
-GZIP_ENV = \
- "--no-name --best$$( \
- case $$(gzip --help) in \
- (*--rsyncable*) echo ' --rsyncable';; \
- esac \
- )"
+gzip_rsyncable := \
+ $(shell gzip --help 2>/dev/null|grep rsyncable >/dev/null && echo
--rsyncable)
+GZIP_ENV = '--no-name --best $(gzip_rsyncable)'
CVS = cvs
-CVS_LIST = sh -c ' \
- (cvsu --find --types=AFGM $$*) 2>/dev/null || \
- awk -F/ '\''{ \
- if (!$$1 && $$3 !~ /^-/) { \
- f=FILENAME; \
- sub(/CVS\/Entries/, "", f); \
- print f $$2; \
- }}'\'' \
- $$(find $${*-*} -name Entries -print) /dev/null \
- ' dummy
+# cvsu is part of the cvsutils package: http://www.red-bean.com/cvsutils/
+CVS_LIST = build-aux/vc-list-files
CVS_LIST_EXCEPT = \
$(CVS_LIST) | if test -f .x-$@; then grep -vEf .x-$@; else grep -v
ChangeLog; fi
@@ -54,6 +43,7 @@ ifeq ($(origin prev_version_file), undef
endif
PREV_VERSION := $(shell cat $(prev_version_file))
+VERSION_REGEXP = $(subst .,\.,$(VERSION))
tag-package = $(shell echo "$(PACKAGE)" | tr '[:lower:]' '[:upper:]')
tag-this-version = $(subst .,_,$(VERSION))
@@ -74,37 +64,25 @@ export LC_ALL = C
## Sanity checks. ##
## --------------- ##
+# FIXME: add a check to prohibit definition in src/*.c of symbols defined
+# in system.h. E.g. today I removed from tail.c a useless definition of
+# ENOSYS. It was useless because system.h ensures it's defined.
+
# Checks that don't require cvs.
# Run `changelog-check' last, as previous test may reveal problems requiring
# new ChangeLog entries.
local-checks-available = \
po-check copyright-check writable-files m4-check author_mark_check \
- changelog-check strftime-check syntax-check makefile_path_separator_check \
- makefile-check
+ changelog-check patch-check strftime-check $(syntax-check-rules) \
+ makefile_path_separator_check \
+ makefile-check check-AUTHORS
.PHONY: $(local-checks-available)
local-check = $(filter-out $(local-checks-to-skip), $(local-checks-available))
+# Collect the names of rules starting with `sc_'.
+syntax-check-rules := $(shell sed -n 's/^\(sc_[a-zA-Z0-9_-]*\):.*/\1/p' $(ME))
.PHONY: $(syntax-check-rules)
-syntax-check-rules = \
- sc_cast_of_argument_to_free \
- sc_cast_of_x_alloc_return_value \
- sc_cast_of_alloca_return_value \
- sc_changelog \
- sc_dd_max_sym_length \
- sc_error_exit_success \
- sc_file_system \
- sc_obsolete_symbols \
- sc_prohibit_atoi_atof \
- sc_prohibit_jm_in_m4 \
- sc_root_tests \
- sc_space_tab \
- sc_sun_os_names \
- sc_system_h_headers \
- sc_tight_scope \
- sc_trailing_space \
- sc_unmarked_diagnostics \
- sc_texi_notab
syntax-check: $(syntax-check-rules)
# @shopt -s nullglob; \
@@ -114,7 +92,7 @@ syntax-check: $(syntax-check-rules)
# exit 1; } || :
# grep -nE '^# *include <(string|stdlib)\.h>' \
-# $(srcdir)/{lib,src}/*.[chy] /dev/null && \
+# $(srcdir)/{lib,src}/*.[chly] /dev/null && \
# { echo '$(ME): FIXME' 1>&2; \
# exit 1; } || :
# FIXME: don't allow `#include .strings\.h' anywhere
@@ -130,20 +108,19 @@ sc_cast_of_x_alloc_return_value:
@shopt -s nullglob; \
grep -nE --exclude=$(srcdir)/lib/regex.c \
'\*\) *x(m|c|re)alloc\>' \
- $(srcdir)/{lib,src}/*.[chy] /dev/null && \
+ $(srcdir)/{lib,src}/*.[chly] /dev/null && \
{ echo '$(ME): don'\''t cast x*alloc return value' 1>&2; \
exit 1; } || :
sc_cast_of_alloca_return_value:
@shopt -s nullglob; \
grep -nE '\*\) *alloca\>' \
- $(srcdir)/src/*.[chy] /dev/null && \
+ $(srcdir)/src/*.[chly] /dev/null && \
{ echo '$(ME): don'\''t cast alloca return value' 1>&2; \
exit 1; } || :
sc_space_tab:
- @grep -n '[ ] ' \
- $$($(CVS_LIST_EXCEPT)) && \
+ @grep -n '[ ] ' $$($(CVS_LIST_EXCEPT)) && \
{ echo '$(ME): found SPACE-TAB sequence; remove the SPACE' \
1>&2; exit 1; } || :
@@ -151,8 +128,7 @@ sc_space_tab:
# They provide no error checking mechanism.
# Instead, use strto* functions.
sc_prohibit_atoi_atof:
- @grep -nE '\<(ato[filq]|ato''ll)\>' \
- $$($(CVS_LIST_EXCEPT)) && \
+ @grep -nE '\<ato([filq]|ll)\>' $$($(CVS_LIST_EXCEPT)) && \
{ echo '$(ME): do not use ato''f, ato''i, ato''l, ato''ll, or ato''q'
\
1>&2; exit 1; } || :
@@ -165,32 +141,44 @@ sc_error_exit_success:
exit 1; } || :
sc_file_system:
- @grep -ni 'file''system' \
- $$($(CVS_LIST_EXCEPT)) && \
+ @grep -ni 'file''system' $$($(CVS_LIST_EXCEPT)) && \
{ echo '$(ME): found use of "file''system";' \
'rewrite to use "file system"' 1>&2; \
exit 1; } || :
+sc_no_if_have_config_h:
+ @grep -n '^# *if HAVE_CONFIG_H' $$($(CVS_LIST_EXCEPT)) && \
+ { echo '$(ME): found use of #if HAVE_CONFIG_H; use #ifdef' \
+ 1>&2; exit 1; } || :
+
+# Nearly all .c files must include <config.h>.
+sc_require_config_h:
+ @grep -L '^# *include <config\.h>' /dev/null \
+ $$($(CVS_LIST_EXCEPT) | grep '\.c$$') \
+ | grep -v /dev/null && \
+ { echo '$(ME): the above files do not include <config.h>' \
+ 1>&2; exit 1; } || :
+
+# Prohibit the inclusion of assert.h without an actual use of assert.
+sc_prohibit_assert_without_use:
+ @files=$$(grep -l '# *include <assert\.h>' /dev/null \
+ $$($(CVS_LIST_EXCEPT) | grep '\.c$$')) && \
+ grep -L '\<assert (' $$files /dev/null \
+ | grep -v /dev/null && \
+ { echo "$(ME): the above files include <assert.h> but don't use it" \
+ 1>&2; exit 1; } || :
+
sc_obsolete_symbols:
- @grep -nE '\<(HAVE_''FCNTL_H)\>' \
+ @grep -nE '\<(HAVE''_FCNTL_H|O''_NDELAY)\>' \
$$($(CVS_LIST_EXCEPT)) && \
- { echo '$(ME): do not use HAVE_''FCNTL_H' \
+ { echo '$(ME): do not use HAVE''_FCNTL_H or O''_NDELAY' \
1>&2; exit 1; } || :
# FIXME: warn about definitions of EXIT_FAILURE, EXIT_SUCCESS, STREQ
-# Do not use TABs in .texi files, except in verbatim environments.
-sc_texi_notab:
- @sed '/address@hidden/,/address@hidden verbatim/d' /dev/null
\
- $$($(CVS_LIST_EXCEPT) | grep -E '\.(texi|txi|texinfo)$$' ) \
- | grep '[ ]' && \
- { echo '$(ME): Do not use TABs in texinfo files outside of @verbatim'
\
- 1>&2; exit 1; } || :
-
# Each nonempty line must start with a year number, or a TAB.
sc_changelog:
- @sed '/^-----/,$$d' $$(find . -maxdepth 2 -name ChangeLog) \
- | grep -n '^[^12 ]' && \
+ @grep -n '^[^12 ]' $$(find . -maxdepth 2 -name ChangeLog) && \
{ echo '$(ME): found unexpected prefix in a ChangeLog' 1>&2; \
exit 1; } || :
@@ -202,7 +190,7 @@ ifneq ($(wildcard $(dd_c)),)
@len=$$( (sed -n '/conversions\[\] =$$/,/^};/p' $(dd_c);\
sed -n '/flags\[\] =$$/,/^};/p' $(dd_c) ) \
|sed -n '/"/s/^[^"]*"\([^"]*\)".*/\1/p' \
- | wc --max-line-length); \
+ | wc --max-line-length); \
max=$$(sed -n '/^#define LONGEST_SYMBOL /s///p' $(dd_c) \
|tr -d '"' | wc --max-line-length); \
if test "$$len" = "$$max"; then :; else \
@@ -215,9 +203,9 @@ endif
# On 2004-04-13, they were all changed to start with gl_ instead.
# Make sure that none are inadvertently reintroduced.
sc_prohibit_jm_in_m4:
- @grep -nE 'jm_[A-Z]' /dev/null \
- $$($(CVS_LIST) $(srcdir)/m4 |grep '\.m4$$') && \
- { echo '$(ME): do not use jm_ in m4 macro names' \
+ @grep -nE 'jm_[A-Z]' \
+ $$($(CVS_LIST) $(srcdir)/m4 |grep '\.m4$$') && \
+ { echo '$(ME): do not use jm_ in m4 macro names' \
1>&2; exit 1; } || :
sc_root_tests:
@@ -232,22 +220,16 @@ sc_root_tests:
&& { echo 'tests/Makefile.am: missing check-root action'>&2; \
exit 1; } || :
-# Create a list of regular expressions matching the names
-# of files included from system.h. Exclude a couple.
-.re-list:
- @shopt -s nullglob; \
- sed -n '/^# *include /s///p' $(srcdir)/src/system.[h] /dev/null \
- | grep -Ev 'sys/(param|file)\.h' \
- | sed 's/ .*//;;s/^["<]/^# *include [<"]/;s/\.h[">]$$/\\.h[">]/' \
- > address@hidden
- @mv address@hidden $@
-
# Files in src/ should not include directly any of
# the headers already included via system.h.
-sc_system_h_headers: .re-list
- @if test -f $(srcdir)/src/system.h; then
\
- trap 'rc=$$?; rm -f .re-list; exit $$rc' 0 1 2 3 15; \
- grep -nE -f .re-list \
+sc_system_h_headers:
+ @if test -f $(srcdir)/src/system.h; then \
+ pat=$$( \
+ sed -n '/^# *include /s///p' $(srcdir)/src/system.h /dev/null \
+ | grep -Ev 'sys/(param|file)\.h' \
+ | sed 's/ .*//;;s/^["<]/^# *include [<"]/;s/\.h[">]$$/\\.h[">]/' \
+ ) && \
+ grep -nE -f "$pat" \
$$($(CVS_LIST) src | \
grep -Ev '((copy|system)\.h|parse-gram\.c)$$') \
&& { echo '$(ME): the above are already included via system.h'\
@@ -257,29 +239,62 @@ sc_system_h_headers: .re-list
sc_sun_os_names:
@grep -nEi \
'solaris[^[:alnum:]]*2\.(7|8|9|[1-9][0-9])|sunos[^[:alnum:]][6-9]' \
- $$($(CVS_LIST_EXCEPT)) && \
+ $$($(CVS_LIST_EXCEPT)) && \
{ echo '$(ME): found misuse of Sun OS version numbers' 1>&2; \
exit 1; } || :
+sc_the_the:
+ @grep -ni '\<the ''the\>' $$($(CVS_LIST_EXCEPT)) && \
+ { echo '$(ME): found use of "the ''the";' 1>&2; \
+ exit 1; } || :
+
sc_tight_scope:
- @if test -d src; then $(MAKE) -C src $@; else :; fi
+ test ! -d src || $(MAKE) -C src $@
-sc_trailing_space:
- @grep -n '[ ]$$' \
- $$($(CVS_LIST_EXCEPT)) && \
- { echo '$(ME): found trailing space(s)' \
+sc_trailing_blank:
+ @grep -n '[ ]$$' $$($(CVS_LIST_EXCEPT)) && \
+ { echo '$(ME): found trailing blank(s)' \
+ 1>&2; exit 1; } || :
+
+# Match lines like the following, but where there is only one space
+# between the options and the description:
+# -D, --all-repeated[=delimit-method] print all duplicate lines\n
+longopt_re = --[a-z][0-9A-Za-z-]*(\[=[0-9A-Za-z-]*\])?
+sc_two_space_separator_in_usage:
+ @grep -nE '^ *(-[A-Za-z],)? $(longopt_re) [^ ].*\\$$' \
+ $$($(CVS_LIST_EXCEPT)) && \
+ { echo "$(ME): help2man requires at least two spaces between"; \
+ echo "$(ME): an option and its description"; \
1>&2; exit 1; } || :
# Look for diagnostics that aren't marked for translation.
# This won't find any for which error's format string is on a separate line.
sc_unmarked_diagnostics:
- @shopt -s nullglob; \
- grep -nE '\<error \([^"]*"[^"]*[a-z]{3}' \
- $(srcdir)/{lib,src}/*.c /dev/null \
- | grep -v '_(' && \
+ @grep -nE \
+ '\<error \([^"]*"[^"]*[a-z]{3}' $$($(CVS_LIST_EXCEPT)) \
+ | grep -v '_''(' && \
{ echo '$(ME): found unmarked diagnostic(s)' 1>&2; \
exit 1; } || :
+# Avoid useless parentheses like those in this example:
+# #if defined (SYMBOL) || defined (SYM2)
+sc_useless_cpp_parens:
+ @grep -n '^# *if .*defined *(' $$($(CVS_LIST_EXCEPT)) && \
+ { echo '$(ME): found useless parentheses in cpp directive' \
+ 1>&2; exit 1; } || :
+
+# Ensure that the c99-to-c89 patch applies cleanly.
+patch-check:
+ if test -f src/c99-to-c89.diff; then \
+ rm -rf src-c89 address@hidden address@hidden &&
\
+ cp -a src src-c89 && \
+ (cd src-c89; patch -V never --fuzz=0) < src/c99-to-c89.diff \
+ > address@hidden 2>&1 &&
\
+ { grep -v '^patching file ' address@hidden > address@hidden || :; }
&& \
+ test -s address@hidden &&
\
+ rm -rf src-c89 address@hidden address@hidden;
\
+ fi
+
# Ensure that date's --help output stays in sync with the info
# documentation for GNU strftime. The only exception is %N,
# which date accepts but GNU strftime does not.
@@ -295,6 +310,9 @@ strftime-check:
rm -f address@hidden address@hidden;
\
fi
+check-AUTHORS:
+ test ! -d src || $(MAKE) -C src $@
+
# Ensure that we use only the standard $(VAR) notation,
# not @...@ in Makefile.am, now that we can rely on automake
# to emit a definition for each substituted variable.
@@ -304,15 +322,17 @@ makefile-check:
news-date-check: NEWS
today=`date +%Y-%m-%d`; \
- if head NEWS | grep $$today >/dev/null; then \
+ if head NEWS | grep '^\*.* $(VERSION_REGEXP) ('$$today')' \
+ >/dev/null; then \
:; \
else \
- echo "today's date is not in NEWS" 1>&2; \
+ echo "version or today's date is not in NEWS" 1>&2; \
exit 1; \
fi
changelog-check:
- if head ChangeLog | grep 'Version $(VERSION)' >/dev/null; then \
+ if head ChangeLog | grep 'Version $(VERSION_REGEXP)\.$$' \
+ >/dev/null; then \
:; \
else \
echo "$(VERSION) not in ChangeLog" 1>&2; \
@@ -326,13 +346,16 @@ m4-check:
exit 1; } || :
# Verify that all source files using _() are listed in po/POTFILES.in.
-# FIXME: don't hard-code src/false.c below; use a more general mechanism.
+# FIXME: don't hard-code file names below; use a more general mechanism.
po-check:
if test -f po/POTFILES.in; then \
grep -E -v '^(#|$$)' po/POTFILES.in \
| grep -v '^src/false\.c$$' | sort > address@hidden;
\
files=; \
- for file in lib/*.[chly] src/*.[chly]; do \
+ for file in $$($(CVS_LIST_EXCEPT)) lib/*.[ch]; do \
+ case $$file in \
+ djgpp/* | man/*) continue;; \
+ esac; \
case $$file in \
*.[ch]) \
base=`expr " $$file" : ' \(.*\)\..'`; \
@@ -340,7 +363,7 @@ po-check:
esac; \
files="$$files $$file"; \
done; \
- grep -E -l '\bN?_\([^)"]*("|$$)' $$files | sort > address@hidden;
\
+ grep -E -l '\bN?_\([^)"]*("|$$)' $$files | sort -u > address@hidden;
\
diff -u address@hidden address@hidden || exit 1;
\
rm -f address@hidden address@hidden;
\
fi
@@ -382,7 +405,7 @@ v_etc_file = lib/version-etc.c
# Make sure that the copyright date in $(v_etc_file) is up to date.
copyright-check:
@if test -f $(v_etc_file); then \
- grep "enum { COPYRIGHT_YEAR = `date +%Y` };" $(v_etc_file) \
+ grep 'enum { COPYRIGHT_YEAR = '$$(date +%Y)' };' $(v_etc_file) \
>/dev/null \
|| { echo 'out of date copyright in $(v_etc_file); update it' 1>&2; \
exit 1; }; \
@@ -408,7 +431,7 @@ cvs-diff-check:
cvs-check: cvs-diff-check cvs-tag-check
-maintainer-distcheck: changelog-check
+maintainer-distcheck:
$(MAKE) distcheck
$(MAKE) my-distcheck
@@ -433,18 +456,19 @@ null_AM_MAKEFLAGS = \
# Detect format-string/arg-list mismatches that would normally be obscured
# by the use of _(). The --disable-nls effectively defines away that macro,
# and building with CFLAGS='-Wformat -Werror' causes any format warning to be
-# treated as a failure. Also, check for shadowing problems with -Wshadow.
+# treated as a failure. Also, check for shadowing problems with -Wshadow,
+# and for pointer arithmetic problems with -Wpointer-arith.
# These CFLAGS are pretty strict. If you build this target, you probably
# have to have a recent version of gcc and glibc headers.
TMPDIR ?= /tmp
t=$(TMPDIR)/$(PACKAGE)/test
-my-distcheck: $(local-check)
+my-distcheck: $(local-check) $(release_archive_dir)/$(prev-tgz)
-rm -rf $(t)
mkdir -p $(t)
GZIP=$(GZIP_ENV) $(AMTAR) -C $(t) -zxf $(distdir).tar.gz
cd $(t)/$(distdir) \
&& ./configure --disable-nls \
- && $(MAKE) CFLAGS='-Werror -Wall -Wformat -Wshadow' \
+ && $(MAKE) CFLAGS='-Werror -Wall -Wformat -Wshadow -Wpointer-arith' \
AM_MAKEFLAGS='$(null_AM_MAKEFLAGS)' \
&& $(MAKE) dvi \
&& $(MAKE) check \
@@ -457,28 +481,6 @@ my-distcheck: $(local-check)
echo "$(distdir).tar.gz is ready for distribution"; \
echo "========================"
-WGET = wget
-WGETFLAGS = -C off
-
-tgz-md5 = $(shell md5sum < $(my_distdir).tar.gz|sed 's/ -//')
-tgz-sha1 = $(shell sha1sum < $(my_distdir).tar.gz|sed 's/ -//')
-bz2-md5 = $(shell md5sum < $(my_distdir).tar.bz2|sed 's/ -//')
-bz2-sha1 = $(shell sha1sum < $(my_distdir).tar.bz2|sed 's/ -//')
-xdelta-md5 = $(shell md5sum < $(xd-delta)|sed 's/ -//')
-xdelta-sha1 = $(shell sha1sum < $(xd-delta)|sed 's/ -//')
-tgz-size = $(shell du --human $(my_distdir).tar.gz|sed 's/\([MkK]\).*/ \1B/')
-bz2-size = $(shell du --human $(my_distdir).tar.bz2|sed 's/\([MkK]\).*/ \1B/')
-xd-size = $(shell du --human $(xd-delta)|sed 's/\([MkK]\).*/ \1B/')
-
-rel-check:
- tarz=/tmp/rel-check-tarz-$$$$; \
- md5_tmp=/tmp/rel-check-md5-$$$$; \
- set -e; \
- trap 'status=$$?; rm -f $$tarz $$md5_tmp; exit $$status' 0 1 2 3 15; \
- $(WGET) $(WGETFLAGS) -q --output-document=$$tarz $(url); \
- echo "$(md5) -" > $$md5_tmp; \
- md5sum -c $$md5_tmp < $$tarz
-
prev-tgz = $(PACKAGE)-$(PREV_VERSION).tar.gz
xd-delta = $(PACKAGE)-$(PREV_VERSION)-$(VERSION).xdelta
@@ -490,6 +492,7 @@ announcement: NEWS ChangeLog $(rel-files
--prev=$(PREV_VERSION) \
--curr=$(VERSION) \
--release-archive-directory=$(release_archive_dir) \
+ --gpg-key-id=$(gpg_key_ID) \
--news=NEWS \
$(addprefix --url-dir=, $(url_dir_list)) \
@@ -500,10 +503,9 @@ announcement: NEWS ChangeLog $(rel-files
ftp-gnu = ftp://ftp.gnu.org/gnu
www-gnu = http://www.gnu.org
-cvs-sv = http://cvs.savannah.gnu.org/viewcvs/~checkout~
-# Use mv, if you don't have/want move-if-change.
-move_if_change ?= move-if-change
+# Use mv-if-change if you prefer it.
+move_if_change ?= mv
# --------------------- #
@@ -511,94 +513,42 @@ move_if_change ?= move-if-change
# --------------------- #
.PHONY: update
-local_updates ?= wget-update cvs-update po-update
+local_updates ?= cvs-update
update: $(local_updates)
-# ------------------- #
-# Updating PO files. #
-# ------------------- #
-
-po_repo = http://www.iro.umontreal.ca/contrib/po/maint/$(PACKAGE)
-.PHONY: do-po-update po-update
-do-po-update:
- tmppo=/tmp/$(PACKAGE)-$(VERSION)-po &&\
- rm -rf $$tmppo && \
- mkdir $$tmppo && \
- (cd $$tmppo && \
- $(WGET) $(WGETFLAGS) -r -l1 -nd --no-parent -A '*.po' $(po_repo)) &&\
- cp $$tmppo/*.po po
- cd po && $(MAKE) update-po
- $(MAKE) po-check
-
-po-update:
- if test -d "po"; then \
- $(MAKE) do-po-update; \
- fi
-
# -------------------------- #
# Updating GNU build tools. #
# -------------------------- #
-# The following pseudo table associates a local directory and a URL
-# with each of the files that belongs to some other package and is
-# regularly updated from the specified URL.
-wget_files ?= \
- $(srcdir)/build-aux/config.guess \
- $(srcdir)/build-aux/config.sub \
- $(srcdir)/build-aux/texinfo.tex \
- $(srcdir)/src/ansi2knr.c
-
-get-targets = $(patsubst %, get-%, $(wget_files))
-
-config.guess-url_prefix = $(cvs-sv)/config/config/
-config.sub-url_prefix = $(cvs-sv)/config/config/
-
-ansi2knr.c-url_prefix = ftp://ftp.cs.wisc.edu/ghost/
-
-texinfo.tex-url_prefix = $(cvs-sv)/gnulib/gnulib/build-aux/
-
-standards.texi-url_prefix = $(cvs-sv)/gnulib/gnulib/doc/
-make-stds.texi-url_prefix = $(standards.texi-url_prefix)
-
-target = $(patsubst get-%, %, $@)
-url = $($(notdir $(target))-url_prefix)$(notdir $(target))
-
-.PHONY: $(get-targets)
-$(get-targets):
- $(WGET) $(WGETFLAGS) $(url) -O $(target).t \
- && $(move_if_change) $(target).t $(target)
-
cvs_files ?= \
$(srcdir)/build-aux/depcomp \
$(srcdir)/build-aux/install-sh \
- $(srcdir)/build-aux/missing \
- $(srcdir)/build-aux/mkinstalldirs \
- $(srcdir)/src/ansi2knr.c
-automake_repo=:pserver:anoncvs:address@hidden:/cvs/automake
+ $(srcdir)/build-aux/missing
+gnulib_repo=:pserver:address@hidden:/sources/gnulib
.PHONY: wget-update
wget-update: $(get-targets)
.PHONY: cvs-update
cvs-update:
- exit_status=0; \
- for f in $(cvs_files); do \
+ fail=; \
+ for f in $(cvs_files) dummy; do \
+ test $$f = dummy && continue; \
test -f $$f || { echo "*** skipping $$f" 1>&2; continue; }; \
cvs diff $$f > /dev/null \
- || { exit_status=$$?; \
- echo "*** $$f is locally modified; skipping it" 1>&2; \
- continue; }; \
- file=$$(basename $$f); \
+ || { echo "*** $$f is locally modified; skipping it" 1>&2; \
+ fail=yes; continue; }; \
+ file=$$(expr "X$$f" : 'X$(srcdir)/\(.*\)'); \
echo checking out $$file...; \
- $(CVS) -d $(automake_repo) co -p automake/lib/$$file> $$f.t \
- && $(move_if_change) $$f.t $$f || exit_status=$$?; \
+ $(CVS) -d $(gnulib_repo) co -p gnulib/$$file >$$f.t \
+ && $(move_if_change) $$f.t $$f; \
done; \
- exit $$exit_status
+ test "$$fail" && exit 1
emit_upload_commands:
@echo =====================================
@echo =====================================
- @echo "$(srcdir)/gnupload $(GNUPLOADFLAGS) \\"
+ @echo "$(srcdir)/build-aux/gnupload $(GNUPLOADFLAGS) \\"
@echo " --to $(gnu_rel_host):coreutils \\"
@echo " $(rel-files)"
@echo '# send the /tmp/announcement e-mail'
@@ -609,7 +559,11 @@ $(xd-delta): $(release_archive_dir)/$(pr
xdelta delta -9 $^ $@ || :
.PHONY: alpha beta major
-alpha beta major: news-date-check $(local-check)
+alpha beta major: news-date-check changelog-check $(local-check)
+ test $@ = major \
+ && { echo $(VERSION) | grep -E '^[0-9]+(\.[0-9]+)+$$' \
+ || { echo "invalid version string: $(VERSION)" 1>&2; exit 1;};}\
+ || :
$(MAKE) cvs-dist
$(MAKE) $(xd-delta)
$(MAKE) -s announcement RELEASE_TYPE=$@ > /tmp/announce-$(my_distdir)
Index: configure.ac
===================================================================
RCS file: /cvsroot/autoconf/autoconf/configure.ac,v
retrieving revision 1.80
diff -p -u -r1.80 configure.ac
--- configure.ac 23 Jun 2006 19:09:49 -0000 1.80
+++ configure.ac 24 Aug 2006 22:53:50 -0000
@@ -26,8 +26,7 @@ AC_INIT([GNU Autoconf], [2.60a], [bug-au
AC_SUBST([PACKAGE_NAME])dnl
AC_CONFIG_SRCDIR([ChangeLog])
-AC_CONFIG_AUX_DIR([config])
-AC_CONFIG_FILES([config/Makefile])
+AC_CONFIG_AUX_DIR([build-aux])
AM_INIT_AUTOMAKE([check-news 1.7.9 dist-bzip2 readme-alpha])
Index: bin/autoconf.as
===================================================================
RCS file: /cvsroot/autoconf/autoconf/bin/autoconf.as,v
retrieving revision 1.19
diff -p -u -r1.19 autoconf.as
--- bin/autoconf.as 4 Jun 2006 19:56:27 -0000 1.19
+++ bin/autoconf.as 24 Aug 2006 22:53:51 -0000
@@ -106,8 +106,8 @@ while test $# -gt 0 ; do
autom4te_options="$autom4te_options '$1'"; shift ;;
# Options with separated arg passed as is to autom4te.
- --include | -I | \
- --prepend-include | -B | \
+ --include | -I | \
+ --prepend-include | -B | \
--warnings | -W )
test $# = 1 && eval "$exit_missing_arg"
autom4te_options="$autom4te_options $option '$2'"
Index: config/announce-gen
===================================================================
RCS file: /cvsroot/autoconf/autoconf/config/announce-gen,v
retrieving revision 1.5
diff -p -u -r1.5 announce-gen
--- config/announce-gen 24 Nov 2003 16:11:41 -0000 1.5
+++ config/announce-gen 24 Aug 2006 22:53:51 -0000
@@ -1,12 +1,29 @@
#!/usr/bin/perl -w
# Generate an announcement message.
+
+# Copyright (C) 2002, 2003, 2004, 2005 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 2, 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, write to the Free Software Foundation,
+# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+
use strict;
use Getopt::Long;
use Digest::MD5;
use Digest::SHA1;
-(my $VERSION = '$Revision: 1.5 $ ') =~ tr/[0-9].//cd;
+(my $VERSION = '$Revision: 1.25 $ ') =~ tr/[0-9].//cd;
(my $ME = $0) =~ s|.*/||;
my %valid_release_types = map {$_ => 1} qw (alpha beta major);
@@ -60,6 +77,7 @@ OPTIONS:
--package-name=PACKAGE_NAME
--previous-version=VER
--current-version=VER
+ --gpg-key-id=ID The GnuPG ID of the key used to sign the tarballs
--release-archive-directory=DIR
--url-directory=URL_DIR
--news=NEWS_FILE optional
@@ -124,17 +142,17 @@ sub print_locations (address@hidden@)
print "\n";
}
-=item C<print_signatures (@file)
+=item C<print_checksums (@file)
Print the MD5 and SHA1 signature section for each C<@file>.
=cut
-sub print_signatures (@)
+sub print_checksums (@)
{
my (@file) = @_;
- print "Here are the MD5 and SHA1 signatures:\n";
+ print "Here are the MD5 and SHA1 checksums:\n";
print "\n";
foreach my $meth (qw (md5 sha1))
@@ -178,7 +196,7 @@ sub print_news_deltas ($$$)
or die "$ME: $news_file: cannot open for reading: $!\n";
while (defined (my $line = <NEWS>))
{
- if (! $in_items)
+ if ( ! $in_items)
{
# Match lines like this one:
# * Major changes in release 5.0.1:
@@ -204,7 +222,6 @@ sub print_news_deltas ($$$)
or die "$ME: $news_file: no matching lines for `$curr_version'\n";
}
-
sub print_changelog_deltas ($$)
{
my ($package_name, $prev_version) = @_;
@@ -301,6 +318,7 @@ sub print_changelog_deltas ($$)
my $prev_version;
my $curr_version;
my $release_archive_dir;
+ my $gpg_key_id;
my @url_dir_list;
my @news_file;
@@ -310,6 +328,7 @@ sub print_changelog_deltas ($$)
'package-name=s' => \$package_name,
'previous-version=s' => \$prev_version,
'current-version=s' => \$curr_version,
+ 'gpg-key-id=s' => \$gpg_key_id,
'release-archive-directory=s' => \$release_archive_dir,
'url-directory=s' => address@hidden,
'news=s' => address@hidden,
@@ -366,10 +385,27 @@ EOF
$tgz, $tbz);
print_locations ("xdelta-style diffs", @url_dir_list, %size,
$xd);
- print_locations ("GPG detached signatures", @url_dir_list, %size,
- "$tgz.asc", "$tbz.asc");
+ print_locations ("GPG detached signatures[*]", @url_dir_list, %size,
+ "$tgz.sig", "$tbz.sig");
+
+ print_checksums ($tgz, $tbz, $xd);
+
+ print <<EOF;
+
+[*] You can use either of the above signature files to verify that
+the corresponding file (without the .sig suffix) is intact. First,
+be sure to download both the .sig file and the corresponding tarball.
+Then, run a command like this:
+
+ gpg --verify $tgz.sig
- print_signatures ($tgz, $tbz, $xd);
+If that command fails because you don't have the required public key,
+then run this command to import it:
+
+ gpg --keyserver wwwkeys.pgp.net --recv-keys $gpg_key_id
+
+and rerun the \`gpg --verify' command.
+EOF
print_news_deltas ($_, $prev_version, $curr_version)
foreach @news_file;
Index: lib/m4sugar/Makefile.am
===================================================================
RCS file: /cvsroot/autoconf/autoconf/lib/m4sugar/Makefile.am,v
retrieving revision 1.12
diff -p -u -r1.12 Makefile.am
--- lib/m4sugar/Makefile.am 14 May 2005 07:00:40 -0000 1.12
+++ lib/m4sugar/Makefile.am 24 Aug 2006 22:53:51 -0000
@@ -1,6 +1,6 @@
-## Process this file with automake to create Makefile.in
+# Make Autoconf library for M4sugar.
-## Copyright 2001, 2002 Free Software Foundation, Inc.
+## Copyright (C) 2001, 2002, 2006 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
@@ -33,11 +33,11 @@ version.m4: $(top_srcdir)/configure.ac
echo '# Copyright (C) 1999, 2000, 2001, 2002'; \
echo '# Free Software Foundation, Inc.'; \
echo ;\
- echo 'm4_define([m4_PACKAGE_NAME], address@hidden@])'; \
- echo 'm4_define([m4_PACKAGE_TARNAME], address@hidden@])'; \
- echo 'm4_define([m4_PACKAGE_VERSION], address@hidden@])'; \
- echo 'm4_define([m4_PACKAGE_STRING], address@hidden@])'; \
- echo 'm4_define([m4_PACKAGE_BUGREPORT], address@hidden@])'; \
+ echo 'm4_define([m4_PACKAGE_NAME], [$(PACKAGE_NAME)])'; \
+ echo 'm4_define([m4_PACKAGE_TARNAME], [$(PACKAGE_TARNAME)])'; \
+ echo 'm4_define([m4_PACKAGE_VERSION], [$(PACKAGE_VERSION)])'; \
+ echo 'm4_define([m4_PACKAGE_STRING], [$(PACKAGE_STRING)])'; \
+ echo 'm4_define([m4_PACKAGE_BUGREPORT], [$(PACKAGE_BUGREPORT)])'; \
} >version.m4
Index: man/Makefile.am
===================================================================
RCS file: /cvsroot/autoconf/autoconf/man/Makefile.am,v
retrieving revision 1.25
diff -p -u -r1.25 Makefile.am
--- man/Makefile.am 10 Jun 2005 17:56:21 -0000 1.25
+++ man/Makefile.am 24 Aug 2006 22:53:51 -0000
@@ -1,7 +1,6 @@
-## Process this file with automake to create Makefile.in -*-Makefile-*-
+# Make Autoconf man pages.
-## Makefile for Autoconf.
-## Copyright (C) 2001, 2004, 2005 Free Software Foundation, Inc.
+## Copyright (C) 2001, 2004, 2005, 2006 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
@@ -44,8 +43,8 @@ $(srcdir)/autoupdate.1: $(common_dep) $(
$(srcdir)/ifnames.1: $(common_dep) $(binsrcdir)/ifnames.in
# Independent from this package.
-$(srcdir)/config.guess.1: $(top_srcdir)/config/config.guess
-$(srcdir)/config.sub.1: $(top_srcdir)/config/config.sub
+$(srcdir)/config.guess.1: $(top_srcdir)/build-aux/config.guess
+$(srcdir)/config.sub.1: $(top_srcdir)/build-aux/config.sub
remove_time_stamp = 's/^\(\.TH[^"]*"[^"]*"[^"]*\)"[^"]*"/\1/'
@@ -64,7 +63,7 @@ SUFFIXES = .x .1
done;; \
esac
echo "Updating man page $@"
-
PATH="$(top_builddir)/address@hidden@$(top_srcdir)/address@hidden@$$PATH"; \
+
PATH="$(top_builddir)/tests$(PATH_SEPARATOR)$(top_srcdir)/build-aux$(PATH_SEPARATOR)$$PATH";
\
export PATH; \
$(HELP2MAN) \
--include=$*.x \
Index: tests/Makefile.am
===================================================================
RCS file: /cvsroot/autoconf/autoconf/tests/Makefile.am,v
retrieving revision 1.101
diff -p -u -r1.101 Makefile.am
--- tests/Makefile.am 9 May 2006 21:26:36 -0000 1.101
+++ tests/Makefile.am 24 Aug 2006 22:53:51 -0000
@@ -1,7 +1,6 @@
-## Process this file with automake to create Makefile.in. -*-Makefile-*-
+## Make Autoconf tests.
-## Makefile for Autoconf testsuite.
-## Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005
+## Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006
## Free Software Foundation, Inc.
## This program is free software; you can redistribute it and/or modify
@@ -40,11 +39,11 @@ include ../lib/freeze.mk
$(srcdir)/package.m4: $(top_srcdir)/configure.ac
{ \
echo '# Signature of the current package.'; \
- echo 'm4_define([AT_PACKAGE_NAME], address@hidden@])'; \
- echo 'm4_define([AT_PACKAGE_TARNAME], address@hidden@])'; \
- echo 'm4_define([AT_PACKAGE_VERSION], address@hidden@])'; \
- echo 'm4_define([AT_PACKAGE_STRING], address@hidden@])'; \
- echo 'm4_define([AT_PACKAGE_BUGREPORT], address@hidden@])'; \
+ echo 'm4_define([AT_PACKAGE_NAME], [$(PACKAGE_NAME)])'; \
+ echo 'm4_define([AT_PACKAGE_TARNAME], [$(PACKAGE_TARNAME)])'; \
+ echo 'm4_define([AT_PACKAGE_VERSION], [$(PACKAGE_VERSION)])'; \
+ echo 'm4_define([AT_PACKAGE_STRING], [$(PACKAGE_STRING)])'; \
+ echo 'm4_define([AT_PACKAGE_BUGREPORT], [$(PACKAGE_BUGREPORT)])'; \
} >$(srcdir)/package.m4
@@ -174,7 +173,7 @@ maintainer-check: maintainer-check-posix
CLEANFILES += expr
expr:
echo '#! $(SHELL)' >expr
- echo 'address@hidden@ "$$@"`' >>expr
+ echo 'result=`$(EXPR) "$$@"`'>>expr
echo 'estatus=$$?' >>expr
echo 'cat <<EOF' >>expr
echo '$${result:-0}' >>expr
Index: tests/local.at
===================================================================
RCS file: /cvsroot/autoconf/autoconf/tests/local.at,v
retrieving revision 1.33
diff -p -u -r1.33 local.at
--- tests/local.at 5 Jun 2006 08:18:33 -0000 1.33
+++ tests/local.at 24 Aug 2006 22:53:51 -0000
@@ -18,7 +18,6 @@
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
# 02110-1301, USA.
-# We need a very up to date version of Autotest.
m4_version_prereq([2.57])
# Used in many tests.
@@ -194,7 +193,7 @@ ls -1 | sed '/^at-/d;/^state-/d;/^config
AT_DATA([configure.ac],
[[AC_INIT
-AC_CONFIG_AUX_DIR($top_srcdir/config)
+AC_CONFIG_AUX_DIR($top_srcdir/build-aux)
AC_CONFIG_HEADER(config.h:config.hin)
AC_STATE_SAVE(before)]
$1
Index: tests/tools.at
===================================================================
RCS file: /cvsroot/autoconf/autoconf/tests/tools.at,v
retrieving revision 1.90
diff -p -u -r1.90 tools.at
--- tests/tools.at 17 Jul 2006 17:30:44 -0000 1.90
+++ tests/tools.at 24 Aug 2006 22:53:51 -0000
@@ -56,9 +56,8 @@ AT_CHECK_SHELL_SYNTAX([$abs_top_builddir
AT_CHECK_SHELL_SYNTAX([$abs_top_builddir/tests/testsuite])
# These are not built, they are in the src tree.
-AT_CHECK_SHELL_SYNTAX([$abs_top_srcdir/config/install-sh])
-AT_CHECK_SHELL_SYNTAX([$abs_top_srcdir/config/mkinstalldirs])
-AT_CHECK_SHELL_SYNTAX([$abs_top_srcdir/config/missing])
+AT_CHECK_SHELL_SYNTAX([$abs_top_srcdir/build-aux/install-sh])
+AT_CHECK_SHELL_SYNTAX([$abs_top_srcdir/build-aux/missing])
AT_CLEANUP
Index: tests/torture.at
===================================================================
RCS file: /cvsroot/autoconf/autoconf/tests/torture.at,v
retrieving revision 1.68
diff -p -u -r1.68 torture.at
--- tests/torture.at 7 Jul 2006 20:22:15 -0000 1.68
+++ tests/torture.at 24 Aug 2006 22:53:51 -0000
@@ -548,7 +548,7 @@ AT_DATA([Foo.in], address@hidden@
AT_DATA([configure.ac],
[[AC_INIT
-AC_CONFIG_AUX_DIR($top_srcdir/config)
+AC_CONFIG_AUX_DIR($top_srcdir/build-aux)
AC_SUBST([foo], ]m4_for([n], 1, 100,, ....................)[)
AC_CONFIG_FILES([Foo])
AC_OUTPUT
@@ -619,7 +619,7 @@ AT_DATA([Foo.in],
AT_DATA([configure.ac],
[[AC_INIT
-AC_CONFIG_AUX_DIR($top_srcdir/config)
+AC_CONFIG_AUX_DIR($top_srcdir/build-aux)
foo='one
two'
AC_SUBST([foo])
@@ -675,7 +675,7 @@ AT_DATA([configure.ac],
[[AC_INIT
d@&address@hidden The following line silences the warnings, if uncommented:
d@&address@hidden AC_DEFUN([AC_DATAROOTDIR_CHECKED])
-AC_CONFIG_AUX_DIR($top_srcdir/config)
+AC_CONFIG_AUX_DIR($top_srcdir/build-aux)
# This substitution is wrong and bogus! Don't use it in your own code!
# Read `info Autoconf "Defining Directories"'!
--- /dev/null 2005-09-24 22:00:15.000000000 -0700
+++ .x-sc_trailing_blank 2006-08-24 14:56:28.000000000 -0700
@@ -0,0 +1,2 @@
+build-aux/texinfo.tex
+doc/standards.texi
--- /dev/null 2005-09-24 22:00:15.000000000 -0700
+++ .x-sc_useless_cpp_parens 2006-08-24 15:14:30.000000000 -0700
@@ -0,0 +1,2 @@
+build-aux/config.guess
+doc/standards.texi
--- /dev/null 2005-09-24 22:00:15.000000000 -0700
+++ m4/m4.m4 2006-08-24 12:14:23.000000000 -0700
@@ -0,0 +1,29 @@
+# Copyright (C) 2000 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 2, 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, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+# 02110-1301, USA.
+
+# AC_PROG_GNU_M4
+# --------------
+# Check for GNU m4, at least 1.3 (supports frozen files).
+AC_DEFUN([AC_PROG_GNU_M4],
+[AC_PATH_PROGS(M4, gm4 gnum4 m4, m4)
+AC_CACHE_CHECK(whether m4 supports frozen files, ac_cv_prog_gnu_m4,
+[ac_cv_prog_gnu_m4=no
+if test x"$M4" != x; then
+ case `$M4 --help < /dev/null 2>&1` in
+ *reload-state*) ac_cv_prog_gnu_m4=yes ;;
+ esac
+fi])])
- getting ready for Autoconf 2.61,
Paul Eggert <=