summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDerek Straka <derek@asterius.io>2016-03-24 08:08:35 -0400
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-01-12 17:45:50 +0000
commitbc57798ff39cae5ffea194c867e07136f7b6f3ec (patch)
tree6ae5def9e587bebcdb4f4c23d41579d34f5d068a
parent12f6c0651af8bd5d6efb751690571cf2fcd3eeb0 (diff)
downloadbitbake-bc57798ff39cae5ffea194c867e07136f7b6f3ec.tar.gz
bitbake: fetch2/gitsm: Fix fetch when the repository contains nested submodules
This fixes a problem when the repository contains multiple levels of submodules via a resursive submodule init. Signed-off-by: Derek Straka <derek@asterius.io> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--lib/bb/fetch2/gitsm.py7
1 files changed, 2 insertions, 5 deletions
diff --git a/lib/bb/fetch2/gitsm.py b/lib/bb/fetch2/gitsm.py
index 2ecea7c7e..752f1d3c1 100644
--- a/lib/bb/fetch2/gitsm.py
+++ b/lib/bb/fetch2/gitsm.py
@@ -110,8 +110,7 @@ class GitSM(Git):
os.chdir(tmpclonedir)
runfetchcmd(ud.basecmd + " reset --hard", d)
runfetchcmd(ud.basecmd + " checkout " + ud.revisions[ud.names[0]], d)
- runfetchcmd(ud.basecmd + " submodule init", d)
- runfetchcmd(ud.basecmd + " submodule update", d)
+ runfetchcmd(ud.basecmd + " submodule update --init --recursive", d)
self._set_relative_paths(tmpclonedir)
runfetchcmd("sed " + gitdir + "/config -i -e 's/bare.*=.*false/bare = true/'", d)
os.rename(gitdir, ud.clonedir,)
@@ -132,6 +131,4 @@ class GitSM(Git):
submodules = self.uses_submodules(ud, d)
if submodules:
runfetchcmd(ud.basecmd + " checkout " + ud.revisions[ud.names[0]], d)
- runfetchcmd(ud.basecmd + " submodule init", d)
- runfetchcmd(ud.basecmd + " submodule update", d)
-
+ runfetchcmd(ud.basecmd + " submodule update --init --recursive", d)