v86d, qemuboot-x86.inc: use KERNEL_MODULE_AUTOLOAD+KERNEL_MODULE_PROBECONF for uvesafb instead of fbsetup init script
PATCH 1/4 v86d, qemuboot-x86.inc: use KERNEL_MODULE_AUTOLOAD+KERNEL_MODULE_PROBECONF for uvesafb instead of fbsetup init script
* also add UVESA_MODE variable for easier change of resolution and respect it in QB_KERNEL_CMDLINE_APPEND as well
* don't use init script just to call modprobe
* I wasn't able to test this all the way with runqemu, because runqemu
doesn't work on my system, but I've verified that the right params
appear there and that I can easily change UVESA_MODE from
conf/local.conf, the modules.d and modprobe.d files look OK:
OE qemux86@ ~/build/oe-core/tmp-glibc/deploy/images/qemux86/core-image-sato-qemux86-20170427212613.rootfs
$ cat etc/modules-load.d/uvesafb.conf uvesafb
OE qemux86@ ~/build/oe-core/tmp-glibc/deploy/images/qemux86/core-image-sato-qemux86-20170427212613.rootfs
$ cat etc/modprobe.d/uvesafb.conf options uvesafb mode_option=1600x1200-32
so I'll be able to drop this KERNEL_MODULE_AUTOLOAD + KERNEL_MODULE_PROBECONF from my DISTRO conf.
--- meta/conf/machine/include/qemuboot-x86.inc | 7 +++++- meta/recipes-bsp/v86d/v86d/fbsetup | 3 --- meta/recipes-bsp/v86d/v86d/uvesafb.conf | 2 -- meta/recipes-bsp/v86d/v86d_0.1.10.bb | 36 ------------------------------ 4 files changed, 6 insertions(+), 42 deletions(-) delete mode 100755 meta/recipes-bsp/v86d/v86d/fbsetup delete mode 100644 meta/recipes-bsp/v86d/v86d/uvesafb.conf
meta/conf/machine/include/qemuboot-x86.inc +6 -1
@@ -10,6 +10,11 @@ QB_CPU_KVM_x86-64 = "-cpu core2duo" QB_AUDIO_DRV = "alsa" QB_AUDIO_OPT = "-soundhw ac97,es1370" -QB_KERNEL_CMDLINE_APPEND = "vga=0 uvesafb.mode_option=640x480-32 oprofile.timer=1 uvesafb.task_timeout=-1" +QB_KERNEL_CMDLINE_APPEND = "vga=0 uvesafb.mode_option=${UVESA_MODE} oprofile.timer=1 uvesafb.task_timeout=-1" # Add the 'virtio-rng-pci' device otherwise the guest may run out of entropy QB_OPT_APPEND = "-vga vmware -show-cursor -usb -usbdevice tablet -device virtio-rng-pci" + +KERNEL_MODULE_AUTOLOAD += "uvesafb" +KERNEL_MODULE_PROBECONF += "uvesafb" +UVESA_MODE ?= "640x480-32" +module_conf_uvesafb = "options uvesafb mode_option=${UVESA_MODE}"
meta/recipes-bsp/v86d/v86d/fbsetup deleted +0 -3
@@ -1,3 +0,0 @@ -#!/bin/sh - -/sbin/modprobe uvesafb
meta/recipes-bsp/v86d/v86d/uvesafb.conf deleted +0 -2
@@ -1,2 +0,0 @@ -# Load uvesafb.ko at boot -uvesafb
meta/recipes-bsp/v86d/v86d_0.1.10.bb +0 -36
@@ -11,8 +11,6 @@ PR = "r2" SRC_URI = "http://distfiles.gentoo.org/distfiles/${BP}.tar.bz2 \ file://Update-x86emu-from-X.org.patch \ - file://fbsetup \ - file://uvesafb.conf \ file://ar-from-env.patch \ file://aarch64-host.patch \ "
@@ -23,9 +21,6 @@ SRC_URI[sha256sum] = "634964ae18ef68c8493add2ce150e3b4502badeb0d9194b4bd81241d25 PACKAGE_ARCH = "${MACHINE_ARCH}" COMPATIBLE_HOST = '(i.86|x86_64).*-linux' -INITSCRIPT_NAME = "fbsetup" -INITSCRIPT_PARAMS = "start 0 S ." - do_configure () { ./configure --with-x86emu }
@@ -37,35 +32,4 @@ do_compile () { do_install () { install -d ${D}${base_sbindir} install v86d ${D}${base_sbindir}/ - - # Only install fbsetup script if 'sysvinit' is in DISTRO_FEATURES - if ${@bb.utils.contains('DISTRO_FEATURES','sysvinit','true','false',d)}; then - install -d ${D}${sysconfdir}/init.d/ - install -m 0755 ${WORKDIR}/fbsetup ${D}${sysconfdir}/init.d/fbsetup - fi - - # Install systemd related configuration file - if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then - install -d ${D}${sysconfdir}/modules-load.d - install -m 0644 ${WORKDIR}/uvesafb.conf ${D}${sysconfdir}/modules-load.d - fi -} - -# As the recipe doesn't inherit systemd.bbclass, we need to set this variable -# manually to avoid unnecessary postinst/preinst generated. -python __anonymous() { - if not bb.utils.contains('DISTRO_FEATURES', 'sysvinit', True, False, d): - d.setVar("INHIBIT_UPDATERCD_BBCLASS", "1") -} - -inherit update-rc.d - -PACKAGE_WRITE_DEPS_append = " ${@bb.utils.contains('DISTRO_FEATURES','systemd','systemd-systemctl-native','',d)}" -pkg_postinst_${PN} () { - if ${@bb.utils.contains('DISTRO_FEATURES','systemd sysvinit','true','false',d)}; then - if [ -n "$D" ]; then - OPTS="--root=$D" - fi - systemctl $OPTS mask fbsetup.service - fi }
Signature · 1 line
2.14.0
PATCH 2/4 icecc.bbclass: prevent nativesdk builds depending on target specific KERNEL_CC
* without this we cause nativesdk-linux-libc-headers to depend on target specific KERNEL_CC (through icecc_get_tool -> icecc_is_kernel -> KERNEL_CC -> HOST_CC_KERNEL_ARCH -> TARGET_CC_KERNEL_ARCH -> TUNE_FEATURES(thumb) as shown by bitbake-diffsigs:
OE qemux86@ ~/build/oe-core $ ls /OE/build/oe-core/tmp-glibc/sstate-diff/1499859497/qemu*/*sdk*/*/*do_configure.sigdata* /OE/build/oe-core/tmp-glibc/sstate-diff/1499859497/qemuarm/x86_64-nativesdk-oesdk-linux/nativesdk-linux-libc-headers/4.10-r0.do_configure.sigdata.3a9a423878d56524e0ee8e42eba1804f /OE/build/oe-core/tmp-glibc/sstate-diff/1499859497/qemux86/x86_64-nativesdk-oesdk-linux/nativesdk-linux-libc-headers/4.10-r0.do_configure.sigdata.401071dbaa88903ece37d35a47965ff2
OE qemux86@ ~/build/oe-core $ bitbake-diffsigs /OE/build/oe-core/tmp-glibc/sstate-diff/1499859497/qemu*/*sdk*/*/*do_configure.sigdata*
basehash changed from 39774238b66763c598153132e87a2c1a to aa2d66e770bf533e312536eb0a401c4c
Variable TARGET_CC_KERNEL_ARCH value changed from '${@bb.utils.contains('TUNE_FEATURES', 'thumb', '-mno-thumb-interwork-marm', '', d)} TUNE_FEATURES{thumb} = Set' to ''--- meta/classes/icecc.bbclass | 1 + 1 file changed, 1 insertion(+)
meta/classes/icecc.bbclass +1 -0
@@ -42,6 +42,7 @@ def icecc_dep_prepend(d): DEPENDS_prepend += "${@icecc_dep_prepend(d)} " +get_cross_kernel_cc[vardepsexclude] += "KERNEL_CC" def get_cross_kernel_cc(bb,d): kernel_cc = d.getVar('KERNEL_CC', False)
Signature · 1 line
2.14.0
PATCH 3/4 insane.bbclass: fix override handling in RDEPENDS QA
In reply to Martin JansaFrom: Gan Yau Wai <[email protected]>
The package_qa_check_rdepends() in insane.bbclass has incorrectly replace its localdata OVERRIDES value with the package name. Fixing it by appending the package name to the existing OVERRIDES value. This resolves RDEPENDS QA error when setting PACKAGECONFIG using a pn- override at local.conf.
Cherry picked from master 60d28dd72daee235150ab6605cbf953f1ea691df
[YOCTO #11374]
--- meta/classes/insane.bbclass | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
meta/classes/insane.bbclass +1 -1
@@ -867,7 +867,7 @@ def package_qa_check_rdepends(pkg, pkgdest, skip, taskdeps, packages, d): if not "-dbg" in pkg and not "packagegroup-" in pkg and not "-image" in pkg: localdata = bb.data.createCopy(d) - localdata.setVar('OVERRIDES', pkg) + localdata.setVar('OVERRIDES', localdata.getVar('OVERRIDES') + ':' + pkg) # Now check the RDEPENDS rdepends = bb.utils.explode_deps(localdata.getVar('RDEPENDS') or "")
Signature · 1 line
2.14.0
Re: [PATCH][pyro 3/4] insane.bbclass: fix override handling in RDEPENDS QA
I'm sorry for resending the first 2 patches in this series, but git send-email didn't like the colon in Gan Yau Wai e-mail name - it's inside the quotes for author e-mail, but in Signed-off-by it's parsed without quotes, so the colon is taken as e-mail separator.
For second git send-email tryi, I've updated the commit to remove the colon (from both author and SOB line).
See the error bellow:
(mbox) Adding cc: "Gan, Yau Wai" <[email protected]> from line 'From:
"Gan, Yau Wai" <[email protected]>'
(body) Adding cc: Gan, Yau Wai <[email protected]> from line 'Signed-off-by: Gan, Yau Wai <[email protected]>'
(body) Adding cc: Ross Burton <[email protected]> from line 'Signed-off-by: Ross Burton <[email protected]>'
(body) Adding cc: Martin Jansa <[email protected]> from line 'Signed-off-by: Martin Jansa <[email protected]>'
sendmail: recipient address Gan not accepted by the server
sendmail: server message: 553 5.1.2 The recipient address <Gan> is not a valid RFC-5321 address. w19sm3347498wrb.49 - gsmtp
sendmail: could not send mail (account default from /OE/.msmtprc) Died at /usr/libexec/git-core/git-send-email line 1361.
Quoted 41 lines · Martin Jansa
From: Gan Yau Wai <[email protected]>
The
package_qa_check_rdepends()in insane.bbclass has incorrectly replace its localdata OVERRIDES value with the package name. Fixing it by appending the package name to the existing OVERRIDES value. This resolves RDEPENDS QA error when setting PACKAGECONFIG using a pn- override at local.conf.Cherry picked from master
60d28dd72daee235150ab6605cbf953f1ea691df[YOCTO #11374]
Signed-off-by Gan Yau Wai <[email protected]>Signed-off-by Ross Burton <[email protected]>Signed-off-by Martin Jansa <[email protected]>--- meta/classes/insane.bbclass | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)meta/classes/insane.bbclass +0
-0@@ -867,7 +867,7 @@ def package_qa_check_rdepends(pkg, pkgdest, skip,taskdeps, packages, d):
if not "-dbg" in pkg and not "packagegroup-" in pkg and not "-image"
in pkg:
localdata =bb.data.createCopy(d)meta/classes/insane.bbclass +2
-1- localdata.setVar('OVERRIDES', pkg) + localdata.setVar('OVERRIDES', localdata.getVar('OVERRIDES') + ':' + pkg) # Now check the RDEPENDS rdepends = bb.utils.explode_deps(localdata.getVar('RDEPENDS') or"")
--
2.14.0
PATCH 4/4 mesa.inc: drop wrong path in --with-llvm-prefix and export LLVM_CONFIG
In reply to Martin Jansa* this was added in oe-core/pyro but breaks all builds with llvm from meta-oe as reported in:
http://lists.openembedded.org/pipermail/openembedded-core/2017-April/135050.html
* fix it by partial backport from master:
http://git.openembedded.org/openembedded-core/commit/?id=da29bc17e4dd748f50b054c5e3afaf8d41bf4077
but with different path as llvm-3.3 from meta-oe installs llvm-config in:
${STAGING_BINDIR_CROSS}/llvm-config
while llvm-5.0 from oe-core master (rocko) in:
${STAGING_LIBDIR}/llvm${MESA_LLVM_RELEASE}/llvm-config-host"
--- meta/recipes-graphics/mesa/mesa.inc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
meta/recipes-graphics/mesa/mesa.inc +2 -1
@@ -22,7 +22,8 @@ inherit autotools pkgconfig pythonnative gettext distro_features_check REQUIRED_DISTRO_FEATURES = "opengl" -EXTRA_OECONF = "--enable-shared-glapi --with-llvm-prefix=${STAGING_BINDIR_NATIVE}" +export LLVM_CONFIG = "${STAGING_BINDIR_CROSS}/llvm-config" +EXTRA_OECONF = "--enable-shared-glapi" PACKAGECONFIG ??= "gbm egl gles dri \ ${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)} \
Signature · 1 line
2.14.0
✗ patchtest: failure for "[pyro] v86d, qemuboot-x86.inc:..." and 3 more
In reply to Martin Jansa== Series Details ==
Series: "[pyro] v86d, qemuboot-x86.inc:..." and 3 more
Revision: 1
URL : https://patchwork.openembedded.org/series/8201/
State : failure
== Summary ==
Thank you for submitting this patch series to OpenEmbedded Core. This is an automated response. Several tests have been executed on the proposed series by patchtest resulting in the following failures:
* Patch [pyro, 1/4] v86d, qemuboot-x86.inc: use KERNEL_MODULE_AUTOLOAD+KERNEL_MODULE_PROBECONF for uvesafb instead of fbsetup init script Issue Commit shortlog is too long [test_shortlog_length] Suggested fix Edit shortlog so that it is 90 characters or less (currently 117 characters)
If you believe any of these test results are incorrect, please reply to the mailing list ([email protected]) raising your concerns. Otherwise we would appreciate you correcting the issues and submitting a new version of the patchset if applicable. Please ensure you add/increment the version number when sending the new version (i.e. [PATCH] -> [PATCH v2] -> [PATCH v3] -> ...).
---
Test framework: http://git.yoctoproject.org/cgit/cgit.cgi/patchtest Test suite: http://git.yoctoproject.org/cgit/cgit.cgi/patchtest-oe
Quoted 11 lines · Martin Jansa
* also add
UVESA_MODEvariable for easier change of resolution and respect it inQB_KERNEL_CMDLINE_APPENDas well
* don't use init script just to call modprobe
* I wasn't able to test this all the way with runqemu, because runqemu
doesn't work on my system, but I've verified that the right params
appear there and that I can easily changeUVESA_MODEfrom
conf/local.conf, the modules.d and modprobe.d files look OK:
OE qemux86@ ~/build/oe-core/tmp-glibc/deploy/images/qemux86/core-image-sato-qemux86-20170427212613.rootfs$ cat etc/modules-load.d/uvesafb.conf uvesafb
Quoted 6 lines
OE qemux86@ ~/build/oe-core/tmp-glibc/deploy/images/qemux86/core-image-sato-qemux86-20170427212613.rootfs
$ cat etc/modprobe.d/uvesafb.conf options uvesafb mode_option=1600x1200-32so I'll be able to drop this
KERNEL_MODULE_AUTOLOAD+KERNEL_MODULE_PROBECONFfrom my DISTRO conf.
All 4 merged to stagging.
thanks,
Armin
Quoted 104 lines
Signed-off-by Martin Jansa <[email protected]>--- meta/conf/machine/include/qemuboot-x86.inc | 7 +++++- meta/recipes-bsp/v86d/v86d/fbsetup | 3 --- meta/recipes-bsp/v86d/v86d/uvesafb.conf | 2 -- meta/recipes-bsp/v86d/v86d_0.1.10.bb | 36 ------------------------------ 4 files changed, 6 insertions(+), 42 deletions(-)delete mode 100755 meta/recipes-bsp/v86d/v86d/fbsetup delete mode 100644
meta/recipes-bsp/v86d/v86d/uvesafb.confmeta/conf/machine/include/qemuboot-x86.inc +6
-1@@ -10,6 +10,11 @@ QB_CPU_KVM_x86-64 = "-cpu core2duo" QB_AUDIO_DRV = "alsa" QB_AUDIO_OPT = "-soundhw ac97,es1370" -QB_KERNEL_CMDLINE_APPEND = "vga=0 uvesafb.mode_option=640x480-32 oprofile.timer=1 uvesafb.task_timeout=-1" +QB_KERNEL_CMDLINE_APPEND = "vga=0 uvesafb.mode_option=${UVESA_MODE} oprofile.timer=1 uvesafb.task_timeout=-1" # Add the 'virtio-rng-pci' device otherwise the guest may run out of entropy QB_OPT_APPEND = "-vga vmware -show-cursor -usb -usbdevice tablet -device virtio-rng-pci" + +KERNEL_MODULE_AUTOLOAD += "uvesafb" +KERNEL_MODULE_PROBECONF += "uvesafb" +UVESA_MODE ?= "640x480-32" +module_conf_uvesafb = "options uvesafb mode_option=${UVESA_MODE}"meta/recipes-bsp/v86d/v86d/fbsetup deleted +0
-3@@ -1,3 +0,0 @@ -#!/bin/sh - -/sbin/modprobe uvesafbmeta/recipes-bsp/v86d/v86d/uvesafb.conf deleted +0
-2@@ -1,2 +0,0 @@ -# Load uvesafb.ko at boot -uvesafbmeta/recipes-bsp/v86d/v86d_0.1.10.bb +0
-36@@ -11,8 +11,6 @@ PR = "r2" SRC_URI = "http://distfiles.gentoo.org/distfiles/${BP}.tar.bz2 \ file://Update-x86emu-from-X.org.patch \ - file://fbsetup \ - file://uvesafb.conf \ file://ar-from-env.patch \ file://aarch64-host.patch \ "@@ -23,9 +21,6 @@ SRC_URI[sha256sum] = "634964ae18ef68c8493add2ce150e3b4502badeb0d9194b4bd81241d25 PACKAGE_ARCH = "${MACHINE_ARCH}" COMPATIBLE_HOST = '(i.86|x86_64).*-linux' -INITSCRIPT_NAME = "fbsetup" -INITSCRIPT_PARAMS = "start 0 S ." - do_configure () { ./configure --with-x86emu }@@ -37,35 +32,4 @@ do_compile () { do_install () { install -d ${D}${base_sbindir} install v86d ${D}${base_sbindir}/ - - # Only install fbsetup script if 'sysvinit' is in DISTRO_FEATURES - if ${@bb.utils.contains('DISTRO_FEATURES','sysvinit','true','false',d)}; then - install -d ${D}${sysconfdir}/init.d/ - install -m 0755 ${WORKDIR}/fbsetup ${D}${sysconfdir}/init.d/fbsetup - fi - - # Install systemd related configuration file - if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then - install -d ${D}${sysconfdir}/modules-load.d - install -m 0644 ${WORKDIR}/uvesafb.conf ${D}${sysconfdir}/modules-load.d - fi -} - -# As the recipe doesn't inherit systemd.bbclass, we need to set this variable -# manually to avoid unnecessary postinst/preinst generated. -python __anonymous() { - if not bb.utils.contains('DISTRO_FEATURES', 'sysvinit', True, False, d): - d.setVar("INHIBIT_UPDATERCD_BBCLASS", "1") -} - -inherit update-rc.d - -PACKAGE_WRITE_DEPS_append = " ${@bb.utils.contains('DISTRO_FEATURES','systemd','systemd-systemctl-native','',d)}" -pkg_postinst_${PN} () { - if ${@bb.utils.contains('DISTRO_FEATURES','systemd sysvinit','true','false',d)}; then - if [ -n "$D" ]; then - OPTS="--root=$D" - fi - systemctl $OPTS mask fbsetup.service - fi }