summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuli Suominen <ssuominen@gentoo.org>2013-09-21 14:20:57 +0000
committerSamuli Suominen <ssuominen@gentoo.org>2013-09-21 14:20:57 +0000
commitc84251a8688bcee15a38dcddde9f4e50fe32c365 (patch)
tree78b185f9d4f6c3109ced61285f701f8db3c708fa
parentAdd ConditionVirtualization=oracle (#485484 by jackieku) (diff)
downloadgentoo-2-c84251a8688bcee15a38dcddde9f4e50fe32c365.tar.gz
gentoo-2-c84251a8688bcee15a38dcddde9f4e50fe32c365.tar.bz2
gentoo-2-c84251a8688bcee15a38dcddde9f4e50fe32c365.zip
Restore Qt 4.x support using upstream patch wrt #485038 by Mike Gilbert
(Portage version: 2.2.6/cvs/Linux x86_64, signed Manifest commit with key 4868F14D)
-rw-r--r--net-p2p/transmission/ChangeLog8
-rw-r--r--net-p2p/transmission/files/transmission-2.82-qt4.patch70
-rw-r--r--net-p2p/transmission/transmission-2.82-r3.ebuild148
3 files changed, 225 insertions, 1 deletions
diff --git a/net-p2p/transmission/ChangeLog b/net-p2p/transmission/ChangeLog
index 1d6ddd408f75..518e925d5ad7 100644
--- a/net-p2p/transmission/ChangeLog
+++ b/net-p2p/transmission/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for net-p2p/transmission
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-p2p/transmission/ChangeLog,v 1.242 2013/09/07 12:18:02 ssuominen Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-p2p/transmission/ChangeLog,v 1.243 2013/09/21 14:20:57 ssuominen Exp $
+
+*transmission-2.82-r3 (21 Sep 2013)
+
+ 21 Sep 2013; Samuli Suominen <ssuominen@gentoo.org>
+ +files/transmission-2.82-qt4.patch, +transmission-2.82-r3.ebuild:
+ Restore Qt 4.x support using upstream patch wrt #485038 by Mike Gilbert
*transmission-2.82-r2 (07 Sep 2013)
diff --git a/net-p2p/transmission/files/transmission-2.82-qt4.patch b/net-p2p/transmission/files/transmission-2.82-qt4.patch
new file mode 100644
index 000000000000..5754b36874bd
--- /dev/null
+++ b/net-p2p/transmission/files/transmission-2.82-qt4.patch
@@ -0,0 +1,70 @@
+Restore Qt 4.x support because Qt 5.x is not in Portage yet and 2.82 is a good stabilization target, see:
+
+http://bugs.gentoo.org/485038
+
+--- qt/qtr.pro
++++ qt/qtr.pro
+@@ -12,9 +12,13 @@
+ man.files = transmission-qt.1
+
+ CONFIG += qt thread debug link_pkgconfig
+-QT += network dbus widgets
++QT += network dbus
+ PKGCONFIG = fontconfig libcurl openssl libevent
+
++greaterThan(QT_MAJOR_VERSION, 4) {
++ QT += widgets
++}
++
+ TRANSMISSION_TOP = ..
+
+ include(config.pri)
+--- qt/favicon.cc
++++ qt/favicon.cc
+@@ -14,8 +14,13 @@
+ #include <QNetworkAccessManager>
+ #include <QNetworkReply>
+ #include <QNetworkRequest>
+-#include <QStandardPaths>
+
++#if QT_VERSION < QT_VERSION_CHECK(5, 0, 0)
++ #include <QDesktopServices>
++#else
++ #include <QStandardPaths>
++#endif
++
+ #include "favicon.h"
+
+ /***
+@@ -40,7 +45,13 @@
+ QString
+ Favicons :: getCacheDir( )
+ {
+- const QString base = QStandardPaths::writableLocation (QStandardPaths::CacheLocation);
++ const QString base =
++#if QT_VERSION < QT_VERSION_CHECK(5, 0, 0)
++ QDesktopServices::storageLocation( QDesktopServices::CacheLocation );
++#else
++ QStandardPaths::writableLocation( QStandardPaths::CacheLocation );
++#endif
++
+ return QDir( base ).absoluteFilePath( "favicons" );
+ }
+
+--- qt/file-tree.cc
++++ qt/file-tree.cc
+@@ -885,7 +885,12 @@
+ for (int i=0; i<NUM_COLUMNS; ++i)
+ {
+ setColumnHidden (i, (i<FIRST_VISIBLE_COLUMN) || (LAST_VISIBLE_COLUMN<i));
++
++#if QT_VERSION < QT_VERSION_CHECK(5, 0, 0)
++ header()->setResizeMode(i, QHeaderView::Interactive);
++#else
+ header()->setSectionResizeMode(i, QHeaderView::Interactive);
++#endif
+ }
+
+ connect (this, SIGNAL(clicked(const QModelIndex&)),
+
+------------------------------------------------------------------------
diff --git a/net-p2p/transmission/transmission-2.82-r3.ebuild b/net-p2p/transmission/transmission-2.82-r3.ebuild
new file mode 100644
index 000000000000..d05c5358dbab
--- /dev/null
+++ b/net-p2p/transmission/transmission-2.82-r3.ebuild
@@ -0,0 +1,148 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-p2p/transmission/transmission-2.82-r3.ebuild,v 1.1 2013/09/21 14:20:57 ssuominen Exp $
+
+EAPI=5
+inherit autotools eutils fdo-mime gnome2-utils qt4-r2 systemd user
+
+DESCRIPTION="A Fast, Easy and Free BitTorrent client"
+HOMEPAGE="http://www.transmissionbt.com/"
+SRC_URI="http://download.transmissionbt.com/${PN}/files/${P}.tar.xz"
+
+LICENSE="GPL-2 MIT"
+SLOT=0
+IUSE="ayatana gtk lightweight systemd qt4 xfs"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~x86-fbsd ~amd64-linux"
+
+RDEPEND=">=dev-libs/libevent-2.0.10:=
+ dev-libs/openssl:0=
+ net-libs/libnatpmp:=
+ >=net-libs/miniupnpc-1.6.20120509:=
+ >=net-misc/curl-7.16.3:=[ssl]
+ sys-libs/zlib:=
+ gtk? (
+ >=dev-libs/dbus-glib-0.100:=
+ >=dev-libs/glib-2.32:2=
+ >=x11-libs/gtk+-3.4:3=
+ ayatana? ( >=dev-libs/libappindicator-0.4.90:3= )
+ )
+ systemd? ( sys-apps/systemd )
+ qt4? (
+ dev-qt/qtcore:4=
+ dev-qt/qtgui:4=
+ dev-qt/qtdbus:4=
+ )"
+DEPEND="${RDEPEND}
+ dev-libs/glib:2
+ dev-util/intltool
+ sys-devel/gettext
+ virtual/os-headers
+ virtual/pkgconfig
+ xfs? ( sys-fs/xfsprogs )"
+
+REQUIRED_USE="ayatana? ( gtk )"
+
+DOCS="AUTHORS NEWS qt/README.txt"
+
+pkg_setup() {
+ enewgroup ${PN}
+ enewuser ${PN} -1 -1 -1 ${PN}
+}
+
+src_prepare() {
+ sed -i -e '/CFLAGS/s:-ggdb3::' configure.ac || die
+ # Trick to avoid automagic dependency
+ use ayatana || { sed -i -e '/^LIBAPPINDICATOR_MINIMUM/s:=.*:=9999:' configure.ac || die; }
+ # Pass our configuration dir to systemd unit file
+ sed -i '/ExecStart/ s|$| -g /var/lib/transmission/config|' daemon/transmission-daemon.service || die
+ # http://trac.transmissionbt.com/ticket/4324
+ sed -i -e 's|noinst\(_PROGRAMS = $(TESTS)\)|check\1|' lib${PN}/Makefile.am || die
+ # Fix for broken translations path
+ epatch "${FILESDIR}"/${PN}-2.80-translations-path-fix.patch
+ # Restore support for Qt 4.x using upstream patch
+ epatch "${FILESDIR}"/${P}-qt4.patch
+
+ eautoreconf
+}
+
+src_configure() {
+ export ac_cv_header_xfs_xfs_h=$(usex xfs)
+
+ econf \
+ --enable-external-natpmp \
+ $(use_enable lightweight) \
+ $(use_with systemd systemd-daemon) \
+ $(use_with gtk)
+
+ if use qt4; then
+ pushd qt >/dev/null
+ eqmake4 qtr.pro
+ popd >/dev/null
+ fi
+}
+
+src_compile() {
+ emake
+
+ if use qt4; then
+ pushd qt >/dev/null
+ emake
+ lrelease translations/*.ts
+ popd >/dev/null
+ fi
+}
+
+src_install() {
+ default
+
+ rm -f "${ED}"/usr/share/${PN}/web/LICENSE
+
+ newinitd "${FILESDIR}"/${PN}-daemon.initd.9 ${PN}-daemon
+ newconfd "${FILESDIR}"/${PN}-daemon.confd.4 ${PN}-daemon
+ systemd_dounit daemon/${PN}-daemon.service
+
+ keepdir /var/{lib/${PN}/{config,downloads},log/${PN}}
+ fowners -R ${PN}:${PN} /var/{lib/${PN}/{,config,downloads},log/${PN}}
+
+ if use qt4; then
+ pushd qt >/dev/null
+ emake INSTALL_ROOT="${ED}"/usr install
+
+ domenu ${PN}-qt.desktop
+
+ local res
+ for res in 16 22 24 32 48 64 72 96 128 192 256; do
+ doicon -s ${res} icons/hicolor/${res}x${res}/${PN}-qt.png
+ done
+ doicon -s scalable icons/hicolor/scalable/${PN}-qt.svg
+
+ insinto /usr/share/qt4/translations
+ doins translations/*.qm
+ popd >/dev/null
+ fi
+}
+
+pkg_preinst() {
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ fdo-mime_desktop_database_update
+ gnome2_icon_cache_update
+
+ elog "If you use ${PN}-daemon, please, set 'rpc-username' and"
+ elog "'rpc-password' (in plain text, ${PN}-daemon will hash it on"
+ elog "start) in settings.json file located at /var/${PN}/config or"
+ elog "any other appropriate config directory."
+ elog
+ elog "Since µTP is enabled by default, ${PN} needs large kernel buffers for"
+ elog "the UDP socket. You can append following lines into /etc/sysctl.conf:"
+ elog " net.core.rmem_max = 4194304"
+ elog " net.core.wmem_max = 1048576"
+ elog "and run sysctl -p"
+}
+
+pkg_postrm() {
+ fdo-mime_desktop_database_update
+ gnome2_icon_cache_update
+}