My patch was wrong.
I kept the sed transformation the same in the two places,
but it wasn't strict enough to also work on the file contents.
Sorry about that. This fixes it.
From 93927cc7b9f63c414e5bfeb7eba393fde3295601 Mon Sep 17 00:00:00 2001
From: Jim Meyering <meyering(a)redhat.com>
Date: Fri, 20 Nov 2009 16:23:17 +0100
Subject: [PATCH libguestfs] build: correct sed transformation to work also on
.git-module-status
* autogen.sh: Use a more strict sed transformation so it works also
on the contents of .git-module-status, which has no prefix.
* cfg.mk (_submodule_hash): Use a stricter sed regexp.
---
autogen.sh | 2 +-
cfg.mk | 4 +++-
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/autogen.sh b/autogen.sh
index cbb6da8..166ca56 100755
--- a/autogen.sh
+++ b/autogen.sh
@@ -24,7 +24,7 @@ set -v
# Ensure that whenever we pull in a gnulib update or otherwise change to a
# different version (i.e., when switching branches), we also rerun ./bootstrap.
curr_status=.git-module-status
-t=$(git submodule status|sed 's/.//;s/ .*//')
+t=$(git submodule status|sed 's/^[ -]//;s/ .*//')
if test "$t" = "$(cat $curr_status 2>/dev/null)"; then
: # good, it's up to date
else
diff --git a/cfg.mk b/cfg.mk
index 0c19cc9..8811d0d 100644
--- a/cfg.mk
+++ b/cfg.mk
@@ -132,7 +132,9 @@ ifeq (0,$(MAKELEVEL))
# submodule name. Contrast these:
# -b653eda3ac4864de205419d9f41eec267cb89eeb .gnulib
# b653eda3ac4864de205419d9f41eec267cb89eeb .gnulib (v0.0-2286-gb653eda)
- _submodule_hash = sed 's/.//;s/ .*//'
+ # $ cat .git-module-status
+ # b653eda3ac4864de205419d9f41eec267cb89eeb
+ _submodule_hash = sed 's/^[ -]//;s/ .*//'
_update_required := $(shell \
actual=$$(git submodule status | $(_submodule_hash)); \
stamp="$$($(_submodule_hash) $(_curr_status) 2>/dev/null)"; \
--
1.6.5.3.433.g11067