summaryrefslogtreecommitdiffstats
path: root/meta/lib/oeqa/sdk/buildtools-cases/build.py
diff options
context:
space:
mode:
authorThune Tran <thune.a.tran@boeing.com>2025-06-26 20:57:21 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2025-07-01 08:49:37 +0100
commit041ba867db947c9336c47747c621d2a1719d5c4c (patch)
treeae5fa9e709e159b239bafaa17f5ece9d5a8c929a /meta/lib/oeqa/sdk/buildtools-cases/build.py
parentece7bb5490c8c8cc8db6529cad5f512e591d2ecb (diff)
downloadpoky-041ba867db947c9336c47747c621d2a1719d5c4c.tar.gz
oeqa/sdk: Simplify test specification and discovery
Simplify how tests are specified and discovered for different SDK configurations to allow per-layer customization. * Introduce `TESTSDK_CASE_DIRS` variable to specify test directory types, replacing the need to modify the default_cases class member * Discover tests from configured layers using a common discovery pattern (`<LAYER_DIR>/lib/oeqa/<dirname>/cases`) where `<dirname>` is specified in `TESTSDK_CASE_DIRS` * The buildtools directories were renamed to follow the common discovery pattern (`<LAYER_DIR>/lib/oeqa/<dirname>/cases`) for consistency across all SDK configurations. meta/lib/oeqa/ ├── sdk/cases/ # Standard SDK: dirname="sdk" ├── buildtools/cases/ # Buildtools: dirname="buildtools" └── buildtools-docs/cases/ # Buildtools-docs: dirname="buildtools-docs" meta-mingw/lib/oeqa/ └── sdkmingw/cases/ # MinGW: dirname="sdkmingw" meta-foo/lib/oeqa/ └── sdk/cases/ # Standard SDK: dirname="sdk" Tested by: 1. Adding new tests using the default discovery pattern `<LAYER_DIR>/lib/oeqa/sdk/cases` and verifying they are discovered and executed. 2. Verifying existing SDK configuration tests work (requires -c populate_sdk first): * Standard SDK: `bitbake core-image-minimal -c testsdk` * Buildtools tarball: `bitbake buildtools-tarball -c testsdk` * Buildtools docs tarball: `bitbake buildtools-docs-tarball -c testsdk` * Mingw SDK: (SDKMACHINE = "x86_64-mingw32") `bitbake core-image-minimal -c testsdk` (From OE-Core rev: bde94c128c0b4e7e1ebea40f582b4dd6dcc965ff) Signed-off-by: Thune Tran <thune.a.tran@boeing.com> Signed-off-by: Chuck Wolber <chuck.wolber@boeing.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/lib/oeqa/sdk/buildtools-cases/build.py')
-rw-r--r--meta/lib/oeqa/sdk/buildtools-cases/build.py32
1 files changed, 0 insertions, 32 deletions
diff --git a/meta/lib/oeqa/sdk/buildtools-cases/build.py b/meta/lib/oeqa/sdk/buildtools-cases/build.py
deleted file mode 100644
index c85c32496b..0000000000
--- a/meta/lib/oeqa/sdk/buildtools-cases/build.py
+++ /dev/null
@@ -1,32 +0,0 @@
1#
2# Copyright OpenEmbedded Contributors
3#
4# SPDX-License-Identifier: MIT
5#
6
7import os, tempfile
8import time
9from oeqa.sdk.case import OESDKTestCase
10from oeqa.utils.subprocesstweak import errors_have_output
11errors_have_output()
12
13class BuildTests(OESDKTestCase):
14 """
15 Verify that bitbake can build virtual/libc inside the buildtools.
16 """
17 def test_libc(self):
18 with tempfile.TemporaryDirectory(prefix='bitbake-build-', dir=self.tc.sdk_dir) as testdir:
19 corebase = self.td['COREBASE']
20
21 self._run('. %s/oe-init-build-env %s' % (corebase, testdir))
22 with open(os.path.join(testdir, 'conf', 'local.conf'), 'ta') as conf:
23 conf.write('\n')
24 conf.write('DL_DIR = "%s"\n' % self.td['DL_DIR'])
25
26 try:
27 self._run('. %s/oe-init-build-env %s && bitbake virtual/libc' % (corebase, testdir))
28 finally:
29 delay = 10
30 while delay and (os.path.exists(testdir + "/bitbake.lock") or os.path.exists(testdir + "/cache/hashserv.db-wal")):
31 time.sleep(1)
32 delay = delay - 1