From: Markus Lehtonen Date: Tue, 8 Sep 2015 10:58:12 +0000 (+0300) Subject: extrernalsrc.bbclass: treat kernel meta like local source X-Git-Tag: 2015-10~511 X-Git-Url: https://code.ossystems.io/gitweb?a=commitdiff_plain;h=b746280c955f48835d119f3fe637876faae6df97;p=openembedded-core.git 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] Signed-off-by: Markus Lehtonen Signed-off-by: Richard Purdie --- 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):