The libvirt list just had a report of someone that got past bootstrap's $buildreq version check, only to fail in gnulib-tool when applying gnulib-local patches. Libvirt itself doesn't need patch during configure or make, so it wasn't listed in cfg.mk, and Alex didn't have patch(1) installed, but the resulting error from bootstrap was rather confusing.
Should we enhance bootstrap so as to require implicit build dependencies on patch, autoconf 2.59 or newer, and automake 1.9 or newer, in addition to whatever the cfg.mk dependencies list? Of course, cfg.mk can require a newer minimum version on any of these tools. In other words, does this patch look sane? diff --git i/ChangeLog w/ChangeLog index c8699f7..a608aa8 100644 --- i/ChangeLog +++ w/ChangeLog @@ -1,3 +1,9 @@ +2011-12-07 Eric Blake <[email protected]> + + bootstrap: detect tools required by gnulib-tool + * build-aux/bootstrap (buildreq): Provide minimum implicit + dependencies. + 2011-12-01 Eric Blake <[email protected]> mktempd: silence dd usage diff --git i/build-aux/bootstrap w/build-aux/bootstrap index f76db9a..6aaaa0e 100755 --- i/build-aux/bootstrap +++ w/build-aux/bootstrap @@ -1,6 +1,6 @@ #! /bin/sh # Print a version string. -scriptversion=2011-08-11.17; # UTC +scriptversion=2011-12-07.16; # UTC # Bootstrap this package from checked-out sources. @@ -473,6 +473,21 @@ if test $use_libtool = 1; then find_tool LIBTOOLIZE glibtoolize libtoolize fi +case $buildreq in + automake) ;; + *) buildreq="$buildreq +automake 1.9" ;; +esac +case $buildreq in + autoconf) ;; + *) buildreq="$buildreq +autoconf 2.59" ;; +esac +case $buildreq in + patch) ;; + *) buildreq="$buildreq +patch -" ;; +esac if ! printf "$buildreq" | check_versions; then echo >&2 if test -f README-prereq; then -- Eric Blake [email protected] +1-919-301-3266 Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature
