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(a)redhat.com +1-919-301-3266
Libvirt virtualization library
http://libvirt.org