diff options
Diffstat (limited to 'scripts/lib')
-rw-r--r-- | scripts/lib/checklayer/__init__.py | 11 | ||||
-rw-r--r-- | scripts/lib/checklayer/cases/bsp.py | 2 | ||||
-rw-r--r-- | scripts/lib/checklayer/cases/common.py | 3 | ||||
-rw-r--r-- | scripts/lib/checklayer/cases/distro.py | 2 |
4 files changed, 13 insertions, 5 deletions
diff --git a/scripts/lib/checklayer/__init__.py b/scripts/lib/checklayer/__init__.py index 78c74ca6ec..0a0db2f02a 100644 --- a/scripts/lib/checklayer/__init__.py +++ b/scripts/lib/checklayer/__init__.py | |||
@@ -16,6 +16,7 @@ class LayerType(Enum): | |||
16 | BSP = 0 | 16 | BSP = 0 |
17 | DISTRO = 1 | 17 | DISTRO = 1 |
18 | SOFTWARE = 2 | 18 | SOFTWARE = 2 |
19 | CORE = 3 | ||
19 | ERROR_NO_LAYER_CONF = 98 | 20 | ERROR_NO_LAYER_CONF = 98 |
20 | ERROR_BSP_DISTRO = 99 | 21 | ERROR_BSP_DISTRO = 99 |
21 | 22 | ||
@@ -106,7 +107,13 @@ def _detect_layer(layer_path): | |||
106 | if distros: | 107 | if distros: |
107 | is_distro = True | 108 | is_distro = True |
108 | 109 | ||
109 | if is_bsp and is_distro: | 110 | layer['collections'] = _get_layer_collections(layer['path']) |
111 | |||
112 | if layer_name == "meta" and "core" in layer['collections']: | ||
113 | layer['type'] = LayerType.CORE | ||
114 | layer['conf']['machines'] = machines | ||
115 | layer['conf']['distros'] = distros | ||
116 | elif is_bsp and is_distro: | ||
110 | layer['type'] = LayerType.ERROR_BSP_DISTRO | 117 | layer['type'] = LayerType.ERROR_BSP_DISTRO |
111 | elif is_bsp: | 118 | elif is_bsp: |
112 | layer['type'] = LayerType.BSP | 119 | layer['type'] = LayerType.BSP |
@@ -117,8 +124,6 @@ def _detect_layer(layer_path): | |||
117 | else: | 124 | else: |
118 | layer['type'] = LayerType.SOFTWARE | 125 | layer['type'] = LayerType.SOFTWARE |
119 | 126 | ||
120 | layer['collections'] = _get_layer_collections(layer['path']) | ||
121 | |||
122 | return layer | 127 | return layer |
123 | 128 | ||
124 | def detect_layers(layer_directories, no_auto): | 129 | def detect_layers(layer_directories, no_auto): |
diff --git a/scripts/lib/checklayer/cases/bsp.py b/scripts/lib/checklayer/cases/bsp.py index a80a5844da..b76163fb56 100644 --- a/scripts/lib/checklayer/cases/bsp.py +++ b/scripts/lib/checklayer/cases/bsp.py | |||
@@ -11,7 +11,7 @@ from checklayer.case import OECheckLayerTestCase | |||
11 | class BSPCheckLayer(OECheckLayerTestCase): | 11 | class BSPCheckLayer(OECheckLayerTestCase): |
12 | @classmethod | 12 | @classmethod |
13 | def setUpClass(self): | 13 | def setUpClass(self): |
14 | if self.tc.layer['type'] != LayerType.BSP: | 14 | if self.tc.layer['type'] not in (LayerType.BSP, LayerType.CORE): |
15 | raise unittest.SkipTest("BSPCheckLayer: Layer %s isn't BSP one." %\ | 15 | raise unittest.SkipTest("BSPCheckLayer: Layer %s isn't BSP one." %\ |
16 | self.tc.layer['name']) | 16 | self.tc.layer['name']) |
17 | 17 | ||
diff --git a/scripts/lib/checklayer/cases/common.py b/scripts/lib/checklayer/cases/common.py index 491a13953c..722d3cf638 100644 --- a/scripts/lib/checklayer/cases/common.py +++ b/scripts/lib/checklayer/cases/common.py | |||
@@ -12,6 +12,9 @@ from checklayer.case import OECheckLayerTestCase | |||
12 | 12 | ||
13 | class CommonCheckLayer(OECheckLayerTestCase): | 13 | class CommonCheckLayer(OECheckLayerTestCase): |
14 | def test_readme(self): | 14 | def test_readme(self): |
15 | if self.tc.layer['type'] == LayerType.CORE: | ||
16 | raise unittest.SkipTest("Core layer's README is top level") | ||
17 | |||
15 | # The top-level README file may have a suffix (like README.rst or README.txt). | 18 | # The top-level README file may have a suffix (like README.rst or README.txt). |
16 | readme_files = glob.glob(os.path.join(self.tc.layer['path'], '[Rr][Ee][Aa][Dd][Mm][Ee]*')) | 19 | readme_files = glob.glob(os.path.join(self.tc.layer['path'], '[Rr][Ee][Aa][Dd][Mm][Ee]*')) |
17 | self.assertTrue(len(readme_files) > 0, | 20 | self.assertTrue(len(readme_files) > 0, |
diff --git a/scripts/lib/checklayer/cases/distro.py b/scripts/lib/checklayer/cases/distro.py index f0bee5493c..a35332451c 100644 --- a/scripts/lib/checklayer/cases/distro.py +++ b/scripts/lib/checklayer/cases/distro.py | |||
@@ -11,7 +11,7 @@ from checklayer.case import OECheckLayerTestCase | |||
11 | class DistroCheckLayer(OECheckLayerTestCase): | 11 | class DistroCheckLayer(OECheckLayerTestCase): |
12 | @classmethod | 12 | @classmethod |
13 | def setUpClass(self): | 13 | def setUpClass(self): |
14 | if self.tc.layer['type'] != LayerType.DISTRO: | 14 | if self.tc.layer['type'] not in (LayerType.DISTRO, LayerType.CORE): |
15 | raise unittest.SkipTest("DistroCheckLayer: Layer %s isn't Distro one." %\ | 15 | raise unittest.SkipTest("DistroCheckLayer: Layer %s isn't Distro one." %\ |
16 | self.tc.layer['name']) | 16 | self.tc.layer['name']) |
17 | 17 | ||