[trimming cc's for now]

On 04/25/2012 09:38 AM, Jim Meyering wrote:
>> Another possible alternative: install the precise 0.17 Makefile.in.in
>> via libvirt's gnulib-local, so that when gnulib-tool runs, we are back
>> to bootstrap picking up the version that we know we want to use in libvirt.

gnulib-local doesn't work.  The change has to be to bootstrap, but
'./bootstrap --sync-bootstrap' doesn't honor gnulib-local (rather, it
directly copies from the current state of the gnulib submodule).

Is it worth my time trying to teach './bootstrap --sync-bootstrap' to
honor gnulib-local diffs?  Maybe not; after all, the reason we first
added the 'cat' (aka fancy 'cp') to bootstrap in the first place was
because of bison using the 'gettext' module.  We've already stated that
if you use the 'gettext' module, you want the latest-and-greatest
gettext, at all costs (and the cp makes sense, as it will then alert you
if your installed gettext is out of date with the latest release).  But
if you use the 'gettext-h' module, you want to use gettext, but no
necessarily the latest and greatest, in which case, the Makefile.in.in
which should have been installed by our early run of autopoint should
still be adequate.

In other words, I'm thinking this patch is appropriate (I've tested it
on libvirt, which uses gettext-h, and on bison which uses gettext).

diff --git i/build-aux/bootstrap w/build-aux/bootstrap
index 5aa73cc..6b45868 100755
--- i/build-aux/bootstrap
+++ w/build-aux/bootstrap
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Print a version string.
-scriptversion=2012-04-19.22; # UTC
+scriptversion=2012-04-25.17; # UTC

 # Bootstrap this package from checked-out sources.

@@ -873,7 +873,15 @@ if test $with_gettext = yes; then
     }
   ' po/Makevars.template >po/Makevars || exit 1

-  cat $GNULIB_SRCDIR/build-aux/po/Makefile.in.in > po/Makefile.in.in ||
exit 1
+  # If the 'gettext' module is in use, grab the latest Makefile.in.in.
+  # If only the 'gettext-h' module is in use, assume autopoint already
+  # put the correct version of this file into place.
+  case $gnulib_modules in
+  *gettext-h*) ;;
+  *gettext*)
+    cp $GNULIB_SRCDIR/build-aux/po/Makefile.in.in po/Makefile.in.in ||
exit 1
+    ;;
+  esac

   if test -d runtime-po; then
     # Similarly for runtime-po/Makevars, but not quite the same.


-- 
Eric Blake   ebl...@redhat.com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to