[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [libvirt] [PATCH] run bootstrap if .gnulib is not present



On 11/09/2012 01:47 AM, Hu Tao wrote:
> If .gnulib is deleted unexpectedly, autogen.sh will fail with message:
> 
> fatal: ambiguous argument '.gnulib': unknown revision or path not in the working tree.
> Use '--' to separate paths from revisions, like this:
> 'git <command> [<revision>...] -- [<file>...]'
> 
> which is actually given by git diff .gnulib, which doesn't exist.
> 
> In the case to run bootstrap to create .gnulib.
> 
> ---
>  autogen.sh | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/autogen.sh b/autogen.sh
> index d183397..07c58a1 100755
> --- a/autogen.sh
> +++ b/autogen.sh
> @@ -62,7 +62,9 @@ bootstrap_hash()
>  # Only run bootstrap from a git checkout, never from a tarball.
>  if test -d .git; then
>      curr_status=.git-module-status
> -    t=$(bootstrap_hash; git diff .gnulib)
> +    if test -d .gnulib; then
> +        t=$(bootstrap_hash; git diff .gnulib)
> +    fi

Almost.  If .gnulib doesn't exist, then you failed to initialize $t,
which could cause problems if it is inherited from the environment or if
you run autogen under 'set -u'.

ACK and pushed with this tweak.

diff --git i/.gnulib w/.gnulib
index d245e6d..b493832 160000
--- i/.gnulib
+++ w/.gnulib
@@ -1 +1 @@
-Subproject commit d245e6ddd6ab2624d0d83acd8f111454f984f50f
+Subproject commit b4938324b7113c9d73f8390d21f3ecbd842e74b9
diff --git i/autogen.sh w/autogen.sh
index 07c58a1..126b272 100755
--- i/autogen.sh
+++ w/autogen.sh
@@ -61,7 +61,7 @@ bootstrap_hash()
 # the required file po/Makevars.
 # Only run bootstrap from a git checkout, never from a tarball.
 if test -d .git; then
-    curr_status=.git-module-status
+    curr_status=.git-module-status t=
     if test -d .gnulib; then
         t=$(bootstrap_hash; git diff .gnulib)
     fi

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

Attachment: signature.asc
Description: OpenPGP digital signature


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]