mirror of
https://git.yoctoproject.org/poky
synced 2026-04-26 18:32:13 +02:00
weston-init: Launch weston with WESTON_DISABLE_ATOMIC on musl/x86
Since we enabled drm/kms backend for qemux86, it does not work with musl fdbdev worked ok, we see this error [18:58:45.628] launching '/usr/libexec/weston-desktop-shell' [18:58:45.737] atomic: couldn't commit new state: Invalid argument [18:58:45.737] repaint-flush failed: Invalid argument There seems to be some problem with atomics in libdrm, until that gets diagnosed, simple solution is to not use it on musl when drm backend is used thats why WESTON_DISABLE_ATOMIC=Y is set in environment file for such cases (From OE-Core rev: e571ef707d76cf3aceb0d56fd588b37f9b5092ff) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
@@ -5,6 +5,7 @@ LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384
|
||||
PACKAGE_ARCH = "${MACHINE_ARCH}"
|
||||
|
||||
SRC_URI = "file://init \
|
||||
file://weston.env \
|
||||
file://weston.ini \
|
||||
file://weston@.service \
|
||||
file://71-weston-drm.rules \
|
||||
@@ -15,6 +16,7 @@ S = "${WORKDIR}"
|
||||
do_install() {
|
||||
install -Dm755 ${WORKDIR}/init ${D}/${sysconfdir}/init.d/weston
|
||||
install -D -p -m0644 ${WORKDIR}/weston.ini ${D}${sysconfdir}/xdg/weston/weston.ini
|
||||
install -Dm644 ${WORKDIR}/weston.env ${D}${sysconfdir}/default/weston
|
||||
|
||||
# Install Weston systemd service and accompanying udev rule
|
||||
install -D -p -m0644 ${WORKDIR}/weston@.service ${D}${systemd_system_unitdir}/weston@.service
|
||||
@@ -30,6 +32,14 @@ do_install() {
|
||||
sed -i 's,@LOCALSTATEDIR@,${localstatedir},g' ${D}${bindir}/weston-start
|
||||
}
|
||||
|
||||
do_install_append_libc-musl_qemux86() {
|
||||
echo "WESTON_DISABLE_ATOMIC=Y" >> ${D}${sysconfdir}/default/weston
|
||||
}
|
||||
|
||||
do_install_append_libc-musl_qemux86-64() {
|
||||
echo "WESTON_DISABLE_ATOMIC=Y" >> ${D}${sysconfdir}/default/weston
|
||||
}
|
||||
|
||||
inherit update-rc.d features_check systemd
|
||||
|
||||
# rdepends on weston which depends on virtual/egl
|
||||
@@ -40,9 +50,9 @@ RDEPENDS_${PN} = "weston kbd"
|
||||
INITSCRIPT_NAME = "weston"
|
||||
INITSCRIPT_PARAMS = "start 9 5 2 . stop 20 0 1 6 ."
|
||||
|
||||
FILES_${PN} += "${sysconfdir}/xdg/weston/weston.ini ${systemd_system_unitdir}/weston@.service"
|
||||
FILES_${PN} += "${sysconfdir}/xdg/weston/weston.ini ${systemd_system_unitdir}/weston@.service ${sysconfdir}/default/weston"
|
||||
|
||||
CONFFILES_${PN} += "${sysconfdir}/xdg/weston/weston.ini"
|
||||
CONFFILES_${PN} += "${sysconfdir}/xdg/weston/weston.ini ${sysconfdir}/default/weston"
|
||||
|
||||
SYSTEMD_SERVICE_${PN} = "weston@%i.service"
|
||||
SYSTEMD_AUTO_ENABLE = "disable"
|
||||
|
||||
Reference in New Issue
Block a user