Eric Blake wrote: > Next problem - autoconf 2.59 (alas, RHEL 5 is still stuck on ancient > autotools) didn't understand 'autoreconf --no-recursive'. I'm pushing this: > ... > + bootstrap: cater to autoconf 2.59 > + * build-aux/bootstrap (AUTORCONF): Work even when --no-recursive > + is not available. ...
Typo: s/AUTORCONF/AUTORECONF/ Doesn't really matter, but I fixed it in the ChangeLog. > diff --git a/build-aux/bootstrap b/build-aux/bootstrap > index 69bd960..2a409fc 100755 > --- a/build-aux/bootstrap > +++ b/build-aux/bootstrap > @@ -820,10 +820,14 @@ find "$m4_base" "$source_base" \ > -type l -xtype l -delete > /dev/null 2>&1 > > # Tell autoreconf not to invoke autopoint or libtoolize; they were run > above. > +no_recursive= > +case $($AUTORECONF --help) in > + *--no-recursive*) no_recursive=--no-recursive;; > +esac > echo "running: AUTOPOINT=true LIBTOOLIZE=true " \ > - "$AUTORECONF --verbose --install --no-recursive -I $m4_base > $ACLOCAL_FLAGS" > + "$AUTORECONF --verbose --install $no_recursive -I $m4_base > $ACLOCAL_FLAGS" > AUTOPOINT=true LIBTOOLIZE=true \ > - $AUTORECONF --verbose --install --no-recursive -I $m4_base > $ACLOCAL_FLAGS \ > + $AUTORECONF --verbose --install $no_recursive -I $m4_base > $ACLOCAL_FLAGS \ > || exit 1 Thanks for the fix. In the interests of documenting-in-code (not just in logs) and not letting such a kludge hang around forever, I've added comments: >From 3386ea50cda0973a5ff5c258e2ddfcb39b59bc9b Mon Sep 17 00:00:00 2001 From: Jim Meyering <meyer...@redhat.com> Date: Mon, 16 Jan 2012 21:56:31 +0100 Subject: [PATCH] bootstrap: add a FIXME comment to ensure we eventually remove the hack * build-aux/bootstrap (gnulib_tool_options): Add comment. --- ChangeLog | 5 +++++ build-aux/bootstrap | 9 +++++++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index b02b815..6606a3a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2012-01-16 Jim Meyering <meyer...@redhat.com> + + bootstrap: add a FIXME comment to ensure we eventually remove the hack + * build-aux/bootstrap (gnulib_tool_options): Add comment. + 2012-01-16 Eric Blake <ebl...@redhat.com> bootstrap: cater to autoconf 2.59 diff --git a/build-aux/bootstrap b/build-aux/bootstrap index 2a409fc..13ec5ae 100755 --- a/build-aux/bootstrap +++ b/build-aux/bootstrap @@ -1,6 +1,6 @@ #! /bin/sh # Print a version string. -scriptversion=2012-01-16.17; # UTC +scriptversion=2012-01-16.20; # UTC # Bootstrap this package from checked-out sources. @@ -819,11 +819,16 @@ find "$m4_base" "$source_base" \ -depth \( -name '*.m4' -o -name '*.[ch]' \) \ -type l -xtype l -delete > /dev/null 2>&1 -# Tell autoreconf not to invoke autopoint or libtoolize; they were run above. +# Some systems (RHEL 5) are using ancient autotools, for which the +# --no-recursive option had not been invented. Detect that lack and +# omit the option when it's not supported. FIXME in 2017: remove this +# hack when RHEL 5 autotools are updated, or when they become irrelevant. no_recursive= case $($AUTORECONF --help) in *--no-recursive*) no_recursive=--no-recursive;; esac + +# Tell autoreconf not to invoke autopoint or libtoolize; they were run above. echo "running: AUTOPOINT=true LIBTOOLIZE=true " \ "$AUTORECONF --verbose --install $no_recursive -I $m4_base $ACLOCAL_FLAGS" AUTOPOINT=true LIBTOOLIZE=true \ -- 1.7.9.rc1.2.gccfe4