diff options
Diffstat (limited to 'bitbake/lib/bb/fetch2/gitsm.py')
-rw-r--r-- | bitbake/lib/bb/fetch2/gitsm.py | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/bitbake/lib/bb/fetch2/gitsm.py b/bitbake/lib/bb/fetch2/gitsm.py index 86198ee6cd..faffb4c77e 100644 --- a/bitbake/lib/bb/fetch2/gitsm.py +++ b/bitbake/lib/bb/fetch2/gitsm.py | |||
@@ -98,6 +98,12 @@ class GitSM(Git): | |||
98 | uris[m] = md['url'] | 98 | uris[m] = md['url'] |
99 | subrevision[m] = module_hash.split()[2] | 99 | subrevision[m] = module_hash.split()[2] |
100 | 100 | ||
101 | # Convert relative to absolute uri based on parent uri | ||
102 | if uris[m].startswith('..'): | ||
103 | newud = copy.copy(ud) | ||
104 | newud.path = os.path.realpath(os.path.join(newud.path, uris[m])) | ||
105 | uris[m] = Git._get_repo_url(self, newud) | ||
106 | |||
101 | for module in submodules: | 107 | for module in submodules: |
102 | # Translate the module url into a SRC_URI | 108 | # Translate the module url into a SRC_URI |
103 | 109 | ||
@@ -120,11 +126,6 @@ class GitSM(Git): | |||
120 | # This has to be a file reference | 126 | # This has to be a file reference |
121 | proto = "file" | 127 | proto = "file" |
122 | url = "gitsm://" + uris[module] | 128 | url = "gitsm://" + uris[module] |
123 | if uris[module].startswith('..'): | ||
124 | # Local on disk relative reference | ||
125 | newud = copy.copy(ud) | ||
126 | newud.path = os.path.realpath(os.path.join(newud.path, md['url'])) | ||
127 | url = "gitsm://" + Git._get_repo_url(self, newud) | ||
128 | 129 | ||
129 | url += ';protocol=%s' % proto | 130 | url += ';protocol=%s' % proto |
130 | url += ";name=%s" % module | 131 | url += ";name=%s" % module |