summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDerek Straka <derek@asterius.io>2016-03-24 08:08:35 -0400
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-03-24 16:19:55 +0000
commitdbafbe229360ffe5908b106a9c10e274712b9b17 (patch)
tree93b628e5699c9abc13dc64427289e032dcb59bdc
parentafc0dd5c532684f6201b1e12bbf4c226ea19062d (diff)
downloadopenembedded-core-contrib-dbafbe229360ffe5908b106a9c10e274712b9b17.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 2ecea7c7ed..752f1d3c15 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)