Fix build issue for wayland-ivi-extension in kirkstone 06/27506/4
authorNaoto Yamaguchi <naoto.yamaguchi@aisin.co.jp>
Sat, 21 May 2022 05:53:43 +0000 (14:53 +0900)
committerJan-Simon Moeller <jsmoeller@linuxfoundation.org>
Thu, 9 Jun 2022 11:02:47 +0000 (11:02 +0000)
The wayland-ivi-extention has some issue in kirkstone.
Fail to find_package task.
Fail to build source code.

This patch fix these issue and up rev to Upstream HEAD.

Bug-AGL : SPEC-4329

Signed-off-by: Naoto Yamaguchi <naoto.yamaguchi@aisin.co.jp>
Change-Id: I5bc34ec35d7af62939b08df143b37cc695613304

meta-agl-lxc/recipes-graphics/wayland/wayland-ivi-extension/0001-Fix-NULL-pointer-exception-in-case-of-no-input-devic.patch [deleted file]
meta-agl-lxc/recipes-graphics/wayland/wayland-ivi-extension/0001-ivi-input-controller-update-to-weston-7-header-files.patch [moved from meta-agl-lxc/recipes-graphics/wayland/wayland-ivi-extension/01-ivi-input-controller-update-to-weston-7.patch with 84% similarity]
meta-agl-lxc/recipes-graphics/wayland/wayland-ivi-extension/0002-ivi-id-agent-update-to-weston-7-header-files.patch [moved from meta-agl-lxc/recipes-graphics/wayland/wayland-ivi-extension/02-ivi-id-agent-update-to-weston-7-header.patch with 87% similarity]
meta-agl-lxc/recipes-graphics/wayland/wayland-ivi-extension/0003-ivi-id-agent-update-dependencies-to-build-on-weston-.patch [moved from meta-agl-lxc/recipes-graphics/wayland/wayland-ivi-extension/03-ivi-id-agent-update-dependencies-to-build-on-weston-8.patch with 85% similarity]
meta-agl-lxc/recipes-graphics/wayland/wayland-ivi-extension/0004-ivi-id-agent-update-dependencies-to-build-on-weston-.patch [new file with mode: 0644]
meta-agl-lxc/recipes-graphics/wayland/wayland-ivi-extension/0005-Fix-buld-error-in-krikston.patch [new file with mode: 0644]
meta-agl-lxc/recipes-graphics/wayland/wayland-ivi-extension/0006-Drop-weston-6-support-and-adjust-weston-7-8-10.patch [new file with mode: 0644]
meta-agl-lxc/recipes-graphics/wayland/wayland-ivi-extension_git.bb [moved from meta-agl-lxc/recipes-graphics/wayland/wayland-ivi-extension_2.2.0.bb with 58% similarity]

diff --git a/meta-agl-lxc/recipes-graphics/wayland/wayland-ivi-extension/0001-Fix-NULL-pointer-exception-in-case-of-no-input-devic.patch b/meta-agl-lxc/recipes-graphics/wayland/wayland-ivi-extension/0001-Fix-NULL-pointer-exception-in-case-of-no-input-devic.patch
deleted file mode 100644 (file)
index 095a25c..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-From b1e5973764cc42aee113fcf82249d7dd74de4131 Mon Sep 17 00:00:00 2001
-From: Naoto Yamaguchi <naoto.yamaguchi@aisin.co.jp>
-Date: Thu, 7 Oct 2021 21:07:37 +0900
-Subject: [PATCH] Fix NULL pointer exception in case of no input device
-
-When weston with wayland-ivi-extension run without input device,
-that crash by NULL access at setup_input_focus function.
-In this case, st_focus->seat_ctx is NULL pointer, but it use
-without NULL check in this function.
-
-This patch add NULL check for st_focus->seat_ctx.
-
-Signed-off-by: Naoto Yamaguchi <naoto.yamaguchi@aisin.co.jp>
----
- .../src/ivi-input-controller.c                | 24 ++++++++++---------
- 1 file changed, 13 insertions(+), 11 deletions(-)
-
-diff --git a/ivi-input-modules/ivi-input-controller/src/ivi-input-controller.c b/ivi-input-modules/ivi-input-controller/src/ivi-input-controller.c
-index a0bfc48..e5f2e1d 100644
---- a/ivi-input-modules/ivi-input-controller/src/ivi-input-controller.c
-+++ b/ivi-input-modules/ivi-input-controller/src/ivi-input-controller.c
-@@ -1071,17 +1071,19 @@ setup_input_focus(struct input_context *ctx, uint32_t surface,
-     if (NULL != surf) {
-         wl_list_for_each(st_focus, &surf->accepted_seat_list, link) {
-             ctx_seat = st_focus->seat_ctx;
--            if (device & ILM_INPUT_DEVICE_POINTER) {
--                input_ctrl_ptr_set_focus_surf(ctx_seat, surf, enabled);
--            }
--            if (device & ILM_INPUT_DEVICE_KEYBOARD) {
--                input_ctrl_kbd_set_focus_surf(ctx_seat, surf, enabled);
--            }
--            if (device & ILM_INPUT_DEVICE_TOUCH) {
--                /*Touch focus cannot be forced to a particular surface.
--                 * Preserve the old behaviour by sending it to controller.
--                 * TODO: Should we just remove focus setting for touch?*/
--                send_input_focus(ctx, surf, device, enabled);
-+            if (ctx_seat != NULL) {
-+                if (device & ILM_INPUT_DEVICE_POINTER) {
-+                    input_ctrl_ptr_set_focus_surf(ctx_seat, surf, enabled);
-+                }
-+                if (device & ILM_INPUT_DEVICE_KEYBOARD) {
-+                    input_ctrl_kbd_set_focus_surf(ctx_seat, surf, enabled);
-+                }
-+                if (device & ILM_INPUT_DEVICE_TOUCH) {
-+                    /*Touch focus cannot be forced to a particular surface.
-+                     * Preserve the old behaviour by sending it to controller.
-+                     * TODO: Should we just remove focus setting for touch?*/
-+                    send_input_focus(ctx, surf, device, enabled);
-+                }
-             }
-         }
-     }
--- 
-2.25.1
-
@@ -1,7 +1,7 @@
-From efdd2a85519d4990596194af5bf50636d2610f09 Mon Sep 17 00:00:00 2001
+From 6432f46f500321518e9a588215d4635ef7466692 Mon Sep 17 00:00:00 2001
 From: Rajendraprasad K J <KarammelJayakumar.Rajendraprasad@in.bosch.com>
 Date: Mon, 6 Jan 2020 06:41:57 -0500
-Subject: [PATCH] ivi-input-controller: update to weston 7 header files
+Subject: [PATCH 1/6] ivi-input-controller: update to weston 7 header files
 
 update the header file path.
 
@@ -14,7 +14,7 @@ Signed-off-by: Gowtham Tammana <g-tammana@ti.com>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/ivi-input-modules/ivi-input-controller/src/ivi-input-controller.c b/ivi-input-modules/ivi-input-controller/src/ivi-input-controller.c
-index a0bfc48..257a1dc 100644
+index b4d54d1..8974115 100644
 --- a/ivi-input-modules/ivi-input-controller/src/ivi-input-controller.c
 +++ b/ivi-input-modules/ivi-input-controller/src/ivi-input-controller.c
 @@ -31,7 +31,7 @@
@@ -26,3 +26,6 @@ index a0bfc48..257a1dc 100644
  #include "ilm_types.h"
  
  #include "ivi-input-server-protocol.h"
+-- 
+2.17.1
+
@@ -1,7 +1,7 @@
-From 5abb2b497e0153210d41ec3685dc0152587625fa Mon Sep 17 00:00:00 2001
+From 7b7a5e96388f2431e750583a035962d261292b43 Mon Sep 17 00:00:00 2001
 From: Rajendraprasad K J <KarammelJayakumar.Rajendraprasad@in.bosch.com>
 Date: Mon, 6 Jan 2020 06:45:11 -0500
-Subject: [PATCH] ivi-id-agent: update to weston 7 header files
+Subject: [PATCH 2/6] ivi-id-agent: update to weston 7 header files
 
 update the header file path.
 
@@ -28,3 +28,6 @@ index 8f0c199..b80e2a4 100644
  #include <weston/ivi-layout-export.h>
  
  #ifndef INVALID_ID
+-- 
+2.17.1
+
@@ -1,7 +1,7 @@
-From b99082adfaf250b15f03345cdf1b433fb1575581 Mon Sep 17 00:00:00 2001
+From 46ef7140611d684d1dbecd866608333e67a1985e Mon Sep 17 00:00:00 2001
 From: Rajendraprasad K J <KarammelJayakumar.Rajendraprasad@in.bosch.com>
 Date: Mon, 6 Jan 2020 06:45:54 -0500
-Subject: [PATCH] ivi-id-agent: update dependencies to build on weston 8
+Subject: [PATCH 3/6] ivi-id-agent: update dependencies to build on weston 8
 
 upgrade libweston-desktop version.
 
@@ -14,7 +14,7 @@ Signed-off-by: Gowtham Tammana <g-tammana@ti.com>
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/ivi-id-agent-modules/ivi-id-agent/CMakeLists.txt b/ivi-id-agent-modules/ivi-id-agent/CMakeLists.txt
-index 3e604a5..ff47808 100644
+index 3e604a5..4f285c2 100644
 --- a/ivi-id-agent-modules/ivi-id-agent/CMakeLists.txt
 +++ b/ivi-id-agent-modules/ivi-id-agent/CMakeLists.txt
 @@ -25,7 +25,7 @@ find_package(PkgConfig REQUIRED)
@@ -26,3 +26,6 @@ index 3e604a5..ff47808 100644
  
  find_package(Threads REQUIRED)
  
+-- 
+2.17.1
+
diff --git a/meta-agl-lxc/recipes-graphics/wayland/wayland-ivi-extension/0004-ivi-id-agent-update-dependencies-to-build-on-weston-.patch b/meta-agl-lxc/recipes-graphics/wayland/wayland-ivi-extension/0004-ivi-id-agent-update-dependencies-to-build-on-weston-.patch
new file mode 100644 (file)
index 0000000..509becb
--- /dev/null
@@ -0,0 +1,28 @@
+From 7b301a1832c81d814a8475c8679eddd3d43f3487 Mon Sep 17 00:00:00 2001
+From: Naoto Yamaguchi <naoto.yamaguchi@aisin.co.jp>
+Date: Thu, 28 Apr 2022 07:18:50 +0900
+Subject: [PATCH 4/6] ivi-id-agent: update dependencies to build on weston 10
+
+upgrade libweston-desktop version.
+
+Signed-off-by: Naoto Yamaguchi <naoto.yamaguchi@aisin.co.jp>
+---
+ ivi-id-agent-modules/ivi-id-agent/CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/ivi-id-agent-modules/ivi-id-agent/CMakeLists.txt b/ivi-id-agent-modules/ivi-id-agent/CMakeLists.txt
+index 4f285c2..a67ac5a 100644
+--- a/ivi-id-agent-modules/ivi-id-agent/CMakeLists.txt
++++ b/ivi-id-agent-modules/ivi-id-agent/CMakeLists.txt
+@@ -25,7 +25,7 @@ find_package(PkgConfig REQUIRED)
+ pkg_check_modules(WAYLAND_SERVER wayland-server REQUIRED)
+ pkg_check_modules(WESTON weston>=6.0.0 REQUIRED)
+ pkg_check_modules(PIXMAN pixman-1 REQUIRED)
+-pkg_check_modules(LIBWESTON_DESKTOP libweston-desktop-8 REQUIRED)
++pkg_check_modules(LIBWESTON_DESKTOP libweston-desktop-10 REQUIRED)
+ find_package(Threads REQUIRED)
+-- 
+2.17.1
+
diff --git a/meta-agl-lxc/recipes-graphics/wayland/wayland-ivi-extension/0005-Fix-buld-error-in-krikston.patch b/meta-agl-lxc/recipes-graphics/wayland/wayland-ivi-extension/0005-Fix-buld-error-in-krikston.patch
new file mode 100644 (file)
index 0000000..ab9c13f
--- /dev/null
@@ -0,0 +1,68 @@
+From c54194acfc807fa3e1f5ce14e83826ebc6966ca7 Mon Sep 17 00:00:00 2001
+From: Naoto Yamaguchi <naoto.yamaguchi@aisin.co.jp>
+Date: Thu, 28 Apr 2022 07:26:09 +0900
+Subject: [PATCH 5/6] Fix buld error in krikston
+
+Signed-off-by: Naoto Yamaguchi <naoto.yamaguchi@aisin.co.jp>
+---
+ ivi-layermanagement-api/ilmClient/include/ilm_client_platform.h | 2 +-
+ .../ilmClient/src/ilm_client_wayland_platform.c                 | 2 ++
+ ivi-layermanagement-api/ilmCommon/include/ilm_common_platform.h | 2 +-
+ .../ilmCommon/src/ilm_common_wayland_platform.c                 | 2 ++
+ 4 files changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/ivi-layermanagement-api/ilmClient/include/ilm_client_platform.h b/ivi-layermanagement-api/ilmClient/include/ilm_client_platform.h
+index 1fb10af..56368dc 100644
+--- a/ivi-layermanagement-api/ilmClient/include/ilm_client_platform.h
++++ b/ivi-layermanagement-api/ilmClient/include/ilm_client_platform.h
+@@ -35,7 +35,7 @@ typedef struct _ILM_CLIENT_PLATFORM_FUNC
+     ilmErrorTypes (*destroy)();
+ } ILM_CLIENT_PLATFORM_FUNC;
+-ILM_CLIENT_PLATFORM_FUNC gIlmClientPlatformFunc;
++extern  ILM_CLIENT_PLATFORM_FUNC gIlmClientPlatformFunc;
+ void init_ilmClientPlatformTable();
+diff --git a/ivi-layermanagement-api/ilmClient/src/ilm_client_wayland_platform.c b/ivi-layermanagement-api/ilmClient/src/ilm_client_wayland_platform.c
+index 55b1621..8786251 100644
+--- a/ivi-layermanagement-api/ilmClient/src/ilm_client_wayland_platform.c
++++ b/ivi-layermanagement-api/ilmClient/src/ilm_client_wayland_platform.c
+@@ -35,6 +35,8 @@ static ilmErrorTypes wayland_surfaceRemove(const t_ilm_surface surfaceId);
+ static ilmErrorTypes wayland_init(t_ilm_nativedisplay nativedisplay);
+ static ilmErrorTypes wayland_destroy(void);
++ILM_CLIENT_PLATFORM_FUNC gIlmClientPlatformFunc;
++
+ void init_ilmClientPlatformTable(void)
+ {
+     gIlmClientPlatformFunc.surfaceCreate =
+diff --git a/ivi-layermanagement-api/ilmCommon/include/ilm_common_platform.h b/ivi-layermanagement-api/ilmCommon/include/ilm_common_platform.h
+index 4e7b55e..ec49467 100644
+--- a/ivi-layermanagement-api/ilmCommon/include/ilm_common_platform.h
++++ b/ivi-layermanagement-api/ilmCommon/include/ilm_common_platform.h
+@@ -32,7 +32,7 @@ typedef struct _ILM_COMMON_PLATFORM_FUNC
+     ilmErrorTypes (*destroy)();
+ } ILM_COMMON_PLATFORM_FUNC;
+-ILM_COMMON_PLATFORM_FUNC gIlmCommonPlatformFunc;
++extern ILM_COMMON_PLATFORM_FUNC gIlmCommonPlatformFunc;
+ void init_ilmCommonPlatformTable();
+diff --git a/ivi-layermanagement-api/ilmCommon/src/ilm_common_wayland_platform.c b/ivi-layermanagement-api/ilmCommon/src/ilm_common_wayland_platform.c
+index 7470d0d..eef842d 100644
+--- a/ivi-layermanagement-api/ilmCommon/src/ilm_common_wayland_platform.c
++++ b/ivi-layermanagement-api/ilmCommon/src/ilm_common_wayland_platform.c
+@@ -32,6 +32,8 @@ static t_ilm_nativedisplay wayland_getNativedisplay(void);
+ static t_ilm_bool wayland_isInitialized(void);
+ static ilmErrorTypes wayland_destroy(void);
++ILM_COMMON_PLATFORM_FUNC gIlmCommonPlatformFunc;
++
+ void init_ilmCommonPlatformTable(void)
+ {
+     gIlmCommonPlatformFunc.init = wayland_init;
+-- 
+2.17.1
+
diff --git a/meta-agl-lxc/recipes-graphics/wayland/wayland-ivi-extension/0006-Drop-weston-6-support-and-adjust-weston-7-8-10.patch b/meta-agl-lxc/recipes-graphics/wayland/wayland-ivi-extension/0006-Drop-weston-6-support-and-adjust-weston-7-8-10.patch
new file mode 100644 (file)
index 0000000..035e597
--- /dev/null
@@ -0,0 +1,31 @@
+From d25c266858ffbea51b435190ea8697d4a4511355 Mon Sep 17 00:00:00 2001
+From: Naoto Yamaguchi <naoto.yamaguchi@aisin.co.jp>
+Date: Thu, 28 Apr 2022 08:00:07 +0900
+Subject: [PATCH 6/6] Drop weston 6 support and adjust weston 7,8,10
+
+Signed-off-by: Naoto Yamaguchi <naoto.yamaguchi@aisin.co.jp>
+---
+ ivi-id-agent-modules/ivi-id-agent/CMakeLists.txt | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/ivi-id-agent-modules/ivi-id-agent/CMakeLists.txt b/ivi-id-agent-modules/ivi-id-agent/CMakeLists.txt
+index a67ac5a..a4b4e1a 100644
+--- a/ivi-id-agent-modules/ivi-id-agent/CMakeLists.txt
++++ b/ivi-id-agent-modules/ivi-id-agent/CMakeLists.txt
+@@ -23,9 +23,11 @@ project(ivi-id-agent)
+ find_package(PkgConfig REQUIRED)
+ pkg_check_modules(WAYLAND_SERVER wayland-server REQUIRED)
+-pkg_check_modules(WESTON weston>=6.0.0 REQUIRED)
++pkg_check_modules(WESTON weston>=7.0.0 REQUIRED)
+ pkg_check_modules(PIXMAN pixman-1 REQUIRED)
+-pkg_check_modules(LIBWESTON_DESKTOP libweston-desktop-10 REQUIRED)
++pkg_check_modules(LIBWESTON_DESKTOP libweston-desktop-10)
++pkg_check_modules(LIBWESTON_DESKTOP libweston-desktop-8)
++pkg_check_modules(LIBWESTON_DESKTOP libweston-desktop-7)
+ find_package(Threads REQUIRED)
+-- 
+2.17.1
+
@@ -6,20 +6,20 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=1f1a56bb2dadf5f2be8eb342acf4ed79"
 
 DEPENDS = "weston virtual/libgles2 pixman wayland-native"
 
-PR = "r1"
-
 SRC_URI = " \
-    git://github.com/COVESA/${BPN}.git;protocol=https \
-    file://01-ivi-input-controller-update-to-weston-7.patch \
-    file://02-ivi-id-agent-update-to-weston-7-header.patch \
-    file://03-ivi-id-agent-update-dependencies-to-build-on-weston-8.patch \
-    file://0001-Fix-NULL-pointer-exception-in-case-of-no-input-devic.patch \
+    git://github.com/COVESA/${BPN}.git;protocol=https;branch=master \
+    file://0001-ivi-input-controller-update-to-weston-7-header-files.patch  \
+    file://0002-ivi-id-agent-update-to-weston-7-header-files.patch \
+    file://0003-ivi-id-agent-update-dependencies-to-build-on-weston-.patch \
+    file://0004-ivi-id-agent-update-dependencies-to-build-on-weston-.patch \
+    file://0005-Fix-buld-error-in-krikston.patch \
+    file://0006-Drop-weston-6-support-and-adjust-weston-7-8-10.patch \
     "
-SRCREV = "8d4c227ca0a1f836a769a051732a826abbf5d98a"
+SRCREV = "f6911a11dc911a5bcb380d0895db6cfd533a3569"
 
 S = "${WORKDIR}/git"
 
-inherit cmake
+inherit cmake pkgconfig
 
 EXTRA_OECMAKE := "-DWITH_ILM_INPUT=1"
 EXTRA_OECMAKE += "-DLIB_SUFFIX=${@d.getVar('baselib').replace('lib', '')}"