summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAkim Demaille <akim@epita.fr>2001-08-20 14:45:49 +0000
committerAkim Demaille <akim@epita.fr>2001-08-20 14:45:49 +0000
commit268d5eec86b8ecc9d2b0a7987176c8ac335a11f0 (patch)
tree5007429d5fa1b1bdfcca475444141013b4ad0097
parent6e996ed93bef6b8dc41e3b97ba0e44abf704a8ac (diff)
downloadautoconf-268d5eec86b8ecc9d2b0a7987176c8ac335a11f0.tar.gz
* lib/autoconf/general.m4 (_AC_OUTPUT_COMMANDS): Say what you do.
* m4/atconfig.m4 (AT_CONFIG): $1 is now the directory where the test suite lives. Create `atconfig' automagically. Configure atlocal.in if present. * tests/atconfig.in: Remove. * tests/atlocal.in: New. * tests/Makefile.am: Adjust.
-rw-r--r--ChangeLog11
-rw-r--r--configure.ac4
-rw-r--r--lib/autoconf/general.m45
-rw-r--r--m4/atconfig.m447
-rw-r--r--tests/Makefile.am7
-rw-r--r--tests/Makefile.in13
-rw-r--r--tests/atconfig.in76
7 files changed, 67 insertions, 96 deletions
diff --git a/ChangeLog b/ChangeLog
index 4dba57e0..4d47b88a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,16 @@
2001-08-20 Akim Demaille <akim@epita.fr>
+ * lib/autoconf/general.m4 (_AC_OUTPUT_COMMANDS): Say what you do.
+ * m4/atconfig.m4 (AT_CONFIG): $1 is now the directory where the
+ test suite lives.
+ Create `atconfig' automagically.
+ Configure atlocal.in if present.
+ * tests/atconfig.in: Remove.
+ * tests/atlocal.in: New.
+ * tests/Makefile.am: Adjust.
+
+2001-08-20 Akim Demaille <akim@epita.fr>
+
Huh!?!?! There are still some user EOF tags used, which prevents
their use in AC_CONFIG_COMMANDS for instance...
diff --git a/configure.ac b/configure.ac
index 7fa788a8..3e4f1ad9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,7 +26,7 @@ AC_CONFIG_AUX_DIR(config)
AM_INIT_AUTOMAKE(autoconf, 2.52c)
# Initialize the test suite.
-AT_CONFIG(../bin)
+AT_CONFIG(tests, ../bin)
AC_PATH_PROG(EXPR, expr)
# We use a path for GNU m4 so even if users have another m4 first in
@@ -68,7 +68,7 @@ AC_CONFIG_FILES(Makefile m4/Makefile man/Makefile doc/Makefile config/Makefile
lib/m4sugar/Makefile
lib/autoconf/Makefile lib/autotest/Makefile
bin/Makefile
- tests/Makefile tests/atconfig)
+ tests/Makefile)
AC_OUTPUT
# Report the state of this version of Autoconf if this is a beta.
diff --git a/lib/autoconf/general.m4 b/lib/autoconf/general.m4
index 28b9ecd6..bc2ce7c8 100644
--- a/lib/autoconf/general.m4
+++ b/lib/autoconf/general.m4
@@ -4343,10 +4343,7 @@ for ac_file in : $CONFIG_COMMANDS; do test "x$ac_file" = x: && continue
ac_dest=`echo "$ac_file" | sed 's,:.*,,'`
ac_source=`echo "$ac_file" | sed 's,[[^:]]*:,,'`
-dnl FIXME: Until Automake uses the new features of config.status, we
-dnl should keep this silent. Otherwise, because Automake runs this in
-dnl each directory, it quickly becomes annoying.
-dnl echo "executing commands of $ac_dest"
+ AC_MSG_NOTICE([executing $ac_dest commands])
case $ac_dest in
AC_LIST_COMMANDS_COMMANDS()dnl
esac
diff --git a/m4/atconfig.m4 b/m4/atconfig.m4
index 66589565..811a5c0e 100644
--- a/m4/atconfig.m4
+++ b/m4/atconfig.m4
@@ -2,7 +2,7 @@
## Prepare for testing. ##
## ----------------------##
-#serial 4
+#serial 5
# Copyright 2000, 2001 Free Software Foundation, Inc.
#
@@ -21,8 +21,8 @@
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
# 02111-1307, USA.
-# AT_CONFIG([AUTOTEST-PATH = .])
-# ------------------------------
+# AT_CONFIG(TEST-DIRECTORY, [AUTOTEST-PATH = .])
+# ----------------------------------------------
# Configure the test suite.
#
# AUTOTEST-PATH must help the test suite to find the executables, i.e.,
@@ -30,4 +30,43 @@
# pass `../src'. If there are also executables in the source tree, use
# `../src:$top_srcdir/src'.
AC_DEFUN([AT_CONFIG],
-[AC_SUBST([AUTOTEST_PATH], [m4_default([$1], [.])])])
+[AC_CONFIG_COMMANDS([$1/atconfig],
+[cat >$1/atconfig <<EOF
+# Configurable variable values for building test suites.
+# Generated by $[0]
+# Copyright 2000, 2001 Free Software Foundation, Inc.
+
+at_package='$at_package'
+at_version='$at_version'
+at_bugreport='$at_bugreport'
+
+at_n='$at_n'
+at_c='$at_c'
+
+srcdir='$srcdir'
+top_srcdir='$top_srcdir'
+AUTOTEST_PATH='m4_default([$2], [.])'
+
+SHELL=\${CONFIG_SHELL-'$at_shell'}
+PATH_SEPARATOR='$at_path_separator'
+
+EOF
+],
+[at_package='$PACKAGE_NAME'
+at_version='$PACKAGE_VERSION'
+at_bugreport='$PACKAGE_BUGREPORT'
+
+at_n='$ECHO_N'
+at_c='$ECHO_C'
+
+srcdir='$srcdir'
+top_srcdir='$top_srcdir'
+
+at_shell='$SHELL'
+at_path_separator='$PATH_SEPARATOR'
+])
+
+if test -f $srcdir/$1/atlocal.in; then
+ AC_CONFIG_FILES([$1/atlocal])
+fi
+])# AT_CONFIG
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 6a1be110..a218bc30 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -31,11 +31,12 @@ SUITE = suite.at \
# We don't actually distribute the testsuite, since one only
# needs m4 to build it, m4 being required anyway to install Autoconf.
+# atlocal.in is to be listed, since Automake doesn't see it...
EXTRA_DIST = README \
atspecific.m4 aclocal.m4 \
- $(SUITE) mktests.sh
+ atlocal.in $(SUITE) mktests.sh
-check-local: atconfig testsuite
+check-local: atconfig atlocal testsuite
$(SHELL) testsuite
AUTOM4TE = autom4te_perllibdir='$(top_srcdir)/lib' ../bin/autom4te
@@ -96,7 +97,7 @@ CLEANFILES = \
expr \
libtool ltconfig ltmain.sh
-DISTCLEANFILES = atconfig testsuite testsuite.log
+DISTCLEANFILES = atconfig atlocal testsuite testsuite.log
## ------------------ ##
diff --git a/tests/Makefile.in b/tests/Makefile.in
index 98fc399a..e66efd44 100644
--- a/tests/Makefile.in
+++ b/tests/Makefile.in
@@ -73,7 +73,8 @@ SUITE = suite.at m4sugar.at m4sh.at base.at tools.at torture.at
# We don't actually distribute the testsuite, since one only
# needs m4 to build it, m4 being required anyway to install Autoconf.
-EXTRA_DIST = README atspecific.m4 aclocal.m4 $(SUITE) mktests.sh
+# atlocal.in is to be listed, since Automake doesn't see it...
+EXTRA_DIST = README atspecific.m4 aclocal.m4 atlocal.in $(SUITE) mktests.sh
AUTOM4TE = autom4te_perllibdir='$(top_srcdir)/lib' ../bin/autom4te
@@ -87,10 +88,10 @@ MACRO_FILES = $(top_srcdir)/lib/autoconf/general.m4 $(top_srcdir)/
CLEANFILES = debug-*.sh state-* at-* stderr stdout script.s4g script.as script configure configure.in configure.ac config.status config.cache config.log config.h.in config.hin config.h config.guess config.sub install-sh expr libtool ltconfig ltmain.sh
-DISTCLEANFILES = atconfig testsuite testsuite.log
+DISTCLEANFILES = atconfig atlocal testsuite testsuite.log
mkinstalldirs = $(SHELL) $(top_srcdir)/config/mkinstalldirs
-CONFIG_CLEAN_FILES = atconfig
-DIST_COMMON = README Makefile.am Makefile.in atconfig.in
+CONFIG_CLEAN_FILES =
+DIST_COMMON = README Makefile.am Makefile.in
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
@@ -106,8 +107,6 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES)
cd $(top_builddir) \
&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
-atconfig: $(top_builddir)/config.status atconfig.in
- cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
tags: TAGS
TAGS:
@@ -196,7 +195,7 @@ distclean-generic clean-generic maintainer-clean-generic clean \
mostlyclean distclean maintainer-clean
-check-local: atconfig testsuite
+check-local: atconfig atlocal testsuite
$(SHELL) testsuite
testsuite: $(top_srcdir)/lib/m4sugar/m4sugar.m4 \
$(top_srcdir)/lib/m4sugar/m4sh.m4 \
diff --git a/tests/atconfig.in b/tests/atconfig.in
index b94de6f6..e69de29b 100644
--- a/tests/atconfig.in
+++ b/tests/atconfig.in
@@ -1,76 +0,0 @@
-# -*- shell-script -*-
-# @configure_input@
-# Configurable variable values for building test suites.
-# Copyright 2000, 2001 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., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
-
-# This script is part of Autotest. Unlimited permission to copy,
-# distribute and modify the testing scripts that are the output of
-# that Autotest script is given. You need not follow the terms of the
-# GNU General Public License when using or distributing such scripts,
-# even though portions of the text of Autotest appear in them. The
-# GNU General Public License (GPL) does govern all other use of the
-# material that constitutes the Autotest.
-#
-# Certain portions of the Autotest source text are designed to be
-# copied (in certain cases, depending on the input) into the output of
-# Autotest. We call these the "data" portions. The rest of the
-# Autotest source text consists of comments plus executable code that
-# decides which of the data portions to output in any given case. We
-# call these comments and executable code the "non-data" portions.
-# Autotest never copies any of the non-data portions into its output.
-#
-# This special exception to the GPL applies to versions of Autotest
-# released by the Free Software Foundation. When you make and
-# distribute a modified version of Autotest, you may extend this
-# special exception to the GPL to apply to your modified version as
-# well, *unless* your modified version has the potential to copy into
-# its output some of the text that was the non-data portion of the
-# version that you started with. (In other words, unless your change
-# moves or copies text from the non-data portions to the data
-# portions.) If your modification has such potential, you must delete
-# any notice of this special exception to the GPL from your modified
-# version.
-
-# This debugging script has been automatically generated from `make check'.
-# Call it with `--help' to get a quick usage summary.
-
-at_package='@PACKAGE_NAME@'
-at_version='@PACKAGE_VERSION@'
-at_bugreport='@PACKAGE_BUGREPORT@'
-
-at_n='@ECHO_N@'
-at_c='@ECHO_C@'
-
-srcdir='@srcdir@'
-top_srcdir='@top_srcdir@'
-AUTOTEST_PATH='@AUTOTEST_PATH@'
-
-SHELL=${CONFIG_SHELL-'@SHELL@'}
-PATH_SEPARATOR='@PATH_SEPARATOR@'
-
-# We need GNU m4, and Perl.
-M4='@M4@'
-PERL='@PERL@'
-
-# Be sure to use the non installed Perl modules.
-# We need no special protection for the subtools (e.g., autoheader runs
-# autoconf which runs autom4te) because by themselves, they try to use
-# subtools from the same directory (i.e., foo/autoheader will run
-# foo/autoconf etc.).
-autom4te_perllibdir=$top_srcdir/lib
-export autom4te_perllibdir