Commit Graph

365 Commits

Author SHA1 Message Date
Akim Demaille
2fb7171a77 * doc/autoconf.texi (Prerequisite Macros): More about AC_REQUIRE. 2000-06-26 09:07:36 +00:00
Akim Demaille
27ad8629e3 The test suite reveals AC_OUTPUT_MAKE_DEFS fails on RISC/OS.
* acgeneral.m4 (AC_OUTPUT_MAKE_DEFS) <confdef2opt.sed>: Reset the
t flag between each cycle.
* doc/autoconf.texi (Limitations of Usual Tools): Some about the t
flag in sed.
2000-06-16 17:40:44 +00:00
Akim Demaille
f5a508569f `./config.status -d' is buggy.
* acgeneral.m4 (_AC_OUTPUT_CONFIG_STATUS): Remove the `shift' in
--debug.
* doc/autoconf.texi (Limitations of Builtins): Some about shift.
2000-06-13 14:56:23 +00:00
Akim Demaille
0921af6416 * doc/autoconf.texi (Caching Results): Bigger warning about the
extremely frequent action-in-commands bug.
Move the documentation of AC_CACHE_SAVE and AC_CACHE_LOAD...
(Cache Files): in here.
2000-06-13 09:31:55 +00:00
Akim Demaille
9eb70531a8 * doc/autoconf.texi: Use @option' for options, not @samp' nor
`@code'.
* doc/install.texi: Likewise.
2000-06-09 11:37:15 +00:00
Akim Demaille
3a6a9bb4f3 Import AC_SYS_LARGEFILE from largefile.m4 serial 12.
* acspecific.m4 (AC_SYS_LARGEFILE, _AC_SYS_LARGEFILE_MACRO_VALUE,
_AC_SYS_LARGEFILE_SOURCE): New.
* doc/autoconf.texi (System Services): Document AC_SYS_LARGEFILE.
2000-06-08 12:07:14 +00:00
Akim Demaille
1740faf5e0 `foo=1 foo=2 cmd' has an undefined behavior.
* acgeneral.m4 (_AC_COMPUTE_INT_COMPILE): Do not put two shell
variable assignments in one shell command.
* doc/autoconf.texi (Shell Substitutions): Document.
2000-06-07 11:57:11 +00:00
Akim Demaille
6802267be2 More about test -e. 2000-06-07 10:39:37 +00:00
Akim Demaille
e54d5fae47 * doc/autoconf.texi (Limitations of Builtins): More on `test' and
`case'.
Some on `if' and `break'.
2000-06-07 07:07:39 +00:00
Jim Meyering
87ebdba1db fix typo 2000-06-02 12:41:18 +00:00
Jim Meyering
53df5fb033 (Particular Functions): Give better description of
AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.  From Paul Eggert.
2000-05-28 16:18:40 +00:00
Akim Demaille
e037ade604 * doc/autoconf.texi (Limitations of Usual Tools): Document `ln -s'
on DJGPP, based on the comments from Mark Elbrecht.
2000-05-26 18:16:46 +00:00
Akim Demaille
89289ce2e2 Don't use f2c as a possible Fortran compiler, since by itself it
cannot produce object code.

* aclang.m4 (AC_PROG_F77): Remove f2c from the search list.
* doc/autoconf.texi: Excise mentions of f2c in AC_PROG_F77 docs.
2000-05-26 17:30:07 +00:00
Akim Demaille
7ec26d2da4 * acspecific.m4 (AC_FUNC_STRERROR_R): New, from `strerror_r.m4',
serial 2, by Jim Meyering.
(AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): New, from
`lstat-slash.m4', serial 1, by Jim Meyering.
* acfunctions: Adjust.
2000-05-26 15:59:19 +00:00
Akim Demaille
ddd3ea4c14 Typos in documentation. 2000-05-26 14:55:42 +00:00
Akim Demaille
8edeaa522c In info', it is easier to type autoconf <TAB>' to reach the list
of options, that `Invoking autoc<TAB>'.

* doc/autoconf.texi: s/Invoking foo/foo Invocation/.
2000-05-26 14:38:15 +00:00
Akim Demaille
76f1dd675c Merge Upgrading' and Obsolete Constructs' together.
* doc/autoconf.texi (Obsolete Constructs): Move right after
`Recreation a Configuration.
(Invoking autoupdate): Be a subsection of
`Obsolete Constructs'.
(Upgrading): Demote from chapter to section.
Be a section of `Obsolete Constructs'.
Rename as `Autoconf 1'.
2000-05-26 14:34:21 +00:00
Akim Demaille
ca10061659 Find a means to extract integers from the compiler.
Use this technology to compute `sizeof' even when cross-compiling.
Ideas and initial suggestion by Kaveh Ghazi.
Binary search by Bruno Haible.

* aclang.m4 (AC_LANG_BOOL_COMPILE_TRY,
AC_LANG_BOOL_COMPILE_TRY(C), AC_LANG_BOOL_COMPILE_TRY(C++),
AC_LANG_INT_SAVE, AC_LANG_INT_SAVE(C), AC_LANG_INT_SAVE(C++)): New
macros.
* acgeneral.m4 (_AC_COMPUTE_INT_COMPILE, _AC_COMPUTE_INT_RUN,
_AC_COMPUTE_INT): New.
(AC_CHECK_SIZEOF): Use them.
Check whether the type exists beforehand.
* tests/semantics.m4 (AC_CHECK_SIZEOF): Strengthen.
2000-05-26 11:33:54 +00:00
Akim Demaille
3bfdd156e9 * aclang.m4 (AC_PROG_CXX): Look for aCC KCC RCC xlC_r xlC.
s/c++ g++/g++ c++/.
* doc/autoconf.texi (Compilers and Preprocessors): Adjust.
2000-05-26 09:42:13 +00:00
Akim Demaille
c7c08f2cca * doc/autoconf.texi (Limitations of Usual Tools, Limitations of
Builtins): Integrate comments from Paul Eggert and Jim Meyering.
Add the sed limitation discovered by Philippe De Muyter.
Typo from Pavel Roskin.
2000-05-26 08:32:45 +00:00
Akim Demaille
ee5618d3ca * acgeneral.m4 (_AC_INIT_PARSE_ARGS): Don't use negated character
classes with `case'.  Use `expr' instead.
Suggested by Paul Eggert.
* doc/autoconf.texi (Limitations of Builtins): Explain expr, the
`x' trick, and negated character classes.
2000-05-25 07:49:39 +00:00
Akim Demaille
c4dbe5c591 Have --host=sun4 automatically look for CC=sun4-cc etc.
* acgeneral.m4 (AC_CHECK_TOOLS): New.
* aclang.m4 (AC_PROG_CXX, AC_PROG_CC, AC_PROG_F77): Use new
AC_CHECK_TOOLS macro instead of AC_CHECK_PROGS so that a cross
compiler is found by default with --host.
* doc/autoconf.texi (Generic Programs, Manual Configuration):
Describe new AC_CHECK_TOOLS macro. Fix unclear working about
AC_CHECK_PROGS.
* tests/Makefile.am (FILTER_MACROS): Adjust.
2000-05-24 15:46:12 +00:00
Akim Demaille
0fbdd96cf3 The night of the living dead...
* acspecific.m4 (AC_XENIX_DIR, AC_DYNIX_SEQ, AC_IRIX_SUN,
AC_SCO_INTL): Wake up a few zombies.
* doc/autoconf.texi: Adjust.
* tests/aclocal.m4 (AC_ENV_SAVE): Likewise.
2000-05-24 14:39:24 +00:00
Akim Demaille
3d3d0c48fc * doc/autoconf.texi (Limitations of Builtins): Document `unset'.
(Special Shell Variables): Adjust.
(Shellology): New section.  Introduce bash and zsh.
(Special Shell Variables): Some data on NULLCMD.
(Quotation Thumb Rule): Rename as
(Quotation Rule of Thumb): this.
* acgeneral.m4 (AC_SHELL_UNSET): Remove.
(AC_SHELL_UNSETENV): Rename as...
(AC_SHELL_UNSET): this.
(_AC_INIT_PREPARE_ENVIRONMENT): Prepare bash and zsh.
Adjust to AC_SHELL_UNSET.
2000-05-24 13:00:34 +00:00
Akim Demaille
9272d4ee9b * doc/autoconf.texi (Limitations of Builtins): More details on
`test -n ='.
2000-05-23 16:59:38 +00:00
Akim Demaille
7435a2e96c Simplify the interface: users shouldn't need to explicitly check
for special environments.

* acspecific.m4 (AC_EXEEXT, AC_OBJEXT): AU defined to
nothing.  Replace them by...
(_AC_EXEEXT, _AC_OBJEXT): this.
* aclang.m4 (AC_PROG_CC, AC_PROG_CXX, AC_PROG_F77): Call them.
(AC_PROG_CC_G, AC_PROG_CXX_G, AC_PROG_F77_G): Rename as...
(_AC_PROG_CC_G, _AC_PROG_CXX_G, _AC_PROG_F77_G): this.
Adjust dependencies.
* tests/Makefile.am (FILTER_MACROS): Adjust.
* doc/autoconf.texi (Compilers and Preprocessors): New section,
move the documentation of AC_PROG_CC, AC_PROG_CC_C_O,
AC_PROG_CC_STDC, AC_PROG_CPP, AC_PROG_CXX, AC_PROG_CXXCPP,
AC_PROG_F77, AC_PROG_F77_C_O, AC_PROG_GCC_TRADITIONAL here.
Factor the comment documentation of AC_PROG_CC, AC_PROG_CXX,
AC_PROG_F77.
2000-05-23 14:54:49 +00:00
Akim Demaille
ede91cff94 Modernize AC_EXEEXT and AC_OBJEXT.
Now work with other languages than C and C++.

* acspecific.m4 (AC_EXEEXT, AC_OBJEXT): Use
AC_COMPILE_IFELSE/AC_LINK_IFELSE and AC_LANG_PROGRAM instead of
ad hoc code.
Use `$ac_ext' instead of listing `.c', `.C' etc.
Use AC_CACHE_CHECK.
* doc/autoconf.texi (System Services): Adjust.
2000-05-23 14:50:43 +00:00
Akim Demaille
85b29b03d3 Simplify the interface: users shouldn't need to explicitly check
for special environments.

* acspecific.m4	(AC_CYGWIN, AC_EMXOS2, AC_MINGW32): AU defined to
nothing.  Replace them by...
(_AC_CYGWIN, _AC_EMXOS2, _AC_MINGW32): these, which are
automatically called by...
(AC_EXEEXT): this.
* doc/autoconf.texi (System Services, Obsolete Macros): Adjust.
2000-05-23 14:47:33 +00:00
Akim Demaille
999100ca48 AC_PROG_GNU_M4 should actually be private to the package
Autoconf.

* acspecific.m4 (AC_PROG_GNU_M4): Move to...
* m4/m4.m4: here.
* m4/Makefile.am (EXTRA_DIST): Adjust.
* doc/autoconf.texi (Particular Programs): Adjust.
2000-05-23 14:46:23 +00:00
Akim Demaille
a856ba815e * doc/autoconf.texi (Exiting from Shell Scripts): Move contents
into...
(Limitations of Builtins): this new node.
Document limitations of `exit', `export' and `case'.
Welcome the documentation of `test' from...
(Limitations of Usual Tools): here.
2000-05-23 14:15:27 +00:00
Akim Demaille
be64229cfa Add configure --config-cache', -C' as a shortcut for
`--cache-file=config.cache'.

* acgeneral.m4 (_AC_INIT_PARSE_ARGS): Let `configure' support
`--config-cache' and `-C'.
Report them in `--help'.
Fix the display of missing argument.
(_AC_OUTPUT_SUBDIRS): Adjust.
* doc/install.texi (Invoking configure): Rename the node as
(Running configure scripts): this, the name of the chapter.
(Operation Controls): Rename as...
(Invoking configure): this.
Document the new options.
* doc/autoconf.texi (direntry): Huh?  What is this `aclocal' doing
here?  Point to `Invoking configure'.
(Cache Files): No need to document the disabling of the cache.
2000-05-22 13:31:00 +00:00
Akim Demaille
0cd794da59 * acspecific.m4 (AC_FUNC_CHOWN): New macro, based on Jim
Meyering's `chown.m4' serial 4.
(AC_FUNC_GETGROUPS): New macro, based on Jim Meyering's
`getgroups.m4' serial 3.
(AC_FUNC_MEMCMP): Updated, based on Jim Meyering's `memcmp.m4'
serial 3.
(AC_FUNC_MALLOC): New macro, based on Jim Meyering's
`malloc.m4' serial 3.
(AC_FUNC_MMAP): Include `stdlib.h' when `STDC_HEADERS'.
* acfunctions: Sort.
Add `chown' and `malloc', point `getgroups' to `AC_FUNC_GETGROUPS'
instead of `AC_TYPE_GETGROUPS'.
* doc/autoconf.texi (Particular Functions): Adjust.
2000-05-22 08:46:23 +00:00
Akim Demaille
a409fcca42 * acgeneral.m4 (AC_PACKAGE): Rename as _AC_INIT_PACKAGE.
(AC_INIT): Dispatch your arguments either to _AC_INIT_PACKAGE or
to AC_CONFIG_SRCDIR.
(AU::AC_INIT): New.
* configure.in: Adjust.
Use `#', not `dnl'.
* doc/autoconf.texi (configure.in Layout): Document the new form
of AC_INIT.
Document AC_CONFIG_SRCDIR.
(Obsolete Macros): Document the old one.
2000-05-19 13:16:06 +00:00
Akim Demaille
ffb32e0741 * aclang.m4 (AC_PROG_CC_GNU, AC_PROG_CXX_GNU, AC_PROG_F77_GNU):
Rename as:
(_AC_PROG_CC_GNU, _AC_PROG_CXX_GNU, _AC_PROG_F77_GNU): these.
Compute the value of GCC, GXX and G77 here.
Set to `no' (instead of empty) if not the GNU compiler.
(AC_PROG_CC, AC_PROG_CXX, AC_PROG_F77): Adjust.
* doc/autoconf.texi: Adjust.
2000-05-19 12:55:02 +00:00
Akim Demaille
907e198f7f Either we cross-compile the whole package, or we don't.
Using --host enables cross-compilation.

* acgeneral.m4 (_AC_INIT_PARSE_ARGS): `--host' enables cross
compilation.
(AC_CANONICAL_BUILD): The help string should explicitly mention
cross compilation.
* aclang.m4 (AC_LANG(C), AC_LANG(C++), AC_LANG(Fortran 77)): Don't
set `cross_compiling'.
(AC_PROG_CC, AC_PROG_CXX, AC_PROG_F77): Run your `WORK' partner
only if not cross-compiling.
(AC_PROG_CC_WORKS, AC_PROG_CXX_WORKS, AC_PROG_F77_WORKS):
If does not work, don't assume an implicit cross-compilation:
fail.
* doc/autoconf.texi: Adjust.
2000-05-19 12:40:45 +00:00
Akim Demaille
4126eddf68 * acgeneral.m4 (AC_SHELL_UNSETENV, AC_SHELL_UNSET): Add the
missing quotes.
2000-05-19 12:21:55 +00:00
Akim Demaille
5f829df321 * doc/autoconf.texi (Testing Values and Files): Delete, move its
content into...
(Limitations of Usual Tools::test): here.
Document more limitations.
2000-05-19 12:17:29 +00:00
Akim Demaille
d5c975f17b * acgeneral.m4 (AC_SPECIALIZE): Avoid a useless `indir'.
(AC_CHECK_MEMBER, AC_CHECK_MEMBERS): Fix to work properly on
`struct f.g.h'.
* acspecific.m4 (AC_FUNC_GETLOADAVG): Use AC_CHECK_HEADERS and
AC_CHECK_MEMBERS instead of performing their task by hand.
2000-05-19 12:11:47 +00:00
Akim Demaille
beb715a12b Synchronize AC_FUNC_GETLOADAVG with the version of the shellutils
1.16f (serial 4).

* acspecific.m4 (AC_FUNC_GETLOADAVG): Check for
`pstat_getdynamic'.
Define `C_GETLOADAVG' if compiling `getloadavg.c'.
Check for NLS.
Compute `GETLOADAVG_LIBS'.
(AC_FUNC_MKTIME): Remove a forgotten `AC_SUBST(LIBOBJS)'.
2000-05-19 12:08:46 +00:00
Akim Demaille
2d198a1cc5 * acgeneral.m4 (AC_SHELL_UNSET, AC_SHELL_UNSETENV): New macro.
(_AC_INIT_PREPARE_ENVIRONMENT): Use AC_SHELL_UNSETENV.
Set CDPATH.  Fixes Autoconf/96.

* doc/autoconf.texi (Special Shell Variables): New node.
Document `status', `CDPATH', `LANG', `LC_ALL', `LC_MESSAGES' and
`LC_CTYPE'.
2000-05-19 11:54:04 +00:00
Akim Demaille
6cb38926ff * doc/autoconf.texi (Invoking config.status): Move the
documentation of the envvar CONFIG_(FILES, HEADERS, COMMANDS,
LINKS) to
(Obsolete config.status Use): here.
2000-05-12 11:29:07 +00:00
Akim Demaille
1933ade2ca * doc/autoconf.texi (Exiting from Shell Scripts): New node.
(Autoconf Language): Follow the advice in the new node.
2000-05-12 09:15:01 +00:00
Akim Demaille
e6f88d2705 * doc/autoconf.texi: Fix typos. 2000-05-12 07:44:40 +00:00
Akim Demaille
269df76643 AC_CONFIG_SUBDIRS needs two lists: one, ac_subdirs_all, which
contains all the possible subdirs for `--help=recursive', and
another, `subdirs' which can be built dynamically for launching
sub configurations.

* acgeneral.m4 	(AC_CONFIG_SUBDIRS): Define `subdirs' dynamically.
Define `ac_subdirs_all' statically.
Warn if the argument is not a literal.
(AC_LIST_SUBDIRS): Rename as...
(_AC_LIST_SUBDIRS): this.
(_AC_INIT_HELP): Loop over `ac_subdirs_all', not `subdirs'.
(_AC_OUTPUT_SUBDIRS): Loop over `subdirs', not `AC_LIST_SUBDIRS'.
* doc/autoconf.texi (Subdirectories): Adjust.

* acgeneral.m4: Replace all the `test ! -d foo && bar' with
`test -d foo || bar'.

* Makefile.am (.m4.m4f): Stop hiding what you're doing.
Don't check for GNU m4, let it die.
2000-05-11 16:56:13 +00:00
Akim Demaille
cecf9459b8 The Associated Rewriters are even prouder to present...
.
	  |
	  |
	 /-+		/   +		)===(   U  T  O  U  P  D  A  T  E    I V
       //   \
      =========
    _//_     _\_      The ``Eiffel Tower'' Release

* autoupdate.sh: Complete rewrite.  See that file for a detailed
explanation.  Basically, simulate the name spaces thanks to
`autoconf --trace' and auxiliary files.
No longer use `autoupdate.m4', remove the dependencies.
Synchronize the options and `--help'.
* doc/autoconf.texi (Invoking autoupdate): Humanoupdate.
* autoupdate.m4: Delete.
* tests/Makefile.am (FILTER_MACROS): Add `AC_OUTPUT'.
Since `AC_OUTPUT' is now AU_DEFUN'd, it is extracted for testing,
while it was not before.
* tests/tools.m4 (autoupdate): Re-enable.  Adjust the expected
output with the right quotation (yeah!).
Pass `-m $top_srcdir': autoupdate want the `.m4' files, not the
frozen files.
* Makefile.am (nodistpkgdataDATA): Move `acversion.m4' to
(distpkgdataDATA): here, so that all the `.m4' files are in the
source hierarchy, not split across src and build.
* acversion.m4.in: Update to today's standards.
* Makefile.am: Adjust.
2000-05-11 15:45:34 +00:00
Akim Demaille
347ad8e733 Replace AC_LANG_SAVE/AC_LANG_RESTORE with AC_LANG_PUSH/AC_LANG_POP.
* aclang.m4 (_AC_LANG_CURRENT, AC_LANG_STACK): You two are the same
thing, which now we shall name `_AC_LANG'.
All users adjusted.
(AC_LANG_PUSH, AC_LANG_POP): New macros.
(AC_LANG_SAVE, AC_LANG_RESTORE): AU defined.
(AC_PROG_CC_WORKS, AC_PROG_CXXCPP, AC_PROG_CXX_WORKS,
AC_PROG_F77_WORKS, AC_F77_LIBRARY_LDFLAGS, AC_F77_NAME_MANGLING):
Use them.
(AC_F77_LIBRARY_LDFLAGS): Move the requirements at its top.
* doc/autoconf.texi (Language Choice): Document them.
(Old Macros): Welcome AC_LANG_SAVE and AC_LANG_RESTORE.
2000-05-11 12:41:33 +00:00
Akim Demaille
5db458bb73 * doc/autoconf.texi (Particular Headers): Some more sorting.
Use `@multitable'.
2000-05-11 10:08:48 +00:00
Akim Demaille
465612289e Merge AC_DECL_YYTEXT into AC_PROG_LEX.
* acgeneral.m4 (AC_DECL_YYTEXT): Rename as
(_AC_DECL_YYTEXT): this.
(AC_PROG_LEX): Use it.
(AC_DECL_YYTEXT): New AU macro.
* doc/autoconf.texi: Adjust.
2000-05-11 07:59:08 +00:00
Akim Demaille
0d167edfd6 Update and polish the documentation.
* doc/autoconf.texi: Use @sc where upper case names were used.
Remove a few useless `dnl'.
Convert some `dnl' into comments.
Promote `$(foo)' in Makefiles, not `${foo}'.
Promote `$foo' in shell scripts, not `${foo}'.
Promote `foo = bar' in Makefiles, not `foo=bar'.
(Language Choice): Document `AC_LANG', move `AC_LANG_C',
`AC_LANG_CPLUSPLUS' and `AC_LANG_FORTRAN77' to
(Old Macros): here.
* doc/install.texi: Fix a typo in the specification of the system
quadruples.
2000-05-10 16:52:35 +00:00
Akim Demaille
87c43d275c * libm4.m4 (m4_foreach): Rewritten so that it does not require
lists in between parens.
(m4_foreach_quoted): new copy of the previous `m4_foreach' which
is still used by `m4_wrap'.
* acgeneral.m4 (AC_INCLUDE, AC_INCLUDES): Removed.
(AC_FOREACH): Don't use parens with `m4_foreach'.
(AC_CHECK_MEMBER, AC_CHECK_DECLS, AC_CHECK_TYPES): Adjust the
description.
* acspecific.m4 (AC_STRUCT_TIMEZONE, AC_STRUCT_ST_BLKSIZE,
AC_STRUCT_ST_BLOCKS, AC_STRUCT_ST_RDEV): Adjust.
* autoconf.texi (AC_CHECK_MEMBER, AC_CHECK_DECLS, AC_CHECK_TYPES):
Adjust their documentation.
(AC_INCLUDE): Undocument.
* tests/semantics.m4: Adjust.
* tests/actest.m4: Rename as...
* tests/aclocal.m4: this.
* tests/atspecific.m4: No longer include actest.m4.
* tests/torture.m4: Likewise.
* tests/Makefile.am: Adjust.
2000-05-10 16:16:31 +00:00
Akim Demaille
a9408e08e8 * doc/autoconf.texi (Obsolete Macros): Document `AU_DEFUN'.
Move the documentation of `AC_OBSOLETE' from here, to...
(Old Macros): here.
* acspecific.m4 (AC_STRUCT_ST_BLKSIZE, AC_STRUCT_ST_RDEV):
AU_DEFUN'd.
2000-05-10 15:39:22 +00:00
Akim Demaille
0591c3a3ba * acgeneral.m4 (AC_LIBOBJ_DECL, AC_LIBOBJ): New macros.
(AC_REPLACE_FUNCS): Use AC_LIBOBJ.
* acspecific.m4 (AC_FUNC_MKTIME, AC_FUNC_MEMCMP,
AC_STRUCT_ST_BLOCKS): Use AC_LIBOBJ.
* doc/autoconf.texi : Adjust so that the user is not encouraged to
use LIBOBJS directly.
(Generic Functions): Document AC_LIBOBJ_DECL and AC_LIBOBJ.
2000-05-10 11:47:35 +00:00
Akim Demaille
82e6c9d866 * acgeneral.m4 (_AC_OUTPUT_FILES): Don't automatically spit
`Generated by...' in Makefiles.
Fixes Autoconf/102.
2000-05-09 11:01:20 +00:00
Akim Demaille
a0a58f7673 Let `config.status' use a private temp dir.
Suggested by Jim Meyering.

* acgeneral.m4 (_AC_SHELL_TMPDIR): New macro.
(_AC_OUTPUT_CONFIG_STATUS): Use it.
Use more quoted here docs to improve readability.
Compute `$me' and use it in the error messages.
Define `$configure' and `$configure_args' to avoid continuously
mixing the uses of `configure' and `config.status' evaluation in a
single line.
Define `$SHELL' and use it.
Simplify all the unjustified `[$]foo' into `$foo', the quotes
are needed only for `$[1]', `$[@]' etc.
Replace all the uses of `ac_cs_root' with files in the tmp dir of
`config.status'.
Remove a few `rm' covered by the removal of the `$tmp' dir.
Let `config.status' support `--debug'.
(_AC_INIT_PREPARE): Avoid the leading space in `ac_configure_args'.
* doc/autoconf.texi (Invoking config.status): Adjust.
2000-05-09 09:45:04 +00:00
Akim Demaille
668492f8f7 * doc/autoconf.texi (Obsolete Macros): Rename as...
(Obsoleting Macros): this.
(Old Macros): Rename as...
(Obsolete Macros): this.
Be a section of...
(Obsolete Constructs): New chapter.
(Invoking autoheader): Move the `acconfig.h' documentation to...
(acconfig.h): here, new section of `Obsolete Constructs'.
(Autoheader Macros): Document AH_VERBATIM, AH_TEMPLATE, AH_TOP and
AH_BOTTOM.
2000-05-04 09:25:43 +00:00
Akim Demaille
49ec438253 Simplify the handling of `acconfig.h'.
* autoheader.sh: No longer try to select the needed paragraphs of
`acconfig.h', just dump everything into `config.h.in'.
Implement support for `--warnings'.
Warn the users that these auxiliary files are obsolete when `-W
obsolete'.
* doc/autoconf.texi (Invoking autoheader): Adjust.
2000-05-03 11:22:50 +00:00
Akim Demaille
b2c5b8a278 Provide a macro to canonicalize a configuration name.
Suggested by Ralf Corsepius.

*  acgeneral.m4 (AC_CANONICALIZE): New macro.
(_AC_CANONICAL_THING): Use it.
2000-05-03 09:53:55 +00:00
Akim Demaille
27aaac5d86 Don't double quote in AC_MSG_*.
* acgeneral.m4 (_AC_SH_QUOTE): Don't double quote.  Escape the
double quotes too.
(_AC_ECHO_UNQUOTED): Don't double quote :).
(_AC_ECHO, _AC_ECHO_N): Quote the call to _AC_SH_QUOTE.

The autoheader chain needs to be adjusted.

* acgeneral.m4 (AH_VERBATIM): Just pass two arguments to AH_OUTPUT
instead of trying to build what `autoheader' needs: let it handle
the format by itself.
* autoheader.m4: Adjust.
s,tmp/config.h,tmp/config.hin.

The adjustment revealed that `autoconf --trace' is not robust to
single quotes in its argument.

* autoconf.sh: Fix this issue.
Rename the escape `$*' as `$%'.  Implement `$@'.
* doc/autoconf.texi: Adjust.
2000-05-03 08:53:06 +00:00
Akim Demaille
cc748d17e8 Provide a fine grained control over autoconf's warnings.
* acgeneral.m4 (AC_WARNING_IFELSE, _AC_DIAGNOSE, AC_DIAGNOSE):
New macros.
(AC_DEFUN_ONCE, AC_OBSOLETE, AC_BEFORE, AU_DEFUN, AC_PREREQ,
AC_WARNING, AC_FATAL, AC_TRY_RUN): Use AC_DIAGNOSE.
* autoconf.sh: Provide support for `--warnings', `-W'.
* doc/autoconf.texi (Invoking autoconf): Adjust.
(Reporting Messages): New section.
2000-04-13 08:25:11 +00:00
Akim Demaille
9317181589 More doc on AC_PROG_CC_C_O 2000-04-13 08:00:38 +00:00
Akim Demaille
2b22ca58e0 Move obsolete macros' definitions out of the way.
* doc/autoconf.texi (Old Macro Names): Rename as...
(Old Macros): this.  Change the @table enumeration into a list of
@defmac.
(AC_CHECKING, AC_CHECK_TYPE, AC_COMPILE_CHECK, AC_C_CROSS,
AC_DYNIX_SEQ, AC_HAVE_LIBRARY, AC_IRIX_SUN, AC_LINK_FILES,
AC_OUTPUT, AC_OUTPUT_COMMANDS, AC_SCO_INTL, AC_VERBOSE,
AC_XENIX_DIR): Move their descriptions into here.
Kill a few TeX warnings.
2000-04-11 11:53:26 +00:00
Akim Demaille
5ae14bc8c0 Disable caching by default, so as not to cause problems when
newbies accidentally use a stale cache file.

* acgeneral.m4 (_AC_INIT_PARSE_ARGS): Set cache_file to /dev/null
to disable caching by default.
(_AC_INIT_HELP): Adjust the --help message.
(AC_CACHE_LOAD, AC_CACHE_SAVE): Don't print "loading/updating
/dev/null" messages.
* autoconf.texi: Note that caching is disabled, how to enable it,
and that `./config.cache' is the traditional name of the cache file.
* install.texi: Likewise.
2000-04-05 07:42:06 +00:00
Akim Demaille
def4320d0f Fix typo. 2000-04-03 12:33:59 +00:00
Akim Demaille
d3019a7877 * doc/autoconf.texi (Canonicalizing): Officially recognize
AC_CANONICAL_TARGET and AC_CANONICAL_BUILD.
2000-04-03 12:05:02 +00:00
Akim Demaille
f98025aaca More doc on portability. 2000-04-03 12:02:37 +00:00
Akim Demaille
f92cbfb64a More doc on quotation. 2000-04-03 12:01:27 +00:00
Akim Demaille
61de8c0fb7 * doc/autoconf.texi (Writing configure.in): Explain what Autoconf
is.  Explain how to use the quotation scheme used in Autoconf.
(Quoting): Update.  Do not advocate changequote.
2000-04-03 11:59:27 +00:00
Akim Demaille
8f0e1b3401 Fix typo. 2000-04-03 11:19:22 +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
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
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
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
3e6fee0e3b * doc/autoconf.texi (Invoking autoconf): Update documentation of
`autoconf --trace'.
2000-03-13 17:39:23 +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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
82033a0b35 * autoconf.texi (Invoking ifnames): ifnames no longer supports
--macrodir.
2000-02-04 13:01:39 +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
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
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