Commit Graph

766 Commits

Author SHA1 Message Date
Akim Demaille
1a1ee72ec1 Speed ups.
* libm4.m4 (m4_append, m4_list_append): Use m4_define, not define.
On my machine the former implementation takes 4mn 40s to run the
test suite.  Using m4_define leads to 4mn 15s.
* acgeneral.m4 (_AC_SUBST): Use AC_EXPAND_ONCE (which uses
m4_define, not define).  4mn.
(_AC_DIVERT): Don't use m4_case.  Starting from those 4mn, if you
just move NORMAL* first in m4_case, the test suite is run in 3mn.
If instead of using m4, you use an `associative array' plus a
wrapper (current implementation), it falls to 2mn.
2000-03-21 12:09:31 +00:00
Akim Demaille
41f6c57a3e * tests/tools.m4 (autoconf --trace): New test. 2000-03-21 12:08:24 +00:00
Akim Demaille
424aa5a02f * autoconf.sh (task trace): Pipe the output of the first m4 into
the second one, instead of saving to a tmp file, so that we can
trace endless configure.in expansion.
2000-03-21 12:06:30 +00:00
Akim Demaille
6a80cc62e0 Uniform idioms.
* acgeneral.m4 (_AC_OUTPUT_FILES, _AC_OUTPUT_HEADERS,
_AC_OUTPUT_LINKS, _AC_OUTPUT_COMMANDS): Prefer
for i in : $is; do test $i = : && continue
over
for i in .. $is; do if test $i != ..; then
2000-03-21 12:03:55 +00:00
Akim Demaille
a420def412 * acgeneral.m4 (_AC_INIT_PREPARE, _AC_INIT_PARSE_ARGS): Move more
initializations to...
(_AC_INIT_DEFAULTS): here.
2000-03-21 11:13:50 +00:00
Akim Demaille
bb03a37786 Give a means to compute `srcdir' earlier in configure.
* acgeneral.m4 (_AC_INIT_SRCDIR): New macro, pulled out from...
(_AC_INIT_PREPARE): No longer compute `srcdir'.
(_AC_INIT): Use _AC_INIT_SRCDIR.
(AC_INIT): Don't forget to pass the argument to _AC_INIT.
2000-03-21 10:01:40 +00:00
Akim Demaille
cfc55ad76f * acgeneral.m4 (AC_OUTPUT_SUBDIRS): Rename as _AC_OUTPUT_SUBDIRS.
No argument, use AC_LIST_SUBDIRS.
Adjust callers.
2000-03-21 09:20:40 +00:00
Akim Demaille
197b270708 * acgeneral.m4 (AC_ARG_ENABLE, AC_ARG_WITH): Double quote the head
of the help snippet.
2000-03-21 09:18:31 +00:00
Akim Demaille
264330cef7 Give an identity to `configure' scripts.
* acgeneral.m4 (AC_PACKAGE): New macro.
(_AC_COPYRIGHT_SEPARATOR): Remove.
(AC_COPYRIGHT): Adjust.
(_AC_INIT_HELP, _AC_INIT_VERSION): Name the package you configure
when you want.
(_AC_INIT): Adjust.
* configure.in (AC_PACKAGE): Add.
2000-03-21 09:07:15 +00:00
Jim Meyering
25a01c40c0 . 2000-03-20 11:16:58 +00:00
Jim Meyering
9785f1af92 . 2000-03-20 11:07:49 +00:00
Akim Demaille
28fadd7df1 * acgeneral.m4: Formatting changes. 2000-03-20 10:35:53 +00:00
Akim Demaille
e140e3ce82 Don't rely on RS = "0" to swallow the whole input as a single
record, this is not portable: mawk and nawk understand it as RS =
"".  gawk understands it as expected.

* autoconf.sh (translate_awk::BEGIN): No longer change RS.
(translate_awk::body): Move to the END.
Instead, accumulate the input in `request'.
2000-03-20 10:30:54 +00:00
Akim Demaille
ded9870204 * doc/autoconf.texi (Testing Values and Files): Be a subsection of
`Portable Shell Programming'.
(Shell Substitutions, Limitations of Usual Tools): New subsections.
2000-03-20 10:10:06 +00:00
Akim Demaille
affebc0e90 Use a single tool to reformat the raw `configure' script output by
m4.
Suggested by Paul Eggert.

* autoconf.sh: Stop playing with 2 seds and an AWK to finalize
`configure', a single AWK program is enough.
2000-03-20 10:06:36 +00:00
Akim Demaille
421c31c674 Add details to a ChangeLog entry 2000-03-17 10:24:06 +00:00
Akim Demaille
aac61512e0 In Autoconf 2.13, although AC_OUTPUT_COMMANDS did double quote its
arguments, AC_OUTPUT arguments 2 and 3 were not!  Currently,
AC_OUTPUT over quotes too: stop that.
Reported by Martin Buchholz.

* doc/autoconf.texi (Output): Don't expand on the ternary
AC_OUTPUT.
* acgeneral.m4 (AC_OUTPUT): Don't over quote $2 and $3.
2000-03-17 10:07:56 +00:00
Akim Demaille
ab542b1f77 * acspecific.m4 (AC_SYS_LONG_FILE_NAMES): Security fixes: create
the temp files in a private temporary directory, not directly in
TMPDIR.
2000-03-17 08:40:27 +00:00
Akim Demaille
75b5d70be3 Install the IFS we need once for all.
* acgeneral.m4 (_AC_INIT_PREPARE_ENVIRONMENT): New macro.
Handle the NLS envvars, and IFS.
(_AC_INIT_PREPARE): Use it, no longer set the NLS envvars.
(_AC_WHICH_A, AC_PATH_PROG): Rely on the default IFS.
* acspecific.m4 (AC_PROG_INSTALL, AC_FUNC_SELECT_ARGTYPES):
Likewise.
2000-03-17 08:37:50 +00:00
Akim Demaille
5b50a54f8f * acgeneral.m4 (AC_TRY_CPP, AC_EGREP_CPP, AC_TRY_COMPILE,
AC_TRY_LINK, AC_TRY_RUN_NATIVE): Simplify the removal of the
contest files: don't remove them before running the actions, just
remove them at the end of the macro.
2000-03-17 08:31:49 +00:00
Akim Demaille
6522e14a8f * acspecific.m4 (AC_FUNC_SELECT_ARGTYPES): Use
: ${foo='some words'}
not
  : ${foo=some words}
since this is not portable: Digital Unix v5.0: `bad substitution'.
From Nicolas Joly.
2000-03-16 18:12:58 +00:00
Akim Demaille
7da2f6d008 * libm4.m4 (m4_assert, m4_shiftn): New macros.
(m4_case,m4_match): Rewrite to use m4_shiftn (for readability reasons).
(m4_for): Add the STEP argument and some argument-verifying asserts.
(m4_split): Correct spaces to tabulator in regexp.
2000-03-16 15:17:26 +00:00
Akim Demaille
cbccb222a2 Revamp AC_FUNC_SELECT_ARGTYPES.
* acspecific.m4 (AC_FUNC_SELECT_ARGTYPES): Use a single cache
variable instead of three.
Use AC_CACHE_CHECK.
Shorten the name of the var loops, they are no longer cached.
Include sys/types.h unconditionally.
`select' returns an int, fixes Autoconf/46.
Don't display parens in the user messages.
2000-03-15 09:55:21 +00:00
Akim Demaille
dab489eba6 * autoheader.sh: Use run_m4f, not run_m4. 2000-03-14 09:34:42 +00:00
Akim Demaille
583ed252d7 Typos in ChangeLog. 2000-03-14 09:32:11 +00:00
Akim Demaille
134cd844f3 * tests/actest.m4 (AC_ENV_SAVE): Don't consider RANDOM and LINENO
which some shells update.
2000-03-14 08:59:11 +00:00
Akim Demaille
92cd322dc1 * acgeneral.m4 (AC_ARG_ENABLE, AC_ARG_WITH): No use for @%:@ here,
no need to over quote $1 in the comments.
2000-03-14 08:47:48 +00:00
Akim Demaille
9da44165aa * acgeneral.m4: Replace some ifelse with ifval or m4_default, or
even nothing when not needed.
* acspecific.m4: Likewise.
2000-03-14 08:41:15 +00:00
Akim Demaille
324a1d71da * acgeneral.m4 (_AC_INIT_PREPARE): Insert the Autoconf version in
config.log, and the command line which ran configure.
Kill a couple of useless quote around dollars.
2000-03-14 08:37:27 +00:00
Akim Demaille
073f2c710a * acgeneral.m4 (_AC_INIT_PREPARE): Kill a changequote in the
building of `ac_configure_args'.
2000-03-14 08:34:21 +00:00
Akim Demaille
89bcb6496e * acgeneral.m4 (AC_DIVERT): Rename _AC_DIVERT.
(AC_DIVERT): New macro.
Spread its use where better than a pair of AC_DIVERT_PUSH/POP.
2000-03-14 08:33:21 +00:00
Akim Demaille
870e58847d * acgeneral.m4 (_AC_INIT_BINSH): Remove, useless now that...
(AC_REVISION): Require AC_INIT, not _AC_INIT_BINSH.
(AC_INIT): Do what _AC_INIT_BINSH used to.
Don't require _AC_INIT_VERSION, just call it.
Rename as _AC_INIT.
(AC_INIT): New macro, single expansion wrapper around _AC_INIT.
(_AC_COPYRIGHT_SEPARATOR): New.
(AC_COPYRIGHT): Use it.
Require AC_INIT, not _AC_INIT_VERSION.
* doc/autoconf.texi (Versions): Promote as first section of
`Setup'.
Rename as `Notices'.
Document AC_COPYRIGHT.
Don't give false reasons for placing AC_REVISION before AC_INIT,
the place no longer matters.
2000-03-14 08:32:35 +00:00
Akim Demaille
af8421f6c5 * autoconf.sh (trace_m4::smash): Double quote, we don't want the
result to be evaluated.
2000-03-14 08:30:41 +00:00
Akim Demaille
22e43e84f4 * acgeneral.m4: s/@%:@line __oline__/#line __oline__/g. __oline__
is not a macro, so there is just no use in avoiding `#'.
2000-03-14 08:28:20 +00:00
Akim Demaille
00121046aa * acgeneral.m4 (_AC_OUTPUT_CONFIG_STATUS): When there were no
CONFIG_FILES, we had to expand _AC_OUTPUT_FILES into the KILL
diversion, because it is AC_OUTPUT_FILES which undiverted the
AC_SUBST sed script at its proper place, otherwise it would have
been undiverted at the end of `configure', leading to an sh syntax
error.
Now that we no longer use a diversion, we don't need to call
AC_OUTPUT_FILES if useless.
(AC_OUTPUT_FILES): Rename as _AC_OUTPUT_FILES.
(AC_OUTPUT_LINKS): Rename as _AC_OUTPUT_LINKS.
2000-03-14 08:27:19 +00:00
Akim Demaille
a892defcb3 AC_ARG_PROGRAM must not be expanded twice, which is likely since
Automake calls it, and usually users do too.  If it happens,
`--program-prefix=g' actually prepend two (or more) `g'.

* acgeneral.m4 (AC_DEFUN_ONCE): New macro.
(AC_ARG_PROGRAM): AC_DEFUNed_ONCE.  Or is it AC_DEFUN_ONCE'd? :).
No longer AC_EXPAND_ONCE the help string, the macro itself is
expanded at most once.
Rename the here-doc tag EOF_SED as EOF.
2000-03-14 08:20:25 +00:00
Akim Demaille
fca3f1b6f3 Get rid of the ICMDS diversion.
* acgeneral.m4 (AC_DIVERT): Remove ICMDS.
(_AC_OUTPUT_COMMANDS_INIT): New growing string.
(_AC_CONFIG_COMMANDS_INIT, _AC_OUTPUT_CONFIG_STATUS): Adjust.
2000-03-14 08:19:53 +00:00
Akim Demaille
bd53adc4fc Typo in ChangeLog. 2000-03-14 08:14:41 +00:00
Akim Demaille
72807cc237 * autoheader.sh: Use run_m4f, not run_m4.
* autoheader.sh (syms):
2000-03-14 08:11:55 +00:00
Akim Demaille
29df07981f Introduce AC_SUBST(VAR, VAL).
* acgeneral.m4 (_AC_INIT_PARSE_ARGS): Stop global double quoting,
failed experiment.
Merge all the var=val AC_SUBST(var) into AC_SUBST(var, val).
(AC_SUBST): Implement support for 2nd arg.
* doc/autoconf.texi (Setting Output Variables): Adjust.
2000-03-14 08:09:32 +00:00
Akim Demaille
6b95f3a59e Simplify the diversions naming system.
Suggested by Alexandre Oliva and Lars J. Aas

* libm4.m4 (ifndef): New macro.
* acgeneral.m4 (AC_DIVERT): New macro, maps a diversion name to
its value.  The diversions now have a short name, e.g., `NOTICE',
instead of the former macros which had long names, e.g.,
`AC_DIVERSION_NOTICE'.
(AC_DIVERT_PUSH): Adjust.
(AC_DIVERT_POP): Use ifndef.
(AC_DIVERSION_CURRENT): Rename as `AC_DIVERT_DIVERSION' to stay
within the `AC_DIVERT' name domain.
Adjust all callers.
* acspecific.m4: Adjust all callers.
2000-03-13 17:52:26 +00:00
Akim Demaille
3e6fee0e3b * doc/autoconf.texi (Invoking autoconf): Update documentation of
`autoconf --trace'.
2000-03-13 17:39:23 +00:00
Akim Demaille
b07221dd0f Typos in ChangeLog. 2000-03-13 17:32:10 +00:00
Akim Demaille
5c521a0948 * autoconf.sh (tmpbase): New var. Adjust trap code and other tmp
file names.
(translate_awk::BEGIN): Set RS to "0" so that the whole file be a
single record.
(translate_awk::trans): Convert from array to function.
(translate_awk::error): New function.
(translate_awk::main action): Implement support for ${sep}@ and
${sep}*.  Use trans() and error().
(translate_awk): Don't put space before user functions call, it is
not portable.
Remove trailing `;', this is not C :).
(task trace): Quote `$traces' when you eval it, to protect the
white spaces.
Propagate `translate_awk' failures to `autoconf.sh'.
Translate the quadrigraphs.
2000-03-13 17:30:32 +00:00
Akim Demaille
5e6f17e1f2 Trap on 0 is not executed when `exit' is called without argument.
* autoheader.sh (trap 1 2 13 15): s/exit/exit $?/.
* autoconf.sh: Likewise.
Remove translate_awk too.
* autoupdate.sh: Likewise.
Handle `--debug'.
2000-03-13 17:28:06 +00:00
Akim Demaille
c1c5314017 More uniform style is scripts.
* autoheader.sh: s/-eq/=/.
Uniform ordering of variable initializations, option handling.
Don't use quotes where useless (foo=$1, not foo="$1").
Propagate `run_m4' and `run_m4f'.
Use `$0' in --help.
* autoconf.sh: Likewise.
* autoreconf.sh: Likewise.
* autoupdate.sh: Likewise.
* ifnames.sh: Likewise.
* autoupdate.m4: Small bug: at the end `dnl' is disabled, so use
`m4_dnl'.
2000-03-13 17:26:21 +00:00
Akim Demaille
bc37b8f562 Typos in ChangeLog. 2000-03-13 15:31:26 +00:00
Akim Demaille
ebd8a5488d `autoconf --trace': faster.
* autoconf.sh (initialization): New var, new option.
(option loop): When you need an arg, make sure there is one.
(run_m4f): New var, which content is that of the former...
(run_m4): Don't use m4 frozen state files.
Change all callers.
Don't pass AC_LOCALDIR, not documented, and unused.
(task trace): Honor `--verbose' and `--initialization'.
(globally): Send `--verbose' messages in stderr.
Fix random typos.
2000-03-13 15:28:55 +00:00
Akim Demaille
2b2d05addd * acspecific.m4 (AC_PROG_BINSH): Removed. 2000-03-13 15:25:36 +00:00
Akim Demaille
68f71528ef Start revamping `autoconf --trace'.
* autoconf.sh (debug): New var, new option.
Adjust the trap code.
(task trace): Instead of decoding `m4 --trace' with sed, decode it
with m4 itself.
($silent_m4): New file, which disables m4's `errprint'.
($trace_m4): New file.  Logistic for the m4 which is in charge of
decoding the traces of the first.
($translate_awk): Transform a user trace request into $trace_m4
code.
2000-03-13 15:18:20 +00:00
Akim Demaille
64655cb862 Fix typos in ChangeLog. 2000-03-10 16:10:34 +00:00
Akim Demaille
702e183cf6 Multiple `-e' to egrep are not portable. On IRIX 6.5 and Solaris
2.5.1 only the last one is honored:
  > echo "foonbar" | egrep -e 'foo' -e 'bar'
  bar
  > echo "foonbar" | egrep -e 'bar' -e 'foo'
  foo
Reported by Nicolas Joly.
An alternative would have to use `sed', unfortunately alternation
is not portable.

* tests/actest.m4 (join): New macro.
(AC_ENV_SAVE): Join the egrep patterns into a single big one.
* tests/Makefile.am (EGREP_EXCLUDE): Rename as FILTER_MACROS.
Join the egrep patterns into a single big one.
2000-03-10 15:22:13 +00:00
Jim Meyering
034c57f2b4 *** empty log message *** 2000-03-10 11:32:52 +00:00
Akim Demaille
47f8108881 * acspecific.m4 (AC_SYS_RESTARTABLE_SYSCALLS): Added some missing
headers if they exist (needed for some missing prototypes) and
corrects the signal handler prototype/definition.  The signal
handler prototype is now prepended with an `extern "C"' for C++
compilers since some platforms explicitly require an `extern "C"'
signal handler.
2000-03-09 15:44:40 +00:00
Akim Demaille
74eb7e6a10 * autoheader.m4 (autoheader::AC_CHECK_HEADERS_DIRENT): Renamed as
(autoheader::_AC_CHECK_HEADERS_DIRENT): to cope with the new name
of the autoconf:: macro.
Fixes autoconf/119, reported by Raja R Harinath.
2000-03-08 18:38:53 +00:00
Akim Demaille
e7ebd18602 * acgeneral.m4 (AC_PATH_PROG, AC_OUTPUT_FILES, AC_OUTPUT_SUBDIRS):
Fix quotation problems in DOS path handling.
2000-03-08 17:32:40 +00:00
Akim Demaille
9c2aba3427 Fix a typo in ChangeLog.
Regenerate configure
2000-03-08 16:58:54 +00:00
Akim Demaille
f206e89cb3 * acspecific.m4 (AC_FUNC_MMAP, AC_FUNC_ALLOCA): Make them C++
safe: include the right headers, cast the allocations etc.
2000-03-08 16:44:55 +00:00
Akim Demaille
fa98a48d2f The argument of AC_COPYRIGHT should be plain text, not an sh
comment.

* libm4.m4 (m4_quote): s/$@/$*/.
* acgeneral.m4 (AC_COPYRIGHT): Prepend `# ' to the lines that goes
on the top of `configure'.  Actually, prepend `@%:@ ' so that
there are as many evaluations on both sides.
(_AC_INIT_VERSION): No longer strip `# '.
2000-03-08 16:13:32 +00:00
Akim Demaille
0fa2ad4e0c * tests/Makefile.am (all-local): Remove. It wastes time to have
testsuite rebuilt each time an ac*.m4 file changes.  It is enough
to build it for each `make check'.
2000-03-08 16:12:09 +00:00
Akim Demaille
2e59cf5180 Provide a means to specify more Copyright information in
`configure'.  And after all, it suits to `configure --version' too.

* acgeneral.m4 (AC_DIVERSION_DEFAULTS, AC_DIVERSION_INIT_PREPARE):
New diversion numbers.
(AC_DIVERSION_INIT): Renamed as...
(AC_DIVERSION_INIT_PARSE_ARGS): this.
(AC_DIVERT_POP): Instead of going into wild endless loops when
there are more pops than pushes, die with dignity.
(AC_COPYRIGHT): New macro.
(_AC_INIT_NOTICE): Move definition of `ac_includes_default' from
here...
(_AC_INIT_PREPARE): to here.
(_AC_INIT_NOTICE): Remove.
(AC_INIT): Use it to install Autoconf's Copyright.
(_AC_INIT_DEFAULTS): New macro.
(AC_INIT): Use it.
(AC_PREFIX_DEFAULTS): Dump in AC_DIVERSION_DEFAULTS.
(_AC_INIT_PARSE_ARGS): Dump in AC_DIVERSION_INIT_PREPARE.
2000-03-08 13:22:42 +00:00
Akim Demaille
e91ec0e779 Leave a diversion exclusively for Copyright notices.
* acgeneral.m4 (AC_DIVERSION_DEFAULTS): New diversion number.
(_AC_INIT_NOTICE): Move definition of `ac_includes_default' from
here...
(_AC_INIT_PREPARE): to here.
(_AC_INIT_NOTICE): Play with your diversion yourself, don't let
(AC_INIT): do it for you.
(_AC_INIT_DEFAULTS): New macro.
(AC_INIT): Use it.
2000-03-08 11:15:14 +00:00
Akim Demaille
44cedcba06 We don't need _AC_ARG_*_HELP_PROLOGUE.
* acgeneral.m4 (AC_EXPAND_ONCE): AC_PROVIDE yourself, in case
there is no AC_DEFUN associated with the text to expand.
(_AC_ARG_ENABLE_HELP_PROLOGUE, _AC_ARG_WITH_HELP_PROLOGUE,
_AC_ARG_VAR_HELP_PROLOGUE): Remove, instead...
(AC_ARG_ENABLE, AC_ARG_WITH, AC_ARG_VAR): do it yourself.
2000-03-08 11:14:09 +00:00
Akim Demaille
0f81aa0974 * acgeneral.m4 (_AC_INIT_PARSE_ARGS): Fix copy n' paste typos in
`--with-*', `--without-*' and `*' decoding.
Reported by Raja R Harinath.
Fixes autoconf/119.
2000-03-08 11:13:31 +00:00
Akim Demaille
025fe08770 Don't dump AC_ARG_PROGRAM help messages if not used.
* acgeneral.m4 (_AC_INIT_HELP): Don't.
(AC_ARG_PROGRAM): Do.
2000-03-08 11:11:37 +00:00
Akim Demaille
304c21e672 Don't dump X help messages when `configure' does not check for X.
* acgeneral.m4 (_AC_INIT_HELP): Don't dump X help messages.
* acspecific.m4 (AC_PATH_X): Do it.
2000-03-08 11:09:59 +00:00
Akim Demaille
2f71ba0c0b No longer rely on /bin/sh to compose the optional parts of
`configure --help'.

* acgeneral.m4 (AC_DIVERSION_HELP_BEGIN, AC_DIVERSION_HELP_ENABLE,
AC_DIVERSION_HELP_WITH, AC_DIVERSION_HELP_VAR,
AC_DIVERSION_HELP_END): New diversion numbers.
(AC_EXPAND_ONCE): New macro.
(AC_PROVIDE_IF): New macro.
(AC_BEFORE, AC_REQUIRE): Use it.
(AC_REQUIRE): Don't use indir.
(_AC_ARG_ENABLE_HELP_PROLOGUE, _AC_ARG_WITH_HELP_PROLOGUE,
_AC_ARG_VAR_HELP_PROLOGUE): New macros.
(AC_ARG_ENABLE, AC_ARG_WITH, AC_ARG_VAR): Expand once the
_HELP_PROLOGUE macro which corresponds.
(_AC_INIT_HELP): Adjust to AC_DIVERSION_HELP_BEGIN and
AC_DIVERSION_HELP_END.
(_AC_INIT_NOTICE, _AC_INIT_HELP): Remove the sh code which handled
the optional help strings.
2000-03-08 11:08:29 +00:00
Akim Demaille
7dcca0f6f3 AC_OUTPUT_COMMANDS no longer uses a diversion.
* acgeneral.m4 (AC_DIVERSION_CMDS): Removed.
(_AC_OUTPUT_CONFIG_STATUS): Don't undivert it.
2000-03-08 11:05:26 +00:00
Akim Demaille
d7d95f9a4f * acgeneral.m4 (_AC_INIT_PARSE_ARGS): Fix quoted/non quoted here
document problems.
2000-03-08 11:04:55 +00:00
Akim Demaille
65e039bdf9 * acgeneral.m4 (AC_INIT_BINSH, AC_INIT_NOTICE, AC_INIT_PREPARE):
Rename as...
(_AC_INIT_BINSH, _AC_INIT_NOTICE, _AC_INIT_PREPARE): this.
All callers adjusted.
2000-03-08 11:03:59 +00:00
Akim Demaille
a19a55bf7c * acgeneral.m4 (AC_INIT_PARSE_ARGS): Rename as...
(_AC_INIT_PARSE_ARGS): this.
Move the display of help and version strings to...
(_AC_INIT_HELP, _AC_INIT_VERSION): here.
(AC_INIT): Adjust.  Also, fix quotation.
2000-03-08 11:03:33 +00:00
Akim Demaille
b0cf240330 Some tests are failing with srcdir != builddir, because they can't
find config.guess, install-sh etc.
Reported by Erez Zadok.

* tests/atspecific.m4 (AT_TEST_MACRO): Set AC_CONFIG_AUX_DIR to
top_srcdir in configure.in, and pass the value of top_srcdir to
configure.
2000-03-08 11:02:30 +00:00
Akim Demaille
b8e6467748 * acgeneral.m4 (AC_ARG_ENABLE, AC_ARG_WITH, AC_PATH_PROG,
AC_PATH_PROGS, AC_PATH_TOOL, AC_CHECK_TOOL, AC_PREFIX_PROGRAM,
AC_EGREP_CPP, AC_TRY_LINK, AC_COMPILE_CHECK, AC_TRY_RUN_NATIVE):
Use ifval instead of ifelse.
2000-03-08 11:00:10 +00:00
Akim Demaille
9a9e3dacd2 Support absolute DOS-style paths.
Any character before the colon is accepted because network drives
can be assigned characters outside the [a-zA-Z] range. DOS-style
relative paths (?:foo/bar) are also considered absolute for
Autoconf's purposes since the path '../?:foo/bar' is invalid.

* acgeneral.m4 (AC_OUTPUT_FILES): Treat DOS-style paths (?:*') as
absolute.
(AC_OUTPUT_SUBDIRS): Likewise.
(AC_PATH_PROG): Make pattern for matching DOS-style paths the same
as that used in AC_OUTPUT_FILES and AC_OUTPUT_SUBDIRS.
2000-03-07 14:24:49 +00:00
Akim Demaille
3fd820a5b5 * tests/atspecific.m4 (m4_match): Remove, no longer used. 2000-03-06 08:48:48 +00:00
Jim Meyering
401b65c7a1 . 2000-03-04 08:46:54 +00:00
Akim Demaille
c33696519a Move the quadrigraphs out of the user name space.
* acgeneral.m4: 's/@BKL@/@<:@/g', 's/@BKR@/@:>@/g',
's/@DLR@/@S|@/g', 's/@PND@/@%:@/g'.
* acspecific.m4: Likewise.
* autoconf.sh: Likewise.
2000-03-03 14:25:03 +00:00
Akim Demaille
2585dd7c36 * acgeneral.m4 (_AC_WHICH_A): New macro.
(AC_CHECK_PROG): Use it.  Use ifval.
(AC_CHECK_PROGS): Use ifval.  Fix the quoting.
* tests/semantics.m4: Test AC_CHECK_PROG.
* tests/Makefile.am (EGREP_EXCLUDE): Add /AC_CHECK_PROGS?/.
2000-03-03 14:15:41 +00:00
Akim Demaille
f765eb228e * autoscan.pl (parse_args): Add support for -m <macrodir>. 2000-03-02 18:25:34 +00:00
Akim Demaille
ab07ba8e08 The whole family supports -V = --version.
* acgeneral.m4 (AC_INIT_PARSE_ARGS): Report and support -V.
* autoconf.sh: Likewise.
* autoreconf.sh: Likewise.
* autoupdate.sh: Likewise.
* autoheader.sh: Likewise.
* autoscan.pl: Likewise.
* ifnames.sh: Likewise.
In addition, don't dump --help on invalid options.
* doc/autoconf.texi: Adjusted.
* doc/install.texi: Likewise.
2000-03-02 18:17:26 +00:00
Akim Demaille
df786bcc63 * libm4.m4 (m4_noquote): New macro. 2000-03-02 17:11:31 +00:00
Akim Demaille
d98e77231b * acspecific.m4 (AC_PATH_X_DIRECT): Moved all the shell variable
into the ac_ name space.
Reported by Nicolas Joly.
2000-03-02 17:03:30 +00:00
Akim Demaille
9a04f64347 * acspecific.m4: Move some macros to a better place. 2000-03-02 16:48:06 +00:00
Akim Demaille
c86888e32d Internal macros are named `_AC_'.
* acgeneral.m4 (AC_CANONICAL_TARGET, AC_CANONICAL_BUILD,
AC_CANONICAL_THING, AC_CHECK_TOOL_PREFIX, AC_CONFIG_UNIQUE):
Prepend `_' to their names.
* acspecific.m4 (AC_CHECK_HEADER_DIRENT, AC_CHECK_HEADERS_DIRENT,
AC_PATH_X_XMKMF, AC_PATH_X_DIRECT): Prepend `_' to their names.
* doc/autoconf.texi (Macro Names): Adjusted.
2000-03-02 16:36:16 +00:00
Akim Demaille
3f31064d8d * acgeneral.m4: Formatting changes.
* acspecific.m4: Likewise.
2000-03-02 16:27:51 +00:00
Akim Demaille
20ae75a97b Fixed typos in ChangeLog :-(. 2000-03-01 17:06:40 +00:00
Akim Demaille
7a628f5092 The empty regexp cannot be portably used in egrep's alternation.
For instance with Digital Unix v5.0:
   > echo "foo"  | egrep -e "^(|foo|bar)$"
   > echo "|foo" | egrep -e "^(|foo|bar)$"
   |foo
   > echo "|bar" | egrep -e "^(|foo|bar)$"
   > echo "bar"  | egrep -e "^(|foo|bar)$"
   bar
Reported by Nicolas Joly.

* src/actest.m4 (AC_ENV_SAVE): s/(|EXTRA_|PRE_)/(EXTRA_|PRE_)?/.
2000-03-01 17:01:29 +00:00
Akim Demaille
f59041e9ac Fixed a mistake in ChangeLog, and moved a few more addresses from acspecific to THANKS. 2000-03-01 15:54:37 +00:00
Akim Demaille
c3a47ec7ad * acspecific.m4: Removed a few addresses, the correspondence is...
* THANKS: here.
2000-03-01 12:29:26 +00:00
Akim Demaille
93cabdd478 * acspecific.m4 (AC_PATH_XTRA): On LynxOS 3.0.1/i386,
gethostbyname(), getservbyname(), and inet_addr() are in -lbsd.
2000-03-01 12:25:02 +00:00
Akim Demaille
e603fedec3 * tests/actest.m4 (AC_ENV_SAVE): Use multiple -e instead of
multiple egrep.
2000-03-01 11:28:02 +00:00
Akim Demaille
4fb0d16f0a Fixed typo in a date in ChangeLog 2000-03-01 10:12:19 +00:00
Akim Demaille
23ec81a13c * config.guess: Updated for master repository.
* config.sub: Likewise.
2000-03-01 10:11:19 +00:00
Akim Demaille
2b72cac902 Test suite: instead of using a full list of the AC macros and an
AT macro with selects which are the AC macros to test, just
produce the list of the AC macros we want to test.

* tests/atspecific.m4 (TEST_MACRO): Removed.
* tests/Makefile.am (EGREP_EXCLUDE): New variable, performing the
selection TEST_MACRO used to do.
(macros.m4): Use it.  Use AT_TEST_MACRO, not TEST_MACRO.  Check
also AU macros.
2000-03-01 08:22:40 +00:00
Akim Demaille
769efbef82 * doc/autoconf.texi: Tune the use of quotes, add missing
@noindents, remove dead FIXME:s, promote #if ! over #ifndef,
simplify duplicated text.
2000-03-01 08:20:29 +00:00
Akim Demaille
42174dc725 * doc/autoconf.texi (Configuration Commands): Document
AC_CONFIG_COMMANDS_PRE and _POST.


* doc/autoconf.texi (Configuration Commands): Document
AC_CONFIG_COMMANDS_PRE and _POST.
2000-03-01 08:18:47 +00:00
Akim Demaille
6b6d1788b1 Test suite: more debugging information.
* tests/atspecific.m4 (AT_TEST_MACRO): When verbose, report the
content of config.log.
2000-02-29 08:51:42 +00:00
Akim Demaille
c8c4a421d7 * Makefile.am (MAKEINFO): Removed.
(INSTALL.txt): Call $(MAKEINFO) with --no-split.
Reported by Nicolas Joly.
2000-02-29 08:49:17 +00:00
Akim Demaille
73ca7985ed Fixed a few English mistakes in ChangeLog. 2000-02-28 14:41:46 +00:00
Akim Demaille
7eca4d830d Fixed typo in ChangeLog. 2000-02-28 14:35:11 +00:00
Akim Demaille
256a3c55e2 * doc/Makefile.am (MAKEINFO): s/makefino/@MAKEINFO@/.
* missing: chmod +x.
2000-02-28 10:20:50 +00:00
Akim Demaille
1ce240fbef * tests/Makefile.am (testsuite): Use $(M4), not m4.
From Patrick Tullmann.
2000-02-28 08:54:23 +00:00
Akim Demaille
0115a2d77d Moved email addresses of contributors from ChangeLog to THANKS. 2000-02-28 08:49:34 +00:00
Akim Demaille
b6cf2777dd * src/acgeneral.texi (AC_INIT_NOTICE): Include inttypes.h in the
ac_includes_default.
* doc/autoconf.texi (Default Includes): Adjust.
2000-02-25 17:49:29 +00:00
Akim Demaille
ab73229498 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.
2000-02-25 13:19:35 +00:00
Akim Demaille
4cab1fd7fe * 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.
2000-02-24 18:25:03 +00:00
Akim Demaille
90accfe318 * configure.in (HELP2MAN): Specify the third argument of
AM_MISSING_PROG.  Fixes autoconf/116.
2000-02-22 08:46:29 +00:00
Akim Demaille
54c26866f9 * 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.
2000-02-21 12:57:47 +00:00
Akim Demaille
7690cdf6d1 * tests/tools.m4 (syntax.sh): Exit 1 if you managed to kill the
child, since it means `/bin/sh -n' went loopy.
2000-02-21 09:18:01 +00:00
Akim Demaille
c34897ff86 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'.
2000-02-18 13:44:17 +00:00
Akim Demaille
4ca3c004b0 * tests/atspecific.m4 (TEST_MACRO): Don't run AC_PATH_TOOL and
AC_PATH_PROG.
2000-02-18 10:22:29 +00:00
Akim Demaille
1a31555694 * 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'.
2000-02-18 10:01:25 +00:00
Akim Demaille
0cf60eb2d2 * 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.
2000-02-18 09:25:46 +00:00
Akim Demaille
28f9bc5c0d 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.
2000-02-17 10:57:00 +00:00
Akim Demaille
c6d671566e * tests/actest.m4 (AC_ENV_SAVE): Added ALLOCA. 2000-02-17 09:50:51 +00:00
Akim Demaille
f3d6e8968d * tests/semantics.m4 (AC_CHECK_TYPES): `addr, addr' is not
portable sed: use `addr,addr'.
2000-02-17 09:38:08 +00:00
Akim Demaille
98c9da45a3 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.
2000-02-17 09:31:34 +00:00
Akim Demaille
c67e931be3 * tests/actest.m4 (AC_ENV_SAVE): X_EXTRA_LIBS can be changed by
AC_PATH_EXTRA.
Reported by Erez Zadok.
2000-02-17 09:27:58 +00:00
Akim Demaille
7e4260dccb 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.
2000-02-15 09:33:59 +00:00
Akim Demaille
de931b4d30 * doc/autoconf.texi (Generic Structures):
s/AC_FATAL/AC_MSG_ERROR.
2000-02-15 09:16:48 +00:00
Akim Demaille
86b8b0de15 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.
2000-02-15 09:15:22 +00:00
Akim Demaille
7920aff8d2 * autoconf.sh (options handling): --v* of --version was shadowing
--verbose.
2000-02-15 09:10:23 +00:00
Akim Demaille
728bc59408 * tests/torture.m4: Nuke the trailing space in defs. 2000-02-15 09:03:36 +00:00
Akim Demaille
037acbb765 * tests/atspecific.m4: Really added to the CVS repository. 2000-02-11 09:01:24 +00:00
Akim Demaille
920939e349 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.
2000-02-11 08:59:52 +00:00
Akim Demaille
18bcad9b51 * 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.
2000-02-10 16:57:55 +00:00
Akim Demaille
97bf777083 * tests/Makefile.am (macros.m4): Better regex to build `macro'.
Depend upon acgeneral.m4.
2000-02-10 16:30:17 +00:00
Akim Demaille
81b33dc801 * autoheader.sh: Remove the duplicate trap code. 2000-02-10 16:27:35 +00:00
Akim Demaille
8cb64f7ca8 * 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.
2000-02-10 16:25:47 +00:00
Akim Demaille
65766c32aa * acgeneral.m4 (AC_VERBOSE): This is a tab, not spaces. 2000-02-10 16:21:42 +00:00
Akim Demaille
28b439235b 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.
2000-02-10 13:14:58 +00:00
Akim Demaille
a9628b9e93 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.
2000-02-10 13:12:04 +00:00
Akim Demaille
0ab00d61fd * 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.
2000-02-10 13:08:33 +00:00
Akim Demaille
a3b3fe8516 * tests/torture.m4: Also check the value of @DEFS@ when no
CONFIG_HEADER is used.
2000-02-10 10:41:52 +00:00
Akim Demaille
fda88556f2 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.
2000-02-10 10:40:19 +00:00
Akim Demaille
08de8c9f93 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.
2000-02-10 10:38:59 +00:00
Akim Demaille
14930dcc79 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.
2000-02-10 10:37:03 +00:00
Akim Demaille
529087d2d7 * acgeneral.m4 (AC_LIST_MEMBER_OF): s/ac_$exists/$ac_exists/! 2000-02-10 10:36:13 +00:00
Akim Demaille
0eecbaadac * acgeneral.m4: Formatting changes.
* acspecific.m4: Likewise.
2000-02-10 10:35:18 +00:00
Akim Demaille
2d177917ef * 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.
2000-02-10 10:25:23 +00:00
Akim Demaille
c7bd04fb16 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.
2000-02-10 10:24:10 +00:00
Akim Demaille
2f752e0e19 * libm4.m4 (near m4_split): Remove the buggy additional
changequote.
Quote properly `m4_split' when registering it.
2000-02-10 09:46:57 +00:00
Akim Demaille
dc6fcad969 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.
2000-02-10 09:45:25 +00:00
Akim Demaille
3dbe69988a * acspecific.m4 (AC_PROG_SED): Removed. 2000-02-10 09:42:36 +00:00
Akim Demaille
d6ef78697d 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.
2000-02-10 09:40:55 +00:00
Akim Demaille
abe94c7473 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.
2000-02-10 09:40:09 +00:00
Akim Demaille
fe71f613f1 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.
2000-02-10 09:37:37 +00:00
Akim Demaille
8bf7d7ef60 * 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.
2000-02-10 09:35:00 +00:00
Akim Demaille
c4e67f0abd Clean up a few changequotes.
* acgeneral.m4 (AC_INIT_PARSE_ARGS): Instead of using changequote
to protect a few `[ ]', double quote the constant sections.
2000-02-10 08:52:56 +00:00
Akim Demaille
c979e7622f Restore AC_HAVE_LIBRARY.
* acgeneral.m4 (AC_HAVE_LIBRARY): AU_DEFUNed in terms of
AC_CHECK_LIB.
* doc/autoconf.texi (Libraries): Document.
2000-02-10 08:42:26 +00:00
Akim Demaille
e1b31f306e 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.
2000-02-09 18:24:24 +00:00
Akim Demaille
c60a188814 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'.
2000-02-09 18:19:58 +00:00
Akim Demaille
3ac8cf6f90 Spell checked ChangeLog. 2000-02-09 18:17:50 +00:00
Akim Demaille
b8d672b4c7 Spell checked ChangeLog. 2000-02-09 18:16:34 +00:00
Akim Demaille
8daef5980a * ChangeLog.1: Formatting changes. 2000-02-09 18:09:50 +00:00
Akim Demaille
d7e3c874ea * Makefile.am (CLEANFILES): Added autoupdate.m4f and autoconf.tmp. 2000-02-09 18:08:37 +00:00
Akim Demaille
8ba96e391b Test `autoupdate'.
* tests/tools.m4 (AH_DEFUN): Fix the comments.
Quote properly.
(autoupdate): New test.
2000-02-09 18:02:18 +00:00
Akim Demaille
0586da3a49 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.
2000-02-09 17:47:47 +00:00
Akim Demaille
367368c916 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.
2000-02-09 17:42:53 +00:00
Akim Demaille
a3df6b1558 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'.
2000-02-09 17:36:03 +00:00
Akim Demaille
cd2c46e4ab * README-alpha: New file, based on Automake's.
* Makefile.am: Tuned.
2000-02-09 17:05:21 +00:00
Akim Demaille
c0bc015e7b 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.
2000-02-09 17:01:44 +00:00
Akim Demaille
ba05e82224 * 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.
2000-02-09 11:59:24 +00:00
Akim Demaille
d21aeb1510 * tests/base.m4: Really added to the CVS repository.
* tests/tools.m4: Likewise.
2000-02-09 08:36:01 +00:00
Akim Demaille
f14cd77f30 * tests/base.m4: s/m4 -I ../m4 -I $at_top_srcdir/. 2000-02-09 08:31:39 +00:00
Akim Demaille
b62028d508 * autoheader.sh (debug): Initialize to `false', not 0. 2000-02-08 17:23:25 +00:00
Akim Demaille
5ad32e051d Fix a bug: `libm4::define' was incorrectly registered.
* libm4.m4 (libm4::define): Not only register, define too.
2000-02-08 16:51:19 +00:00
Akim Demaille
60c3912450 * acgeneral.m4 (AC_COMPILE_CHECK): Use AU_DEFUN, remove the call
to AC_OBSOLETE.
2000-02-08 13:58:13 +00:00
Akim Demaille
3986defac7 * 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.
2000-02-08 13:55:52 +00:00
Akim Demaille
b54d44e0c3 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.
2000-02-08 13:54:48 +00:00
Akim Demaille
881b4d908f 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.
2000-02-08 13:53:32 +00:00
Akim Demaille
b39821a30a * 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.
2000-02-08 13:51:55 +00:00
Akim Demaille
ecf746f564 * acgeneral.m4 (AC_INCLUDES_DEFAULT): Make it more robust to
the fact it is used non quoted.
Reported by Jim Meyering.
2000-02-08 13:50:52 +00:00
Akim Demaille
90cea7798f * acgeneral.m4 (AC_OUTPUT_FILES): Simplify some excess in
changequote.
(AC_OUTPUT_SUBDIRS): Likewise.
2000-02-08 13:47:29 +00:00
Akim Demaille
ed706fc1bf * 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.
2000-02-08 13:45:24 +00:00
Akim Demaille
30387328fa * 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.
2000-02-08 13:43:58 +00:00
Akim Demaille
11eaab70bd 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.
2000-02-08 13:42:51 +00:00
Akim Demaille
738595fda3 * 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.
2000-02-08 13:41:51 +00:00
Akim Demaille
36dcb4d62b * 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.
2000-02-08 13:40:26 +00:00
Akim Demaille
eb835e21d2 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.
2000-02-08 13:38:45 +00:00
Akim Demaille
c7eb9bd99e 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'.
2000-02-08 13:25:49 +00:00
Akim Demaille
5ea4b5387a 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.
2000-02-08 13:16:01 +00:00
Akim Demaille
0ba85ee10a 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.
2000-02-08 13:12:49 +00:00
Akim Demaille
df16b72f85 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.
2000-02-08 13:11:21 +00:00
Akim Demaille
47f9aa62a1 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.
2000-02-08 13:06:17 +00:00
Akim Demaille
a9b538ad79 * 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)'.
2000-02-08 12:43:47 +00:00
Akim Demaille
723b26a3de 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.
2000-02-08 11:46:51 +00:00
Akim Demaille
a443a89e84 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.
2000-02-08 11:39:46 +00:00
Akim Demaille
5a9da0e05e 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'.
2000-02-08 11:20:57 +00:00
Akim Demaille
435c0e5aa9 * 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.
2000-02-08 11:15:59 +00:00
Akim Demaille
4bed138997 * 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.
2000-02-08 11:06:23 +00:00
Akim Demaille
6372ab2eec * 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.
2000-02-08 10:59:38 +00:00
Akim Demaille
9965880fe8 * acgeneral.m4. Formatting changes.
* acspecific.m4: Likewise.
2000-02-08 10:46:43 +00:00
Akim Demaille
f624b6d754 * acgeneral.m4 (AC_CONFIG_HEADERS, AC_CONFIG_LINKS,
AC_CONFIG_SUBDIRS): A space was missing to separate the arguments
of m4_append.
2000-02-08 10:31:47 +00:00
Akim Demaille
0c5cd97cc3 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".
2000-02-08 10:03:26 +00:00
Akim Demaille
13110f0768 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?!?).
2000-02-08 09:54:19 +00:00
Akim Demaille
c809277bf9 * acgeneral.m4: Formatting changes.
* acspecific.m4: Likewise.
2000-02-08 09:45:21 +00:00
Akim Demaille
bfe8456484 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.
2000-02-08 09:34:19 +00:00
Akim Demaille
6a609fe4b1 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.
2000-02-08 09:23:54 +00:00
Akim Demaille
c4d2980dbd 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.
2000-02-08 09:19:18 +00:00
Akim Demaille
37ed7bc3f2 * TODO: Updated.
* THANKS: Updated.
2000-02-08 08:53:03 +00:00
Akim Demaille
0cd449970f * libm4.m4 (m4_for): New macro. 2000-02-08 08:41:52 +00:00
Akim Demaille
9729954f66 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.
2000-02-07 18:09:54 +00:00
Akim Demaille
9a9baf80c6 Use #' for comments instead of dnl'.
Better highlighting of the sections in the sources.

* acgeneral.m4: Formatting changes.
* acspecific.m4: Likewise.
* autoheader.m4: Likewise.
* acoldnames.m4: Likewise.
2000-02-07 18:03:54 +00:00
Akim Demaille
6b8dfc89ca Create libm4.m4.
* Makefile.am: Adjusted for libm4.m4.

* acgeneral.m4 (m4_errprint, m4_warn, m4_fatal, m4_prefix,
m4_eval, m4_shift, m4_format, m4_include_unique, m4_include,
m4_sinclude, m4_quote, m4_split, m4_join, m4_strip, m4_append,
m4_list_append, ifval, ifset, m4_default, m4_case, m4_match,
m4_foreach): Moved from here, to...
* libm4.m4: here.
* acgeneral.m4 (AC_WRAP): Moved from here, to...
* libm4.m4 (m4_wrap): here.  All callers changed.

* acgeneral.m4: Don't include acversion.m4.
* autoconf.m4: Include libm4.m4 and acversion.m4.
* autoheader.m4: Likewise.
2000-02-07 17:42:03 +00:00
Akim Demaille
b519547b61 AC_CHECK_SIZEOF: Fix a bug, use standard default headers, and
test.

* acgeneral.m4 (AC_CHECK_SIZEOF): Don't over quote $1, some []
were left in the C code, and had the macro fail.
Use AC_INCLUDES_DEFAULT.
* doc/autoconf.texi: Mention default includes.  Explain stdio.h
must always be given.

* tests/atspecific.m4 (TEST_MACRO): Updated the list of
exceptions.
(AT_CHECK_DEFINES): New macro, to check the content of config.h.
* tests/semantics.m4: All the tests are updated to use
AT_CHECK_DEFINES.
Test AC_CHECK_SIZEOF, AC_CHECK_HEADERS, and AC_CHECK_FUNCS.
2000-02-07 17:28:43 +00:00
Akim Demaille
fb4e32afa3 Give explicit diagnostics when an input file (for config headers;
config files etc.) does not exist.
From Jim Meyering.

* acgeneral.m4 (AC_OUTPUT_FILES, AC_OUTPUT_HEADERS): Check for the
existence of source files.
2000-02-07 17:23:07 +00:00
Akim Demaille
c699fab52c Torture test config.status, AC_SUBST and AC_DEFINE.
* tests/torture.m4: New file.
* tests/suite.m4: Include it.
2000-02-07 17:15:51 +00:00
Akim Demaille
a604d916a0 * tests/atspecific.m4 (m4_for, m4_foreach): New macros. 2000-02-07 17:02:37 +00:00
Akim Demaille
a2dec8cec2 * acgeneral.m4 (AC_CHECK_TYPE_INTERNAL): Instead of defining an
unused pointer to the type $1, use
if (($1 *) 0) return 0;
to avoid warnings from the compiler.
From Paul Eggert.
2000-02-07 16:52:09 +00:00
Akim Demaille
293dd2c41d * acgeneral.m4 (AC_INCLUDES_DEFAULT): Include sys/types.h
Reported by Jim Meyering.
2000-02-07 16:46:56 +00:00
Akim Demaille
ae593084aa * tests/atspecific.m4: New file, for AT macros specific to
Autoconf testing.
* tests/suite.m4 (AT_TEST_MACRO): Moved to
* tests/atspecific.m4 (AT_TEST_MACRO): here.
* tests/syntax.m4 (TEST_MACRO): Moved to
* tests/atspecific.m4 (TEST_MACRO): here.  Don't test /^AC_INIT/,
nor /^AC_PROG_(CC|CXX|F77)_(GNU|WORKS)$/: they are already
tried elsewhere.
* tests/Makefile.am: Adjusted.
2000-02-07 16:42:15 +00:00
Akim Demaille
304ecacb35 * acgeneral.m4 (m4_case): Fixed a typo and a bug: one shift was
missing.
(m4_match): New macro.
* tests/atgeneral.m4 (AT_CASE): Fixed.
2000-02-07 16:28:06 +00:00
Akim Demaille
db2e9d0892 * acgeneral.m4: Formatting changes.
* acspecific.m4: Likewise.
2000-02-07 16:17:51 +00:00
Akim Demaille
b49b3a3107 * acspecific.m4 (AC_F77_LIBRARY_LDFLAGS): Don't use FFLAGS_SAVE
but ac_save_FFLAGS.
(AC_F77_NAME_MANGLING): Don't use foo_bar but ac_foo_bar.
2000-02-07 16:00:02 +00:00
Akim Demaille
00f447ee06 * acspecific.m4 (AC_C_INLINE): Proceed as for AC_C_CONST:
condition out the test case if __cpluscplus.
Don't document the autoheader template twice, one is enough.
* autoheader.m4 (AC_CONFIG_HEADER): don't hook on this guy, but
on...
(AC_CONFIG_HEADERS), since the former is defined on the latter.
2000-02-07 15:39:16 +00:00
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
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
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
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
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
Akim Demaille
91c72f0940 1999-10-31 Akim Demaille <akim@epita.fr>
* acgeneral.m4 (AC_INIT_NOTICE, AC_INIT_PREPARE, AC_ARG_ENABLE,
	AC_ARG_WITH, AC, TRY_COMPILER, AC_TRY_RUN, AC_TRY_CPP,
	AC_EGREP_CPP): Use @PND@ instead of [#]: it looses the editors
	that try to match the pairs of (), [] etc.
2000-01-14 15:40:15 +00:00
Akim Demaille
c2ff56bad5 1999-10-31 Akim Demaille <akim@epita.fr>
Fix the compatibility of the compiling macros with C++.

	* acgeneral.m4 (AC_TRY_COMPILE, AC_TRY_LINK, AC_CHECK_SIZEOF): Use
	`int main () {...}', instead of `main () {...}'.
	* acspecific.m4 (AC_TYPE_GETGROUPS, AC_FUNC_CLOSEDIR_VOID,
	AC_FUNC_FNMATCH, AC_FUNC_GETPGRP, AC_FUNC_SETPGRP, AC_FUNC_VFORK,
	AC_FUNC_WAIT3, AC_FUNC_ALLOCA, AC_FUNC_UTIME_NULL,
	AC_FUNC_SETVBUF_REVERSED, AC_FUNC_MEMCMP, AC_C_CHAR_UNSIGNED,
	AC_C_LONG_DOUBLE, AC_C_BIGENDIAN, AC_SYS_RESTARTABLE_SYSCALLS):
	Likewise.
	* acspecific.m4 (AC_FUNC_FNMATCH): Call
	AC_CHECK_HEADERS(fnmatch.h), and include fnmatch.h in the compiled
	code.
2000-01-14 15:35:36 +00:00
Akim Demaille
71a65156f8 1999-10-31 Akim Demaille <akim@epita.fr>
* acgeneral.m4 (AC_COMPILE_CHECK, AC_TRY_COMPILE,
 	AC_TRY_RUN_NATIVE, AC_OUTPUT_CONFIG_STATUS): Use @PND@ instead of
 	[#]: it looses the editors that try to match the pairs of (), []
 	etc.
	Formatting changes.
	* acspecific.m4: Formatting changes.
2000-01-14 15:19:19 +00:00
Akim Demaille
2d7beaf15d 1999-10-31 Akim Demaille <akim@epita.fr>
Allow standard beta version numbers.

	* configure.in: Declare version 2.14a.
	* acgeneral.m4 (AC_UNGNITS): New macro which transform version
	numbers to pure digits (2.14a to 2.14.0.1, 2.15z to 2.15.0.26
	etc.).
	(AC_PREREQ): Normalize argument and AC_ACVERSION via AC_UNGNITS.
2000-01-10 10:13:42 +00:00
Akim Demaille
d2750f1138 1999-10-31 Akim Demaille <akim@epita.fr>
Fix the --version of all the executables.

	* Makefile.am (editsh, editpl): Substitute also PACKAGE and
	VERSION.
	* autoconf.sh (version): New string.
	(--version): Use it.
	(--help) Output on stdout, not stderr.
	* autoheader.sh: Likewise.
	* autoreconf.sh: Likewise.
	* autoscan.pl: Likewise.
	* autoupdate.sh: Likewise.
	* ifnames.sh: Likewise.
2000-01-10 10:11:57 +00:00
Akim Demaille
ecb19983da 1999-10-31 Akim Demaille <akim@epita.fr>
Perform a better checking for missing templates in autoheader.

	* autoheader.m4 (AH_HOOK): When hook AC_FOO on AH_FOO, define the
	new AC_FOO to be the expansion of both AH_FOO *and* AC_FOO.  See
	its definition for the motivations.

	* autoheader.m4 (AH_FUNC_ALLOCA): Remove the now useless
	additional templates.
2000-01-10 10:06:51 +00:00
Akim Demaille
0df82df28e 1999-10-31 Akim Demaille <akim@epita.fr>
Work properly with Automake 1.4.

	* Makefile.am (distpkgdataDATA): Replaces dist_pkgdata_DATA.
	(nodistpkgdataDATA): Replaces nodist_pkgdata_DATA.
	(EXTRA_DIST): Added $(distpkgdataDATA).
	(pkgdata_DATA): Adapted.
	(AUTOMAKE_OPTION): Require 1.4.
1999-12-21 16:44:10 +00:00
Akim Demaille
c61438fda5 1999-10-31 Akim Demaille <akim@epita.fr>
Fix a bug in templates of AC_CHECK_LIB.

	* autoheader.m4 (AH_CHECK_LIB): Template HAVE_LIBFOO, not
 	HAVE_FOO.
1999-12-21 13:44:54 +00:00
Akim Demaille
8b00e62b03 1999-10-31 Akim Demaille <akim@epita.fr>
* acspecific.m4: Formating changes.
1999-12-21 13:34:50 +00:00
Akim Demaille
bfbd874be5 1999-10-31 Akim Demaille <akim@epita.fr>
* acgeneral.m4: Formating changes.
	* acspecific.m4: Likewise.
1999-12-21 11:50:26 +00:00
Akim Demaille
d33e827234 1999-10-31 Akim Demaille <akim@epita.fr>
* Makefile.am (pkgdata_DATA): Split into dist_pkgdata_DATA and
	nodist_pkgdata_DATA.
1999-12-21 11:46:41 +00:00
Akim Demaille
8b25a45df6 1999-10-31 Akim Demaille <akim@epita.fr>
* acspecific.m4 (AC_PROG_GNU_M4): New macro.
	* configure.in: Use it.
1999-12-21 11:25:59 +00:00
Akim Demaille
e157215536 1999-10-31 Akim Demaille <akim@epita.fr>
Provide a means to specify commands to run before config.status is
	created (and, for symmetry, after it is created).

	This is typically needed by Automake so that AC_REPLACEd functions
	go through deansification via

	LIBOBJS=`echo $LIBOBJS | sed 's/\.o /\$U.o /g;s/\.o$/\$U.o/'`

	and/or by Libtool which needs to define LTLIBOBJS and others:

	LTLIBOBJS=`echo $LIBOBJS | sed 's/\.o/\.lo/g'`
	AC_SUBST(LTLIBOBJS)

	* acgeneral.m4 (AC_OUTPUT_PRE_COMMANDS): New growing string.
	Initialize.
	(AC_OUTPUT_POST_COMMANDS): Likewise.
	(AC_CONFIG_PRE_COMMANDS): New macro, grows AC_OUTPUT_PRE_COMMANDS.
	(AC_CONFIG_PRE_COMMANDS): Likewise.
	(AC_OUTPUT): Run AC_OUTPUT_PRE_COMMANDS before
	AC_OUTPUT_CONFIG_STATUS, and AC_OUTPUT_POST_COMMANDS after.
1999-12-21 11:11:54 +00:00
Akim Demaille
e410d7671e 1999-10-31 Akim Demaille <akim@epita.fr>
Remove spurious empty lines appearing in configures.

	* acgeneral.m4 (AC_CONFIG_UNIQUE): Produce no output.  Instead of
 	fighting with dnl, divert to KILL upon entry, and pop at exit.
1999-12-21 11:08:51 +00:00
Akim Demaille
28497c7168 1999-10-31 Akim Demaille <akim@epita.fr>
* acgeneral.m4 (AC_INIT_PARSE_ARGS): Avoid to use double quotes
	inside "`...`": some shells parse this inccorrectly.
1999-12-20 18:52:12 +00:00
Akim Demaille
f0d39e7e33 1999-10-31 Akim Demaille <akim@epita.fr>
* Makefile.am (pkgdata_DATA, EXTRA_DIST): Removed acconfig.h.
	* testsuite/autoconf.s/defines.exp: Commented out, there is no
	longer an acconfig.h.
1999-12-20 15:57:14 +00:00
Akim Demaille
bfb9905e93 1999-10-31 Akim Demaille <akim@epita.fr>
* autoconf.m4: Insert -*- Autoconf -*-.
	* acgeneral.m4: Likewise.
	* acspecific.m4: Likewise.
	* acoldnames.m4: Likewise.
1999-12-20 15:54:30 +00:00
Akim Demaille
3e8c1e1c54 1999-10-31 Akim Demaille <akim@epita.fr>
Create AC_CONFIG_HEADERS which has the same interface as the other
	AC_CONFIG_*S.

	* acgeneral.m4 (AC_CONFIG_HEADERS): New macro, with the same
	interface as AC_CONFIG_LINKS and AC_CONFIG_FILES.
	(AC_LIST_HEADERS_COMMANDS): New growing string, initialize it.
	(AC_CONFIG_HEADER): Rename as...
	(AC_CONFIG_HEADERS): this, for consistency.
	(AC_CONFIG_HEADER): New macro, which calls AC_OUTPUT_HEADERS.
	(AC_OUTPUT_HEADERS): The square brackets for sed and grep were
	not properly quoted: use @BKL@ and @BKR@.
	(AC_OUTPUT_HEADERS): Run the AC_LIST_HEADERS_COMMANDS.

	* acgeneral.m4 (AC_OUTPUT): Once config.status created, before
	running it, trap to `exit 1' so that config.status is not removed
	if configure is interrupted when config.status is complete.

	* acgeneral.m4 (AC_OUTPUT_CONFIG_STATUS): When recognizing
	arguments, accept only foo, and no longer foo:foo.in etc.
1999-12-20 13:54:46 +00:00
Akim Demaille
94c8403019 1999-10-31 Akim Demaille <akim@epita.fr>
* acgeneral.m4: Formating changes.
1999-12-20 13:52:57 +00:00
Akim Demaille
85a66b1acb 1999-10-31 Akim Demaille <akim@epita.fr>
config.status: Speed up the creation of config headers (about four
 	times faster on Linux).

	* acgeneral.m4 (AC_OUTPUT_HEADERS): Remove the ac_e
	family.
	Changed ac_uD and ac_dD to `...;t t', instead of `...g'.
	Instead of creating `conftest.vals' with both ac_e, ac_d,
	and ac_u family, preprocess to strip the trailing spaces, and
	create `conftest.defines' with the ac_d family, and then
	`conftest.undefs' for the ac_e family.
	Break up both `conftest.defines' and `conftest.undefs'.  Insert a
 	top label and a global test for `#defines' and `#undef' before.
	Call `conftest.defines' if there are #define in the input.
	Call `conftest.undefs'.
1999-12-20 13:48:32 +00:00
Akim Demaille
9259e5bc53 1999-10-31 Akim Demaille <akim@epita.fr>
* acgeneral.m4: Prefer `>file' over `> file' etc.
	* acspecific.m4: Likewise.
1999-12-20 13:45:45 +00:00
Akim Demaille
ed0f9a6d4e 1999-10-31 Akim Demaille <akim@epita.fr>
Rename the family AC_NEED_DECL as AC_CHECK: it is more uniform,
	but keep defining NEED_FOO_DECL when `foo' is not declared.  Files
	not using Autoconf behave better when declarations lacks than when
	they are wrong.  So the unset position should off, hence #if NEEDS
	instead of #if !HAVE (which is triggered when HAVE is not set).

	* acgeneral.m4 (AC_NEED_DECL): Renamed as...
	(AC_CHECK_DECL): This.  Make sure the arguments are the usual
	IF-FOUND, IF-NOT-FOUND.
	(AC_NEED_DECLS, AC_CHECK_DECLS): Likewise.
	* autoconf.texi (Generic Declarations): Document the changes
 	aforementioned.
	* autoheader.m4 (AH_NEED_DECLS): Renamed as
	(AH_CHECK_DECLS): This.
	(AH_HOOKS): Hook AH_CHECK_DECLS on AC_CHECK_DECLS instead of
	_NEED_.
1999-12-20 13:40:18 +00:00
Akim Demaille
7d74895243 1999-10-31 Akim Demaille <akim@epita.fr>
Revamp the handling of the arguments of config.status: instead of
	looping over config_files etc. to recognize the file names, use
	the case which handles the options.
	Suggested by Alexandre Oliva.

	* acgeneral.m4 (ifset): Renamed as...
	(ifval): This.  All callers changed.
	(ifset): New macro, which tests if a macro is set to a non empty
	value.

	* acgeneral.m4: Initialize growing lists and strings to empty, to
	ease the tests.
	(AC_CONFIG_HEADER): Quote AC_LIST_HEADERS in the define, to handle
	the case AC_LIST_HEADERS is initialized.

	* acgeneral.m4: (AC_OUTPUT_CONFIG_STATUS): New macro, pulled out
	from...
	(AC_OUTPUT): Instead of using $1, $2 and $3, pass them to the
	official macros (AC_CONFIG_FILES, AC_OUTPUT_COMMANTS).
	Call AC_OUTPUT_CONFIG_STATUS.
	(option handling): Use the case-esac to recognize arguments.
	(AC_OUTPUT_COMMANDS): Fix the missing fi;done.
1999-12-20 13:37:12 +00:00
Akim Demaille
627fdb329b 1999-10-31 Akim Demaille <akim@epita.fr>
Add a means to specify commands to be run by config.status.  At
	the difference of AC_OUTPUT_COMMANDS, require that the set of
	commands be named, so that both
		CONFIG_COMMANDS=foo ./config.status
	and
		./config.status foo
	perform the Right Thing.

	* acgeneral.m4 (AC_CONFIG_UNIQUE): Also check in
	AC_LIST_COMMANDS.
	(AC_CONFIG_FILES): Remove a dead pushdef.
	(AC_CONFIG_COMMANDS): New macro.
	(AC_LIST_COMMANDS): New config list.
	(AC_LIST_COMMANDS_COMMANDS): New growing string.
	(AC_OUTPUT_COMMANDS_COMMANDS): New macro, output config commands
	in config.status.
	(AC_OUTPUT): Take AC_LIST_COMMANDS into account.
	(AC_OUTPUT): Call AC_OUTPUT_COMMANDS_COMMANDS.
1999-12-20 13:27:08 +00:00
Akim Demaille
5aa38da39b 1999-10-31 Akim Demaille <akim@epita.fr>
New macro: AC_CONFIG_FILES which is very much like AC_OUTPUT but
      that one associates commands to run when a config file is
      created.  For instance for a shell script `foo', one uses
      AC_CONFIG_FILES(foo, chmod +x foo).

      In addition, check that the same name is never used twice in
      config files, headers, subdirs and links.

      * acgeneral.m4 (m4_append): Don't insert new line between
      elements.
      (m4_list_append): New macro.
      (AC_CONFIG_IF_MEMBER): New macro which tests if a file is member
      of a config list.
      (AC_CONFIG_UNIQUE): New macro which ensures that a config file
      name is not yet used.
      (AC_CONFIG_HEADER, AC_CONFIG_LINKS, AC_CONFIG_SUBDIRS): Use
      AC_CONFIG_UNIQUE.

      * acgeneral.m4 (AC_CONFIG_FILES): New macro.
      (AC_LIST_FILES): New list, which stores arguments of
      AC_CONFIG_LISTS the same as AC_LIST_LINKS stores AC_CONFIG_LINKS
      etc.
      (AC_OUTPUT): No longer rely on $1 to designate the config files:
      register them via AC_CONFIG_FILES.  All uses of $1 replaced by
      uses of AC_LIST_FILES.
      (AC_OUTPUT_FILES): Run the commands associated to the
      CONFIG_FILES.
1999-12-20 12:14:28 +00:00
Akim Demaille
de65ecc7bb 1999-10-31 Akim Demaille <akim@epita.fr>
* autoconf.sh (Looking for bugs): In addition to AC_, match AH_
	and AM_.
1999-12-20 12:10:47 +00:00
Akim Demaille
0716d22ed3 1999-10-31 Akim Demaille <akim@epita.fr>
Provide the m4 infrastructure for defining AH_ hooks.

	* autoheader.m4 (AH_HOOK): New macro.
	Hook all the AC_ macros to their AH_siblings in AH_HOOKS.
	Run AH_HOOKS.

	* acgeneral.m4 (m4_append): New macro.
	(m4_list_append, m4_list_add): Removed.
1999-12-20 12:08:01 +00:00
Akim Demaille
93a205e8a5 1999-10-31 Akim Demaille <akim@epita.fr>
* acspecific.m4: Formating changes.
	* acgeneral.m4: Likewise.
1999-12-20 12:05:14 +00:00
Akim Demaille
71c0040e3b 1999-10-31 Akim Demaille <akim@epita.fr>
* acspecific.m4 (AC_CHECK_MEMBER, AC_CHECK_MEMBERS): New macros.
	* autoheader.m4 (AH_CHECK_MEMBERS): New macro.
	(epilogue): Hook AH_CHECK_MEMBERS on AC_CHECK_MEMBERS.
1999-12-20 12:01:55 +00:00
Ben Elliston
dc08b45c63 1999-10-31 Akim Demaille <akim@epita.fr>
* autoheader.m4 (AC_FUNC_ALLOCA): Rename from this ...
	(AH_FUNC_ALLOCA): ... to this.  Includes all the needed templates.
	(AC_C_CHAR_UNSIGNED): Rename from this ...
	(AH_C_CHAR_UNSIGNED): ... to this.
1999-10-31 02:37:40 +00:00
Ben Elliston
ccbb05cab2 1999-10-31 Ben Elliston <bje@cygnus.com>
* Makefile.am (CLEANFILES): New explicit variable.
	(editsh): acdatadir is no longer defined, so use pkgdatadir.
	(editpl): Likewise. From Akim Demaille <akim@epita.fr>.
	* Makefile.in: Regenerate.
1999-10-31 02:17:01 +00:00
Ben Elliston
cd2f3be239 1999-10-31 Ben Elliston <bje@cygnus.com>
* configure: Regenerate.
	* aclocal.m4: New generated file.
	* Makefile.in: Regenerate with Automake.
	* testsuite/Makefile.in: Likewise.

1999-10-31  Akim Demaille  <akim@epita.fr>

	Use Automake.  Based on files from Ben Elliston.

	* acgeneral.m4: No longer define AC_ACVERSION, include
 	acversion.m4.
	* acversion.m4.in: New AC_CONFIG_FILE.
	* acspecific.m4: Few formating changes.
	* autoconf.texi: No longer define EDITION, VERSION and UPDATED:
	include version.texi.
	AC_OUTPUT the Makefiles mentioned below and acversion.m4.
	* configure.in: Use AM_INIT_AUTOMAKE.
 	Do not AC_ARG_PROGRAM: AM_INIT_AUTOMAKE does it.
	* Makefile.am: New file.
	* mdate-sh: Likewise.
	* missing: Likewise.
	* testsuite/Makefile.am: Likewise.
1999-10-31 01:54:28 +00:00
Ben Elliston
c645272f5f 1999-10-31 Ben Elliston <bje@cygnus.com>
* acspecific.m4 (AC_PROG_CC_STDC, AC_C_PROTOTYPES): Inherit from
	Automake. From Franc,ois Pinard.
	* autoconf.texi (Particular Programs): Document AC_PROG_CC_STDC.
	(C Compiler Characteristics): Document AC_C_PROTOTYPES.
1999-10-31 00:56:04 +00:00
Ben Elliston
eda5fc6b7a 1999-10-31 Ben Elliston <bje@cygnus.com>
* testsuite/autoconf.s/defines.exp: Changed `fail' and `pass' in
	`xfail' and `xpass'. The testsuite checks that acconfig.h
	templates the AC_DEFINEs. Since we no longer rely on acconfig.h,
	the test is obsolete.
	* acspecific.m4 (AC_PROG_BINSH, AC_PROG_SED): Don't quote the name
	of the macro defined; the testsuite does not recognize this
	syntax. From Akim Demaille <akim@epita.fr>.
1999-10-31 00:03:45 +00:00
Ben Elliston
7e49021235 * Merged from the experimental branch. 1999-10-30 14:17:20 +00:00
Ben Elliston
a0e65b3fd7 1999-10-27 Ben Elliston <bje@cygnus.com>
* THANKS: Updated Alexandre's address.
1999-10-30 13:56:53 +00:00
Ben Elliston
6fea459a0a 1999-10-27 Ben Elliston <bje@cygnus.com>
* autoconf.texi (Generic Programs): @defmac for AC_PATH_TOOL may
	not span multiple lines.
1999-10-26 14:29:16 +00:00
Ben Elliston
aba0658ec0 1999-10-16 Ben Elliston <bje@cygnus.com>
* autoconf.texi (AC_PROG_CXX): Update documentation.
1999-10-15 23:09:11 +00:00