Commit Graph

6661 Commits

Author SHA1 Message Date
Paul Eggert
c8d2326a71 AC_PROG_CC: clarify documentation, encourage -qlanglvl=extc1x
* doc/autoconf.texi (C Compiler): Document the intent of AC_PROG_CC
better.  It's not meant to check for strict conformance, only to
get the latest version with extensions.
(Running the Preprocessor, Present But Cannot Be Compiled):
Document new diagnostic wording.
* lib/autoconf/c.m4 (_AC_C_STD_TRY): Change diagnostic wording from
"checking for gcc option to accept ISO C11" to
"checkint for gcc option to enable C11 features", as this better
reflects what is actually happening.
(_AC_PROG_CC_C99): Put -qlanglvl=extc1x here ...
(_AC_PROG_CC_C11): ... rather than here, as it doesn't pass the C11
test with IBM XL C V12.1, and the point is to enable features not to
test for strict conformance.
2012-09-28 10:45:02 -07:00
Paul Eggert
55ccec071b AC_PROG_CC: try -qlanglvl=extc1x, for IBM XL C V12.1
* lib/autoconf/c.m4 (_AC_PROG_CC_C11): Add -qlanglvl=extc1x, for
IBM XL C V12.1.  It shouldn't pass the C11 test yet, since it's not
documented to support _Alignas, _Alignof, UTF-8 string literals,
and duplicate typedefs, but presumably it will eventually.
2012-09-26 07:50:27 -07:00
Adrian Bunk
6cd9694ba8 maint: fix the comment at the end of _AC_FUNC_REALLOC_IF
* lib/autoconf/functions.m4: fix the comment at the end of
_AC_FUNC_REALLOC_IF
Copyright-paperwork-exempt: yes
2012-09-25 08:47:11 -06:00
Paul Eggert
27eb3aef3e AC_PROG_CC_C89, AC_PROG_CC_C99: now obsolete; defer to AC_PROG_CC
* NEWS:
* doc/autoconf.texi (C Compiler, Running the Preprocessor)
(Limitations of Usual Tools, Present But Cannot Be Compiled)
(Obsolete Macros):
Document the changes described below.
* lib/autoconf/c.m4 (_AC_PROG_CC_FORCE_VERSION): Remove.
(AC_PROG_CC_C89, AC_PROG_CC_C99, AC_PROG_CC_STDC):
Just do AC_PROG_CC, but mark as obsolete.  This replaces my recent
ill-advised attempt to let AC_PROG_CC_C89 and AC_PROG_CC_C99 downgrade
the version of C supported.
* doc/autoconf.texi (Limitations of Usual Tools, Volatile Objects):
Document C11 more accurately.  In some cases this involves removing
some details about 'volatile', alas, since C11 changed this stuff.
Again.
2012-09-21 19:28:20 -07:00
Eric Blake
52661228b1 tests: sort preselections to make test failures easier to read
Prompted by Stefano Lattarini's report of a test failure due to
a missing preselection for automake 1.12.

* tests/tools.at (autom4te preselections): Sort before diffing.
2012-09-21 15:36:49 -06:00
Stefano Lattarini
eb75296d01 maint: resync most files from upstream
The files in lib/Autom4te/ are intentionally not synced at this point,
since automake commit v1.11-2114-g2d671e1 "perl refactor: use modern
semantics of 'open'":
<http://lists.gnu.org/archive/html/automake-patches/2012-03/msg00111.html>
would require wider adaptation of our scripts to the new XFile API, and
also exposes some latent bugs in autoconf where we use raw 'open' instead
of XFile::open.  We'll take care of that in a later patches (maybe).

* build-aux/announce-gen: Resync via 'make fetch'.
* build-aux/config.guess: Likewise.
* build-aux/config.sub: Likewise.
* build-aux/gendocs.sh: Likewise.
* build-aux/gitlog-to-changelog: Likewise.
* build-aux/gnupload: Likewise.
* build-aux/texinfo.tex: Likewise.
* doc/make-stds.texi: Likewise.
* doc/standards.texi: Likewise.
* maint.mk: Likewise.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
2012-09-21 21:52:09 +02:00
Stefano Lattarini
7528220334 build: quote 'like this', not `like this'
As per updated GCS recommendations.

* Makefile.am, configure.ac, lib/m4sugar/Makefile.am,
tests/Makefile.am, m4/m4.m4: Here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
2012-09-21 21:42:59 +02:00
Stefano Lattarini
2b9ab0ee8a autom4te: update Automake preselections to reflect the changes in 1.12.x
Issue revealed by a failure in test "35: tools.at: autom4te preselections":
<http://lists.gnu.org/archive/html/bug-autoconf/2012-09/msg00020.html>

* lib/autom4te.in: Add 'AM_PROG_MKDIR_P'.

Helped-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
2012-09-21 21:42:35 +02:00
Stefano Lattarini
6e7c2223e6 autoreconf: assume --force-missing automake option is supported
According to Automake's NEWS file, it is since at least Automake 1.8,
and in autoreconf we are already assuming aclocal >= 1.8 anyway.

* bin/autoreconf.in (parse_args): Simplify a little by just assuming
the automake option '--force-missing' is supported.
($automake_supports_force_missing): Delete, no longer needed.
* NEWS: Update.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
2012-09-21 21:42:19 +02:00
Stefano Lattarini
6ca25b1fe4 autoreconf: minor simplifying refactoring
* bin/autoreconf.in (run_aclocal): After the previous commit, this has
become just a useless wrapper around xsystem("$aclocal .."), so get rid
of it, and inline its expansion in the two places where it was used ...
(autoreconf_current_directory): ... in here.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
2012-09-21 21:42:19 +02:00
Stefano Lattarini
bc7e12e78e autoreconf: drop support for old (< 1.8) aclocal versions
The minimal automake and aclocal version required by the "most"
conservative important real world-projects (like Gnulib and Libvirt)
is 1.9 anyway (which is the version installed on old but still
supported installations of stable Distros like RHEL 5), so this
change should be safe and justified by now.

* bin/autoreconf.in (parse_args): Simplify by just assuming the aclocal
options '--force' and '--no-force' are supported and works correctly.
($aclocal_supports_force): Delete, no longer needed.
(run_aclocal): Heavily simplify by assuming that aclocal properly creates
'aclocal.m4' as lazily as possible.
* NEWS: Update.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
2012-09-21 21:42:15 +02:00
Stefano Lattarini
2ba184e507 scripts: quote 'like this', not `like this'
As per updated GCS recommendations.

* bin/autoconf.as, bin/autoreconf.in, bin/autoscan.in, ifnames.in,
bin/autoupdate.in: Throughout these files.
* bin/autoheader.in, bin/autom4te.in: Likewise.  Also, remove some
useless escaping of the "'" single-quote characters, and reformat
some message for better line wrapping.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
2012-09-21 21:41:15 +02:00
Paul Eggert
8e796471bf AC_PROG_CC_STDC: fold into AC_PROG_CC, removing C11 macro
* NEWS:
* doc/autoconf.texi (C Compiler): Document the following.
* lib/autoconf/c.m4 (AC_PROG_CC): Check for the latest C version
supported, not just C89.
(_AC_C_STD_TRY): Keep track of the options we add to bring
the C compiler up to standard, so that we can undo it if the
user later requests some other C standard.
(_AC_PROG_CC_FORCE_VERSION): New macro.
(AC_PROG_CC_C89, AC_PROG_CC_C99): Use it.  These macros now
have a documented side effect of changing the C version requested.
(AC_PROG_CC_C11): Remove.  It wasn't useful.
(AC_PROG_CC_STDC): Now an obsolescent alias for AC_PROG_CC.
(AC_C_PROTOTYPES): Allow any standard C version, not just c89.
Don't chatter, since we don't actually run any checking code.
* lib/autoconf/types.m4 (AC_TYPE_LONG_LONG_INT)
(AC_TYPE_UNSIGNED_LONG_LONG_INT): Treat C11 like C99.
* TODO: Remove the TODO item corresponding to the above.
2012-09-20 14:33:32 -07:00
Paul Eggert
787acdfaa7 AC_FUNC_VFORK: check for Solaris 2.4 signal-handling bug
* NEWS:
* doc/autoconf.texi (Particular Functions): Document this.
* lib/autoconf/functions.m4 (_AC_FUNC_VFORK): Check for the bug.
2012-09-16 16:42:20 -07:00
Paul Eggert
f52459d158 AC_CHECK_ALIGNOF: fix cross-compilation bug with newer gcc
* doc/autoconf.texi (Default Includes, Particular Functions)
(Header Portability):
* lib/autoconf/c.m4 (AC_LANG_FUNC_LINK_TRY(C)):
* lib/autoconf/headers.m4 (AC_HEADER_STDC):
* lib/autoconf/types.m4 (_AC_CHECK_ALIGNOF):
* lib/m4sugar/m4sugar.m4 (m4_require) [comment only]:
Assume the existence of the C89 freestanding headers <float.h>,
<limits.h>, <stdarg.h>, <stddef.h>, as that's safe nowadays.
This is less likely to run into gotchas, and should fix a
cross-compilation bug with newer GCC reported by Myke Frysinger in
<http://lists.gnu.org/archive/html/bug-autoconf/2012-09/msg00001.html>.
2012-09-06 14:55:09 -07:00
Paul Eggert
db36f6df60 AC_PROG_CC_C11: new macro, which AC_PROG_CC_STDC now defaults to
* NEWS:
* doc/autoconf.texi (C Compiler): Document this.
(Gnulib, Function Portability, Particular Functions)
(Header Portability, Particular Headers, Defining Symbols)
(Printing Messages, Limitations of Usual Tools)
(Preprocessor Arithmetic, Volatile Objects, Exiting Portably):
Modernize wording for C11.
* lib/autoconf/c.m4 (_AC_C_C99_TEST_HEADER, _AC_C_C99_TEST_BODY):
New macros, taken from _AC_PROG_CC_C99.  These are so that we can
also include the C99 tests in the C11 test program.
(_AC_PROG_CC_C99): Use them.
(_AC_PROG_CC_C11, AC_PROG_CC_C11): New macros.
(AC_PROG_CC_STDC): Prefer C11 to C99 or C89.
2012-08-23 12:46:20 -07:00
Eric Blake
1bb104167e AC_SUBST: document and test previous patch
Test that: invalid variable names are detected, that the variable
name does not get macro expanded, that assignment to the variable
works whether as part of AC_SUBST or independently, that the last
assignment wins.

* doc/autoconf.texi (Setting Output Variables) <AC_SUBST>: Mention
that variable does not overlap with macros.
* tests/base.at (AC_SUBST): New test.

Signed-off-by: Eric Blake <eblake@redhat.com>
2012-08-15 22:23:04 -06:00
Nick Bowler
5fdd360bcb AC_SUBST: don't underquote the variable name
Consider the following:

% cat >configure.ac <<'EOF'
AC_INIT([test], [0])

m4_define([FOO], [baz])
AC_SUBST([FOO], [bar])

AC_CONFIG_FILES([test])
AC_OUTPUT
EOF

% cat >test.in <<'EOF'
@FOO@
EOF

This produces no error messages at autoconf time and none at configure
time.  Nevertheless, the substituted value of FOO is the empty string,
instead of bar, as expected.  Sure enough, in the output variables
section of config.log, we see FOO='' instead of FOO='bar'.  Looking
at the generated configure script, we see that AC_SUBST has produced
baz=bar in the output, instead of the expected FOO=bar.  But this is
the only place: everywhere else is still using FOO.

* lib/autoconf/general.m4 (AC_SUBST): Add another layer of
quoting.
* THANKS: Update.

Signed-off-by: Eric Blake <eblake@redhat.com>
2012-08-15 21:54:53 -06:00
Akim Demaille
b406df6adc doc: fix style issues in the display of macro optional arguments
* doc/autoconf.texi (@dvarv): New.
Use it where optional macro arguments default to other arguments.
2012-07-26 08:13:53 +02:00
Jim Meyering
32d938eaa7 maint: avoid new syntax-check failure
* cfg.mk (exclude_file_name_regexp--sc_prohibit_defined_have_decl_tests):
Exempt autoconf.texi's test of "#if defined HAVE_DECL_MALLOC".
2012-07-22 12:26:26 +02:00
Stefano Lattarini
e56b990931 tests: use configure.ac, not configure.in, with aclocal/automake involved
Do so because future automake and aclocal versions (starting from 1.13)
drop support for 'configure.in' as the name of the Autoconf input file.
Without this patch, the Autoconf testsuite experiences some spurious
failures when run with the development version of aclocal and automake
installed early enough in $PATH.

* tests/torture.at: Rename 'configure.in' to 'configure.ac' throughout.
Remove an obsolete comment about backward-compatibility.

Helped-by: Jim Meyering <jim@meyering.net>
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
2012-07-21 19:45:48 +02:00
Eric Blake
45737f00b0 doc: mention trap pitfalls
Document why the previous patch was useful.

* doc/autoconf.texi (Limitations of Builtins) <trap>: Mention the
need to be defensive in trap handlers.
2012-07-18 14:58:16 -06:00
Andreas Schwab
2738235a0c general: Sanitize IFS in EXIT trap
IFS may be modified temporarily when the configure script receives a
signal.  Make sure the EXIT trap uses the standard value.

* lib/autoconf/general.m4: Sanitize IFS in trap.
* THANKS: Update.

Copyright-paperwork-exempt: Yes
2012-07-18 14:44:53 -06:00
Patrice Dumas
a357718b08 doc: fix texinfo macro usage
The texinfo manual recommends avoiding the use of a trailing @c in
any macro designed to be used inline (as is the case with our ovar
and dvar macros).  Furthermore, passing '@\n' in the middle of a
macro call is much different than passing '@\n' between arguments
of a @defmac for line continuation.

* doc/autoconf.texi (ovar, dvar): Don't end macro with @c, since
these macros are designed to be embedded in one-line usage.
(Fortran Compiler): Don't split @dvar.
* THANKS: Update.
Reported by Stefano Lattarini.

Signed-off-by: Eric Blake <eblake@redhat.com>
Copyright-paperwork-exempt: Yes
2012-07-18 13:51:17 -06:00
Eric Blake
8c8522f1c5 doc: fix texinfo location reports
Otherwise, newer texinfo parses this line as a line directive, and
any error later in the file will claim to be from "conftest.c" instead
of "autoconf.texi".

* doc/autoconf.texi (Generating Sources): Avoid confusing newer
texinfo into thinking we had a line directive.
Reported by Stefano Lattarini, fix suggested by Patrice Dumas.
2012-07-17 12:02:12 -06:00
Eric Blake
0eebfff3e0 m4sh: avoid // issues in _AS_PATH_WALK
As reported by Paul Keir on the cygwin lists,
http://cygwin.com/ml/cygwin/2012-07/msg00263.html,
some people like to stick / in their $PATH, and if we then try
to probe $as_dir/progname for existence, we can end up causing
cygwin to have a several-second timeout per //name probe.  It
is better to avoid inserting the extra slash when $as_dir is the
root directory, and simpler to code by always having a trailing
slash present than it is to strip a trailing slash.  Thankfully,
_AS_PATH_WALK is an undocumented interface, and even if someone
was using it in spite of the warnings, their use of $as_dir/foo
will typically only lead to odd-looking /dir//foo probes, with
only the case of / in $PATH causing slowdowns, and only when //
is special.

There was also a minor bug where the if-not-found code of
_AS_PATH_WALK could be executed with $IFS still in the wrong state.

* lib/m4sugar/m4sh.m4 (_AS_PATH_WALK): Always end as_dir in /.
Avoid wrong IFS during if-not-found.  Minor optimization to avoid
regex.
(_AS_DETECT_BETTER_SHELL, _AS_SHELL_SANITIZE): Update clients.
* lib/autotest/general.m4 (_AT_FINISH): Likewise.
* lib/autoconf/programs.m4 (_AC_CHECK_PROG, _AC_PATH_PROG)
(_AC_PATH_PROGS_FEATURE_CHECK, _AC_PATH_PROG_FLAVOR_GNU): Likewise.
2012-07-13 11:33:13 -06:00
Eric Blake
7f1e05a5fc doc: avoid hard-coding usage of automake's missing
Now that automake documents AM_MISSING_PROG, and given that automake
has reserved the right to change the calling conventions of 'missing',
we should not recommend a hard-coded use of 'missing --run'.

* doc/autoconf.texi (Making testsuite Scripts): Recommend
AM_MISSING_PROG when using automake, and avoid hard-coding use of
'missing' otherwise.
2012-06-29 08:54:43 -06:00
Eric Blake
4d78ca217d maint: don't sync elisp-comp or missing from gnulib
Automake 1.13 will be changing the semantics of 'missing'; maintaining
our own copy in version control risks problems if our version does
not match automake's expectations.  As a result, gnulib no longer
mirrors 'missing'.  Furthermore, gnulib originally added the
'elisp-comp' module with the explanation that autoconf uses it, but
we don't use it anywhere other than the manner in which automake
will byte-compile our .el files; since we don't document the script,
we should be just fine using the version that was installed by automake.

See more discussion in the thread starting here:
https://lists.gnu.org/archive/html/automake-patches/2012-06/msg00154.html

* cfg.mk (gnulib-update): Drop files installed by automake and no
longer present in gnulib.
* .gitattributes: Delete references to files not in git.
2012-06-27 16:59:21 -06:00
Eric Blake
e8d3d8bed1 maint: add attribution
* THANKS: Update.
2012-06-18 07:11:26 -06:00
David Hill
9b484c0be0 functions: add Bitrig defaults
Cater to the Bitrig OS, an OpenBSD fork.  config.guess and
config.sub have been updated upstream.

* lib/autoconf/functions.m4 (_AC_FUNC_MALLOC_IF)
(_AC_FUNC_REALLOC_IF): Bitrig inherits from BSD.
2012-06-18 07:08:46 -06:00
Jim Meyering
b29e5e79d5 maint: fix typos in old ChangeLog files
Culprits identified and fixed automatically using these commands:
git ls-files | misspellings -f - |grep -v '^ERROR:' |perl -pe \
's/^(.*?)\[(\d+)\]: (\w+) -> "(.*?)"$/sed -i '\''${2}s!$3!$4!'\'' $1/'\
|bash
using http://github.com/lyda/misspell-check
* ChangeLog.2, ChangeLog.3: Fix typos.
2012-05-29 12:33:46 +02:00
Stefano Lattarini
560f16b52d general: deprecate 'configure.in' as autoconf input
It has been years since that has been deprecated in the documentation,
in favour of 'configure.ac':

  Previous versions of Autoconf promoted the name configure.in, which
  is somewhat ambiguous (the tool needed to process this file is not
  described by its extension), and introduces a slight confusion with
  config.h.in and so on (for which '.in' means "to be processed by
  configure"). Using configure.ac is now preferred.

It's now time to start giving runtime warning about the use of
'configure.in', so that support for it can be removed in future
versions of autoconf/automake.

* lib/Autom4te/Configure_ac.pm: Issue a warning in the 'obsolete'
category if 'configure.in' is detected.  Since this module is synced
from Automake, this change is to be backported there (and will be
soon).
* doc/autoconf.texi: Update.
* tests/tools.at: Adjust to avoid spurious failures.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
2012-05-23 00:13:01 +02:00
Bruno Haible
7fbb553727 functions: improve cross-compilation guesses for glibc system hosts
Paul and Eric suggested that improving the cross-compilation guesses
for targets that are glibc systems would be welcome here [1][2].

This patch modifies the cross-compilation behaviour of
  AC_FUNC_CHOWN
  AC_FUNC_GETGROUPS
  AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK
  AC_FUNC_MALLOC
  AC_FUNC_MMAP
  AC_FUNC_REALLOC
  AC_FUNC_STRCOLL
so that when the target is a glibc system (or, in case of AC_FUNC_MALLOC
and AC_FUNC_REALLOC, any known "good" Unix system), the guess is
"yes it works" rather than "guessing no".

This is important because some of these macros are used in Gnulib, and
in case of "guessing no" Gnulib provides extra workaround code, and
  1) Generally, when targetting embedded systems, code size should be
     minimized,
  2) In [3], unnecessary workaround code will look like a Glibc bug.

This patch also changes the configure output to "guessing yes" or
"guessing no" in a case where the ac_cv_* variable is undocumented.

[1] http://lists.gnu.org/archive/html/bug-gnulib/2012-05/msg00010.html
[2] http://lists.gnu.org/archive/html/bug-gnulib/2012-05/msg00013.html
[3] http://sourceware.org/glibc/wiki/Testing/Gnulib

This patch was tested with the simple configure.ac file
=============== configure.ac ==================
AC_INIT([dummy], [0])
AC_FUNC_CHOWN
AC_FUNC_GETGROUPS
AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK
AC_FUNC_MALLOC
AC_FUNC_MMAP
AC_FUNC_REALLOC
AC_FUNC_STRCOLL
AC_OUTPUT
===============================================

* lib/autoconf/functions.m4 (AC_FUNC_CHOWN): Require AC_CANONICAL_HOST.
When cross-compiling to a glibc system, guess yes.
(AC_FUNC_GETGROUPS): Likewise.
(AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Likewise.
(AC_FUNC_STRCOLL): Likewise.
(_AC_FUNC_MALLOC_IF): Require AC_CANONICAL_HOST. When cross-compiling
to a know Unix system other than AIX and OSF/1, guess yes.
(_AC_FUNC_REALLOC_IF): Likewise.
(AC_FUNC_MMAP): Require AC_CANONICAL_HOST. When cross-compiling to a
system with a Linux kernel, guess yes.
2012-05-03 09:32:01 -06:00
Eric Blake
926a43c86d doc: fix another bad @xref
Obviously, I didn't fully test commit f35498d.

* doc/autoconf.texi (Limitations of Builtins): Add a comma.

Signed-off-by: Eric Blake <eblake@redhat.com>
2012-05-03 09:29:06 -06:00
Eric Blake
2d4eb95932 maint: post-release administrivia
* NEWS: Add header line for next release.
* .prev-version: Record previous version.
* cfg.mk (old_NEWS_hash): Auto-update.
2012-04-24 21:06:32 -06:00
Eric Blake
771017a433 Release Version 2.69.
* NEWS: Mention the release.

Signed-off-by: Eric Blake <eblake@redhat.com>
2012-04-24 21:04:26 -06:00
Eric Blake
19513cca18 maint: drop bz2 tarball
At 2.68b, I asked whether anyone would miss .gz and .bz2 formats.
Consensus was overwhelming that .gz still holds a place in people's
hearts, in spite of .xz compressing to smaller files, but no one
was able to make a convincing argument for .bz2.

* configure.ac (AM_INIT_AUTOMAKE): Drop bzip2; xz wins hands down.

Signed-off-by: Eric Blake <eblake@redhat.com>
2012-04-24 20:38:57 -06:00
Eric Blake
84e20e9164 maint: resync files from upstream
The files in lib/Autom4te/ are intentionally not synced at this
point, since this recent Automake patch:
https://lists.gnu.org/archive/html/automake-patches/2012-03/msg00111.html

was buggy regarding '-' as stdout, and also exposes some latent
bugs in autoconf where we use raw 'open' instead of XFile::open.

* build-aux/announce-gen: Resync via 'make fetch'.
* build-aux/config.sub: Likewise.
* build-aux/git-version-gen: Likewise.
* build-aux/gnupload: Likewise.
* build-aux/move-if-change: Likewise.
* build-aux/texinfo.tex: Likewise.
* doc/standards.texi: Likewise.
* maint.mk: Likewise.
2012-04-24 20:15:05 -06:00
Eric Blake
f35498d15c doc: fix bad @xref uses
Upstream gnulib maint.mk improvements caught a few issues we
should fix, as well as a few issues in files we copy from
other sources that we will just ignore here.

* doc/autoconf.texi (Generic Programs, Special Shell Variables)
(Limitations of Builtins): Use references correctly.
* cfg.mk
(exclude_file_name_regexp--sc_prohibit_undesirable_word_seq)
(exclude_file_name_regexp--sc_useless_cpp_parens): Add exemptions.
2012-04-24 20:14:19 -06:00
Bruno Haible
280f330992 AC_INIT: remove a transitional warning
On bi-arch systems (such as x86 / x86_64) it is often necessary to pass
the --host option together with an appropriate value for CC. But this
triggers a warning:

$ ./configure --host=i686-pc-linux-gnu CC="gcc -m32 -march=i586"
configure: WARNING: if you wanted to set the --build type, don't use --host.
    If a cross compiler is detected then cross compile mode will be used
..

This warning was introduced on 2000-06-30, in commit
<http://git.savannah.gnu.org/gitweb/?p=autoconf.git;a=commitdiff;h=cb2e761b8e1181f97e8e09d85526bd22078433db>
with the remark "Re-enable the old behavior of --host and --build."

This warning was meant to warn users about a changed semantics of
--build and --host. This change is now 12 years in the past; users
have had enough time to learn it. I therefore suggest to remove the
warning.

I've done lots of cross and bi-arch compilations in the last 10 years,
all with --host and without --build, and have never observed a problem
with it, except for the warning. Simply relying on config.guess is sufficient.

* lib/autoconf/general.m4 (_AC_INIT_PARSE_ARGS): Don't warn if --host
given without --build.

Signed-off-by: Eric Blake <eblake@redhat.com>
2012-04-24 15:18:45 -06:00
Bruno Haible
303e507c27 doc: fix incorrect and incomplete doc about cross-compilation mode
* doc/autoconf.texi (Runtime): Mention the effect of the cross-
compilation mode on AC_RUN_IFELSE.
(Specifying Target Triplets): Fix description of --host's effects.
(Hosts and Cross-Compilation): Remove incorrect statement about
--host's effects.

Signed-off-by: Eric Blake <eblake@redhat.com>
2012-04-24 15:01:02 -06:00
Paul Eggert
ed96f6541c doc: document --build and cross-compilation better
* doc/autoconf.texi (Specifying Target Triplets): Mention that
specifying a build-type that differs from host-type enables
cross-compilation.  Problem reported by Bruno Haible in:
http://lists.gnu.org/archive/html/autoconf-patches/2012-04/msg00009.html
2012-04-23 10:30:19 -07:00
Jim Meyering
eaa96cb8bd maint: avoid "make syntax-check" failure
* cfg.mk (old_NEWS_hash): Update to reflect typo fix in old news.
2012-04-11 12:05:38 +02:00
Stefano Lattarini
0db9c1a19f cosmetics fix imprecise comment in Autom4te::General
* lib/Autom4te/General.pm: This file is *not* used by Automake;
adjust comments accordingly.

Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
2012-03-29 00:29:12 +02:00
Paul Eggert
a7476d52c4 tests: fix port of AT_CHECK_ENV to hosts with flaky grep
* tests/local.at (AT_CHECK_ENV): Don't copy the buggy grep's
diagnostics to stderr, as that causes AT_CHECK to fail.  They can
be found in the stderr-* files if this is needed for debugging.
2012-03-07 14:23:59 -08:00
Eric Blake
943789e03f docs: document set -n pitfalls
* doc/autoconf.texi (Limitations of Builtins) <set>: Document
issues with set -n.
2012-03-07 11:16:38 -07:00
Eric Blake
da41210673 build: require perl 5.6
This reduces the implicit requirement from 5.6.2 back to 5.6,
while raising the explicit requirement to match the actual code.

* configure.ac (PERL): Fail up front if perl is too old.
* NEWS: Document this.
* README: Likewise.
* README-hacking: Likewise.
* lib/Autom4te/ChannelDefs.pm: Bump requirement.
* lib/Autom4te/General.pm: Relax requirement.
2012-03-07 10:50:09 -07:00
Eric Blake
220f8c240d tests: ignore ksh -n warnings
Recent ksh is noisy:

$ ksh -nc '``'; echo $?
ksh: warning: line 1: `...` obsolete, use $(...)
0

* tests/local.at (AT_CHECK_SHELL_SYNTAX): Ignore noisy ksh on.
Reported by Martin Zaun.

Signed-off-by: Eric Blake <eblake@redhat.com>
2012-03-07 10:41:37 -07:00
Paul Eggert
16126bc430 tests: port AT_CHECK_ENV to hosts with flaky grep
* tests/local.at (AT_CHECK_ENV): Don't assume that if one grep
fails, the other will too.  It could be that 'grep' is flaky,
and fails somewhat at random.  This would explain the problems
reported for autoconf-2.68b on FreeBSD and MacOS X, for example:
<http://lists.gnu.org/archive/html/bug-autoconf/2012-03/msg00032.html>
<http://lists.gnu.org/archive/html/bug-autoconf/2012-03/msg00035.html>
<http://lists.gnu.org/archive/html/bug-autoconf/2012-03/msg00036.html>
<http://lists.gnu.org/archive/html/bug-autoconf/2012-03/msg00044.html>
2012-03-06 22:57:29 -08:00
Stefano Lattarini
a5edd74e69 maint: resync files from upstream
Since the perl version required in Automake::Getopt has been
recently lowered from 5.6.2 to 5.6.0, this change has the nice
effect of making autoconf compatible again with all perls in
the 5.6.x release series.

* maint.mk: Resync via 'make fetch'.
* lib/Autom4te/Channels.pm: Likewise.
* lib/Autom4te/Configure_ac.pm: Likewise.
* lib/Autom4te/FileUtils.pm: Likewise.
* lib/Autom4te/Getopt.pm: Likewise.
* lib/Autom4te/XFile.pm: Likewise.
2012-03-06 12:45:10 +01:00