build: log submodule update from git-submodule.sh

Print exactly which submodules have been updated, by reusing the logic of
"git-submodule.sh validate" after executing "git submodule update --init'.

Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
Paolo Bonzini 2023-05-30 17:27:48 +02:00
parent fdb8fd8cb9
commit d120116b5d
2 changed files with 12 additions and 8 deletions

View file

@ -46,6 +46,13 @@ validate_error() {
exit 1
}
check_updated() {
local CURSTATUS OLDSTATUS
CURSTATUS=$($GIT submodule status $module)
OLDSTATUS=$(grep $module $substat)
test "$CURSTATUS" = "$OLDSTATUS"
}
if test -n "$maybe_modules" && ! test -e ".git"
then
echo "$0: unexpectedly called with submodules but no git checkout exists"
@ -75,11 +82,7 @@ status|validate)
test -f "$substat" || validate_error "$command"
test -z "$maybe_modules" && exit 0
for module in $modules; do
CURSTATUS=$($GIT submodule status $module)
OLDSTATUS=$(cat $substat | grep $module)
if test "$CURSTATUS" != "$OLDSTATUS"; then
validate_error "$command"
fi
check_updated $module || validate_error "$command"
done
exit 0
;;
@ -89,6 +92,9 @@ update)
$GIT submodule update --init $modules 1>/dev/null
test $? -ne 0 && update_error "failed to update modules"
for module in $modules; do
check_updated $module || echo Updated "$module"
done
(while read -r; do
for module in $modules; do