summaryrefslogtreecommitdiffstats
path: root/meta
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2020-01-27 11:42:32 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2020-01-27 16:48:10 +0000
commitb1fe4aab8b8b8a98ab8ba4788a34a90446d6222b (patch)
tree2880610413e2e726750fab7c8c6ec9a77b731e10 /meta
parentf45f769edbaffe41e9c23f91e629bff15542a4e0 (diff)
downloadpoky-b1fe4aab8b8b8a98ab8ba4788a34a90446d6222b.tar.gz
distrodata/maintainers: Add PARSE_ALL_RECIPES flag to fix test issues
Currently the test depends on which DISTRO_FEATURES and targets are selected. Similar to SOURCE_MIRROR_FETCH, add PARSE_ALL_RECIPES to allow the test to see a much wider range of them. This avoids issues added by the new ucontext musl specific recipe and allows the current whitelist to be cleared out a bit (more cleanup can follow). (From OE-Core rev: c139e058bb2df48c79784cf3fd701e51bbc68427) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r--meta/classes/base.bbclass4
-rw-r--r--meta/classes/features_check.bbclass3
-rw-r--r--meta/lib/oeqa/selftest/cases/distrodata.py7
3 files changed, 8 insertions, 6 deletions
diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass
index 5e5cf66322..7bfb1d1912 100644
--- a/meta/classes/base.bbclass
+++ b/meta/classes/base.bbclass
@@ -496,7 +496,7 @@ python () {
496 d.appendVarFlag('do_devshell', 'depends', ' virtual/fakeroot-native:do_populate_sysroot') 496 d.appendVarFlag('do_devshell', 'depends', ' virtual/fakeroot-native:do_populate_sysroot')
497 497
498 need_machine = d.getVar('COMPATIBLE_MACHINE') 498 need_machine = d.getVar('COMPATIBLE_MACHINE')
499 if need_machine: 499 if need_machine and not d.getVar('PARSE_ALL_RECIPES', False):
500 import re 500 import re
501 compat_machines = (d.getVar('MACHINEOVERRIDES') or "").split(":") 501 compat_machines = (d.getVar('MACHINEOVERRIDES') or "").split(":")
502 for m in compat_machines: 502 for m in compat_machines:
@@ -505,7 +505,7 @@ python () {
505 else: 505 else:
506 raise bb.parse.SkipRecipe("incompatible with machine %s (not in COMPATIBLE_MACHINE)" % d.getVar('MACHINE')) 506 raise bb.parse.SkipRecipe("incompatible with machine %s (not in COMPATIBLE_MACHINE)" % d.getVar('MACHINE'))
507 507
508 source_mirror_fetch = d.getVar('SOURCE_MIRROR_FETCH', False) 508 source_mirror_fetch = d.getVar('SOURCE_MIRROR_FETCH', False) or d.getVar('PARSE_ALL_RECIPES', False)
509 if not source_mirror_fetch: 509 if not source_mirror_fetch:
510 need_host = d.getVar('COMPATIBLE_HOST') 510 need_host = d.getVar('COMPATIBLE_HOST')
511 if need_host: 511 if need_host:
diff --git a/meta/classes/features_check.bbclass b/meta/classes/features_check.bbclass
index 391fbe1c94..876d32e315 100644
--- a/meta/classes/features_check.bbclass
+++ b/meta/classes/features_check.bbclass
@@ -23,6 +23,9 @@
23# Copyright 2013 (C) O.S. Systems Software LTDA. 23# Copyright 2013 (C) O.S. Systems Software LTDA.
24 24
25python () { 25python () {
26 if d.getVar('PARSE_ALL_RECIPES', False):
27 return
28
26 # Assume at least one var is set. 29 # Assume at least one var is set.
27 distro_features = set((d.getVar('DISTRO_FEATURES') or '').split()) 30 distro_features = set((d.getVar('DISTRO_FEATURES') or '').split())
28 31
diff --git a/meta/lib/oeqa/selftest/cases/distrodata.py b/meta/lib/oeqa/selftest/cases/distrodata.py
index 5f7f488349..e1cfc3b621 100644
--- a/meta/lib/oeqa/selftest/cases/distrodata.py
+++ b/meta/lib/oeqa/selftest/cases/distrodata.py
@@ -56,15 +56,14 @@ but their recipes claim otherwise by setting UPSTREAM_VERSION_UNKNOWN. Please re
56 return False 56 return False
57 57
58 def is_maintainer_exception(entry): 58 def is_maintainer_exception(entry):
59 exceptions = ["systemd", "musl", "libpam", "newlib", "linux-yocto", "opensbi", "linux-dummy", 59 exceptions = ["musl", "newlib", "linux-yocto", "linux-dummy", "mesa-gl", "libgfortran",
60 "mesa-gl", "libgfortran", "volatile-binds", "libgloss", "bsd-headers", 60 "cve-update-db-native"]
61 "cve-update-db-native", "libssp-nonshared", "argp-standalone", "fts"]
62 for i in exceptions: 61 for i in exceptions:
63 if i in entry: 62 if i in entry:
64 return True 63 return True
65 return False 64 return False
66 65
67 feature = 'require conf/distro/include/maintainers.inc\nLICENSE_FLAGS_WHITELIST += " commercial"\n' 66 feature = 'require conf/distro/include/maintainers.inc\nLICENSE_FLAGS_WHITELIST += " commercial"\nPARSE_ALL_RECIPES = "1"\n'
68 self.write_config(feature) 67 self.write_config(feature)
69 68
70 with bb.tinfoil.Tinfoil() as tinfoil: 69 with bb.tinfoil.Tinfoil() as tinfoil: