aboutsummaryrefslogtreecommitdiffstats
path: root/multimedia
diff options
context:
space:
mode:
authorrakuco <rakuco@FreeBSD.org>2014-10-20 05:39:11 +0800
committerrakuco <rakuco@FreeBSD.org>2014-10-20 05:39:11 +0800
commit63259d208804d4523471cfb6a801d4724e8830d1 (patch)
treefa3a2bdb88c5c4e162601d6312bde1a1dcc53114 /multimedia
parent8740d22819065dc4f28c78d01bb40d7ae34b0c1f (diff)
downloadfreebsd-ports-gnome-63259d208804d4523471cfb6a801d4724e8830d1.tar.gz
freebsd-ports-gnome-63259d208804d4523471cfb6a801d4724e8830d1.tar.zst
freebsd-ports-gnome-63259d208804d4523471cfb6a801d4724e8830d1.zip
Add patch sent upstream to export the right symbols in ObjectDescriptionModel.
We basically need to revert a workaround inherited from a Qt commit from 2010 for a clang bug that has been fixed for many years. This workaround coupled with proper support for -fvisibility=hidden I added to Phonon a while ago was causing build problems in misc/qt4-qtdemo.
Diffstat (limited to 'multimedia')
-rw-r--r--multimedia/phonon/Makefile1
-rw-r--r--multimedia/phonon/files/patch-phonon__objectdescriptionmodel.h35
2 files changed, 36 insertions, 0 deletions
diff --git a/multimedia/phonon/Makefile b/multimedia/phonon/Makefile
index 93c3d33fca4d..eb20ee96d7c4 100644
--- a/multimedia/phonon/Makefile
+++ b/multimedia/phonon/Makefile
@@ -3,6 +3,7 @@
PORTNAME= phonon
PORTVERSION= 4.8.1
+PORTREVISION= 1
CATEGORIES= multimedia kde
MASTER_SITES= KDE/stable/${PORTNAME}/${PORTVERSION}
DIST_SUBDIR= KDE
diff --git a/multimedia/phonon/files/patch-phonon__objectdescriptionmodel.h b/multimedia/phonon/files/patch-phonon__objectdescriptionmodel.h
new file mode 100644
index 000000000000..de821ef64068
--- /dev/null
+++ b/multimedia/phonon/files/patch-phonon__objectdescriptionmodel.h
@@ -0,0 +1,35 @@
+Submitted upstream in https://git.reviewboard.kde.org/r/120664/
+
+commit 5ec6c0202cf44ee9790baed617c1e2f195f288d3
+Author: Raphael Kubo da Costa <rakuco@FreeBSD.org>
+Date: Mon Oct 20 00:13:11 2014 +0300
+
+ Revert "clang compat fix (from Qt)"
+
+ The original Qt commit (3cba3745, "Phonon: Export ObjectDescriptionModel
+ to prevent link errors with Clang") was a workaround for
+ http://llvm.org/bugs/show_bug.cgi?id=8177, which was fixed more than 4
+ years ago.
+
+ Now that we have proper support for clang in Phonon and build it with
+ -fvisibility=hidden, the workaround started causing problems, as
+ ObjectDescriptionModel::staticObject and others were not being exported
+ as expected. A quick test for this is building Qt's phonon capabilities
+ example.
+
+ This reverts commit 845e395ab3aba10dbd57207ad71fbbd6b422f107.
+--- phonon/objectdescriptionmodel.h
++++ phonon/objectdescriptionmodel.h
+@@ -139,11 +139,10 @@ namespace Phonon
+
+ /* Required to ensure template class vtables are exported on both symbian
+ and existing builds. */
+-#if defined(Q_OS_SYMBIAN) && defined(Q_CC_RVCT) || defined(Q_CC_CLANG)
++#if defined(Q_OS_SYMBIAN) && defined(Q_CC_RVCT)
+ // RVCT compiler (2.2.686) requires the export declaration to be on the class to export vtables
+ // MWC compiler works both ways
+ // GCCE compiler is unknown (it can't compile QtCore yet)
+-// Clang also requires the export declaration to be on the class to export vtables
+ #define PHONON_TEMPLATE_CLASS_EXPORT PHONON_EXPORT
+ #define PHONON_TEMPLATE_CLASS_MEMBER_EXPORT
+ #else