diff options
author | Eric Blake <eblake@redhat.com> | 2013-12-03 17:42:38 -0700 |
---|---|---|
committer | Eric Blake <eblake@redhat.com> | 2013-12-05 16:21:04 -0700 |
commit | fdfe96fe43746d63364f823ab3032c8301d53d1f (patch) | |
tree | e553a89a09a282c394d8e4aab3f4b225f10ef9d3 | |
parent | d6ba92ea479ab1148730e62b937f3115daf47643 (diff) | |
download | gnulib-fdfe96fe43746d63364f823ab3032c8301d53d1f.tar.gz |
bootstrap: warn about BSD toolchain snafu
With my help on IRC, Roman Bogorodskiy identified a bug where the
BSD autoconf wrapper script eats stdin[1], which in turn causes
autopoint from gettext 0.18.3 to fail to find AM_GNU_GETTEXT_VERSION
out of configure.ac[2], with this error:
./bootstrap: autopoint --force
autopoint: *** Missing version: please specify in configure.ac through a line 'AM_GNU_GETTEXT_VERSION(x.yy.zz)' the gettext version the package is using
[1] http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/184479
[2] http://git.sv.gnu.org/cgit/gettext.git/commit/gettext-tools/misc/autopoint.in?id=eea2dddde
The workaround would be painful to automate (because gettext
hardcodes the use of autom4te rather than honoring ${AUTOM4TE},
we'd have to create a temporary wrapper earlier in $PATH that
forwards to the real autom4te-x.yz - basically, repeating the
logic of what a wrapper script was supposed to do). Further,
while the broken autom4te definitely hurts gettext 0.18.3, it
tends to have no issues with gettext 0.18.2; and since the
problem has been identified, it will not be long before fixed
autom4te and/or improved gettext that is not so stubborn
about using exactly 'autom4te' will be available. Therefore,
for now we just warn about the situation.
* build-aux/bootstrap: Alert users to a broken autom4te.
Signed-off-by: Eric Blake <eblake@redhat.com>
-rwxr-xr-x | build-aux/bootstrap | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/build-aux/bootstrap b/build-aux/bootstrap index e31d17df58..5acbe5b681 100755 --- a/build-aux/bootstrap +++ b/build-aux/bootstrap @@ -1,6 +1,6 @@ #! /bin/sh # Print a version string. -scriptversion=2013-08-15.22; # UTC +scriptversion=2013-12-05.23; # UTC # Bootstrap this package from checked-out sources. @@ -551,6 +551,14 @@ if ! printf "$buildreq" | check_versions; then fi fi +# Warn the user if autom4te appears to be broken; this causes known +# issues with at least gettext 0.18.3. +probe=$(echo 'm4_quote([hi])' | autom4te -l M4sugar -t 'm4_quote:$%' -) +if test "x$probe" != xhi; then + warn_ "WARNING: your autom4te wrapper eats stdin;" + warn_ "if bootstrap fails, consider upgrading your autotools" +fi + echo "$0: Bootstrapping from checked-out $package sources..." # See if we can use gnulib's git-merge-changelog merge driver. |