diff options
-rw-r--r-- | meta/classes/externalsrc.bbclass | 2 | ||||
-rw-r--r-- | meta/classes/kernel-yocto.bbclass | 7 | ||||
-rw-r--r-- | scripts/lib/devtool/standard.py | 4 |
3 files changed, 10 insertions, 3 deletions
diff --git a/meta/classes/externalsrc.bbclass b/meta/classes/externalsrc.bbclass index 65dd13ddc1..1ce53ee2d6 100644 --- a/meta/classes/externalsrc.bbclass +++ b/meta/classes/externalsrc.bbclass @@ -65,7 +65,7 @@ python () { url_data = fetch.ud[url] parm = url_data.parm if (url_data.type == 'file' or - 'type' in parm and parm['type'] == 'kmeta'): + (parm.get('type', None) == 'kmeta' and d.getVar('EXTERNALSRC_KMETA') != "1")): local_srcuri.append(url) d.setVar('SRC_URI', ' '.join(local_srcuri)) diff --git a/meta/classes/kernel-yocto.bbclass b/meta/classes/kernel-yocto.bbclass index 1d447951c4..18a7113227 100644 --- a/meta/classes/kernel-yocto.bbclass +++ b/meta/classes/kernel-yocto.bbclass @@ -42,7 +42,12 @@ def find_kernel_feature_dirs(d): destdir = parm["destsuffix"] if type == "kmeta": feature_dirs.append(destdir) - + if not feature_dirs: + # If the kernel-meta directory already exists (e.g from externalsrc) + # with EXTERNALSRC_KMETA = "1" then use it + kmetadir = d.getVar('KMETA') + if os.path.isdir(os.path.join(d.getVar('WORKDIR'), kmetadir)): + feature_dirs.append(kmetadir) return feature_dirs # find the master/machine source branch. In the same way that the fetcher proceses diff --git a/scripts/lib/devtool/standard.py b/scripts/lib/devtool/standard.py index cadd038bf6..fe33c7e1be 100644 --- a/scripts/lib/devtool/standard.py +++ b/scripts/lib/devtool/standard.py @@ -909,7 +909,9 @@ def modify(args, config, basepath, workspace): if bb.data.inherits_class('kernel', rd): f.write('SRCTREECOVEREDTASKS = "do_validate_branches do_kernel_checkout ' - 'do_fetch do_unpack do_kernel_configme do_kernel_configcheck"\n') + 'do_fetch do_kernel_configme do_kernel_configcheck"\n') + if bb.data.inherits_class('kernel-yocto', rd): + f.write('EXTERNALSRC_KMETA = "1"\n') f.write('\ndo_patch() {\n' ' :\n' '}\n') |