diff options
Diffstat (limited to 'net-libs/qmf')
-rw-r--r-- | net-libs/qmf/ChangeLog | 7 | ||||
-rw-r--r-- | net-libs/qmf/files/qmf-4.0.2-include.patch | 34 | ||||
-rw-r--r-- | net-libs/qmf/files/qmf-4.0.2-visibility.patch | 66 | ||||
-rw-r--r-- | net-libs/qmf/qmf-4.0.2.ebuild | 4 |
4 files changed, 109 insertions, 2 deletions
diff --git a/net-libs/qmf/ChangeLog b/net-libs/qmf/ChangeLog index 6cbb94ed6716..398a0d0f92c0 100644 --- a/net-libs/qmf/ChangeLog +++ b/net-libs/qmf/ChangeLog @@ -1,6 +1,11 @@ # ChangeLog for net-libs/qmf # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-libs/qmf/ChangeLog,v 1.7 2013/07/01 10:12:04 pesa Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-libs/qmf/ChangeLog,v 1.8 2013/08/01 08:08:27 pesa Exp $ + + 01 Aug 2013; Davide Pesavento <pesa@gentoo.org> + +files/qmf-4.0.2-include.patch, +files/qmf-4.0.2-visibility.patch, + qmf-4.0.2.ebuild: + Fix build with gcc-4.7 (bug 426458). *qmf-4.0.2 (01 Jul 2013) diff --git a/net-libs/qmf/files/qmf-4.0.2-include.patch b/net-libs/qmf/files/qmf-4.0.2-include.patch new file mode 100644 index 000000000000..5d050074edfe --- /dev/null +++ b/net-libs/qmf/files/qmf-4.0.2-include.patch @@ -0,0 +1,34 @@ +From f3ef1f7f6eb9e456465924c63ade2a036079c85f Mon Sep 17 00:00:00 2001 +From: Davide Pesavento <davidepesa@gmail.com> +Date: Sun, 28 Jul 2013 21:27:16 -0700 +Subject: [PATCH] Add missing include. + +Fixes the following compilation errors with gcc 4.7 and later. + +messageserver.cpp: In static member function 'static void MessageServer::hupSignalHandler(int)': +messageserver.cpp:501:5: error: '::write' has not been declared +messageserver.cpp: In member function 'void MessageServer::handleSigHup()': +messageserver.cpp:508:5: error: '::read' has not been declared + +Change-Id: I6fbcf2cba884f5e285c0259e020c60f4a44173b4 +Reviewed-by: Valerio Valerio <valerio.valerio@jollamobile.com> +Reviewed-by: Robin Burchell <robin+qt@viroteck.net> +--- + src/tools/messageserver/messageserver.cpp | 1 + + 1 files changed, 1 insertions(+), 0 deletions(-) + +diff --git a/src/tools/messageserver/messageserver.cpp b/src/tools/messageserver/messageserver.cpp +index b749f03..5fbedf9 100644 +--- a/src/tools/messageserver/messageserver.cpp ++++ b/src/tools/messageserver/messageserver.cpp +@@ -61,6 +61,7 @@ extern "C" { + } + + #if defined(Q_OS_UNIX) ++#include <unistd.h> + int MessageServer::sighupFd[2]; + #endif + +-- +1.7.1 + diff --git a/net-libs/qmf/files/qmf-4.0.2-visibility.patch b/net-libs/qmf/files/qmf-4.0.2-visibility.patch new file mode 100644 index 000000000000..5d9a26980bbd --- /dev/null +++ b/net-libs/qmf/files/qmf-4.0.2-visibility.patch @@ -0,0 +1,66 @@ +From a84920f307cd4c5661f09dc41e562ff949d6779c Mon Sep 17 00:00:00 2001 +From: Davide Pesavento <davidepesa@gmail.com> +Date: Sun, 28 Jul 2013 23:40:16 -0700 +Subject: [PATCH] libqmfclient: export a few private classes used by messageserver. + +Since version 4.7.0, gcc constraints the ELF visibility of template +instantiations to the visibility of its template arguments (see +http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35688). + +Therefore all explicit instantiations of QPrivatelyImplemented<> in +qmailinstantiations.cpp are now hidden, because the template arguments +are private classes that have hidden visibility. + +This commit restores pre-gcc-4.7 behavior by exporting the symbols +required to build messageserver successfully. + +Change-Id: I7c0ae91a56cac390f1e73418af486578da665a94 +Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> +Reviewed-by: Robin Burchell <robin+qt@viroteck.net> +--- + src/libraries/qmfclient/qmailmessage_p.h | 8 ++++---- + 1 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/src/libraries/qmfclient/qmailmessage_p.h b/src/libraries/qmfclient/qmailmessage_p.h +index 256c6b4..8a93432 100644 +--- a/src/libraries/qmfclient/qmailmessage_p.h ++++ b/src/libraries/qmfclient/qmailmessage_p.h +@@ -59,7 +59,7 @@ + + // These classes are implemented via qmailmessage.cpp and qmailinstantiations.cpp + +-class QMailMessageHeaderFieldPrivate : public QPrivateImplementationBase ++class QMF_EXPORT QMailMessageHeaderFieldPrivate : public QPrivateImplementationBase + { + public: + QMailMessageHeaderFieldPrivate(); +@@ -127,7 +127,7 @@ private: + }; + + +-class QMailMessageBodyPrivate : public QPrivateImplementationBase ++class QMF_EXPORT QMailMessageBodyPrivate : public QPrivateImplementationBase + { + public: + QMailMessageBodyPrivate(); +@@ -169,7 +169,7 @@ private: + }; + + +-class QMailMessagePartContainerPrivate : public QPrivateImplementationBase ++class QMF_EXPORT QMailMessagePartContainerPrivate : public QPrivateImplementationBase + { + public: + template<typename Derived> +@@ -356,7 +356,7 @@ private: + }; + + +-class QMailMessageMetaDataPrivate : public QPrivateImplementationBase ++class QMF_EXPORT QMailMessageMetaDataPrivate : public QPrivateImplementationBase + { + public: + QMailMessageMetaDataPrivate(); +-- +1.7.1 + diff --git a/net-libs/qmf/qmf-4.0.2.ebuild b/net-libs/qmf/qmf-4.0.2.ebuild index 8d9ef291bf3b..cfd1ba2f8771 100644 --- a/net-libs/qmf/qmf-4.0.2.ebuild +++ b/net-libs/qmf/qmf-4.0.2.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2013 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-libs/qmf/qmf-4.0.2.ebuild,v 1.1 2013/07/01 10:12:04 pesa Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-libs/qmf/qmf-4.0.2.ebuild,v 1.2 2013/08/01 08:08:27 pesa Exp $ EAPI=5 @@ -40,6 +40,8 @@ DEPEND="${RDEPEND} DOCS=(CHANGES) PATCHES=( "${FILESDIR}/${PN}-4.0.2-tests.patch" + "${FILESDIR}/${P}-include.patch" + "${FILESDIR}/${P}-visibility.patch" ) src_prepare() { |