summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta-agl-profile-graphical/recipes-graphics/wayland/wayland-ivi-extension/0002-add-LayerManagerControl-error-status.patch21
-rw-r--r--meta-agl-profile-graphical/recipes-graphics/wayland/wayland-ivi-extension_2.0.2.bb3
-rw-r--r--meta-agl-profile-graphical/recipes-graphics/wayland/weston-ready/weston-ready49
-rw-r--r--meta-agl-profile-graphical/recipes-graphics/wayland/weston-ready/weston-ready.service9
-rw-r--r--meta-agl-profile-graphical/recipes-graphics/wayland/weston-ready_1.0.bb21
-rw-r--r--meta-agl-profile-graphical/recipes-platform/packagegroups/packagegroup-agl-graphical-weston.bb1
6 files changed, 103 insertions, 1 deletions
diff --git a/meta-agl-profile-graphical/recipes-graphics/wayland/wayland-ivi-extension/0002-add-LayerManagerControl-error-status.patch b/meta-agl-profile-graphical/recipes-graphics/wayland/wayland-ivi-extension/0002-add-LayerManagerControl-error-status.patch
new file mode 100644
index 000000000..9f1ab47b7
--- /dev/null
+++ b/meta-agl-profile-graphical/recipes-graphics/wayland/wayland-ivi-extension/0002-add-LayerManagerControl-error-status.patch
@@ -0,0 +1,21 @@
+LayerManagerControl: add error exit status
+
+Tweak to add a non-zero exit status on errors. This is useful for
+scripting, and allows writing a simple loop to detect Weston readiness.
+
+Upstream-Status: Pending
+
+Signed-off-by: Scott Murray <scott.murray@konsulko.com>
+
+diff --git a/ivi-layermanagement-examples/LayerManagerControl/src/main.cpp b/ivi-layermanagement-examples/LayerManagerControl/src/main.cpp
+index 8ee0546..210e21e 100644
+--- a/ivi-layermanagement-examples/LayerManagerControl/src/main.cpp
++++ b/ivi-layermanagement-examples/LayerManagerControl/src/main.cpp
+@@ -45,6 +45,7 @@ int main(int argc, char* argv[])
+ if (CommandSuccess != interpreter.interpretCommand(userCommand))
+ {
+ cerr << "Interpreter error: " << interpreter.getLastError() << endl;
++ return 1;
+ }
+
+ return 0;
diff --git a/meta-agl-profile-graphical/recipes-graphics/wayland/wayland-ivi-extension_2.0.2.bb b/meta-agl-profile-graphical/recipes-graphics/wayland/wayland-ivi-extension_2.0.2.bb
index 3f0e34f4b..585c9adb6 100644
--- a/meta-agl-profile-graphical/recipes-graphics/wayland/wayland-ivi-extension_2.0.2.bb
+++ b/meta-agl-profile-graphical/recipes-graphics/wayland/wayland-ivi-extension_2.0.2.bb
@@ -10,7 +10,8 @@ SRC_URI = "git://github.com/GENIVI/${BPN}.git;branch=2.0;protocol=http \
file://0001-Added-ivi-id-agent-to-CMake.patch \
file://0002-ivi-id-agent-added-ivi-id-agent.patch \
file://0003-ivi-controller-load-id-agent-module.patch \
- "
+ file://0002-add-LayerManagerControl-error-status.patch \
+"
SRC_URI_append_wandboard = " file://wandboard_fix_build.patch"
S = "${WORKDIR}/git"
diff --git a/meta-agl-profile-graphical/recipes-graphics/wayland/weston-ready/weston-ready b/meta-agl-profile-graphical/recipes-graphics/wayland/weston-ready/weston-ready
new file mode 100644
index 000000000..5a3ff5500
--- /dev/null
+++ b/meta-agl-profile-graphical/recipes-graphics/wayland/weston-ready/weston-ready
@@ -0,0 +1,49 @@
+#!/bin/bash
+#
+# Copyright (c) 2018, Konsulko Group
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+#
+# Simple script to check if Weston+IVI shell is ready by calling
+# LayerManagerControl, optionally waiting for a specified timeout.
+#
+
+usage="Usage: weston-ready [-t timeout]"
+timeout=0
+
+if [ $# -eq 2 ]; then
+ if [ $1 = "-t" ]; then
+ timeout=$(($2 * 10))
+ else
+ echo $usage
+ exit 1
+ fi
+fi
+
+time=0
+rc=1
+while true; do
+ if [ $time -gt $timeout ]; then
+ break
+ elif LayerManagerControl get screens >/dev/null 2>&1; then
+ rc=0
+ break
+ fi
+ if [ $timeout -gt 0 ]; then
+ usleep 500000
+ fi
+ time=$(($time + 5))
+done
+exit $rc
diff --git a/meta-agl-profile-graphical/recipes-graphics/wayland/weston-ready/weston-ready.service b/meta-agl-profile-graphical/recipes-graphics/wayland/weston-ready/weston-ready.service
new file mode 100644
index 000000000..f8db5114a
--- /dev/null
+++ b/meta-agl-profile-graphical/recipes-graphics/wayland/weston-ready/weston-ready.service
@@ -0,0 +1,9 @@
+[Unit]
+Description=Wait for Weston readiness
+Requires=weston.service
+After=weston.service
+
+[Service]
+Environment="XDG_RUNTIME_DIR=/run/platform/display"
+ExecStart=/usr/bin/weston-ready -t 10
+Type=oneshot
diff --git a/meta-agl-profile-graphical/recipes-graphics/wayland/weston-ready_1.0.bb b/meta-agl-profile-graphical/recipes-graphics/wayland/weston-ready_1.0.bb
new file mode 100644
index 000000000..a3d0bb248
--- /dev/null
+++ b/meta-agl-profile-graphical/recipes-graphics/wayland/weston-ready_1.0.bb
@@ -0,0 +1,21 @@
+SUMMARY = "Weston readiness checker"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
+
+inherit systemd
+
+SRC_URI = "file://weston-ready \
+ file://weston-ready.service \
+"
+
+do_install() {
+ install -D -m 0755 ${WORKDIR}/weston-ready ${D}${bindir}/weston-ready
+
+ if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
+ install -D -m 0644 ${WORKDIR}/weston-ready.service ${D}${systemd_system_unitdir}/weston-ready.service
+ fi
+}
+
+SYSTEMD_SERVICE_${PN} = "weston-ready.service"
+
+RDEPENDS_${PN} += "weston bash"
diff --git a/meta-agl-profile-graphical/recipes-platform/packagegroups/packagegroup-agl-graphical-weston.bb b/meta-agl-profile-graphical/recipes-platform/packagegroups/packagegroup-agl-graphical-weston.bb
index 1da3d37c2..53721f0d2 100644
--- a/meta-agl-profile-graphical/recipes-platform/packagegroups/packagegroup-agl-graphical-weston.bb
+++ b/meta-agl-profile-graphical/recipes-platform/packagegroups/packagegroup-agl-graphical-weston.bb
@@ -14,6 +14,7 @@ RDEPENDS_${PN} += " \
weston-init \
weston-ini-conf \
weston-examples \
+ weston-ready \
agl-login-manager \
agl-desktop-config \
"
n474' href='#n474'>474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541