* tests/base.at, tests/compile.at, tests/foreign.at,
* tests/m4sh.at, tests/m4sugar.at, tests/mktests.sh,
* tests/semantics.at, tests/suite.at, tests/tools.at,
* tests/torture.at: Ask Autotest mode, not Autoconf mode.
2001-08-20 22:44:38 +08:00
|
|
|
# Validation suite for Autoconf -*- Autotest -*-
|
* AUTHORS, BUGS, ChangeLog, ChangeLog.0, ChangeLog.1,
ChangeLog.2, GNUmakefile, Makefile.maint, NEWS, README,
README-alpha, TODO, configure.ac, lib/autoconf/Makefile.am,
m4/atconfig.m4, m4/init.m4, m4/m4.m4, m4/missing.m4,
m4/sanity.m4, tests/README, tests/aclocal.m4,
tests/atspecific.m4, tests/base.at, tests/compile.at,
tests/foreign.at, tests/m4sh.at, tests/m4sugar.at,
tests/semantics.at, tests/suite.at, tests/tools.at,
tests/torture.at: Add copyright notice.
* tests/mktests.sh: Update year in copyright notice.
2001-08-12 21:05:11 +08:00
|
|
|
|
|
|
|
# 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.
|
2000-01-29 20:18:40 +08:00
|
|
|
|
2001-08-27 15:08:56 +08:00
|
|
|
# We need a very up to date version of Autotest, more recent than that
|
|
|
|
# needed by configure.ac.
|
|
|
|
m4_version_prereq([2.52c])
|
|
|
|
|
2001-08-27 15:03:48 +08:00
|
|
|
# Macros specialized for Autoconf testing.
|
|
|
|
m4_include([atspecific.m4])
|
|
|
|
|
2000-01-29 20:18:40 +08:00
|
|
|
# Still many parts of `autoconf' are not exercised by the test suite. A few
|
|
|
|
# FIXME's, below, are used to list tests that we would need. Do you feel
|
|
|
|
# like contributing new tests? If you do, you may tell your intent to
|
|
|
|
# `autoconf@gnu.org', so no two people work at the same thing.
|
|
|
|
|
2000-11-16 22:56:17 +08:00
|
|
|
AT_INIT([autoconf])
|
2000-01-29 20:18:40 +08:00
|
|
|
|
2000-11-29 18:12:05 +08:00
|
|
|
AT_BANNER(
|
2001-01-22 17:03:38 +08:00
|
|
|
[Some tests might be skipped if you don't have the software which the
|
|
|
|
macros check (e.g., a Fortran compiler).])
|
2000-02-07 22:53:49 +08:00
|
|
|
|
2000-10-05 17:39:06 +08:00
|
|
|
# Run the tests from the lowest level to the highest level, and from
|
|
|
|
# the most selective to the easiest.
|
2000-02-07 19:54:29 +08:00
|
|
|
|
2000-12-12 19:26:41 +08:00
|
|
|
# The executables.
|
|
|
|
# Even the tests on M4sugar and M4sh use `autoconf', so check it first.
|
|
|
|
m4_include([tools.at])
|
|
|
|
|
Move the Autoconf independent shell macros into the file
`shell.m4' and the name space `AS_*'.
* acgeneral.m4 (AC_SHELL_IFELSE, _AC_SHELL_TMPDIR, AC_SHELL_UNSET)
(AC_SHELL_MKDIR_P, AC_SHELL_DIRNAME): Rename and move to...
* shell.m4 (AS_IFELSE, AS_TMPDIR, AS_UNSET, AS_MKDIR_P)
(AS_DIRNAME): here, a new file.
Adjust all dependencies.
* tests/base.m4 (m4_wrap): Eve out into...
* tests/shell.m4: here, new file.
* tests/base.m4 (AC_SHELL_MKDIR_P)
(AC_SHELL_DIRNAME & AC_SHELL_DIRNAME_SED): Eve out into...
* tests/m4sugar.m4 (AS_MKDIR_P, AS_DIRNAME & AS_DIRNAME_SED):
here, new file.
Adjust the test suite.
2000-10-26 01:51:10 +08:00
|
|
|
# M4sugar.
|
2000-11-29 18:11:38 +08:00
|
|
|
m4_include([m4sugar.at])
|
Move the Autoconf independent shell macros into the file
`shell.m4' and the name space `AS_*'.
* acgeneral.m4 (AC_SHELL_IFELSE, _AC_SHELL_TMPDIR, AC_SHELL_UNSET)
(AC_SHELL_MKDIR_P, AC_SHELL_DIRNAME): Rename and move to...
* shell.m4 (AS_IFELSE, AS_TMPDIR, AS_UNSET, AS_MKDIR_P)
(AS_DIRNAME): here, a new file.
Adjust all dependencies.
* tests/base.m4 (m4_wrap): Eve out into...
* tests/shell.m4: here, new file.
* tests/base.m4 (AC_SHELL_MKDIR_P)
(AC_SHELL_DIRNAME & AC_SHELL_DIRNAME_SED): Eve out into...
* tests/m4sugar.m4 (AS_MKDIR_P, AS_DIRNAME & AS_DIRNAME_SED):
here, new file.
Adjust the test suite.
2000-10-26 01:51:10 +08:00
|
|
|
|
* shell.m4: Rename as...
* m4sh.m4: this.
* tests/m4sugar.m4, tests/shell.m4, tests/torture.m4: Rename as...
* tests/m4sugar.at, tests/m4sh.at, tests/torture.at: these.
* tests/semantics.m4, tests/base.m4, tests/suite.m4: Rename as...
* tests/semantics.at, tests/base.at, tests/suite.at: these.
* tests/tools.m4, tests/update.m4, tests/syntax.m4: Rename as...
* tests/tools.at, tests/update.at, tests/syntax.at: these.
* tests/mktests.sh: Adjust the output file names.
2000-10-26 17:52:34 +08:00
|
|
|
# M4sh.m4.
|
2000-11-29 18:11:38 +08:00
|
|
|
m4_include([m4sh.at])
|
Move the Autoconf independent shell macros into the file
`shell.m4' and the name space `AS_*'.
* acgeneral.m4 (AC_SHELL_IFELSE, _AC_SHELL_TMPDIR, AC_SHELL_UNSET)
(AC_SHELL_MKDIR_P, AC_SHELL_DIRNAME): Rename and move to...
* shell.m4 (AS_IFELSE, AS_TMPDIR, AS_UNSET, AS_MKDIR_P)
(AS_DIRNAME): here, a new file.
Adjust all dependencies.
* tests/base.m4 (m4_wrap): Eve out into...
* tests/shell.m4: here, new file.
* tests/base.m4 (AC_SHELL_MKDIR_P)
(AC_SHELL_DIRNAME & AC_SHELL_DIRNAME_SED): Eve out into...
* tests/m4sugar.m4 (AS_MKDIR_P, AS_DIRNAME & AS_DIRNAME_SED):
here, new file.
Adjust the test suite.
2000-10-26 01:51:10 +08:00
|
|
|
|
|
|
|
# Autoconf base macros.
|
2000-11-29 18:11:38 +08:00
|
|
|
m4_include([base.at])
|
2000-10-05 17:39:06 +08:00
|
|
|
|
2000-11-16 22:56:17 +08:00
|
|
|
# Testing config.status
|
|
|
|
# ---------------------
|
|
|
|
# Actually should be named config.status.at but I fear problems with
|
|
|
|
# the name. Does no `checking...' at all, but exercises only code
|
|
|
|
# which following section use too. Hence, run it first.
|
2000-11-29 18:11:38 +08:00
|
|
|
m4_include([torture.at])
|
2000-11-16 22:56:17 +08:00
|
|
|
|
|
|
|
# Checking AC_PROG_CC, AC_COMPILE_IFELSE etc.
|
2000-11-29 18:11:38 +08:00
|
|
|
m4_include([compile.at])
|
2000-10-05 17:39:06 +08:00
|
|
|
|
* lib/autoconf/lang.m4 (AC_LANG(C), AC_LANG_C, _AC_LANG_ABBREV(C))
(AC_LANG(C++), AC_LANG_CPLUSPLUS, _AC_LANG_ABBREV(C++))
(AC_LANG_SOURCE(C), AC_LANG_PROGRAM(C), AC_LANG_CALL(C))
(AC_LANG_FUNC_LINK_TRY(C), AC_LANG_BOOL_COMPILE_TRY(C))
(AC_LANG_INT_SAVE(C), _AC_ARG_VAR_CPPFLAGS, _AC_ARG_VAR_LDFLAGS)
(AC_LANG_PREPROC(C), _AC_PROG_PREPROC_WORKS_IFELSE, AC_PROG_CPP)
(AC_LANG_COMPILER(C), ac_cv_prog_gcc, AC_PROG_CC, _AC_PROG_CC_G)
(AC_PROG_GCC_TRADITIONAL, AC_PROG_CC_C_O, AC_LANG_PREPROC(C++))
(AC_PROG_CXXCPP, AC_LANG_COMPILER(C++), ac_cv_prog_gxx)
(AC_PROG_CXX, _AC_PROG_CXX_G, _AC_PROG_CXX_EXIT_DECLARATION)
(AC_PROG_CC_STDC, AC_C_CROSS, AC_C_CHAR_UNSIGNED, AC_C_LONG_DOUBLE)
(AC_C_BIGENDIAN, AC_C_INLINE, AC_C_CONST, AC_C_VOLATILE)
(AC_C_STRINGIZE, AC_C_PROTOTYPES): Move to...
* lib/autoconf/c.m4: here, new file.
* lib/autoconf/lang.m4 (AC_LANG(Fortran 77), AC_LANG_FORTRAN77)
(_AC_LANG_ABBREV(Fortran 77), AC_LANG_SOURCE(Fortran 77))
(AC_LANG_PROGRAM(Fortran 77), AC_LANG_CALL(Fortran 77))
(AC_LANG_PREPROC(Fortran 77), AC_LANG_COMPILER(Fortran 77))
(ac_cv_prog_g77, AC_PROG_F77, _AC_PROG_F77_G, AC_PROG_F77_C_O)
(_AC_PROG_F77_V_OUTPUT, _AC_PROG_F77_V, AC_F77_LIBRARY_LDFLAGS)
(AC_F77_DUMMY_MAIN, _AC_LANG_PROGRAM_C_F77_HOOKS, AC_F77_MAIN)
(_AC_F77_NAME_MANGLING, AC_F77_NAME_MANGLING, AC_F77_WRAPPERS)
(AC_F77_FUNC): Move to...
* lib/autoconf/fortran.m4: here, new file.
2001-08-01 21:50:48 +08:00
|
|
|
# Language support.
|
|
|
|
m4_include([aclang.at])
|
|
|
|
m4_include([acc.at])
|
|
|
|
m4_include([acfortran.at])
|
|
|
|
|
2000-11-16 22:56:17 +08:00
|
|
|
# Checking that AC_CHECK_FOO macros work properly.
|
2000-11-29 18:11:38 +08:00
|
|
|
m4_include([semantics.at])
|
2000-10-05 17:39:06 +08:00
|
|
|
|
2001-01-22 17:03:38 +08:00
|
|
|
# Blind testing the macros.
|
Create actypes.m4.
* acgeneral.m4 (AC_CHECK_SIZEOF, _AC_CHECK_TYPE_NEW)
(AC_CHECK_TYPES, _AC_CHECK_TYPE_OLD)
(_AC_CHECK_TYPE_REPLACEMENT_TYPE_P, _AC_CHECK_TYPE_MAYBE_TYPE_P)
(AC_CHECK_TYPE, AC_CHECK_MEMBER, AC_CHECK_MEMBERS): Move into...
* actypes.m4: here.
* acgeneral.m4 (AC_TYPE_GETGROUPS, AM_TYPE_PTRDIFF_T)
(AC_TYPE_UID_T, AC_TYPE_SIZE_T, AC_TYPE_PID_T, AC_TYPE_OFF_T)
(AC_TYPE_MODE_T, AC_INT_16_BITS, AC_LONG_64_BITS, AC_TYPE_SIGNAL)
(AC_STRUCT_TM, AC_STRUCT_TIMEZONE, AC_STRUCT_ST_BLKSIZE)
(AC_STRUCT_ST_BLOCKS, AC_STRUCT_ST_RDEV): Move into...
* actypes.m4: here.
Adjust the test suite.
2001-01-22 17:04:58 +08:00
|
|
|
# Include them as is suggested for a `configure.ac', as looking for
|
|
|
|
# for types requires looking for headers etc.
|
2001-01-22 17:03:38 +08:00
|
|
|
m4_include([acgeneral.at])
|
* lib/autoconf/autoconf.m4 (AC_CONFIG_COMMANDS)
(AC_CONFIG_COMMANDS_POST, AC_CONFIG_COMMANDS_PRE, AC_CONFIG_FILES)
(AC_CONFIG_HEADER, AC_CONFIG_HEADERS, AC_CONFIG_IF_MEMBER)
(AC_CONFIG_LINKS, AC_CONFIG_SUBDIRS, AC_FILE_DEPENDENCY_TRACE)
(AC_LINK_FILES, AC_LIST_COMMANDS, AC_LIST_COMMANDS_COMMANDS)
(AC_LIST_FILES, AC_LIST_FILES_COMMANDS, AC_LIST_HEADERS)
(AC_LIST_HEADERS_COMMANDS, AC_LIST_LINKS, AC_LIST_LINKS_COMMANDS)
(AC_OUTPUT, AC_OUTPUT_COMMANDS, AC_OUTPUT_COMMANDS_POST)
(AC_OUTPUT_COMMANDS_PRE, AC_OUTPUT_MAKE_DEFS)
(_AC_CONFIG_COMMANDS_INIT, _AC_CONFIG_DEPENDENCIES)
(_AC_CONFIG_DEPENDENCY, _AC_CONFIG_UNIQUE, _AC_LINK_FILES_CNT)
(_AC_LIST_SUBDIRS, _AC_OUTPUT_COMMANDS, _AC_OUTPUT_COMMANDS_CNT)
(_AC_OUTPUT_COMMANDS_INIT, _AC_OUTPUT_CONFIG_STATUS)
(_AC_OUTPUT_FILES, _AC_OUTPUT_HEADERS, _AC_OUTPUT_LINKS)
(_AC_OUTPUT_SUBDIRS): Move to...
* lib/autoconf/status.m4: this new file.
* lib/autoconf/general.m4, lib/autoconf/Makefile.am: Adjust.
* tests/Makefile.am, tests/suite.at: Adjust.
2001-08-27 15:15:39 +08:00
|
|
|
m4_include([acstatus.at])
|
2001-01-22 17:03:38 +08:00
|
|
|
m4_include([acspecific.at])
|
* lib/autoconf/general.m4 (AC_SHELL_PATH_WALK, AC_CHECK_PROG)
(AC_CHECK_PROGS, AC_PATH_PROG, AC_PATH_PROGS, AC_CHECK_TOOL_PREFIX)
(AC_PATH_TOOL, AC_CHECK_TOOL, AC_CHECK_TOOLS): Move to...
* lib/autoconf/programs.m4: here.
* lib/autoconf/specific.m4 (_AC_PROG_ECHO, AC_PROG_MAKE_SET)
(AC_PROG_RANLIB, AC_PROG_YACC, AC_PROG_LEX, _AC_DECL_YYTEXT)
(AC_PROG_INSTALL, AC_PROG_LN_S, AC_RSH): Move to...
* lib/autoconf/programs.m4: here.
(_AC_DECL_YYTEXT): Rename as...
(_AC_PROG_LEX_YYTEXT_DECL): this.
* lib/autoconf/autoconf.m4, lib/autoconf/Makefile.am
* tests/Makefile.am, tests/suite.am: Adjust.
2001-08-22 14:25:00 +08:00
|
|
|
m4_include([acprograms.at])
|
2001-01-22 17:03:38 +08:00
|
|
|
m4_include([acheaders.at])
|
Create actypes.m4.
* acgeneral.m4 (AC_CHECK_SIZEOF, _AC_CHECK_TYPE_NEW)
(AC_CHECK_TYPES, _AC_CHECK_TYPE_OLD)
(_AC_CHECK_TYPE_REPLACEMENT_TYPE_P, _AC_CHECK_TYPE_MAYBE_TYPE_P)
(AC_CHECK_TYPE, AC_CHECK_MEMBER, AC_CHECK_MEMBERS): Move into...
* actypes.m4: here.
* acgeneral.m4 (AC_TYPE_GETGROUPS, AM_TYPE_PTRDIFF_T)
(AC_TYPE_UID_T, AC_TYPE_SIZE_T, AC_TYPE_PID_T, AC_TYPE_OFF_T)
(AC_TYPE_MODE_T, AC_INT_16_BITS, AC_LONG_64_BITS, AC_TYPE_SIGNAL)
(AC_STRUCT_TM, AC_STRUCT_TIMEZONE, AC_STRUCT_ST_BLKSIZE)
(AC_STRUCT_ST_BLOCKS, AC_STRUCT_ST_RDEV): Move into...
* actypes.m4: here.
Adjust the test suite.
2001-01-22 17:04:58 +08:00
|
|
|
m4_include([actypes.at])
|
|
|
|
m4_include([acfunctions.at])
|
2001-08-22 14:24:46 +08:00
|
|
|
m4_include([aclibs.at])
|
2000-12-19 16:09:38 +08:00
|
|
|
|
|
|
|
# Compatibility with foreign tools.
|
|
|
|
m4_include([foreign.at])
|