diff options
| author | Pavel Zhukov <pavel@zhukoff.net> | 2021-09-15 10:50:37 +0200 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2021-10-11 18:41:38 +0100 |
| commit | 28e89f8adeb27a9bf732a79225c640ddd13f8675 (patch) | |
| tree | 42bff9169ce0d481771ef3623c5de2ec8fd22176 /meta/recipes-graphics/wayland | |
| parent | b0c788d7bebfb66458179d87d5d96e4192e2b18d (diff) | |
| download | poky-28e89f8adeb27a9bf732a79225c640ddd13f8675.tar.gz | |
weston: wrapper for weston modules argument
Due to custom option parser implementation weston accepts only one
argument of a given type. As the result if multiple modules add
multiple --modules agruments only last will be used. This fix
introduces wrapper around modules in terms of weston-init to prepare
proper modules argument for weston and adds systemd-notify module into
weston-init module to support Type=notify in systemd service file.
(From OE-Core rev: c8aa0222ce2be647911114aaebcbb0d55d7caf87)
Signed-off-by: Pavel Zhukov <pavel.zhukov@huawei.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-graphics/wayland')
| -rwxr-xr-x | meta/recipes-graphics/wayland/weston-init/weston-start | 11 | ||||
| -rw-r--r-- | meta/recipes-graphics/wayland/weston/systemd-notify.weston-start | 9 | ||||
| -rw-r--r-- | meta/recipes-graphics/wayland/weston_9.0.0.bb | 5 |
3 files changed, 25 insertions, 0 deletions
diff --git a/meta/recipes-graphics/wayland/weston-init/weston-start b/meta/recipes-graphics/wayland/weston-init/weston-start index 0b93dc964a..0f1bc4c29d 100755 --- a/meta/recipes-graphics/wayland/weston-init/weston-start +++ b/meta/recipes-graphics/wayland/weston-init/weston-start | |||
| @@ -21,6 +21,14 @@ add_weston_argument() { | |||
| 21 | # Add openvt extra argument | 21 | # Add openvt extra argument |
| 22 | add_openvt_argument() { | 22 | add_openvt_argument() { |
| 23 | openvt_args="$openvt_args $1" | 23 | openvt_args="$openvt_args $1" |
| 24 | |||
| 25 | } | ||
| 26 | ## Add module to --modules argument | ||
| 27 | add_weston_module() { | ||
| 28 | if [[ "x${weston_modules}" == "x" ]]; then | ||
| 29 | weston_modules="--modules " | ||
| 30 | fi; | ||
| 31 | weston_modules+="${1}," | ||
| 24 | } | 32 | } |
| 25 | 33 | ||
| 26 | if [ -n "$WAYLAND_DISPLAY" ]; then | 34 | if [ -n "$WAYLAND_DISPLAY" ]; then |
| @@ -68,6 +76,9 @@ if [ -d "$modules_dir" ]; then | |||
| 68 | 76 | ||
| 69 | # process module | 77 | # process module |
| 70 | . $m | 78 | . $m |
| 79 | if [[ x"{$weston_modules}" != "x" ]]; then | ||
| 80 | add_weston_argument "${weston_modules}" | ||
| 81 | fi; | ||
| 71 | done | 82 | done |
| 72 | fi | 83 | fi |
| 73 | 84 | ||
diff --git a/meta/recipes-graphics/wayland/weston/systemd-notify.weston-start b/meta/recipes-graphics/wayland/weston/systemd-notify.weston-start new file mode 100644 index 0000000000..a97e7b38d9 --- /dev/null +++ b/meta/recipes-graphics/wayland/weston/systemd-notify.weston-start | |||
| @@ -0,0 +1,9 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | |||
| 3 | # SPDX-FileCopyrightText: Huawei Inc. | ||
| 4 | # SPDX-License-Identifier: Apache-2.0 | ||
| 5 | |||
| 6 | |||
| 7 | if [[ -x "/usr/lib/weston/systemd-notify.so" ]]; then | ||
| 8 | add_weston_module "systemd-notify.so" | ||
| 9 | fi | ||
diff --git a/meta/recipes-graphics/wayland/weston_9.0.0.bb b/meta/recipes-graphics/wayland/weston_9.0.0.bb index 1f1d62ea7c..59ab217a3b 100644 --- a/meta/recipes-graphics/wayland/weston_9.0.0.bb +++ b/meta/recipes-graphics/wayland/weston_9.0.0.bb | |||
| @@ -9,6 +9,7 @@ SRC_URI = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \ | |||
| 9 | file://weston.png \ | 9 | file://weston.png \ |
| 10 | file://weston.desktop \ | 10 | file://weston.desktop \ |
| 11 | file://xwayland.weston-start \ | 11 | file://xwayland.weston-start \ |
| 12 | file://systemd-notify.weston-start \ | ||
| 12 | file://0001-weston-launch-Provide-a-default-version-that-doesn-t.patch \ | 13 | file://0001-weston-launch-Provide-a-default-version-that-doesn-t.patch \ |
| 13 | file://0001-tests-include-fcntl.h-for-open-O_RDWR-O_CLOEXEC-and-.patch \ | 14 | file://0001-tests-include-fcntl.h-for-open-O_RDWR-O_CLOEXEC-and-.patch \ |
| 14 | file://0001-meson.build-fix-incorrect-header.patch \ | 15 | file://0001-meson.build-fix-incorrect-header.patch \ |
| @@ -111,6 +112,10 @@ do_install:append() { | |||
| 111 | install -Dm 644 ${WORKDIR}/xwayland.weston-start ${D}${datadir}/weston-start/xwayland | 112 | install -Dm 644 ${WORKDIR}/xwayland.weston-start ${D}${datadir}/weston-start/xwayland |
| 112 | fi | 113 | fi |
| 113 | 114 | ||
| 115 | if [ "${@bb.utils.contains('PACKAGECONFIG', 'systemd', 'yes', 'no', d)}" = "yes" ]; then | ||
| 116 | install -Dm 644 ${WORKDIR}/systemd-notify.weston-start ${D}${datadir}/weston-start/systemd-notify | ||
| 117 | fi | ||
| 118 | |||
| 114 | if [ "${@bb.utils.contains('PACKAGECONFIG', 'launch', 'yes', 'no', d)}" = "yes" ]; then | 119 | if [ "${@bb.utils.contains('PACKAGECONFIG', 'launch', 'yes', 'no', d)}" = "yes" ]; then |
| 115 | chmod u+s ${D}${bindir}/weston-launch | 120 | chmod u+s ${D}${bindir}/weston-launch |
| 116 | fi | 121 | fi |
