summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Sturmlechner <asturm@gentoo.org>2019-10-26 14:15:57 +0200
committerAndreas Sturmlechner <asturm@gentoo.org>2019-10-26 14:41:23 +0200
commit1e51a6db7655c2933200fd427dd4c364b358291d (patch)
tree505567a74d387f19b1afce92f5771fec0e7558be /dev-util/kdevelop-pg-qt
parentdev-util/include-what-you-use: bump up to 9.0 (diff)
downloadgentoo-1e51a6db7655c2933200fd427dd4c364b358291d.tar.gz
gentoo-1e51a6db7655c2933200fd427dd4c364b358291d.tar.bz2
gentoo-1e51a6db7655c2933200fd427dd4c364b358291d.zip
dev-util/kdevelop-pg-qt: Fix build against Qt 5.14.0
Package-Manager: Portage-2.3.78, Repoman-2.3.17 Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
Diffstat (limited to 'dev-util/kdevelop-pg-qt')
-rw-r--r--dev-util/kdevelop-pg-qt/files/kdevelop-pg-qt-2.2.0-qt-5.14.patch60
-rw-r--r--dev-util/kdevelop-pg-qt/kdevelop-pg-qt-2.2.0.ebuild2
2 files changed, 62 insertions, 0 deletions
diff --git a/dev-util/kdevelop-pg-qt/files/kdevelop-pg-qt-2.2.0-qt-5.14.patch b/dev-util/kdevelop-pg-qt/files/kdevelop-pg-qt-2.2.0-qt-5.14.patch
new file mode 100644
index 000000000000..5a4dec36d887
--- /dev/null
+++ b/dev-util/kdevelop-pg-qt/files/kdevelop-pg-qt-2.2.0-qt-5.14.patch
@@ -0,0 +1,60 @@
+From d05d0b19e9d6f47fee3e11d837c2c21125589763 Mon Sep 17 00:00:00 2001
+From: Alexey Min <alexey.min@gmail.com>
+Date: Thu, 24 Oct 2019 14:34:45 +0300
+Subject: Fix build with Qt 5.14
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Summary:
+Trying to build kdevelop-pg-qt with Qt 5.14 results in an error:
+```
+.../kdev-pg/kdev-pg-regexp.cpp:44:23: error: redefinition of ‘struct std::hash<QBitArray>’
+ template<> struct hash< type > \
+ ^~~~~~~~~~~~
+.../kdev-pg/kdev-pg-regexp.cpp:53:1: note: in expansion of macro ‘q_Hash_to_tr1_hash’
+ q_Hash_to_tr1_hash(QBitArray)
+ ^~~~~~~~~~~~~~~~~~
+In file included from .../prefix514/include/QtCore/qvector.h:47:0,
+ from .../prefix514/include/QtCore/QVector:1,
+ from .../kdevelop-pg-qt/include/kdev-pg-char-sets.h:36,
+ from .../kdevelop-pg-qt/kdev-pg/kdev-pg-regexp.cpp:20:
+.../prefix514/include/QtCore/qhashfunctions.h:209:1: note: previous definition of ‘struct std::hash<QBitArray>’
+ QT_SPECIALIZE_STD_HASH_TO_CALL_QHASH_BY_CREF(QBitArray)
+ ^
+```
+
+std::hash<QBitArray> is already specialized in Qt 5.14, so avoid redefinition with conditional compilation
+
+Test Plan: try to build with Qt 5.14
+
+Reviewers: apol
+
+Reviewed By: apol
+
+Subscribers: kdevelop-devel
+
+Tags: #kdevelop
+
+Differential Revision: https://phabricator.kde.org/D24914
+---
+ kdev-pg/kdev-pg-regexp.cpp | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/kdev-pg/kdev-pg-regexp.cpp b/kdev-pg/kdev-pg-regexp.cpp
+index 8cc0b95..9fee81c 100644
+--- a/kdev-pg/kdev-pg-regexp.cpp
++++ b/kdev-pg/kdev-pg-regexp.cpp
+@@ -50,7 +50,10 @@ namespace std \
+ }; \
+ }
+
++#if (QT_VERSION < QT_VERSION_CHECK(5, 14, 0))
++// Qt >= 5.14 already has std::hash for QBitArray
+ q_Hash_to_tr1_hash(QBitArray)
++#endif
+
+ namespace KDevPG
+ {
+--
+cgit v1.1
diff --git a/dev-util/kdevelop-pg-qt/kdevelop-pg-qt-2.2.0.ebuild b/dev-util/kdevelop-pg-qt/kdevelop-pg-qt-2.2.0.ebuild
index 05aa96fc8afd..4fac1ce848d0 100644
--- a/dev-util/kdevelop-pg-qt/kdevelop-pg-qt-2.2.0.ebuild
+++ b/dev-util/kdevelop-pg-qt/kdevelop-pg-qt-2.2.0.ebuild
@@ -16,6 +16,8 @@ HOMEPAGE="https://www.kdevelop.org/"
LICENSE="LGPL-2+ LGPL-2.1+"
IUSE=""
+PATCHES=( "${FILESDIR}/${P}-qt-5.14.patch" )
+
BDEPEND="
sys-devel/bison
sys-devel/flex