targetcontrol.py: make QEMU_USE_KVM = "1" work
cover targetcontrol.py: make QEMU_USE_KVM = "1" work
The following changes since commit a17f3ec910366e9e7551fa24fbc07929b9584341:
dhcp: fix build issue with libxml2 support (2017-11-10 14:44:31 +0000)
are available in the git repository at:
git://git.openembedded.org/openembedded-core-contrib rbt/use_qemu
http://cgit.openembedded.org/openembedded-core-contrib/log/?h=rbt/use_qemu
Robert Yang (1):
targetcontrol.py: make QEMU_USE_KVM = "1" work
meta/classes/testimage.bbclass | 2 +- meta/lib/oeqa/targetcontrol.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)
Signature · 1 line
2.7.4
PATCH 1/1 targetcontrol.py: make QEMU_USE_KVM = "1" work
It only could be set to "True", which was not common in oe, e.g.:
* WorksQEMU_USE_KVM = "True"
* Didn't work, this would surprise user.QEMU_USE_KVM = "1"
Make it work with both 1 and True now, the "True" is for compatibility.
[YOCTO #12343]
--- meta/classes/testimage.bbclass | 2 +- meta/lib/oeqa/targetcontrol.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)
meta/classes/testimage.bbclass +1 -1
@@ -215,7 +215,7 @@ def testimage_main(d): # Get use_kvm qemu_use_kvm = d.getVar("QEMU_USE_KVM") if qemu_use_kvm and \ - (qemu_use_kvm == 'True' and 'x86' in machine or \ + (qemu_use_kvm in ('True', '1') and 'x86' in machine or \ d.getVar('MACHINE') in qemu_use_kvm.split()): kvm = True else:
meta/lib/oeqa/targetcontrol.py +1 -1
@@ -107,7 +107,7 @@ class QemuTarget(BaseTarget): dump_dir = d.getVar("TESTIMAGE_DUMP_DIR") qemu_use_kvm = d.getVar("QEMU_USE_KVM") if qemu_use_kvm and \ - (qemu_use_kvm == "True" and "x86" in d.getVar("MACHINE") or \ + (qemu_use_kvm in ("True", "1") and "x86" in d.getVar("MACHINE") or \ d.getVar("MACHINE") in qemu_use_kvm.split()): use_kvm = True else:
Signature · 1 line
2.7.4
There are two neater ways of doing this:
1) oe.types.boolean() which handles all the common aliases for true or false.
2)bitbake typed variables. Do QEMU_USE_KVM[type]="boolean" where it gets a default value, and then use oe.data.typed_value('QEMU_USE_KVM', d) to get the value.
Both ways move the actual value parsing to dedicated code so its less error prone and more consistent.
Ross
Quoted 55 lines · Robert Yang
It only could be set to "True", which was not common in oe, e.g.:
* WorksQEMU_USE_KVM= "True"* Didn't work, this would surprise user.
QEMU_USE_KVM= "1"Make it work with both 1 and True now, the "True" is for compatibility.
[YOCTO #12343]
Signed-off-by Robert Yang <[email protected]>--- meta/classes/testimage.bbclass | 2 +- meta/lib/oeqa/targetcontrol.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)meta/classes/testimage. renamed from meta/classes/testimage.bbclass +0
-0bbclass
index 45bb2bd..66b4baf 100644meta/classes/testimage.bbclass +1
-1@@ -215,7 +215,7 @@ def testimage_main(d): # Get use_kvm qemu_use_kvm = d.getVar("QEMU_USE_KVM") if qemu_use_kvm and \ - (qemu_use_kvm == 'True' and 'x86' in machine or \ + (qemu_use_kvm in ('True', '1') and 'x86' in machine or \ d.getVar('MACHINE') in qemu_use_kvm.split()): kvm = True else:meta/lib/oeqa/targetcontrol. renamed from meta/lib/oeqa/targetcontrol.py +0
-0py
index f63936c..1625569 100644meta/lib/oeqa/targetcontrol.py +1
-1@@ -107,7 +107,7 @@ class QemuTarget(BaseTarget): dump_dir = d.getVar("TESTIMAGE_DUMP_DIR") qemu_use_kvm = d.getVar("QEMU_USE_KVM") if qemu_use_kvm and \ - (qemu_use_kvm == "True" and "x86" in d.getVar("MACHINE") or \ + (qemu_use_kvm in ("True", "1") and "x86" in d.getVar("MACHINE") or \ d.getVar("MACHINE") in qemu_use_kvm.split()): use_kvm = Trueelse:
--
2.7.4--
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core
Quoted 6 lines · Ross
There are two neater ways of doing this:
1)
oe.types.boolean()which handles all the common aliases for true or false.
2)bitbake typed variables. Do QEMU_USE_KVM[type]="boolean" where it gets a default value, and then useoe.data.typed_value('QEMU_USE_KVM', d)to get the value.Both ways move the actual value parsing to dedicated code so its less error prone and more consistent.
Thanks, make sense, I will send V2 which uses oe.types.boolean().
// Robert
Quoted 61 lines
Ross
On 14 November 2017 at 06:57, Robert Yang <[email protected] <mailto:[email protected]>> wrote:
It only could be set to "True", which was not common in oe, e.g.: * Works QEMU_USE_KVM = "True" * Didn't work, this would surprise user. QEMU_USE_KVM = "1" Make it work with both 1 and True now, the "True" is for compatibility. [YOCTO #12343] Signed-off-by: Robert Yang <[email protected] <mailto:[email protected]>> --- meta/classes/testimage.bbclass | 2 +- meta/lib/oeqa/targetcontrol.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/meta/classes/testimage.bbclass b/meta/classes/testimage.bbclass index 45bb2bd..66b4baf 100644 --- a/meta/classes/testimage.bbclass +++ b/meta/classes/testimage.bbclass @@ -215,7 +215,7 @@ def testimage_main(d): # Get use_kvm qemu_use_kvm = d.getVar("QEMU_USE_KVM") if qemu_use_kvm and \ - (qemu_use_kvm == 'True' and 'x86' in machine or \ + (qemu_use_kvm in ('True', '1') and 'x86' in machine or \ d.getVar('MACHINE') in qemu_use_kvm.split()): kvm = True else: diff --git a/meta/lib/oeqa/targetcontrol.py b/meta/lib/oeqa/targetcontrol.py index f63936c..1625569 100644 --- a/meta/lib/oeqa/targetcontrol.py +++ b/meta/lib/oeqa/targetcontrol.py @@ -107,7 +107,7 @@ class QemuTarget(BaseTarget): dump_dir = d.getVar("TESTIMAGE_DUMP_DIR") qemu_use_kvm = d.getVar("QEMU_USE_KVM") if qemu_use_kvm and \ - (qemu_use_kvm == "True" and "x86" in d.getVar("MACHINE") or \ + (qemu_use_kvm in ("True", "1") and "x86" in d.getVar("MACHINE") or \ d.getVar("MACHINE") in qemu_use_kvm.split()): use_kvm = True else: -- 2.7.4 -- _______________________________________________ Openembedded-core mailing list [email protected] <mailto:[email protected]> http://lists.openembedded.org/mailman/listinfo/openembedded-core <http://lists.openembedded.org/mailman/listinfo/openembedded-core>