From 9c0a7f14fc437ad6515f64da6094972036c3ffb2 Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Wed, 22 May 2024 17:59:42 +0100 Subject: [PATCH] git.sh: split submodule handling to new function Signed-off-by: Leah Rowe --- include/git.sh | 31 ++++++++++++++++++------------- 1 file changed, 18 insertions(+), 13 deletions(-) diff --git a/include/git.sh b/include/git.sh index 5b0a1f7..eeaca50 100755 --- a/include/git.sh +++ b/include/git.sh @@ -96,20 +96,17 @@ git_prep() git_am_patches "$tmpgit" "$_patchdir" || $err "!am $_loc $_patchdir" if [ "$project" = "coreboot" ] && [ $# -gt 2 ]; then - [ ! -f "$tmpgit/.gitmodules" ] || git -C "$tmpgit" submodule \ - update --init || $err "git_prep $_loc: !submod" + prep_submodules "$_loc" + fi - patch_submodules - - if [ "$project" = "coreboot" ] && [ -n "$xtree" ] && \ - [ "$xtree" != "$tree" ]; then - ( - cd "$tmpgit/util" || $err "prep $_loc: !cd $tmpgit/util" - rm -Rf crossgcc || $err "prep $_loc: !rm xgcc" - ln -s "../../$xtree/util/crossgcc" crossgcc || \ - $err "prep $_loc: can't create xgcc symlink" - ) || $err "prep $_loc: can't create xgcc symlink" - fi + if [ "$project" = "coreboot" ] && [ -n "$xtree" ] && \ + [ "$xtree" != "$tree" ] && [ $# -gt 2 ]; then + ( + cd "$tmpgit/util" || $err "prep $1: !cd $tmpgit/util" + rm -Rf crossgcc || $err "prep $1: !rm xgcc" + ln -s "../../$xtree/util/crossgcc" crossgcc || \ + $err "prep $1: can't create xgcc symlink" + ) || $err "prep $1: can't create xgcc symlink" fi [ "$xbmk_release" = "y" ] && [ "$_loc" != "src/$project/$project" ] \ @@ -121,6 +118,14 @@ git_prep() x_ ./update trees -f coreboot "$xtree"; return 0 } +prep_submodules() +{ + [ ! -f "$tmpgit/.gitmodules" ] || git -C "$tmpgit" submodule \ + update --init --checkout || $err "git_prep $1: !submod" + + patch_submodules +} + patch_submodules() { mdir="${PWD}/config/submodule/$project"