summaryrefslogtreecommitdiffstats
path: root/meta/lib/oe
diff options
context:
space:
mode:
authorChen Qi <Qi.Chen@windriver.com>2016-02-03 15:50:21 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-02-04 23:39:01 +0000
commit090fb5146f2e647843620660b98ba1773a2e341c (patch)
treea2fb8463b6194aa7cf5c06bc4326966e77281939 /meta/lib/oe
parent8dc600f14420226143f8797e7ba98001f017c26f (diff)
downloadpoky-090fb5146f2e647843620660b98ba1773a2e341c.tar.gz
copy_buildsystem: add ability to exclude layers
In some cases, we may have some kind of download layers in BBLAYERS, so that we can set BB_NO_NETWORK to "1". This results in extremely large extensible SDK. And we actually don't need these download layers in the SDK. Add a new variable, SDK_LAYERS_EXCLUDE, to enable users to explicitly exclude some layers when generating the extensible SDK. [YOCTO #8878] (From OE-Core rev: acf1148bf3f4e489e9e2b0b8745753e1311ee812) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/lib/oe')
-rw-r--r--meta/lib/oe/copy_buildsystem.py6
1 files changed, 6 insertions, 0 deletions
diff --git a/meta/lib/oe/copy_buildsystem.py b/meta/lib/oe/copy_buildsystem.py
index fb51b5183d..abee5d9a77 100644
--- a/meta/lib/oe/copy_buildsystem.py
+++ b/meta/lib/oe/copy_buildsystem.py
@@ -18,6 +18,7 @@ class BuildSystem(object):
18 self.d = d 18 self.d = d
19 self.context = context 19 self.context = context
20 self.layerdirs = d.getVar('BBLAYERS', True).split() 20 self.layerdirs = d.getVar('BBLAYERS', True).split()
21 self.layers_exclude = (d.getVar('SDK_LAYERS_EXCLUDE', True) or "").split()
21 22
22 def copy_bitbake_and_layers(self, destdir): 23 def copy_bitbake_and_layers(self, destdir):
23 # Copy in all metadata layers + bitbake (as repositories) 24 # Copy in all metadata layers + bitbake (as repositories)
@@ -28,6 +29,11 @@ class BuildSystem(object):
28 corebase = self.d.getVar('COREBASE', True) 29 corebase = self.d.getVar('COREBASE', True)
29 layers.append(corebase) 30 layers.append(corebase)
30 31
32 # Exclude layers
33 for layer_exclude in self.layers_exclude:
34 if layer_exclude in layers:
35 layers.remove(layer_exclude)
36
31 corebase_files = self.d.getVar('COREBASE_FILES', True).split() 37 corebase_files = self.d.getVar('COREBASE_FILES', True).split()
32 corebase_files = [corebase + '/' +x for x in corebase_files] 38 corebase_files = [corebase + '/' +x for x in corebase_files]
33 # Make sure bitbake goes in 39 # Make sure bitbake goes in