Commit Graph

1227 Commits

Author SHA1 Message Date
Akim Demaille
635d167e35 * acgeneral.m4 (AC_CHECK_TYPE_INTERNAL): Use the scheme proposed
by Alexandre Oliva for testing the definition of TYPE:
TYPE *foo;
sizeof (TYPE);
2000-02-07 15:06:35 +00:00
Akim Demaille
6bc62513f5 * acspecific.m4 (AC_C_CONST): Don't changequote, there is no need
for it.  Just quote properly!
condition out the test case if __cpluscplus.
AC_REQUIRE AC_PROG_CC_STDC.
Fix slightly the display of the result (formerly the first run
says `none needed', and later, because of the cache `no').
(AC_C_INLINE, AC_C_VOLATILE): AC_REQUIRE AC_PROG_CC_STDC.
* doc/autoconf.texi (AC_C_CONST): Give a few hints on the
motivation for trusting the C++ compilers.
2000-02-07 14:53:49 +00:00
Akim Demaille
78a1aa6fc3 * tests/atgeneral.m4: Updated.
(AT_CASE): new macro.
(AT_CHECK): Use it.  Don't changequote for patsubst, there is no
need.
* tests/syntax.m4 (TEST_MACRO): Don't run AC_ARG_VAR.
Reported by Jim Meyering.
Use AT_CASE.
2000-02-07 14:22:37 +00:00
Akim Demaille
466fd1b23f Test that the macros respect the user variable name space.
* acgeneral.m4 (AC_CANONICAL_THING): define, not AC_DEFUN.
Don't AC_PROVIDE, there is no need.
When calling `config.sub`, also || exit 1, to catch failures from
config.sub.
* acspecific.m4 (AC_SYS_LONG_FILE_NAMES): Use ac_val, not val.
(AC_EXEEXT): Use ac_file, not file.
* tests/actest.m4: New file, holding extra Autoconf macros used
during the testing.
(AC_ENV_SAVE): New macro, save the sh variables in a file.
* tests/suite.m4 (AT_TEST_MACRO, Generation of configure.in):
include actest.m4, and call twice AC_ENV_SAVE to compare the
variables before and after the macro.
* tests/Makefile.am (macro.m4): Don't test macros that are
required: they will be tested somewhere else.
2000-02-07 13:25:35 +00:00
Akim Demaille
ec364610f6 * acgeneral.m4(AC_CONFIG_PRE_COMMANDS, AC_CONFIG_POST_COMMANDS):
Renamed AC_CONFIG_COMMANDS_PRE, AC_CONFIG_COMMANDS_POST.  All
dependencies changed.
From Jim Meyering.
2000-02-07 12:10:37 +00:00
Akim Demaille
63aaea568f * acgeneral.m4: Formatting changes.
* acspecific.m4: Likewise.
2000-02-07 12:04:39 +00:00
Akim Demaille
3c2a8f9b09 Start a new series of tests which check the semantics.
* acgeneral.m4 (AC_CHECK_MEMBER): It is not smart to define
ac_Foo, and use AC_Foo.  Got rid of AC_Member_Aggregate and
AC_Member_Member which were complicating more than simplifying.
(AC_CHECK_DECLS): Use m4 lists.
(AC_CHECK_TYPES): A comma was missing.
* autoheader.m4: (AC_CHECK_DECLS): Use m4 lists.
* doc/autoconf.texi (Generic Declarations): AC_CHECK_DELCS uses m4
lists.
* tests/semantics.m4: New file.  Collection of semantical tests:
verify that the tests are positive and negative when appropriate.
Test AC_CHECK_MEMBERS, AC_CHECK_DECLS and AC_CHECK_TYPES.
2000-02-07 11:54:29 +00:00
Akim Demaille
afd5637353 * tests/Makefile.am (macros.m4): Fix the sed snippet. 2000-02-04 14:29:14 +00:00
Akim Demaille
6e4a18d930 * testsuite/autoconf.g/init.exp: Removed, test performed by
tests/syntax.m4.
* testsuite/autoconf.g/sizeof.exp: Likewise.
* testsuite/autoconf.s/defines.exp: Likewise.
* configure.in (AC_OUTPUT): Adjusted.
* Makefile.am (SUBDIRS): Adjusted.
2000-02-04 14:24:34 +00:00
Akim Demaille
fade74a103 * tests/syntax.m4: Test AC_CHECK_SIZEOF.
* tests/Makefile.am (CLEANFILES, DISTCLEANFILES): Adjusted.
(macros.m4): Use tmp dest files ($@-t), not directly `$@'.
2000-02-04 14:02:57 +00:00
Akim Demaille
eb8389f45e Updated. 2000-02-04 13:40:55 +00:00
Akim Demaille
ea044949a5 Hide AH_HOOK behind AH_DEFUN.
* autoheader.m4 (AH_DEFUN): New macro.  Combination of define and
AH_HOOK.
(AC_TRY_RUN, AC_DEFINE, AC_DEFINE_UNQUOTED, AC_CHECK_LIB,
AC_CHECK_HEADERS, AC_CHECK_HEADERS_DIRENT, AC_CHECK_DECLS,
AC_CHECK_FUNCS, AC_CHECK_SIZEOF, AC_PROG_LEX, AC_CHECK_MEMBERS,
AC_CHECK_TYPE, AC_FUNC_ALLOCA, AC_CHECK_TYPES, AC_C_CHAR_UNSIGNED,
AC_AIX, AC_F77_WRAPPERS, AC_CONFIG_HEADER): All the former calls
to define and AH_HOOK in autoheader.m4 are replaced by AH_DEFUN.
2000-02-04 13:37:47 +00:00
Akim Demaille
8ef18f1d04 * acspecific.m4 (AC_RSH, AC_ARG_ARRAY, AC_HAVE_POUNDBANG): No use
to hide, you are DEFUNCT.
2000-02-04 13:20:19 +00:00
Akim Demaille
82033a0b35 * autoconf.texi (Invoking ifnames): ifnames no longer supports
--macrodir.
2000-02-04 13:01:39 +00:00
Akim Demaille
4f7835e642 Run the `syntax' test on acgeneral macros too.
Fix the bugs discovered.

* acgeneral.m4 (AC_CANONICAL_THING): Quote the
AC_REQUIRE([AC_CANONICAL_HOST]).  Bug triggered by the use of
AC_CANONICAL_BUILD alone in configure.in.  Also, quote the
arguments of macros (eg, ifelse([$1]...), not ifelse($1...)).
(m4_case): New macro.
(AC_LINKER_OPTION): Don't clash with user's name space
(s/i/ac_link_opt).
(AC_LIST_MEMBER_OF).  You mean AC_FATAL, not AC_MSG_ERROR.
Quote properly the argument.
dnl out the empty lines that result from m4 pure code.
Don't pollute the user name space.
Use AC_SHELL_IFELSE.
(AC_F77_NAME_MANGLING): Don't use `test -o'.  There are still
name space problems.
* tests/Makefile.am (macros.m4): Also fetch the macros from
acgeneral.m4.
2000-02-04 12:44:56 +00:00
Akim Demaille
682572c9b1 Really install this patch.
* acgeneral.m4 (AC_MSG_ERROR, AC_MSG_ERROR_UNQUOTED): Allow an
optional $2: exit status.
2000-02-04 11:27:50 +00:00
Akim Demaille
b9b4dc14d8 Check that the AC_DEFINEs from acspecific.m4 do have a template.
Fix the discovered bugs.

* tests/atgeneral.m4 (AT_CHECK): Don't just exit 1 when you want
to propagate the failure of a test: exit with the same exit
status, at least to preserve 77 (=ignore).
* tests/syntax.m4 (TEST_MACRO): Run also autoheader.  Don't run
this test on all the macros, some just cannot run without
arguments.
* acgeneral.m4 (AC_OUTPUT_CONFIG_STATUS): In the if egrep/fi for
#define templates, add a `:' to prevent syntax errors in
config.status when there are no AC_DEFINE performed.
* autoheader.m4 (AH_TEMPLATE): Don't use _AC_SH_QUOTE here, use it
in...
(AH_VERBATIM): here.  Now AH_C_UNSIGNED_CHAR is no longer failing
(formerly it would produce a non backslashed backquote, which
made sh choke).
2000-02-04 10:23:15 +00:00
Akim Demaille
89b1b4e90b Formatting changes. 2000-02-04 09:23:29 +00:00
Akim Demaille
34804a9d13 Introduce a means to distinguish failures of `configure' due to
extern software (so that the test suite doesn't fail on them).

* acgeneral.m4 (AC_MSG_ERROR, AC_MSG_ERROR_UNQUOTED): Allow an
optional $2: exit status.
* doc/autoconf.texi: Document.
* acspecific.m4 (AC_PROG_CC_WORKS, PROG_CXX_WORKS,
AC_PROG_F77_WORKS): Exit 77 if the compiler does not work.
2000-02-04 09:15:26 +00:00
Akim Demaille
7f8a47f153 Clean up a bit the handling of the LANG stack. More is needed.
* acgeneral.m4 (AC_LANG_CASE): New macro.
(AC_LANG_RESTORE): Use m4_case.
(AC_LINKER_OPTION): Use AC_LANG_CASE.
2000-02-04 08:41:39 +00:00
Akim Demaille
eda374af6b 1999-11-11 Akim Demaille <akim@epita.fr>
* autoconf.texi (Generic Declarations): Fixed a typo which
	prevented `make distcheck' from succeeding.
	* texinfo.tex: Updated for the same reasons.
2000-01-29 12:29:03 +00:00
Akim Demaille
f6dd7456f3 1999-11-11 Akim Demaille <akim@epita.fr>
Introduce a new style of testing, independent from DejaGNU.


	Introduce the logistics.

	* configure.in: Initialize AT, and output tests/atconfig, and
	tests/Makefile.
	* m4/atconfig.m4: New file.
	* m4/Makefile.am: Adjusted.
	* aclocal.m4: Include atconfig.m4.
	* Makefile.am: Adjusted.
	* tests/Makefile.am: New file.
	* tests/atgeneral.m4: Likewise.
	* tests/atconfig.in: Likewise.


	Write tests.

	* tests/syntax.m4: New file, in charge of checking the validity of
	the sh code produced by the macros defined in acspecific.m4.
	acgeneral.m4 is not checked here, because these macros require
	arguments.
	* tests/suite.m4: New file.  Run syntax.m4.
2000-01-29 12:18:40 +00:00
Akim Demaille
91a9a99d16 1999-11-10 Akim Demaille <akim@epita.fr>
A test suite will be introduced which tries to run all the
	specific macros, but hasbeen'd macro make configure die with bad
	exit status.  So we wish to distinguish live macros from defunct
	macros at the moment they are AC_DEFUN'd, not in their body.  Hm,
	defunct, defunct... Hey!  That's a good name!

	* acgeneral.m4 (AC_DEFUNCT): New macro, comparable to AC_DEFUN,
	but for macros which are no longer defined.  Replaces AC_HASBEEN.
	(AC_HASBEEN): Defunct.  Well, removed in fact.
	(AC_HAVE_LIBRARY): Don't use AC_DEFUN and AC_HASBEEN, just
	AC_DEFUNCT.
	* acspecific.m4 (AC_UNISTD_H, AC_USG, AC_MEMORY_H, AC_DIR_HEADER,
	AC_INT_16_BITS, AC_LONG_64_BITS): Likewise.
	(AC_XENIX_DIR): It was defunct even before I declared it was: was
	depending upon AC_DIR_HEADER which is defunct.  So AC_DEFUNCT'ed
	now.
	(AC_DYNIX_SEQ, AC_IRIX_SUN, AC_SCO_INTL): While we're here, you
	too are defunct now.
	* autoconf.texi (Obsolete Macros): Replace the documentation of
	AC_HASBEEN with that of AC_DEFUNCT.
2000-01-29 11:46:21 +00:00
Akim Demaille
ddfcae90fa 1999-11-10 Akim Demaille <akim@epita.fr>
* autoconf.sh: Formatting changes.
	Removed development junk.
	* acspecific.m4: Formatting changes.
	* autoconf.m4: Likewise.
	* autoheader.m4: Likewise.
2000-01-29 11:37:48 +00:00
Akim Demaille
10b394d34f 1999-11-10 Akim Demaille <akim@epita.fr>
Let Autoconf use autoconf's `--install'.

	* m4/Makefile.am: New file.
	* m4/init.am: New file, required by Automake.
	* m4/missing.am: Likewise.
	* m4/sanity.am: Likewise.
	* aclocal.m4: Include them.
	* configure.in (AC_OUTPUT): Added m4/Makefile.
2000-01-29 10:30:15 +00:00
Akim Demaille
a8b1835003 1999-11-10 Akim Demaille <akim@epita.fr>
Make autoconf support --install.

	* autoconf.sh (task install): New task.  Extract the set of
	auxiliary m4 files a configure.in depends upon.  Install links
	from library files to the local dir so that the packages depends
	only on local extensions.  Check that the user includes exactly
	the files she needs.
2000-01-29 09:54:27 +00:00
Akim Demaille
a47826499c 1999-11-10 Akim Demaille <akim@epita.fr>
Require GNU m4 1.4 (well 1.3 in fact).

	Because we are ready to handle the case where there are no frozen
	files, we *have* to pass a -I, which is dangerous in conjunction
	with the silent including of `aclocal.m4': you may include things
	that were not expected.  Since anyway handling pre 1.3 complicates
	the task, just require an m4 which supports reloading of frozen
	files.

	* acspecific.m4 (AC_PROG_GNU_M4): Check for --reload.
	* autoconf.sh: Likewise
	* autoheader.sh: Likewise.
	* configure.in: Explicitly state the m4 version you want.
2000-01-29 09:51:17 +00:00
Akim Demaille
394a96e50d 1999-11-10 Akim Demaille <akim@epita.fr>
No need for foo="`bar`", foo=`bar` is fine.
	Simplify ${foo} and ${1} into $foo and $1.

	* acgeneral.m4 (ac_LF_and_DOT): Remove the double quotes.
	* acspecific.m4 (AC_PROG_CC_C_O, AC_PROG_F77_C_O): Likewise.
	* autoconf.sh: Likewise.
	* autoheader.sh: Likewise.
	* autoreconf.sh: Likewise.
	* autoupdate.sh: Likewise.
	* ifnames.sh: Remove all the code and messages related to
	AC_MACRODIR, since ifnames is not related to macros in anyway.
2000-01-29 09:46:28 +00:00
Akim Demaille
f9abb7ad1d 1999-11-10 Akim Demaille <akim@epita.fr>
New version of AC_INCLUDE, which does not glob, nor rely upon the
	shell.  Add AC_INCLUDES too.  Help tracking multiple inclusions.

	* acgeneral.m4 (m4_errprint, m4_warn, m4_fatal): New macros,
	variations around errprint.
	(m4_include_unique): New macro which registers what are the files
	already included, and warns if some are included several times.
	(m4_include, m4_sinclude): New macro, using m4_include_unique.
	(AC_INCLUDE): Is now just a wrapper of m4_include.
	(AC_INIT): Use m4_sinclude, not sinclude.
	(_AC_ERRPRINT): Removed, m4_errprint is here!
	(AC_WARNING, AC_FATAL): Wrappers of m4_warn and m4_fatal.
2000-01-29 09:34:26 +00:00
Akim Demaille
f10081ba6c Fixed a typo in the change log. 2000-01-29 09:30:16 +00:00
Akim Demaille
48b898876a 2000-01-29 Akim Demaille <akim@epita.fr>
* autoheader.sh: No longer rely on a system acconfig.h.
2000-01-29 09:24:30 +00:00
Akim Demaille
13692cadbc 1999-11-01 Akim Demaille <akim@epita.fr>
Be kind to Automake: list the arguments of selected macros
	(for instance AC_SUBST will list each variable which may be
 	substitued).

	* autoconf.sh (--trace, --output): New options.
	Implement tracing of macros.
	trap also on 0, so that there is no need to rm here and there.
	* autoconf.texi (Output): Document --trace and --output.
2000-01-29 09:22:53 +00:00
Akim Demaille
3c6c0f1477 1999-11-01 Akim Demaille <akim@epita.fr>
Clean up the macros for testing members of aggregates.

	* acgeneral.m4 (AC_CHECK_MEMBER): FATAL if $1 has no dot in it.
	Use AC_INCLUDE_DEFAULTS.
	(AC_C_STRUCT_MEMBER): Removed.
	* acspecific.m4 (AC_STRUCT_TIMEZONE): Adapted to AC_CHECK_MEMBERS.
	(AC_STRUCT_ST_BLKSIZE, AC_STRUCT_ST_RDEV): Adapted to
 	AC_CHECK_MEMBERS and obsoleted.
	(AC_STRUCT_ST_BLOCKS): Adapted to AC_CHECK_MEMBERS.
	* autoconf.texi (AC_STRUCT_ST_BLKSIZE, HAVE_STRUCT_STAT_ST_RDEV):
	Explain they are obsoleted, and how to migrate.
	(AC_STRUCT_ST_BLOCKS, AC_STRUCT_TIMEZONE): Explain that the
 	AC_DEFINE changed (but the former #defines remain defined
 	currently).
	(AC_C_STRUCT_MEMBER): Removed, replaced by the definitions of
	AC_CHECK_MEMBER and AC_CHECK_MEMBERS.
2000-01-28 16:05:48 +00:00
Akim Demaille
097b84fd1c 1999-11-01 Akim Demaille <akim@epita.fr>
Install a uniform set of default includes.

	* acgeneral.m4 (AC_INCLUDES_DEFAULT): New macro.  Expands in its
	argument if non empty, otherwise a default list of includes.
	(AC_CHECK_DECL, AC_CHECK_TYPE_INTERNAL): Use AC_INCLUDES_DEFAULT.
	* autoconf.texi: Adjusted.
2000-01-28 15:23:37 +00:00
Akim Demaille
6b39479736 1999-11-01 Akim Demaille <akim@epita.fr>
* autoheader.m4 (AH_FUNC_ALLOCA, AH_C_CHAR_UNSIGNED, AH_AIX):
	Don't leave `[]dnl' in pseudo #-comment (actually CPP directives).
2000-01-28 11:00:16 +00:00
Akim Demaille
39413fef29 Formatting changes. 2000-01-28 10:44:30 +00:00
Akim Demaille
13527a7b56 1999-11-01 Akim Demaille <akim@epita.fr>
Fix a bit of the brokenness of AC_CHECK_TYPE.

	* acgeneral.m4 (AC_CHECK_TYPE_INTERNAL): New macro, inspired from
 	the former AC_CHECK_TYPE.  This macro is exactly the one that
 	ought to be named AC_CHECK_TYPE: it just checks, and executes user
 	actions.  In the future, this macro ought to be renamed
 	AC_CHECK_TYPE.
	There is a big difference with the former AC_CHECK_TYPE: instead
 	of grepping in the headers, it tries to compile a variable
 	declaration.  This is both safer, slower, and better, since now we
 	can check for compiler types (e.g., unsigned long long).
	(AC_CHECK_TYPES): The looping and AC_DEFINEing version of the
 	previous macro.  Uses m4 loops.
	(AC_CHECK_TYPE): Reimplemented on top of AC_CHECK_TYPE_INTERNAL.
  	* autoheader.m4 (AH_CHECK_TYPE, AH_CHECK_TYPES): New macros,
 	hooked.
	* autoconf.texi (@ovar): New macro, for optional variables.
	(Generic Typedefs): Document AC_CHECK_TYPES.
	* autoheader.texi: (AH_CHECK_TYPE, AH_CHECK_TYPES): New macros.
	(Epilogue): Hooks them.
2000-01-28 10:41:47 +00:00
Akim Demaille
7994769e0b Added the man pages to the archive. 2000-01-27 09:41:25 +00:00
Akim Demaille
cc1f3c1bca 1999-11-01 Akim Demaille <akim@epita.fr>
Update autoupdate.

	* acoldnames.m4:  Sort the two sections.
	* acoldnames.m4 (AM_CYGWIN32, AM_EXEEXT, AM_FUNC_FNMATCH,
 	AM_FUNC_MKTIME, AM_PROG_LIBTOOL, AM_MINGW32, AM_PROG_INSTALL,
 	fp_FUNC_FNMATCH): Added their new names.
2000-01-26 12:38:31 +00:00
Akim Demaille
7e58050fc5 1999-10-31 Akim Demaille <akim@epita.fr>
Create man pages for the executables.

	* Makefile.am (SUBDIRS): Add `man' and prepend `.' so that
	executables be built before help2man is run.
	* configure.in (AC_OUTPUT): Add man/Makefile.
	AC_MSG_ERROR, not AC_ERROR.
	Check for missing help2man.
	* man/Makefile.am: New file.
	* man/autoconf.x: Likewise.
	* man/autoreconf.x: Likewise.
	* man/autoheader.x: Likewise.
	* man/autoscan.x: Likewise.
	* man/autoupdate.x: Likewise.
	* man/ifnames.x: Likewise.
	* man/common.x: Likewise.
2000-01-26 12:32:13 +00:00
Akim Demaille
3c45adf66c 1999-10-31 Akim Demaille <akim@epita.fr>
* acgeneral.m4 (AC_INIT_PARSE_ARGS): Reformating of configure and
	config.status --help.
2000-01-14 18:15:57 +00:00
Akim Demaille
6bae95ed08 1999-10-31 Akim Demaille <akim@epita.fr>
* acgeneral.m4 (AC_OUTPUT_CONFIG_STATUS): Implement `config.status
	--file' and `--header'.
2000-01-14 18:10:44 +00:00
Akim Demaille
0c1771941f 1999-10-31 Akim Demaille <akim@epita.fr>
* autoheader.m4 (AH_TEMPLATE): Quote $2 once, now _AC_SH_QUOTE
	behaves properly.
2000-01-14 18:07:57 +00:00
Akim Demaille
553eefdb5f 1999-10-31 Akim Demaille <akim@epita.fr>
* acgeneral.m4: Formatting changes.
	* acspecific.m4: Likewise.
2000-01-14 18:06:22 +00:00
Akim Demaille
19a9e0d8d5 1999-10-31 Akim Demaille <akim@epita.fr>
* acgeneral.m4 (AC_CONFIG_LINKS): Allow a second argument,
	commands to run, as AC_CONFIG_FILES and HEADERS.
	(AC_LIST_LINKS_COMMANDS): New growing string.  Initialize.
	(AC_OUTPUT_LINKS): Use it.
	(AC_OUTPUT_FILES, AC_OUTPUT_HEADERS, AC_OUTPUT_LINKS): Don't
	pretend to have arguments: you don't depend upon it.
	(AC_OUTPUT): Call the previous macros without arguments.
2000-01-14 17:57:52 +00:00
Akim Demaille
8ccd9f93f7 1999-10-31 Akim Demaille <akim@epita.fr>
* acgeneral.m4 (AC_PREFIX_PROGRAM): Don't use define/undefine, but
	pushdef/podef.  AC_UPCASE_NAME no longer exist.
2000-01-14 17:53:47 +00:00
Akim Demaille
73ec5d2f18 1999-10-31 Akim Demaille <akim@epita.fr>
* acgeneral.m4: Formatting changes.
2000-01-14 17:51:12 +00:00
Akim Demaille
34f2e68a41 1999-10-31 Akim Demaille <akim@epita.fr>
* TODO: Updated.
2000-01-14 17:47:49 +00:00
Akim Demaille
8833720a01 1999-10-31 Akim Demaille <akim@epita.fr>
Clean up dead comments/code.  Clean up the incompatibilities
	between quoted and non quoted _AC_ECHO and the like.

	* acgeneral.m4: Remove the comments on the no longer defined AC_TR.
	(_AC_SH_QUOTE): Be robust to active symbols.
	(_AC_ECHO): Quote properly the argument.
	(AC_TRY_RUN): Don't quote [AC_TRY_RUN] in the warning.
2000-01-14 17:38:31 +00:00
Akim Demaille
0e6f2c809f 1999-10-31 Akim Demaille <akim@epita.fr>
* acspecific.m4: Formatting changes.
2000-01-14 17:34:21 +00:00