mirror of
https://git.yoctoproject.org/poky
synced 2026-05-08 05:09:24 +00:00
bitbake: bitbake: tests: Add tests for BBMASK in multiconfig
Adds a test to validate that multiconfigs can independently mask off recipes by setting BBMASK. See the test description for further information about how the test works. (Bitbake rev: 513fc2dddf13d5e344162c26d89d2dde2fe85634) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
59fb65f742
commit
c90dd50939
@@ -1,7 +1,8 @@
|
||||
CACHE = "${TOPDIR}/cache"
|
||||
THISDIR = "${@os.path.dirname(d.getVar('FILE'))}"
|
||||
COREBASE := "${@os.path.normpath(os.path.dirname(d.getVar('FILE')+'/../../'))}"
|
||||
BBFILES = "${COREBASE}/recipes/*.bb"
|
||||
EXTRA_BBFILES ?= ""
|
||||
BBFILES = "${COREBASE}/recipes/*.bb ${EXTRA_BBFILES}"
|
||||
PROVIDES = "${PN}"
|
||||
PN = "${@bb.parse.vars_from_file(d.getVar('FILE', False),d)[0]}"
|
||||
PF = "${BB_CURRENT_MC}:${PN}"
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
TMPDIR = "${TOPDIR}/mc1/"
|
||||
BBMASK += "recipes/fails-mc/fails-mc1.bb"
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
TMPDIR = "${TOPDIR}/mc2/"
|
||||
BBMASK += "recipes/fails-mc/fails-mc2.bb"
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
python () {
|
||||
if d.getVar("BB_CURRENT_MC") == "mc1":
|
||||
bb.fatal("Multiconfig is mc1")
|
||||
}
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
python () {
|
||||
if d.getVar("BB_CURRENT_MC") == "mc2":
|
||||
bb.fatal("Multiconfig is mc2")
|
||||
}
|
||||
@@ -232,6 +232,21 @@ class RunQueueTests(unittest.TestCase):
|
||||
expected.remove(x)
|
||||
self.assertEqual(set(tasks), set(expected))
|
||||
|
||||
def test_multiconfig_bbmask(self):
|
||||
# This test validates that multiconfigs can independently mask off
|
||||
# recipes they do not want with BBMASK. It works by having recipes
|
||||
# that will fail to parse for mc1 and mc2, then making each multiconfig
|
||||
# build the one that does parse. This ensures that the recipes are in
|
||||
# each multiconfigs BBFILES, but each is masking only the one that
|
||||
# doesn't parse
|
||||
with tempfile.TemporaryDirectory(prefix="runqueuetest") as tempdir:
|
||||
extraenv = {
|
||||
"BBMULTICONFIG" : "mc1 mc2",
|
||||
"BB_SIGNATURE_HANDLER" : "basic",
|
||||
"EXTRA_BBFILES": "${COREBASE}/recipes/fails-mc/*.bb",
|
||||
}
|
||||
cmd = ["bitbake", "mc:mc1:fails-mc2", "mc:mc2:fails-mc1"]
|
||||
self.run_bitbakecmd(cmd, tempdir, "", extraenv=extraenv)
|
||||
|
||||
@unittest.skipIf(sys.version_info < (3, 5, 0), 'Python 3.5 or later required')
|
||||
def test_hashserv_single(self):
|
||||
|
||||
Reference in New Issue
Block a user