temp/qt5-qtbase: patch that fixes GLESv2 on arm ()

Plasma-framework 5.55.0 isn't building for aarch64 without this patch.

Aleix Pol ran into the same problem with flatpak builds, and created the
patch: https://codereview.qt-project.org/#/c/253276/
This commit is contained in:
Oliver Smith 2019-02-16 18:58:15 +01:00
parent 3de8300f91
commit 778880e87a
2 changed files with 60 additions and 2 deletions

View file

@ -9,7 +9,7 @@ _ver=${_ver/_/-}
_ver=${_ver/beta0/beta}
_ver=${_ver/rc0/rc}
_V=${_ver/rc/RC}
pkgrel=11
pkgrel=12
pkgdesc="Qt5 - QtBase components"
url="http://qt-project.org/"
arch="all"
@ -58,6 +58,7 @@ case $_pkgver in
esac
source="http://download.qt-project.org/$_rel/qt/${_pkgver%.*}/$_ver/submodules/$_pkgname-$_V.tar.xz
qt-musl-iconv-no-bom.patch
fix-glesv2-target-on-arm.patch
"
_qt5_prefix=/usr/lib/qt5
@ -210,4 +211,5 @@ x11() {
}
sha512sums="51494d8947ae16ab7aee22aca156035718f5a700737547de59b4d61d3919c00f4de858111c8928a66c0385604623d847d231892d964d53924a8c97b6e2bedf25 qtbase-everywhere-src-5.12.1.tar.xz
7d68421a14f0259535c977d8a521c98918193c107b76ac664571b12f5b0d7588a0d0e1297af412a26753a393b21f3f44c3274fa8ab5bc87f03705a3a03acb444 qt-musl-iconv-no-bom.patch"
7d68421a14f0259535c977d8a521c98918193c107b76ac664571b12f5b0d7588a0d0e1297af412a26753a393b21f3f44c3274fa8ab5bc87f03705a3a03acb444 qt-musl-iconv-no-bom.patch
4590faa5c4df081167aa734bdecfa1f05fc610c76fe1613b7270d6a23bc66e22b0bb1a1d8849cbdc9f66a596999bb5e93bdc8b411779bee39d827bf7928ece0f fix-glesv2-target-on-arm.patch"

View file

@ -0,0 +1,56 @@
From bc37d3e125da5b1a225b02dbfb27f20ac404d8d7 Mon Sep 17 00:00:00 2001
From: Aleix Pol <aleixpol@kde.org>
Date: Thu, 14 Feb 2019 03:09:59 +0100
Subject: [PATCH] Fix generation of the Qt5::GLESv2 target on ARM
Since 5.12.1 the library name provided is an absolute path. We need to
take the case into account, otherwise it just fails to build if the
target is used.
Change-Id: I96407e5fe1831487da77cbe7b24b64dae59b22ff
---
src/gui/Qt5GuiConfigExtras.cmake.in | 23 ++++++++++++++++++-----
1 file changed, 18 insertions(+), 5 deletions(-)
diff --git a/src/gui/Qt5GuiConfigExtras.cmake.in b/src/gui/Qt5GuiConfigExtras.cmake.in
index 07869efd7d8..84dbbfebd47 100644
--- a/src/gui/Qt5GuiConfigExtras.cmake.in
+++ b/src/gui/Qt5GuiConfigExtras.cmake.in
@@ -91,16 +91,29 @@ macro(_qt5gui_find_extra_libs Name Libs LibDir IncDirs)
endforeach()
!!ENDIF
foreach(_lib ${Libs})
- string(REGEX REPLACE "[^_A-Za-z0-9]" "_" _cmake_lib_name ${_lib})
+ if (IS_ABSOLUTE ${_lib})
+ get_filename_component(_libFile ${_lib} NAME_WE)
+ if (_libFile MATCHES \"^${CMAKE_SHARED_LIBRARY_PREFIX}(.*)\")
+ set(_libFile ${CMAKE_MATCH_1})
+ endif()
+ else()
+ set(_libFile ${_lib})
+ endif()
+
+ string(REGEX REPLACE "[^_A-Za-z0-9]" "_" _cmake_lib_name ${_libFile})
if (NOT TARGET Qt5::Gui_${_cmake_lib_name} AND NOT _Qt5Gui_${_cmake_lib_name}_LIBRARY_DONE)
- find_library(Qt5Gui_${_cmake_lib_name}_LIBRARY ${_lib}
+ if (IS_ABSOLUTE ${_lib})
+ set(Qt5Gui_${_cmake_lib_name}_LIBRARY ${_lib})
+ else()
+ find_library(Qt5Gui_${_cmake_lib_name}_LIBRARY ${_lib}
!!IF !isEmpty(CROSS_COMPILE)
- PATHS \"${LibDir}\"
+ PATHS \"${LibDir}\"
!!IF !mac
- NO_DEFAULT_PATH
+ NO_DEFAULT_PATH
!!ENDIF
!!ENDIF
- )
+ )
+ endif()
!!IF mac
set(Qt5Gui_${_cmake_lib_name}_LIBRARY "${Qt5Gui_${_cmake_lib_name}_LIBRARY}/${_lib}")
if (NOT EXISTS "${Qt5Gui_${_cmake_lib_name}_LIBRARY}")
--
2.16.3