kde-misc/tellico: Fix build against [libxml2 using] ICU-64 headers
authorAndreas Sturmlechner <asturm@gentoo.org>
Thu, 9 May 2019 19:44:34 +0000 (21:44 +0200)
committerAndreas Sturmlechner <asturm@gentoo.org>
Thu, 9 May 2019 19:45:36 +0000 (21:45 +0200)
Closes: https://bugs.gentoo.org/685460
Package-Manager: Portage-2.3.66, Repoman-2.3.12
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
kde-misc/tellico/files/tellico-3.1.4-icu-64.patch [new file with mode: 0644]
kde-misc/tellico/tellico-3.1.4.ebuild

diff --git a/kde-misc/tellico/files/tellico-3.1.4-icu-64.patch b/kde-misc/tellico/files/tellico-3.1.4-icu-64.patch
new file mode 100644 (file)
index 0000000..5b10e4d
--- /dev/null
@@ -0,0 +1,57 @@
+From 2e552aea8d2391ea3ab8afdb58caf214954a2129 Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <asturm@gentoo.org>
+Date: Thu, 9 May 2019 21:16:33 +0200
+Subject: [PATCH] Fix build against ICU 64.1 and later
+
+Summary:
+See also: https://unicode-org.atlassian.net/browse/ICU-20530
+
+Lots of errors of the same kind (libxml/tree.h included within extern "C"):
+
+```
+In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/8.3.0/include/g++-v8/bits/shared_ptr.h:52,
+                 from /usr/lib/gcc/x86_64-pc-linux-gnu/8.3.0/include/g++-v8/memory:81,
+                 from /usr/include/unicode/localpointer.h:45,
+                 from /usr/include/unicode/uenum.h:23,
+                 from /usr/include/unicode/ucnv.h:53,
+                 from /usr/include/libxml2/libxml/encoding.h:31,
+                 from /usr/include/libxml2/libxml/parser.h:810,
+                 from /usr/include/libxml2/libxml/globals.h:18,
+                 from /usr/include/libxml2/libxml/threads.h:35,
+                 from /usr/include/libxml2/libxml/xmlmemory.h:218,
+                 from /usr/include/libxml2/libxml/tree.h:1307,
+                 from /var/tmp/portage/kde-misc/tellico-9999/work/tellico-9999/src/translators/xslthandler.h:34,
+                 from /var/tmp/portage/kde-misc/tellico-9999/work/tellico-9999/src/translators/xsltimporter.cpp:26:
+/usr/lib/gcc/x86_64-pc-linux-gnu/8.3.0/include/g++-v8/bits/shared_ptr_base.h:338:3: error: template with C linkage
+   template<typename _Tp, _Lock_policy _Lp = __default_lock_policy>
+   ^~~~~~~~
+```
+
+Test Plan: Builds fine against ICU 64.2.
+
+Reviewers: #tellico
+
+Differential Revision: https://phabricator.kde.org/D21103
+---
+ src/translators/xslthandler.h | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/src/translators/xslthandler.h b/src/translators/xslthandler.h
+index ebbb010b..bb2112da 100644
+--- a/src/translators/xslthandler.h
++++ b/src/translators/xslthandler.h
+@@ -29,9 +29,10 @@
+ #include <QHash>
+ #include <QString>
+-extern "C" {
+ // for xmlDocPtr
+ #include <libxml/tree.h>
++
++extern "C" {
+ // for xsltStyleSheetPtr
+ #include <libxslt/xsltInternals.h>
+ }
+-- 
+2.21.0
+
index 14a4c066ed2219d8c1ae1e9d39f819683c0cd6d0..c9cec88bd7e194661a851ac31fd3cd83ea97154d 100644 (file)
@@ -71,6 +71,7 @@ DOCS=( AUTHORS ChangeLog README )
 PATCHES=(
        "${FILESDIR}/${P}-xmloutputclosecallback-signature.patch"
        "${FILESDIR}/${P}-empty-permissions-set.patch"
+       "${FILESDIR}/${P}-icu-64.patch" # bug #685460
 )
 
 src_configure() {