* bin/autoupdate.in (&parse_args): Kill old options.
* bin/autoreconf.in (&parse_args): Remove dead options.
Factor some code.
(&autoreconf): Report the directories we enter *and leave*, so
that error messages can be easily located, and use GNU Make
format, so that Emacs' compile mode understands us.
* lib/Autom4te/General.pm (&update_file): Use `verbose' to report
if some file was changed instead of `print'.
* bin/autoheader.in: Suggest AC_DEFINE with 3 args when needed.
(&parse_args): Remove the dead options.
* tests/atspecific.m4 (AT_CHECK_AUTOHEADER): Adjust to the new
autoheader's quiet mode.
(AT_CHECK_AUTOUPDATE): Likewise.
* tests/tools.at (autoupdate): Adjust.
* tests/semantics.at (AC_C_BIGENDIAN): Likewise.
+2002-10-16 Akim Demaille <akim@epita.fr>
+
+ * bin/autoconf.as: Kill dead options.
+ * bin/autoupdate.in (&parse_args): Kill old options.
+ * bin/autoreconf.in (&parse_args): Remove dead options.
+ Factor some code.
+ (&autoreconf): Report the directories we enter *and leave*, so
+ that error messages can be easily located, and use GNU Make
+ format, so that Emacs' compile mode understands us.
+ * lib/Autom4te/General.pm (&update_file): Use `verbose' to report
+ if some file was changed instead of `print'.
+ * bin/autoheader.in: Suggest AC_DEFINE with 3 args when needed.
+ (&parse_args): Remove the dead options.
+ * tests/atspecific.m4 (AT_CHECK_AUTOHEADER): Adjust to the new
+ autoheader's quiet mode.
+ (AT_CHECK_AUTOUPDATE): Likewise.
+ * tests/tools.at (autoupdate): Adjust.
+ * tests/semantics.at (AC_C_BIGENDIAN): Likewise.
+
2002-10-11 Akim Demaille <akim@epita.fr>
No longer use CPP to check for the existing of headers: use CC to
* Major changes in Autoconf 2.54a -*- outline -*-
\f
+** autoreconf
+
+- Is more robust to different Gettext installations.
+
+- Produces messages (when --verbose) to be understood by Emacs'
+ compile mode.
+
** Macros
- AC_CHECK_HEADER/AC_CHECK_HEADERS
\`configure'.
Operation modes:
- -h, --help print this help, then exit
- -V, --version print version number, then exit
- -v, --verbose verbosely report processing
- -d, --debug don't remove temporary files
+ -h, --help print this help, then exit
+ -V, --version print version number, then exit
+ -v, --verbose verbosely report processing
+ -d, --debug don't remove temporary files
-B, --prepend-include=DIR prepend directory DIR to search path
-I, --include=DIR append directory DIR to search path
- -f, --force consider all files obsolete
- -o, --output=FILE save output in FILE (stdout is the default)
- -W, --warnings=CATEGORY report the warnings falling in CATEGORY [syntax]
+ -f, --force consider all files obsolete
+ -o, --output=FILE save output in FILE (stdout is the default)
+ -W, --warnings=CATEGORY report the warnings falling in CATEGORY [syntax]
Warning categories include:
\`cross' cross compilation issues
AUTOM4TE="$AUTOM4TE $option $2"
shift 2 ;;
- # Obsolete options.
- --localdir=* | -l?* | --autoconf-dir=* | -A?* | --macrodir=* | -m?* )
- echo "$me: warning: $option is obsolete, use --include" >&2
- AUTOM4TE="$AUTOM4TE --include=$optarg"
- shift ;;
- --localdir | -l | --autoconf-dir | -A | --macrodir | -m )
- echo "$me: warning: $option is obsolete, use --include" >&2
- test $# = 1 && eval "$exit_missing_arg"
- shift
- AUTOM4TE="$AUTOM4TE --include=$1"
- shift ;;
-
--trace=* | -t?* )
traces="$traces --trace='"`echo "$optarg" | sed "s/'/'\\\\\\\\''/g"`"'"
shift ;;
\`configure'.
Operation modes:
- -h, --help print this help, then exit
- -V, --version print version number, then exit
- -v, --verbose verbosely report processing
- -d, --debug don't remove temporary files
+ -h, --help print this help, then exit
+ -V, --version print version number, then exit
+ -v, --verbose verbosely report processing
+ -d, --debug don't remove temporary files
-B, --prepend-include=DIR prepend directory DIR to search path
-I, --include=DIR append directory DIR to search path
- -f, --force consider all files obsolete
- -o, --output=FILE save output in FILE (stdout is the default)
- -W, --warnings=CATEGORY report the warnings falling in CATEGORY [syntax]
+ -f, --force consider all files obsolete
+ -o, --output=FILE save output in FILE (stdout is the default)
+ -W, --warnings=CATEGORY report the warnings falling in CATEGORY [syntax]
Warning categories include:
\`cross' cross compilation issues
AUTOM4TE="$AUTOM4TE $option $2"
shift 2 ;;
- # Obsolete options.
- --localdir=* | -l?* | --autoconf-dir=* | -A?* | --macrodir=* | -m?* )
- echo "$me: warning: $option is obsolete, use --include" >&2
- AUTOM4TE="$AUTOM4TE --include=$optarg"
- shift ;;
- --localdir | -l | --autoconf-dir | -A | --macrodir | -m )
- echo "$me: warning: $option is obsolete, use --include" >&2
- test $# = 1 && eval "$exit_missing_arg"
- shift
- AUTOM4TE="$AUTOM4TE --include=$1"
- shift ;;
-
--trace=* | -t?* )
traces="$traces --trace='"`echo "$optarg" | sed "s/'/'\\\\\\\\''/g"`"'"
shift ;;
{
my $srcdir;
- getopt ('I|include|A|autoconf-dir|m|macrodir|l|localdir=s' => \@include,
+ getopt ('I|include=s' => \@include,
'B|prepend-include=s' => \@prepend_include,
'W|warnings=s' => \@warning);
# Preach.
my $config_h_top = find_file ("config.h.top?",
- reverse(@prepend_include), @include);
+ reverse (@prepend_include), @include);
my $config_h_bot = find_file ("config.h.bot?",
- reverse(@prepend_include), @include);
+ reverse (@prepend_include), @include);
my $acconfig_h = find_file ("acconfig.h?",
- reverse(@prepend_include), @include);
+ reverse (@prepend_include), @include);
if ($config_h_top || $config_h_bot || $acconfig_h)
{
my $msg = << "END";
# Check that all the symbols have a template.
{
my $in = new Autom4te::XFile ("$tmp/config.hin");
+ my $suggest_ac_define = 1;
while ($_ = $in->getline)
{
my ($symbol) = /^\#\s*\w+\s+(\w+)/
foreach (sort keys %symbol)
{
print STDERR "$me: missing template: $_\n";
+ if ($suggest_ac_define)
+ {
+ print STDERR "Use AC_DEFINE([$_], [], [Description])";
+ $suggest_ac_define = 0;
+ }
+
}
exit 1
if keys %symbol;
{
my $srcdir;
- getopt ('I|include|A|autoconf-dir|m|macrodir|l|localdir=s' => \@include,
- 'B|prepend-include=s' => \@prepend_include,
- 'i|install' => \$install,
- 's|symlink' => \$symlink);
+ getopt ('I|include=s' => \@include,
+ 'B|prepend-include=s' => \@prepend_include,
+ 'i|install' => \$install,
+ 's|symlink' => \$symlink);
# Even if the user specified a configure.ac, trim to get the
# directory, and look for configure.ac again. Because (i) the code
if ($verbose && $debug)
{
- xsystem ("$autoconf --version | sed 1q >&2");
- print STDERR "\n";
- xsystem ("$autoheader --version | sed 1q >&2");
- print STDERR "\n";
- xsystem ("$automake --version | sed 1q >&2");
- print STDERR "\n";
- xsystem ("$aclocal --version | sed 1q >&2");
- print STDERR "\n";
- xsystem ("$autopoint --version | sed 1q >&2");
- print STDERR "\n";
- xsystem ("$libtoolize --version | sed 1q >&2");
- print STDERR "\n";
+ for my $prog ($autoconf, $autoheader,
+ $automake, $aclocal,
+ $autopoint,
+ $libtoolize)
+ {
+ xsystem ("$prog --version | sed 1q >&2");
+ print STDERR "\n";
+ }
}
# Dispatch autoreconf's option to the tools.
{
my ($directory) = @_;
- verbose "working in `$directory'";
+ # The format for this message is not free: taken from Emacs, itself
+ # using GNU Make's format.
+ verbose "Entering directory `$directory'";
chdir $directory
or error "cannot chdir to $directory: $!";
xsystem ($automake);
}
+ # The format is not free: taken from Emacs, itself using GNU Make's
+ # format.
+ verbose "Leaving directory `$directory'";
chdir $cwd
or error "cannot chdir to $cwd: $!";
}
Autoconf. The original files are backed up.
Operation modes:
- -h, --help print this help, then exit
- -V, --version print version number, then exit
- -v, --verbose verbosely report processing
- -d, --debug don't remove temporary files
+ -h, --help print this help, then exit
+ -V, --version print version number, then exit
+ -v, --verbose verbosely report processing
+ -d, --debug don't remove temporary files
-B, --prepend-include=DIR prepend directory DIR to search path
-I, --include=DIR append directory DIR to search path
- -f, --force consider all files obsolete
+ -f, --force consider all files obsolete
Report bugs to <bug-autoconf\@gnu.org>.
";
{
my $srcdir;
- getopt ('I|include|A|autoconf-dir|m|macrodir|l|localdir=s' => \@include,
+ getopt ('I|include=s' => \@include,
'B|prepend-include=s' => \@prepend_include,
- 'f|force' => \$force);
+ 'f|force' => \$force);
if (! @ARGV)
{
# autoconf -- create `configure' using m4 macros
-# Copyright 2001 Free Software Foundation, Inc.
+# Copyright (C) 2001, 2002 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
if (-f "$to" && compare ("$from", "$to") == 0)
{
# File didn't change, so don't update its mod time.
- print STDERR "$me: `$to' is unchanged\n";
+ verbose "`$to' is unchanged";
unlink ($from)
or error "cannot not remove $from: $!";
return
or error "cannot not backup $to: $!";
move ("$from", "$to")
or error "cannot not rename $from as $to: $!";
- print STDERR "$me: `$to' is updated\n";
+ verbose "`$to' is updated";
}
else
{
move ("$from", "$to")
or error "cannot not rename $from as $to: $!";
- print STDERR "$me: `$to' is created\n";
+ verbose "`$to' is created";
}
}
[$2], [$3], [$4])])
-# AT_CHECK_AUTOHEADER(ARGS, [EXIT-STATUS = 0],
-# STDOUT, [STDERR = `autoheader: `config.hin' is created'])
-# -----------------------------------------------------------------------------
+# AT_CHECK_AUTOHEADER(ARGS, [EXIT-STATUS = 0], STDOUT, STDERR)
+# ------------------------------------------------------------
m4_define([AT_CHECK_AUTOHEADER],
-[AT_CHECK([autoheader $1], [$2],
- [$3],
- m4_default([$4], [[autoheader: `config.hin' is created
-]]))])
+[AT_CHECK([autoheader $1], [$2], [$3], [$4])
+])
# AT_CHECK_CONFIGURE(END-COMMAND,
# AT_CHECK_AUTOUPDATE
# -------------------
m4_define([AT_CHECK_AUTOUPDATE],
-[AT_CHECK([autoupdate], 0,
- [], [autoupdate: `configure.ac' is updated
-])])
+[AT_CHECK([autoupdate $1], [$2], [$3], [$4])
+])
# _AT_CHECK_AC_MACRO(AC-BODY, PRE-TESTS)
# Make sure AC_C_BIGENDIAN with no argument will define WORDS_BIGENDIAN
AT_CONFIGURE_AC([AC_C_BIGENDIAN])
-AT_CHECK_AUTOHEADER([], [], [], [autoheader: `config.hin' is updated
-])
+AT_CHECK_AUTOHEADER
AT_CHECK([grep WORDS_BIGENDIAN config.hin], [], [ignore])
AT_CLEANUP(at-endian)
AT_CHECK_AUTOUPDATE
AT_CHECK([cat configure.ac], 0, [expout])
# Checking that `autoupdate' is idempotent
-AT_CHECK([autoupdate], 0, [],
- [autoupdate: `configure.ac' is unchanged
-])
+AT_CHECK_AUTOUPDATE
AT_CHECK([cat configure.ac], 0, [expout])
AT_CLEANUP(configure.ac~)