From 840fda5a068b754fa6920ab2019fd9af450cb386 Mon Sep 17 00:00:00 2001 From: Martin Jansa Date: Wed, 7 Sep 2022 14:30:51 +0200 Subject: webkitgtk: fix gstreamer include paths * fixes: http://errors.yoctoproject.org/Errors/Details/671441/ cc1plus: error: include location "/usr/include/gstreamer-1.0" is unsafe for cross-compilation [-Werror=poison-system-directories] (From OE-Core rev: 53365112e6e848b6867d350a38800eed9e19872b) Signed-off-by: Martin Jansa Signed-off-by: Richard Purdie --- .../webkitgtk/fix-gstreamer-include-paths.patch | 51 ++++++++++++++++++++++ meta/recipes-sato/webkit/webkitgtk_2.36.7.bb | 1 + 2 files changed, 52 insertions(+) create mode 100644 meta/recipes-sato/webkit/webkitgtk/fix-gstreamer-include-paths.patch (limited to 'meta/recipes-sato/webkit') diff --git a/meta/recipes-sato/webkit/webkitgtk/fix-gstreamer-include-paths.patch b/meta/recipes-sato/webkit/webkitgtk/fix-gstreamer-include-paths.patch new file mode 100644 index 0000000000..2c6be87902 --- /dev/null +++ b/meta/recipes-sato/webkit/webkitgtk/fix-gstreamer-include-paths.patch @@ -0,0 +1,51 @@ +From 25efd1478b48b5406fdab3b7b9c1f7e0ef95a7ed Mon Sep 17 00:00:00 2001 +From: Pablo Saavedra +Date: Mon, 27 Jun 2022 16:56:04 -0700 +Subject: [PATCH] Fix include gstreamer path on cross compiler toolchains + https://bugs.webkit.org/show_bug.cgi?id=241483 + +Reviewed by Adrian Perez de Castro. + +Set the include paths for the gstreamer components to the full path +using the find_path(). This function relies in CMAKE_FIND_ROOT_PATH to +find the right place where the includes they are. This fixes possible +warnings/errors on cross toolchains using -Wpoison-system-directories +and -Werror=poison-system-directories. + +* Source/cmake/FindGStreamer.cmake: + +Canonical link: https://commits.webkit.org/251895@main + +Upstream-Status: Backport [2.37.1 https://github.com/WebKit/WebKit/commit/25efd1478b48b5406fdab3b7b9c1f7e0ef95a7ed] +--- + Source/cmake/FindGStreamer.cmake | 14 +++++++++++--- + 1 file changed, 11 insertions(+), 3 deletions(-) + +diff --git a/Source/cmake/FindGStreamer.cmake b/Source/cmake/FindGStreamer.cmake +index 3216f6974b53..b65a11f30871 100644 +--- a/Source/cmake/FindGStreamer.cmake ++++ b/Source/cmake/FindGStreamer.cmake +@@ -75,12 +75,20 @@ macro(FIND_GSTREAMER_COMPONENT _component_prefix _pkgconfig_name _library) + # ${includedir}/gstreamer-1.0 which remains correct. The issue here is that + # we don't rely on the `Cflags`, cmake fails to generate a proper + # `.._INCLUDE_DIRS` variable in this case. So we need to do it here... ++ ++ # Populate the list initially from the _INCLUDE_DIRS result variable. ++ set(${_component_prefix}_INCLUDE_DIRS ${PC_${_component_prefix}_INCLUDE_DIRS}) ++ + set(_include_dir "${PC_${_component_prefix}_INCLUDEDIR}") + string(REGEX MATCH "(.*)/gstreamer-1.0" _dummy "${_include_dir}") ++ + if ("${CMAKE_MATCH_1}" STREQUAL "") +- set(${_component_prefix}_INCLUDE_DIRS "${_include_dir}/gstreamer-1.0;${PC_${_component_prefix}_INCLUDE_DIRS}") +- else () +- set(${_component_prefix}_INCLUDE_DIRS "${PC_${_component_prefix}_INCLUDE_DIRS}") ++ find_path(${_component_prefix}_RESOLVED_INCLUDEDIR NAMES "${_include_dir}/gstreamer-1.0") ++ # Only add the resolved path from `_INCLUDEDIR` if found. ++ if (${_component_prefix}_RESOLVED_INCLUDEDIR) ++ list(APPEND ${_component_prefix}_INCLUDE_DIRS ++ "${${_component_prefix}_RESOLVED_INCLUDEDIR}") ++ endif () + endif () + + find_library(${_component_prefix}_LIBRARIES diff --git a/meta/recipes-sato/webkit/webkitgtk_2.36.7.bb b/meta/recipes-sato/webkit/webkitgtk_2.36.7.bb index 026e24ae39..47e52e25da 100644 --- a/meta/recipes-sato/webkit/webkitgtk_2.36.7.bb +++ b/meta/recipes-sato/webkit/webkitgtk_2.36.7.bb @@ -15,6 +15,7 @@ SRC_URI = "https://www.webkitgtk.org/releases/${BPN}-${PV}.tar.xz \ file://0001-Fix-build-without-opengl-or-es.patch \ file://reproducibility.patch \ file://0001-When-building-introspection-files-do-not-quote-CFLAG.patch \ + file://fix-gstreamer-include-paths.patch \ " SRC_URI[sha256sum] = "0c260cf2b32f0481d017670dfed1b61e554967cd067195606c9f9eb5fe731743" -- cgit v1.2.3-54-g00ecf