summaryrefslogtreecommitdiffstats
path: root/meta/classes/externalsrc.bbclass
diff options
context:
space:
mode:
authorMarkus Lehtonen <markus.lehtonen@linux.intel.com>2015-09-08 13:58:12 +0300
committerRichard Purdie <richard.purdie@linuxfoundation.org>2015-09-09 14:27:49 +0100
commit07ac146c9045dbcce6dc006b2d68492744b60fd0 (patch)
tree6c10606510aa7e6a0c09c8aa96c24e3379d977c9 /meta/classes/externalsrc.bbclass
parent08e09222b2b8a0ac4f60f02c002b185318a2110b (diff)
downloadopenembedded-core-contrib-07ac146c9045dbcce6dc006b2d68492744b60fd0.tar.gz
extrernalsrc.bbclass: treat kernel meta like local source
Kernel metadata repository needs to be fetched/unpacked into the work directory in order to build the kernel. Sources pointing to a remote location are skipped by externalsrc by default which caused kernel build to fail (because of remote kernel-meta was not made availeble). This patch will make kernel-meta always available. [YOCTO #6658] (From OE-Core rev: b746280c955f48835d119f3fe637876faae6df97) Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes/externalsrc.bbclass')
-rw-r--r--meta/classes/externalsrc.bbclass12
1 files changed, 8 insertions, 4 deletions
diff --git a/meta/classes/externalsrc.bbclass b/meta/classes/externalsrc.bbclass
index 8f7f479293..37c6320fca 100644
--- a/meta/classes/externalsrc.bbclass
+++ b/meta/classes/externalsrc.bbclass
@@ -36,11 +36,15 @@ python () {
else:
d.setVar('B', '${WORKDIR}/${BPN}-${PV}/')
- srcuri = (d.getVar('SRC_URI', True) or '').split()
local_srcuri = []
- for uri in srcuri:
- if uri.startswith('file://'):
- local_srcuri.append(uri)
+ fetch = bb.fetch2.Fetch((d.getVar('SRC_URI', True) or '').split(), d)
+ for url in fetch.urls:
+ url_data = fetch.ud[url]
+ parm = url_data.parm
+ if (url_data.type == 'file' or
+ 'type' in parm and parm['type'] == 'kmeta'):
+ local_srcuri.append(url)
+
d.setVar('SRC_URI', ' '.join(local_srcuri))
if '{SRCPV}' in d.getVar('PV', False):