]> git.ipfire.org Git - thirdparty/autoconf.git/log
thirdparty/autoconf.git
25 years ago2000-02-25 Akim Demaille <akim@epita.fr>
Akim Demaille [Fri, 25 Feb 2000 13:19:35 +0000 (13:19 +0000)] 
2000-02-25  Akim Demaille  <akim@epita.fr>

* doc/autoconf.texi (Default Includes):

Export the knowledge on disabling echo's trailing new line.

* acspecific.m4 (AC_PROG_ECHO_N): Renamed as...
(_AC_PROG_ECHO): this.
Set ECHO_N, ECHO_C, ECHO_T instead of ac_n, ac_c and ac_t.
All dependencies changed.
* doc/autoconf.texi (Preset Output Variables): Document ECHO_C,
ECHO_N and ECHO_T.
* m4/atconfig.m4 (fp_PROG_ECHO): Removed.
(AT_CONFIG): Don't use it.

25 years ago* autoconf.sh (AC_ACLOCALDIR): Use `(aclocal) 2>/dev/null`, not
Akim Demaille [Thu, 24 Feb 2000 18:25:03 +0000 (18:25 +0000)] 
* autoconf.sh (AC_ACLOCALDIR): Use `(aclocal) 2>/dev/null`, not
`aclocal 2>/dev/null` if you want no complains for missing
aclocal.
From Nicolas Joly.

25 years ago* configure.in (HELP2MAN): Specify the third argument of
Akim Demaille [Tue, 22 Feb 2000 08:46:29 +0000 (08:46 +0000)] 
* configure.in (HELP2MAN): Specify the third argument of
AM_MISSING_PROG.  Fixes autoconf/116.

25 years ago* tests/tools.m4 (syntax.sh): The logic of the previous patch was
Akim Demaille [Mon, 21 Feb 2000 12:57:47 +0000 (12:57 +0000)] 
* tests/tools.m4 (syntax.sh): The logic of the previous patch was
twisted.  Fix it so that it performs what claims the entry below.
From Nicolas Joly.

25 years ago* tests/tools.m4 (syntax.sh): Exit 1 if you managed to kill the
Akim Demaille [Mon, 21 Feb 2000 09:18:01 +0000 (09:18 +0000)] 
* tests/tools.m4 (syntax.sh): Exit 1 if you managed to kill the
child, since it means `/bin/sh -n' went loopy.

25 years agoSome `diff' refuse to diff with /dev/null, such as Tru64's.
Akim Demaille [Fri, 18 Feb 2000 13:44:17 +0000 (13:44 +0000)] 
Some `diff' refuse to diff with /dev/null, such as Tru64's.
Reported by Nicolas Joly.

* tests/atgeneral.m4 (empty): New dummy file.
Changed various `diff /dev/null' as `diff empty'.

25 years ago* tests/atspecific.m4 (TEST_MACRO): Don't run AC_PATH_TOOL and
Akim Demaille [Fri, 18 Feb 2000 10:22:29 +0000 (10:22 +0000)] 
* tests/atspecific.m4 (TEST_MACRO): Don't run AC_PATH_TOOL and
AC_PATH_PROG.

25 years ago* tests/atgeneral.m4 (at_diff): Don't use `cmp -s', on DOS it
Akim Demaille [Fri, 18 Feb 2000 10:01:25 +0000 (10:01 +0000)] 
* tests/atgeneral.m4 (at_diff): Don't use `cmp -s', on DOS it
makes the difference between Unix and DOS EOL. `diff' does not.
Reported by Eli Zaretski.
Also, be ready to use a diff that does not support `-u'.

25 years ago* tests/tools.m4 (Syntax of the scripts): Be robust to shells that
Akim Demaille [Fri, 18 Feb 2000 09:25:46 +0000 (09:25 +0000)] 
* tests/tools.m4 (Syntax of the scripts): Be robust to shells that
never return on some `/bin/sh -n foo.sh'.
Reported by Nicolas Joly.

25 years agoMove the documentation into doc/.
Akim Demaille [Thu, 17 Feb 2000 10:57:00 +0000 (10:57 +0000)] 
Move the documentation into doc/.
Some CVS tricks were used so that history is kept in both the top
directory, and in doc/.

* doc/Makefile.am: New file.
* Makefile.am: Adjusted.
* configure.in: Adjusted.
* autoconf.texi: Moved from here to...
* doc/autoconf.texi: here.
* make-stdts.texi: Likewise.
* install.texi: Likewise.
* texinfo.tex: Likewise.

25 years ago* tests/actest.m4 (AC_ENV_SAVE): Added ALLOCA.
Akim Demaille [Thu, 17 Feb 2000 09:50:51 +0000 (09:50 +0000)] 
* tests/actest.m4 (AC_ENV_SAVE): Added ALLOCA.

25 years ago* tests/semantics.m4 (AC_CHECK_TYPES): `addr, addr' is not
Akim Demaille [Thu, 17 Feb 2000 09:38:08 +0000 (09:38 +0000)] 
* tests/semantics.m4 (AC_CHECK_TYPES): `addr, addr' is not
portable sed: use `addr,addr'.

25 years agoFix the `missing dummy.in' reported by the test suite.
Akim Demaille [Thu, 17 Feb 2000 09:31:34 +0000 (09:31 +0000)] 
Fix the `missing dummy.in' reported by the test suite.
Reported by Erez Zadok.

* tests/torture.m4 (config.status under extreme conditions):
Reorganized.  Because files required by this test were created
outside the pair AT_SETUP/AT_CLEANUP, when the test fails and
autotest extracts this test, the `debug' script does not contain
the files it needs.  Now AT_SETUP/AT_CLEANUP encloses the full
auto contained section.

25 years ago* tests/actest.m4 (AC_ENV_SAVE): X_EXTRA_LIBS can be changed by
Akim Demaille [Thu, 17 Feb 2000 09:27:58 +0000 (09:27 +0000)] 
* tests/actest.m4 (AC_ENV_SAVE): X_EXTRA_LIBS can be changed by
AC_PATH_EXTRA.
Reported by Erez Zadok.

25 years agoDefine HAVE_DECL_FOO both to 1 if found and 0 otherwise.
Akim Demaille [Tue, 15 Feb 2000 09:33:59 +0000 (09:33 +0000)] 
Define HAVE_DECL_FOO both to 1 if found and 0 otherwise.

* acgeneral.m4 (AC_CHECK_DECLS): Define HAVE_DECL_FOO to 1 instead
of NEED_FOO_DECL if found.  Define to 0 if not found.
* autoheader.m4 (AC_CHECK_DECLS): Template HAVE_DECL_FOO.
* tests/semantics.m4 (AC_CHECK_DECLS): Adjusted.
* doc/autoconf.texi (Generic Declarations): Adjusted.

25 years ago* doc/autoconf.texi (Generic Structures):
Akim Demaille [Tue, 15 Feb 2000 09:16:48 +0000 (09:16 +0000)] 
* doc/autoconf.texi (Generic Structures):
s/AC_FATAL/AC_MSG_ERROR.

25 years agoautoreconf had a silly syntax error, test it and fix it.
Akim Demaille [Tue, 15 Feb 2000 09:15:22 +0000 (09:15 +0000)] 
autoreconf had a silly syntax error, test it and fix it.
Reported by Franc,ois Pinard and Rainer Orth.

* autoreconf.sh: Removed spurious `;;'.
Formatting changes.
* tests/tools.m4 (Syntax of the scripts): Run `sh -n' on all the
shell scripts.

25 years agoCVS added tests/Makefile.in
Akim Demaille [Tue, 15 Feb 2000 09:12:36 +0000 (09:12 +0000)] 
CVS added tests/Makefile.in

25 years ago* autoconf.sh (options handling): --v* of --version was shadowing
Akim Demaille [Tue, 15 Feb 2000 09:10:23 +0000 (09:10 +0000)] 
* autoconf.sh (options handling): --v* of --version was shadowing
--verbose.

25 years ago* tests/torture.m4: Nuke the trailing space in defs.
Akim Demaille [Tue, 15 Feb 2000 09:03:36 +0000 (09:03 +0000)] 
* tests/torture.m4: Nuke the trailing space in defs.

25 years ago* tests/atspecific.m4: Really added to the CVS repository.
Akim Demaille [Fri, 11 Feb 2000 09:01:24 +0000 (09:01 +0000)] 
* tests/atspecific.m4: Really added to the CVS repository.

25 years agoDon't use `cat -s' to single out new-lines, it is not portable.
Akim Demaille [Fri, 11 Feb 2000 08:59:52 +0000 (08:59 +0000)] 
Don't use `cat -s' to single out new-lines, it is not portable.
Also remove trailing blanks.

* tests/Makefile.am (testsuite): Use sed instead of cat.
* tests/torture.m4: No longer check for a trailing space.
* autoconf.sh: Likewise.

25 years ago* tests/actest.m4 (AC_ENV_SAVE): OpenBSD-2.3's /bin/sh defines an
Akim Demaille [Thu, 10 Feb 2000 16:57:55 +0000 (16:57 +0000)] 
* tests/actest.m4 (AC_ENV_SAVE): OpenBSD-2.3's /bin/sh defines an
envvar SECONDS which does change with time.
KMEM_GROUP is set by AC_FUNC_GETLOADAVG.
Reported by Volker Borchert.

25 years ago* tests/Makefile.am (macros.m4): Better regex to build `macro'.
Akim Demaille [Thu, 10 Feb 2000 16:30:17 +0000 (16:30 +0000)] 
* tests/Makefile.am (macros.m4): Better regex to build `macro'.
Depend upon acgeneral.m4.

25 years ago* autoheader.sh: Remove the duplicate trap code.
Akim Demaille [Thu, 10 Feb 2000 16:27:35 +0000 (16:27 +0000)] 
* autoheader.sh: Remove the duplicate trap code.

25 years ago* acgeneral.m4 (AC_OUTPUT): When dispatching your arguments, use
Akim Demaille [Thu, 10 Feb 2000 16:25:47 +0000 (16:25 +0000)] 
* acgeneral.m4 (AC_OUTPUT): When dispatching your arguments, use
ifval, not ifset!
Dispatch actions to AC_CONFIG_COMMANDS not AC_OUTPUT_COMMANDS, to
avoid unneeded warnings for obsolete use of AC_OUTPUT_COMMANDS.

25 years ago* acgeneral.m4 (AC_VERBOSE): This is a tab, not spaces.
Akim Demaille [Thu, 10 Feb 2000 16:21:42 +0000 (16:21 +0000)] 
* acgeneral.m4 (AC_VERBOSE): This is a tab, not spaces.

25 years agoChangequote busters II.
Akim Demaille [Thu, 10 Feb 2000 13:14:58 +0000 (13:14 +0000)] 
Changequote busters II.
They're back to save the world.

* acspecific.m4 (AC_PROG_CC_C_O, AC_PROG_F77_C_O,
AC_PROG_MAKE_SET, AC_TYPE_GETGROUPS, AC_FUNC_GETLOADAVG,
AC_FUNC_MKTIME, AC_STRUCT_TIMEZONE, AC_F77_LIBRARY_LDFLAGS): Blast
that jelly o' changequote.  Set the quotes free.

25 years agoInterrupting autoheader left temp files.
Akim Demaille [Thu, 10 Feb 2000 13:12:04 +0000 (13:12 +0000)] 
Interrupting autoheader left temp files.
From Jim Meyering.

* autoheader.sh (usage): The usage is to use $0 here.
(ah_base): Be in TMPDIR.
Install the `trap' before creating the first tmp file.
Also trap on 0.

25 years ago* acgeneral.m4 (AC_OUTPUT_MAKE_DEFS): This is a routine of
Akim Demaille [Thu, 10 Feb 2000 13:08:33 +0000 (13:08 +0000)] 
* acgeneral.m4 (AC_OUTPUT_MAKE_DEFS): This is a routine of
`configure', not `config.status', hence use `conftest' for tmp
files, not `$ac_cs_root'.
Removed forgotten developer comment.
Double quoting the whole body is nicer than just the part that
needs to be.

25 years ago* tests/torture.m4: Also check the value of @DEFS@ when no
Akim Demaille [Thu, 10 Feb 2000 10:41:52 +0000 (10:41 +0000)] 
* tests/torture.m4: Also check the value of @DEFS@ when no
CONFIG_HEADER is used.

25 years agoChangequote-busters!
Akim Demaille [Thu, 10 Feb 2000 10:40:19 +0000 (10:40 +0000)] 
Changequote-busters!
From Dan Ackroyd.

* acgeneral.m4 (AC_INIT_PARSE_ARGS, AC_INIT_PREPARE,
AC_CACHE_SAVE, AC_PREFIX_PROGRAM, AC_OUTPUT,
_AC_OUTPUT_CONFIG_STATUS, AC_OUTPUT_MAKE_DEFS, AC_OUTPUT_FILES,
_AC_OUTPUT_HEADERS, AC_OUTPUT_LINKS, AC_OUTPUT_SUBDIRS): Quit
playing with changequotes, @BKL@ and Co.!  Just quote properly.

25 years agoHonor properly the `#define' config.h.in templates.
Akim Demaille [Thu, 10 Feb 2000 10:38:59 +0000 (10:38 +0000)] 
Honor properly the `#define' config.h.in templates.
Test it.

* acgeneral.m4 (AC_OUTPUT_HEADERS): Renamed as...
(_AC_OUTPUT_HEADERS): this.  All callers changed.
Don't mess with changequote, just quote properly.
Bug 1.  Because of the `#' in `ac_dA', the quotes <<>> were not
removed, and therefore the sed script contained `<<define>>'
instead of `define'.  Now that the block is properly quoted, there
is no need to quote `define'.
Bug 2.  Once a `#define' substitution performed, we were branching
to the top of the sed script (`t top').  This resulted in an
endless substitution of `#define foo 1' to `#define foo 1'.
Branching is not enough: you also have to fetch the next input
line, i.e., use `t' instead of `t t' in ac_dD, and don't output
`: top' in `config.defines'.
Though it was correct for `#undef' templates, just apply the same
transformation to `ac_uD' and `config.undefs'.
Bug 3.  Don't try to preserve what was behind the value in the
template, since on
#define NAME "bar baz"
it leads to
#define NAME 1 baz"
Now `ac_dB' catches everything behind the NAME (making sure there
is at least a space) and `ac_dC' only outputs a space.
* tests/torture.m4: Check that various forms of `#define' header
templates are properly handled.

25 years agoAvoid calling `rm' without arguments.
Akim Demaille [Thu, 10 Feb 2000 10:37:03 +0000 (10:37 +0000)] 
Avoid calling `rm' without arguments.

* acgeneral.m4 (_AC_OUTPUT_CONFIG_STATUS): It is smarter to use a
quoted here doc to output the section providing defaults for
CONFIG_*.
Don't rm the CONFIG_FILES here but in..
(AC_OUTPUT_FILES) [test -n "$CONFIG_FILES"]: here.
Hm, actually, no, just don't remove them at all, let the newly
created files replace the old ones, exactly as in
AC_OUTPUT_HEADERS.
From Graham Jenkins.

25 years ago* acgeneral.m4 (AC_LIST_MEMBER_OF): s/ac_$exists/$ac_exists/!
Akim Demaille [Thu, 10 Feb 2000 10:36:13 +0000 (10:36 +0000)] 
* acgeneral.m4 (AC_LIST_MEMBER_OF): s/ac_$exists/$ac_exists/!

25 years ago* acgeneral.m4: Formatting changes.
Akim Demaille [Thu, 10 Feb 2000 10:35:18 +0000 (10:35 +0000)] 
* acgeneral.m4: Formatting changes.
* acspecific.m4: Likewise.

25 years ago* acgeneral.m4 (_AC_OUTPUT_CONFIG_STATUS): Don't
Akim Demaille [Thu, 10 Feb 2000 10:25:23 +0000 (10:25 +0000)] 
* acgeneral.m4 (_AC_OUTPUT_CONFIG_STATUS): Don't
  : ${FOO="$foo"}
but
  : ${FOO=$foo}
Since Ultrix will also assign the quotes to FOO.
Reported by Harlan Stenn.

25 years agoKeep `AC_CHECK_TYPE' backward compatibility and provide a proper
Akim Demaille [Thu, 10 Feb 2000 10:24:10 +0000 (10:24 +0000)] 
Keep `AC_CHECK_TYPE' backward compatibility and provide a proper
`AC_CHECK_TYPE',
Based on ideas from Paul Eggert and Alexandre Oliva.

* acgeneral.m4 (AC_CHECK_TYPE_INTERNAL): Renamed as
(_AC_CHECK_TYPE_NEW): this.
(AC_CHECK_TYPES): Adjusted.
(AC_CHECK_TYPE): Renamed as
(_AC_CHECK_TYPE_OLD): This.  Adjusted to _AC_CHECK_TYPE_NEW.
No longer support extra includes, stick to 2.13's interface.
(_AC_CHECK_TYPE_BUILTIN_P): New macro.
(AC_CHECK_TYPE): New macro.
* autoheader.m4 (autoheader::AC_CHECK_TYPE): Renamed as...
(autoheader::_AC_CHECK_TYPE_OLD): this.
* tests/atspecific.m4 (TEST_MACRO): Skip /^_AC_/ macros.
* tests/semantics.m4: Test the choices of AC_CHECK_TYPE (wrt _NEW
or _OLD implemenation).
* doc/autoconf.texi (Generic Types): Reorganized.  Explain
everything about AC_CHECK_TYPE and Co.

25 years ago* libm4.m4 (near m4_split): Remove the buggy additional
Akim Demaille [Thu, 10 Feb 2000 09:46:57 +0000 (09:46 +0000)] 
* libm4.m4 (near m4_split): Remove the buggy additional
changequote.
Quote properly `m4_split' when registering it.

25 years agoThe AU-glue code for AC_LINK_FILES was not fully compatible: in
Akim Demaille [Thu, 10 Feb 2000 09:45:25 +0000 (09:45 +0000)] 
The AU-glue code for AC_LINK_FILES was not fully compatible: in
  AC_LINK_FILES($from, $to)
`$from' and `$to' can be lists, hence `AC_CONFIG_LINKS($to:$from)'
is wrong.
Reported by H.J. Lu.

* acgeneral.m4 (AC_LINK_FILES): Replace the m4-glue code from
AC_LINK_FILES to AC_CONFIG_LINKS, with sh-glue code.
Give a detailed update message.
(_AC_LINK_FILES_CNT): New variable.  Initialize.
* tests/tools.m4 (autoupdate): No longer exercise `autoupdate'
with AC_LINK_FILES.

25 years ago* acspecific.m4 (AC_PROG_SED): Removed.
Akim Demaille [Thu, 10 Feb 2000 09:42:36 +0000 (09:42 +0000)] 
* acspecific.m4 (AC_PROG_SED): Removed.

25 years agoAC_CHECK_FILES has never worked properly.
Akim Demaille [Thu, 10 Feb 2000 09:40:55 +0000 (09:40 +0000)] 
AC_CHECK_FILES has never worked properly.

* acgeneral.m4 (AC_CHECK_FILE): Use AC_CACHE_CHECK.
* autoheader.m4 (AC_CHECK_FILES): AH-define.
* tests/semantics.m4: Test AC_CHECK_FILES.
* tests/atspecific.m4 (TEST_MACRO): Don't.

25 years agoNo longer use a diversion to store the sed program implementing
Akim Demaille [Thu, 10 Feb 2000 09:40:09 +0000 (09:40 +0000)] 
No longer use a diversion to store the sed program implementing
AC_SUBST.

* acgeneral.m4 (_AC_SUBST): New macro.
(_AC_SUBST_SED_PROGRAM): Initialize.
(AC_SUBST): Use _AC_SUBST.
(AC_SUBST_FILE): Likewise.
(AC_DIVERSION_SED): Removed.  Renumber the AC_DIVERSIONs.
(AC_OUTPUT_FILES): Instead on undiverting AC_DIVERSION_SED, output
_AC_SUBST_SED_PROGRAM.

25 years agoStandardize the error messages in the options handling of
Akim Demaille [Thu, 10 Feb 2000 09:37:37 +0000 (09:37 +0000)] 
Standardize the error messages in the options handling of
`configure' and `config.status'.

* acgeneral.m4 (AC_OUTPUT_CONFIG_STATUS): Renamed as...
(_AC_OUTPUT_CONFIG_STATUS): this.
Change the error messages from
  value: invalid feature name
to
  invalid feature: value
Invite the user to try --help for invalid options.
(AC_INIT_PARSE_ARGS): Likewise.

25 years ago* acgeneral.m4 (AC_OUTPUT_COMMANDS_COMMANDS): Renamed as...
Akim Demaille [Thu, 10 Feb 2000 09:35:00 +0000 (09:35 +0000)] 
* acgeneral.m4 (AC_OUTPUT_COMMANDS_COMMANDS): Renamed as...
(_AC_OUTPUT_COMMANDS): This.  All callers changed.
Disable the verbose message until Automake uses the new features
of `config.status'.
Reported by Jim Meyering.

25 years agoClean up a few changequotes.
Akim Demaille [Thu, 10 Feb 2000 08:52:56 +0000 (08:52 +0000)] 
Clean up a few changequotes.

* acgeneral.m4 (AC_INIT_PARSE_ARGS): Instead of using changequote
to protect a few `[ ]', double quote the constant sections.

25 years agoRestore AC_HAVE_LIBRARY.
Akim Demaille [Thu, 10 Feb 2000 08:42:26 +0000 (08:42 +0000)] 
Restore AC_HAVE_LIBRARY.

* acgeneral.m4 (AC_HAVE_LIBRARY): AU_DEFUNed in terms of
AC_CHECK_LIB.
* doc/autoconf.texi (Libraries): Document.

25 years agoFix the handling of `./configure foo=bar' and test it.
Akim Demaille [Wed, 9 Feb 2000 18:24:24 +0000 (18:24 +0000)] 
Fix the handling of `./configure foo=bar' and test it.

* acgeneral.m4 (AC_INIT_PARSE_ARGS, getopt loop): Always define
ac_optarg as the rhs of the first `=', not only on `-.*=', so that
`configure var=val' defines ac_optarg=val.
Improve the robustness to shell special characters:
 - Use grep when checking that shell variable names are valid.
 - Quote the quotes in ac_optarg before `eval var='$ac_optarg''.
 - Quote the quotes when building ac_configure_args.

* tests/torture.m4: Test that `./configure foo=bar' works properly.

25 years agoResynchronize `INSTALL' with the current `configure', and
Akim Demaille [Wed, 9 Feb 2000 18:19:58 +0000 (18:19 +0000)] 
Resynchronize `INSTALL' with the current `configure', and
conversely...

* acgeneral.m4 (AC_INIT_PARSE_ARGS): Let `configure' support `-h =
--help' and `-n = --no-create'.
Document -h, -n and -q in configure's help message.
* install.texi (Operation Controls): Formatting changes.
Document `configure -h'.

25 years agoSpell checked ChangeLog.
Akim Demaille [Wed, 9 Feb 2000 18:17:50 +0000 (18:17 +0000)] 
Spell checked ChangeLog.

25 years agoSpell checked ChangeLog.
Akim Demaille [Wed, 9 Feb 2000 18:16:34 +0000 (18:16 +0000)] 
Spell checked ChangeLog.

25 years ago* ChangeLog.1: Formatting changes.
Akim Demaille [Wed, 9 Feb 2000 18:09:50 +0000 (18:09 +0000)] 
* ChangeLog.1: Formatting changes.

25 years ago* Makefile.am (CLEANFILES): Added autoupdate.m4f and autoconf.tmp.
Akim Demaille [Wed, 9 Feb 2000 18:08:37 +0000 (18:08 +0000)] 
* Makefile.am (CLEANFILES): Added autoupdate.m4f and autoconf.tmp.

25 years agoTest `autoupdate'.
Akim Demaille [Wed, 9 Feb 2000 18:02:18 +0000 (18:02 +0000)] 
Test `autoupdate'.

* tests/tools.m4 (AH_DEFUN): Fix the comments.
Quote properly.
(autoupdate): New test.

25 years agoAU_ glue code for AC_OUTPUT with arguments.
Akim Demaille [Wed, 9 Feb 2000 17:47:47 +0000 (17:47 +0000)] 
AU_ glue code for AC_OUTPUT with arguments.

* acgeneral.m4 (AU_DEFINE): New macros, pulled out from AU_DEFUN.
Defines a macro in `autoupdate::' with all the required wrapping
for `autoupdate'.
(AU_DEFUN): Use it.
(AC_OUTPUT): When dispatching your arguments, use ifval, not
ifset!
Dispath actions to AC_CONFIG_COMMANDS not AC_OUTPUT_COMMANDS, to
avoid unneeded warnings for obsolete use of AC_OUTPUT_COMMANDS.
(autoupdate::AC_OUTPUT): New macro.
* doc/autoconf.texi (Writing configure.in, the example): Don't
advocate AC_OUTPUT with args.
(Output, AC_OUTPUT with args): Simplify the documentation, and
provide the translation into the new scheme.
Propagate what remained into the proper sections.

25 years agoAU_ glue code for AC_OUTPUT_COMMANDS.
Akim Demaille [Wed, 9 Feb 2000 17:42:53 +0000 (17:42 +0000)] 
AU_ glue code for AC_OUTPUT_COMMANDS.

* acgeneral.m4 (AC_OUTPUT_COMMANDS): AU_DEFUNed in terms of
AC_CONFIG_COMMANDS.
(AC_OUTPUT_COMMANDS_CNT): New variable, declared both in
`autoconf::' and `autoupdate::'.
(AC_OUTPUT): Register your arguments to AC_OUTPUT_COMMANDS only if
there are to avoid spurious `run autoupdate' messages.
* doc/autoconf.texi (Libraries): Document the changes.

25 years agoAvoid outputting `config_files' code in `config.status' if there
Akim Demaille [Wed, 9 Feb 2000 17:36:03 +0000 (17:36 +0000)] 
Avoid outputting `config_files' code in `config.status' if there
are none.

* acgeneral.m4 (AC_OUTPUT): Don't register $1 to `AC_CONFIG_FILES'
if $1 is empty.
Normalize the names of the sections in `config.status --help'.

25 years ago* README-alpha: New file, based on Automake's.
Akim Demaille [Wed, 9 Feb 2000 17:05:21 +0000 (17:05 +0000)] 
* README-alpha: New file, based on Automake's.
* Makefile.am: Tuned.

25 years agoExtend the concept of `INIT-CMDS' to the AC_CONFIG_FOOS.
Akim Demaille [Wed, 9 Feb 2000 17:01:44 +0000 (17:01 +0000)] 
Extend the concept of `INIT-CMDS' to the AC_CONFIG_FOOS.

* acgeneral.m4 (_AC_CONFIG_COMMANDS_INIT): New macro which will
collect the `INIT-CMDS'.
(AC_CONFIG_COMMANDS, AC_CONFIG_LINKS, AC_CONFIG_HEADERS,
AC_CONFIG_FILES): Use it, and also temporarily divert to -1
instead of spamming dnl everywhere.
(AC_OUTPUT_CONFIG_STATUS): Make sure to output the INIT-CMDS
before the other sections, it'd be a pity to initialize after the
use :).

* doc/autoconf.texi (Configuration Actions): New section,
documenting the common behavior of AC_CONFIG_FILES,
AC_CONFIG_HEADERS, macro AC_CONFIG_COMMANDS, and AC_CONFIG_LINKS.
(Configuration Files): Document $2 and $3 of AC_CONFIG_FILES.
(Configuration Headers): Document $2 and $3 of AC_CONFIG_HEADERS.
(Configuration Commands): Document $2 and $3 of AC_CONFIG_COMMANDS.
(Configuration Links): Document $2 and $3 of AC_CONFIG_FILES.

25 years ago* libm4.m4 (m4_sign, m4_cmp, m4_list_cmp): New macros.
Akim Demaille [Wed, 9 Feb 2000 11:59:24 +0000 (11:59 +0000)] 
* libm4.m4 (m4_sign, m4_cmp, m4_list_cmp): New macros.
* acgeneral.m4 (AC_UNGNITS): Renamed as...
(_AC_VERSION_UNLETTER): this.  All callers changed.
Implement the scheme proposed by Alexandre Oliva:
Nl -> (N+1).-1.(l#)
(_AC_VERSION_COMPARE): New macro.
(AC_PREREQ): Use it.

25 years ago* tests/base.m4: Really added to the CVS repository.
Akim Demaille [Wed, 9 Feb 2000 08:36:01 +0000 (08:36 +0000)] 
* tests/base.m4: Really added to the CVS repository.
* tests/tools.m4: Likewise.

25 years ago* tests/base.m4: s/m4 -I ../m4 -I $at_top_srcdir/.
Akim Demaille [Wed, 9 Feb 2000 08:31:39 +0000 (08:31 +0000)] 
* tests/base.m4: s/m4 -I ../m4 -I $at_top_srcdir/.

25 years ago* autoheader.sh (debug): Initialize to `false', not 0.
Akim Demaille [Tue, 8 Feb 2000 17:23:25 +0000 (17:23 +0000)] 
* autoheader.sh (debug): Initialize to `false', not 0.

25 years agoFix a bug: `libm4::define' was incorrectly registered.
Akim Demaille [Tue, 8 Feb 2000 16:51:19 +0000 (16:51 +0000)] 
Fix a bug: `libm4::define' was incorrectly registered.

* libm4.m4 (libm4::define): Not only register, define too.

25 years ago* acgeneral.m4 (AC_COMPILE_CHECK): Use AU_DEFUN, remove the call
Akim Demaille [Tue, 8 Feb 2000 13:58:13 +0000 (13:58 +0000)] 
* acgeneral.m4 (AC_COMPILE_CHECK): Use AU_DEFUN, remove the call
to AC_OBSOLETE.

25 years ago* acgeneral.m4 (AC_PROVIDE): Use `m4_define', not `define'.
Akim Demaille [Tue, 8 Feb 2000 13:55:52 +0000 (13:55 +0000)] 
* acgeneral.m4 (AC_PROVIDE): Use `m4_define', not `define'.
Because of the namespace machinery this change makes `autoconf'
about four times faster on complex `configure.in's.

25 years agoOpen the access to AH_ to users.
Akim Demaille [Tue, 8 Feb 2000 13:54:48 +0000 (13:54 +0000)] 
Open the access to AH_ to users.

* autoheader.m4 (autoheader::AH_DEFUN): New macro.
* tests/tools.m4: New file, in charge of testing the scripts.
All the dependencies adapted.
* tests/actest.m4 (autoheader::AC_TATOOINE): New macro, used while
testing autoheader.
* tests/atspecific.m4: Create config.hin instead of config.h.in.

25 years agoBecause of commas and brackets, m4_split must mess with the
Akim Demaille [Tue, 8 Feb 2000 13:53:32 +0000 (13:53 +0000)] 
Because of commas and brackets, m4_split must mess with the
quotes.

* libm4.m4 (m4_split): Quote the elements of the list you produce.
* tests/base.m4: New file, testing libm4.
All callers adapted.
Test m4_wrap.

25 years ago* acgeneral.m4 (AC_CONFIG_UNIQUE): Strip the `:foo.in' part
Akim Demaille [Tue, 8 Feb 2000 13:51:55 +0000 (13:51 +0000)] 
* acgeneral.m4 (AC_CONFIG_UNIQUE): Strip the `:foo.in' part
yourself, in order to give better error messages.
(AC_CONFIG_IF_MEMBER): Adapted to the above change.
Quote some regexp active characters ([+.*]).
Suggested by Alexandre Oliva.

25 years ago* acgeneral.m4 (AC_INCLUDES_DEFAULT): Make it more robust to
Akim Demaille [Tue, 8 Feb 2000 13:50:52 +0000 (13:50 +0000)] 
* acgeneral.m4 (AC_INCLUDES_DEFAULT): Make it more robust to
the fact it is used non quoted.
Reported by Jim Meyering.

25 years ago* acgeneral.m4 (AC_OUTPUT_FILES): Simplify some excess in
Akim Demaille [Tue, 8 Feb 2000 13:47:29 +0000 (13:47 +0000)] 
* acgeneral.m4 (AC_OUTPUT_FILES): Simplify some excess in
changequote.
(AC_OUTPUT_SUBDIRS): Likewise.

25 years ago* autoupdate.sh: Don't dump --help on --wrong-option.
Akim Demaille [Tue, 8 Feb 2000 13:45:24 +0000 (13:45 +0000)] 
* autoupdate.sh: Don't dump --help on --wrong-option.
* autoconf.sh: Reformating, and use >&2 instead of 1>&2.
* autoreconf.sh: Likewise.
* autoheader.sh: Likewise.

25 years ago* libm4.m4 (m4_namespace_push, m4_namespace_pop): Use the private
Akim Demaille [Tue, 8 Feb 2000 13:43:58 +0000 (13:43 +0000)] 
* libm4.m4 (m4_namespace_push, m4_namespace_pop): Use the private
macros to be robust to name space changes.
(m4_popdef, m4_pushdef): New private macros.

25 years agoLet the doc catch up.
Akim Demaille [Tue, 8 Feb 2000 13:42:51 +0000 (13:42 +0000)] 
Let the doc catch up.

* doc/autoconf.texi (Common Behavior): New section, to document
the common behavior of the macros.
(Standard Symbols): New subsection.  Describes the transformation
of the AC_DEFINEd names.
(Default Includes): New subsection.  Obvious content.
All the ``callers'' updated.

25 years ago* acgeneral.m4 (AC_OUTPUT_HEADERS): Don't use `break' to exit the
Akim Demaille [Tue, 8 Feb 2000 13:41:51 +0000 (13:41 +0000)] 
* acgeneral.m4 (AC_OUTPUT_HEADERS): Don't use `break' to exit the
while loops which are breaking conftest.defines and
conftest.undefs into smaller snippets: just use the proper
condition for the while.
Suggested by Alexandre Oliva.

25 years ago* doc/autoconf.texi (Configuration Commands): New section, for
Akim Demaille [Tue, 8 Feb 2000 13:40:26 +0000 (13:40 +0000)] 
* doc/autoconf.texi (Configuration Commands): New section, for
AC_CONFIG_COMMANDS.
Move the definition of AC_OUTPUT_COMMANDS here.
(Configuration Links): New section, for AC_CONFIG_LINKS and
AC_LINK_FILES.
(Configuration Files): New section, for AC_CONFIG_FILES.
(Globally) Promote AC_CONFIG_HEADERS over AC_CONFIG_HEADER.
(Using System Type): Don't document AC_CONFIG_LINKS and
AC_LINK_FILES.
(Invoking config.status): Mention CONFIG_COMMANDS.
Document --file and --header.
Talk first of the newest interface of config.status.

25 years agoIntroduce a concept index, and update a bit the documentation.
Akim Demaille [Tue, 8 Feb 2000 13:38:45 +0000 (13:38 +0000)] 
Introduce a concept index, and update a bit the documentation.

* doc/autoconf.texi (Concept Index): New section.
Various entries added.
(Typedefs): Renamed as...
(Types): this.  Pay attention to not limiting the documentation to
the typedefs.
(Particular Types): Mention the equivalent generic test.
Promote the GNU coding style at various places.

25 years agoRevamp the autoupdate/AC_OBSOLETE chain. All the details are
Akim Demaille [Tue, 8 Feb 2000 13:25:49 +0000 (13:25 +0000)] 
Revamp the autoupdate/AC_OBSOLETE chain.  All the details are
given in the prologue of acobsolete.m4.

* acgeneral.m4 (Prologue): Enter the `autoconf' name space.
(AU_DEFUN): New macro.

* autoupdate.m4: New file.
Disable the name spaces `autoconf', and `libm4'.  Disable libm4.
* Makefile.am: Tuned to support the changes above.

* autoupdate.sh: Model after autoconf.sh.
Can run on several files at once (for instance m4/*.m4).
Don't touch files that are up to date.
Run m4 on autoupdate.m4f instead of playing with sed.

Use AU_DEFUN.

* acgeneral.m4 (AC_LINK_FILES, AC_ENABLE, AC_WITH): Use AU_DEFUN,
remove the call to AC_OBSOLETE.
* acspecific.m4 (AC_CYGWIN32): Likewise.
* acoldnames.m4: Replaced all the definitions via `define' or
`AC_DEFUN' to use `AU_DEFUN'.

25 years agoClean up some m4 files.
Akim Demaille [Tue, 8 Feb 2000 13:16:01 +0000 (13:16 +0000)] 
Clean up some m4 files.

* acoldnames.m4: Use `#', not `dnl'.
Don't spread `dnl' everywhere, anyway, we are in a divert(-1).
* autoconf.m4: Likewise.
* autoheader.m4: Likewise.

25 years agoClean up autoconf.
Akim Demaille [Tue, 8 Feb 2000 13:12:49 +0000 (13:12 +0000)] 
Clean up autoconf.

* autoconf.sh: Minor reorganizations to clearly separate the
prologue, which is almost common to all the shell scripts of
Autoconf, and the body.

25 years agoImprove support of name spaces in libm4. Put the m4 builtins
Akim Demaille [Tue, 8 Feb 2000 13:11:21 +0000 (13:11 +0000)] 
Improve support of name spaces in libm4.  Put the m4 builtins
in the `libm4' name space.

* libm4 (m4_changequote, m4_define, m4_defn, m4_dnl, m4_indir,
m4_undefine): Private copies in the global name space.  Used by
the name space mechanisms.
(m4_namespace_register): New macro.
(m4_namespace_define): Use it.
(builtin, changequote, defn, dnl, esyscmd, ifdef, ifelse, indir,
patsubst, popdef, pushdef, regexp, undefine, syscmd, sysval): Put
in the `libm4' name space.
(m4_disable, m4_enable): Use the private m4_indir, otherwise once
`libm4' closed, there is no `indir' available, and therefore no
means to reopen a name space.

25 years agoOutput really nothing if AC_INIT was not given. Unconditional
Akim Demaille [Tue, 8 Feb 2000 13:06:17 +0000 (13:06 +0000)] 
Output really nothing if AC_INIT was not given.  Unconditional
output can be problematic with autoupdate.

* acgeneral.m4 (AC_INIT_NOTICE): Output ac_includes_default.
(Default includes section): No longer dump ac_includes_default in
AC_DIVERSION_INIT.

25 years ago* libm4.m4 (m4_namespace_define): Fix a bug: `m4_namespace'
Akim Demaille [Tue, 8 Feb 2000 12:43:47 +0000 (12:43 +0000)] 
* libm4.m4 (m4_namespace_define): Fix a bug: `m4_namespace'
instead of `$1'.
Simplify some excess in quoting.
Use NAMESPACE::MACRONAME instead of `m4_defn(NAMESPACE,
MACRONAME)'.

25 years agoAdapt autoheader to use libm4's namespaces.
Akim Demaille [Tue, 8 Feb 2000 11:46:51 +0000 (11:46 +0000)] 
Adapt autoheader to use libm4's namespaces.

* autoheader.m4 (AH_HOOK): Removed.
(AH_DEFUN): Define in the `autoheader' name space.
Use only AH_DEFUN to define macros in this file.
(epilogue): No longer run the `AH_HOOKS', enter the `autoheader'
name space.

25 years agoClean up a bit the user interface.
Akim Demaille [Tue, 8 Feb 2000 11:39:46 +0000 (11:39 +0000)] 
Clean up a bit the user interface.

* autoconf.sh: Give your name while reporting errors.
Don't spit --help for errors on arguments.
* autoreconf.sh: Likewise.
* autoheader.sh: Likewise.
More temporary files that one can browse when debugging.
Don't ${var}, just $var.
Don't dump --help when the arguments are invalid.
(config_h): Use the empty value instead of `undefined' to check
that it is defined.
* acspecific.m4: Formatting changes.

25 years agoIntroduce name spaces in libm4.
Akim Demaille [Tue, 8 Feb 2000 11:20:57 +0000 (11:20 +0000)] 
Introduce name spaces in libm4.

* libm4.m4 (m4_namespace_push, m4_namespace_pop,
m4_namespace_define, define, m4_disable, m4_enable, m4_rename):
New macros.
(_m4_foreach, _m4_for, m4_wrap): Use m4_define for temporaries.
(m4_split): Don't mess with the quotes.

* acgeneral.m4 (AC_OUTPUT_MAKE_DEFS, AC_OUTPUT_HEADERS): Quote
`define'.

25 years ago* doc/autoconf.texi (Introduction): m4 1.4 is now required.
Akim Demaille [Tue, 8 Feb 2000 11:15:59 +0000 (11:15 +0000)] 
* doc/autoconf.texi (Introduction): m4 1.4 is now required.
(Invoking autoconf): A better help on --trace.
(Defining Symbols): Advocate a proper use of the quotes in m4
code, including if the quotes are sometimes useless.  It is bad,
very bad not to quote properly, so quote all the examples
properly.
(Cache Files): Use a unary call to define, instead of an empty
$2.
(Using System Type): Watch out TeX wrapping.
(Pretty Help Strings): Don't give too long a snippet of --help.
Promote the coding style of Autoconf.  Quote properly.

25 years ago* acgeneral.m4 (AC_PRO): Use AC_PROVIDE instead of defining
Akim Demaille [Tue, 8 Feb 2000 11:06:23 +0000 (11:06 +0000)] 
* acgeneral.m4 (AC_PRO): Use AC_PROVIDE instead of defining
yourself.  This allows to see everything that is AC_PROVIDEd via
autoconf --trace.
(AC_SPECIALIZE): define'd, not AC_DEFUN'd.
(AC_PROVIDE): Use define with a single arg, instead of an empty $2.

25 years ago* acgeneral.m4 (ac_includes_default): Don't use simple quotes, but
Akim Demaille [Tue, 8 Feb 2000 10:59:38 +0000 (10:59 +0000)] 
* acgeneral.m4 (ac_includes_default): Don't use simple quotes, but
doubles quotes if you want to use -continuation lines: this is
not recognized by MIPS' sh.

25 years ago* acgeneral.m4. Formatting changes.
Akim Demaille [Tue, 8 Feb 2000 10:46:43 +0000 (10:46 +0000)] 
* acgeneral.m4. Formatting changes.
* acspecific.m4: Likewise.

25 years ago* acgeneral.m4 (AC_CONFIG_HEADERS, AC_CONFIG_LINKS,
Akim Demaille [Tue, 8 Feb 2000 10:31:47 +0000 (10:31 +0000)] 
* acgeneral.m4 (AC_CONFIG_HEADERS, AC_CONFIG_LINKS,
AC_CONFIG_SUBDIRS): A space was missing to separate the arguments
of m4_append.

25 years agoArrange that config.status creates the file with the AC_SUBSTing
Akim Demaille [Tue, 8 Feb 2000 10:03:26 +0000 (10:03 +0000)] 
Arrange that config.status creates the file with the AC_SUBSTing
engine only if needed.

* acgeneral.m4 (AC_OUTPUT_FILES): Create the sed code only if test
-n "$CONFIG_FILES".

25 years agoPromote AC_LANG_CASE.
Akim Demaille [Tue, 8 Feb 2000 09:54:19 +0000 (09:54 +0000)] 
Promote AC_LANG_CASE.

* acgeneral.m4 (AC_TRY_COMPILER, AC_TRY_LINK_FUNC, AC_CHECK_LIB,
AC_TRY_COMPILE, AC_TRY_LINK, AC_TRY_RUN_NATIVE, AC_CHECK_FUNC):
Use AC_LANG_CASE instead of ifelse (AC_LANG, ...).
(AC_TRY_LINK_FUNC): Quote the body the the AC_DEFUN (whoa, how
could this survive so long?!?).

25 years ago* acgeneral.m4: Formatting changes.
Akim Demaille [Tue, 8 Feb 2000 09:45:21 +0000 (09:45 +0000)] 
* acgeneral.m4: Formatting changes.
* acspecific.m4: Likewise.

25 years agoUse the style we promote.
Akim Demaille [Tue, 8 Feb 2000 09:34:19 +0000 (09:34 +0000)] 
Use the style we promote.

* doc/autoconf.texi (Header Templates): Promote #if over #ifdef;
and #undef over #define in templates.
* acspecific.m4 (AC_DECL_SYS_SIGLIST, AC_FUNC_MMAP,
AC_FUNC_SETPGRP, AC_FUNC_VFORK, AC_FUNC_SELECT_ARGTYPES): Use #if,
not #ifdef and #ifndef, indent CPP directives.

25 years agoQuote properly AC_SHELL_IFELSE and callers.
Akim Demaille [Tue, 8 Feb 2000 09:23:54 +0000 (09:23 +0000)] 
Quote properly AC_SHELL_IFELSE and callers.

* acgeneral.m4 (AC_SHELL_IFELSE): Don't overquote $1.
(AC_VAR_IF_SET, AC_CHECK_MEMBER, AC_CHECK_LIB, AC_CHECK_HEADER,
AC_CHECK_DECL, AC_CHECK_FUNC, AC_CHECK_TYPE_INTERNAL): Quote the
first argument of AC_SHELL_IFELSE.

25 years agoIt seems quite delicate to have AC_INCLUDES_DEFAULT insert the
Akim Demaille [Tue, 8 Feb 2000 09:19:18 +0000 (09:19 +0000)] 
It seems quite delicate to have AC_INCLUDES_DEFAULT insert the
default headers in the INIT section of configure: the reason is
that AC_INCLUDES_DEFAULT is called unquoted, and this results in
an un expected behavior.  Thanks to Roman V. Shaposhnick for the
details.

The current implementation is not satisfying: the default headers
are defined in the INIT section even if they are not used.

* acgeneral.m4 (Prologue of AC_INCLUDES_DEFAULTS): Dump the
definition of ac_includes_default in the INIT section of
configure.
(AC_INCLUDES_DEFAULTS): Use it.

25 years ago* TODO: Updated.
Akim Demaille [Tue, 8 Feb 2000 08:53:03 +0000 (08:53 +0000)] 
* TODO: Updated.
* THANKS: Updated.

25 years ago* libm4.m4 (m4_for): New macro.
Akim Demaille [Tue, 8 Feb 2000 08:41:52 +0000 (08:41 +0000)] 
* libm4.m4 (m4_for): New macro.

25 years agoStay in Autoconf's name space.
Akim Demaille [Mon, 7 Feb 2000 18:09:54 +0000 (18:09 +0000)] 
Stay in Autoconf's name space.

* acspecific.m4 (AC_F77_LIBRARY_LDFLAGS): Prefixed with 'ac_':
arg, save_arg, i, seen, previous_arg, ld_run_path.
Renamed f77_link_output as ac_link_output.
* tests/actest.m4 (AC_ENV_SAVE): Don't note F77, FFLAGS, FLIBS,
G77, f77_case, f77_underscore.