summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb
diff options
context:
space:
mode:
Diffstat (limited to 'bitbake/lib/bb')
-rw-r--r--bitbake/lib/bb/fetch2/gitsm.py5
1 files changed, 5 insertions, 0 deletions
diff --git a/bitbake/lib/bb/fetch2/gitsm.py b/bitbake/lib/bb/fetch2/gitsm.py
index 4d3805a11c..0a982da9c6 100644
--- a/bitbake/lib/bb/fetch2/gitsm.py
+++ b/bitbake/lib/bb/fetch2/gitsm.py
@@ -31,6 +31,7 @@ NOTE: Switching a SRC_URI from "git://" to "gitsm://" requires a clean of your r
31 31
32import os 32import os
33import bb 33import bb
34import copy
34from bb.fetch2.git import Git 35from bb.fetch2.git import Git
35from bb.fetch2 import runfetchcmd 36from bb.fetch2 import runfetchcmd
36from bb.fetch2 import logger 37from bb.fetch2 import logger
@@ -77,6 +78,10 @@ class GitSM(Git):
77 submodules.append(m) 78 submodules.append(m)
78 paths[m] = md['path'] 79 paths[m] = md['path']
79 uris[m] = md['url'] 80 uris[m] = md['url']
81 if uris[m].startswith('..'):
82 newud = copy.copy(ud)
83 newud.path = os.path.realpath(os.path.join(newud.path, md['url']))
84 uris[m] = Git._get_repo_url(self, newud)
80 85
81 for module in submodules: 86 for module in submodules:
82 module_hash = runfetchcmd("%s ls-tree -z -d %s %s" % (ud.basecmd, ud.revisions[name], paths[module]), d, quiet=True, workdir=ud.clonedir) 87 module_hash = runfetchcmd("%s ls-tree -z -d %s %s" % (ud.basecmd, ud.revisions[name], paths[module]), d, quiet=True, workdir=ud.clonedir)