summaryrefslogtreecommitdiffstats
path: root/recipes-qt/qt5/qtbase/0017-Qt5GuiConfigExtras.cmake.in-cope-with-variable-path-.patch
diff options
context:
space:
mode:
authorMax Krummenacher <max.krummenacher@toradex.com>2018-10-07 22:31:15 +0200
committerMartin Jansa <Martin.Jansa@gmail.com>2018-11-13 10:33:15 +0000
commit4ed43856587539ff18f2ff08de296541087e1e31 (patch)
tree3c5d1dc77ad43154e3993d251b4b9d240b4ec78a /recipes-qt/qt5/qtbase/0017-Qt5GuiConfigExtras.cmake.in-cope-with-variable-path-.patch
parentb3502fbbc08813fe46a60c230611506e4636d9dc (diff)
downloadmeta-qt5-4ed43856587539ff18f2ff08de296541087e1e31.tar.gz
qtbase: don't leak absolut path to recipe specific sysroot
If the qtbase recipe-sysroot no longer exists (e.g. because of rm_work) a user of Qt5GuiConfigExtras.cmake will experience the following error: | ERROR: Task (.../meta-qt5/recipes-qt/qt5/qtwebkit_git.bb:do_configure) failed with exit code '1' | CMake Error in Source/WebCore/CMakeLists.txt: | Imported target "Qt5::Gui_EGL" includes non-existent path | | ".../build/tmp-glibc/work/armv7at2hf-neon-imx-angstrom-linux-gnueabi/qtbase/5.11.2+gitAUTOINC+49efea26a5-r0/recipe-sysroot/usr/include/libdrm" Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Diffstat (limited to 'recipes-qt/qt5/qtbase/0017-Qt5GuiConfigExtras.cmake.in-cope-with-variable-path-.patch')
-rw-r--r--recipes-qt/qt5/qtbase/0017-Qt5GuiConfigExtras.cmake.in-cope-with-variable-path-.patch69
1 files changed, 69 insertions, 0 deletions
diff --git a/recipes-qt/qt5/qtbase/0017-Qt5GuiConfigExtras.cmake.in-cope-with-variable-path-.patch b/recipes-qt/qt5/qtbase/0017-Qt5GuiConfigExtras.cmake.in-cope-with-variable-path-.patch
new file mode 100644
index 00000000..841d5080
--- /dev/null
+++ b/recipes-qt/qt5/qtbase/0017-Qt5GuiConfigExtras.cmake.in-cope-with-variable-path-.patch
@@ -0,0 +1,69 @@
1From cc017da9bb6936c6e147e8d416c8405493d4422c Mon Sep 17 00:00:00 2001
2From: Max Krummenacher <max.krummenacher@toradex.com>
3Date: Sat, 27 Oct 2018 12:29:31 +0000
4Subject: [PATCH] Qt5GuiConfigExtras.cmake.in: cope with variable path to
5 sysroot
6
7EGL is configured to need an include path into the recipe-specific sysroot.
8However users of the cmake file will have a different absolute path than that
9used when creating the cmake file from cmake.in in qtbase.
10
11Change to store the relative path within the sysroot and then prepend the
12currently used sysroot in the _qt5gui_find_extra_libs macro.
13
14Upstream-Status: Inappropriate [OE specific]
15
16Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
17---
18 src/gui/Qt5GuiConfigExtras.cmake.in | 22 ++++++++--------------
19 1 file changed, 8 insertions(+), 14 deletions(-)
20
21diff --git a/src/gui/Qt5GuiConfigExtras.cmake.in b/src/gui/Qt5GuiConfigExtras.cmake.in
22index 07869efd7d..671aa82167 100644
23--- a/src/gui/Qt5GuiConfigExtras.cmake.in
24+++ b/src/gui/Qt5GuiConfigExtras.cmake.in
25@@ -75,21 +75,15 @@ unset(_qt5gui_OPENGL_INCLUDE_DIR CACHE)
26
27 macro(_qt5gui_find_extra_libs Name Libs LibDir IncDirs)
28 set(Qt5Gui_${Name}_LIBRARIES)
29-!!IF !mac
30- set(Qt5Gui_${Name}_INCLUDE_DIRS ${IncDirs})
31-!!ELSE
32+
33 foreach(_dir ${IncDirs})
34- if (EXISTS ${_dir})
35- list(APPEND Qt5Gui_${Name}_INCLUDE_DIRS ${_dir})
36- else()
37- find_path(_actual_dir ${_dir}) # Look in sdk directories
38- if (_actual_dir)
39- list(APPEND Qt5Gui_${Name}_INCLUDE_DIRS ${_actual_dir})
40- endif()
41- unset(_actual_dir CACHE)
42+ find_path(_actual_dir ${_dir})
43+ if (_actual_dir)
44+ list(APPEND Qt5Gui_${Name}_INCLUDE_DIRS ${_actual_dir})
45 endif()
46+ unset(_actual_dir CACHE)
47 endforeach()
48-!!ENDIF
49+
50 foreach(_lib ${Libs})
51 string(REGEX REPLACE "[^_A-Za-z0-9]" "_" _cmake_lib_name ${_lib})
52 if (NOT TARGET Qt5::Gui_${_cmake_lib_name} AND NOT _Qt5Gui_${_cmake_lib_name}_LIBRARY_DONE)
53@@ -158,11 +152,11 @@ endmacro()
54
55
56 !!IF !isEmpty(CMAKE_EGL_LIBS)
57-_qt5gui_find_extra_libs(EGL \"$$CMAKE_EGL_LIBS\" \"$$CMAKE_EGL_LIBDIR\" \"$$CMAKE_EGL_INCDIRS\")
58+_qt5gui_find_extra_libs(EGL \"$$CMAKE_EGL_LIBS\" \"$$CMAKE_EGL_LIBDIR\" \"$$replace(CMAKE_EGL_INCDIRS,$$re_escape($$PKG_CONFIG_SYSROOT_DIR),)\")
59 !!ENDIF
60
61 !!IF !isEmpty(CMAKE_OPENGL_LIBS)
62-_qt5gui_find_extra_libs(OPENGL \"$$CMAKE_OPENGL_LIBS\" \"$$CMAKE_OPENGL_LIBDIR\" \"$$CMAKE_OPENGL_INCDIRS\")
63+_qt5gui_find_extra_libs(OPENGL \"$$CMAKE_OPENGL_LIBS\" \"$$CMAKE_OPENGL_LIBDIR\" \"$$replace(CMAKE_OPENGL_INCDIRS,$$re_escape($$PKG_CONFIG_SYSROOT_DIR),)\")
64
65 !!ENDIF
66
67--
682.13.6
69