diff options
author | Andreas K. Hüttel <dilfridge@gentoo.org> | 2011-12-30 23:14:15 +0000 |
---|---|---|
committer | Andreas K. Hüttel <dilfridge@gentoo.org> | 2011-12-30 23:14:15 +0000 |
commit | 690728ece00e3e1f8fae3d48574d670379d434cb (patch) | |
tree | 59ad88027a8759263471590b4a7ffaab593dbfe9 /net-p2p/ktorrent | |
parent | Revert accidental removal (diff) | |
download | gentoo-2-690728ece00e3e1f8fae3d48574d670379d434cb.tar.gz gentoo-2-690728ece00e3e1f8fae3d48574d670379d434cb.tar.bz2 gentoo-2-690728ece00e3e1f8fae3d48574d670379d434cb.zip |
Version bump including a backport of the kde-4.8 support, bug 392343
(Portage version: 2.1.10.41/cvs/Linux x86_64)
Diffstat (limited to 'net-p2p/ktorrent')
-rw-r--r-- | net-p2p/ktorrent/ChangeLog | 8 | ||||
-rw-r--r-- | net-p2p/ktorrent/files/ktorrent-4.1.3-tasks.patch | 166 | ||||
-rw-r--r-- | net-p2p/ktorrent/ktorrent-4.1.3.ebuild | 104 |
3 files changed, 277 insertions, 1 deletions
diff --git a/net-p2p/ktorrent/ChangeLog b/net-p2p/ktorrent/ChangeLog index 015d7e7487d0..375388e254b0 100644 --- a/net-p2p/ktorrent/ChangeLog +++ b/net-p2p/ktorrent/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for net-p2p/ktorrent # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-p2p/ktorrent/ChangeLog,v 1.172 2011/12/15 22:22:43 ago Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-p2p/ktorrent/ChangeLog,v 1.173 2011/12/30 23:14:15 dilfridge Exp $ + +*ktorrent-4.1.3 (30 Dec 2011) + + 30 Dec 2011; Andreas K. Huettel <dilfridge@gentoo.org> + +ktorrent-4.1.3.ebuild, +files/ktorrent-4.1.3-tasks.patch: + Version bump including a backport of the kde-4.8 support, bug 392343 15 Dec 2011; Agostino Sarubbo <ago@gentoo.org> ktorrent-4.1.2.ebuild: Stable for AMD64, wrt bug #394867 diff --git a/net-p2p/ktorrent/files/ktorrent-4.1.3-tasks.patch b/net-p2p/ktorrent/files/ktorrent-4.1.3-tasks.patch new file mode 100644 index 000000000000..1ebf22412ac5 --- /dev/null +++ b/net-p2p/ktorrent/files/ktorrent-4.1.3-tasks.patch @@ -0,0 +1,166 @@ +diff --git a/plasma/applet/CMakeLists.txt b/plasma/applet/CMakeLists.txt +index 3a72241..4307cf2 100644 +--- a/plasma/applet/CMakeLists.txt ++++ b/plasma/applet/CMakeLists.txt +@@ -5,25 +5,15 @@ if(NOT QT_VERSION_OK) + + else(NOT QT_VERSION_OK) + +- set(TASKMANAGER_FOUND FALSE) +- FIND_PATH(TASKMANAGER_INCLUDE_DIR NAMES taskmanager.h PATHS ${KDE4_INCLUDE_DIR}/taskmanager ${INCLUDE_INSTALL_DIR}/taskmanager.h) +- FIND_LIBRARY(TASKMANAGER_LIBRARY NAMES taskmanager PATHS ${KDE4_LIB_DIR} ${LIB_INSTALL_DIR}) +- +- if(TASKMANAGER_INCLUDE_DIR AND TASKMANAGER_LIBRARY) +- set(TASKMANAGER_FOUND TRUE) +- message(STATUS "Found libtaskmanager: ${TASKMANAGER_LIBRARY} ") +- include_directories(${TASKMANAGER_INCLUDE_DIR}) +- set(ktapplet_SRCS applet.cpp chunkbar.cpp fadingitem.cpp fadingnavigationwidget.cpp) +- +- kde4_add_ui_files(ktapplet_SRCS appletconfig.ui) +- +- kde4_add_plugin(plasma_applet_ktorrent ${ktapplet_SRCS}) +- target_link_libraries(plasma_applet_ktorrent ${KDE4_PLASMA_LIBS} ${KDE4_KIO_LIBS} ${TASKMANAGER_LIBRARY} ${LIBKTORRENT_LIBRARIES} ktcore) +- +- install(TARGETS plasma_applet_ktorrent DESTINATION ${PLUGIN_INSTALL_DIR}) +- install(FILES plasma-applet-ktorrent.desktop DESTINATION ${SERVICES_INSTALL_DIR}) +- endif(TASKMANAGER_INCLUDE_DIR AND TASKMANAGER_LIBRARY) +- +- macro_log_feature(TASKMANAGER_FOUND "libtaskmanager" "libtaskmanager library and header files" "http://www.kde.org/" FALSE "" "libtaskmanager is needed for KTorrent Plasmoid") ++ ++ set(ktapplet_SRCS applet.cpp chunkbar.cpp fadingitem.cpp fadingnavigationwidget.cpp) ++ ++ kde4_add_ui_files(ktapplet_SRCS appletconfig.ui) ++ ++ kde4_add_plugin(plasma_applet_ktorrent ${ktapplet_SRCS}) ++ target_link_libraries(plasma_applet_ktorrent ${KDE4_PLASMA_LIBS} ${KDE4_KIO_LIBS} ${LIBKTORRENT_LIBRARIES} ktcore) ++ ++ install(TARGETS plasma_applet_ktorrent DESTINATION ${PLUGIN_INSTALL_DIR}) ++ install(FILES plasma-applet-ktorrent.desktop DESTINATION ${SERVICES_INSTALL_DIR}) + + endif(NOT QT_VERSION_OK) +diff --git a/plasma/applet/applet.cpp b/plasma/applet/applet.cpp +index 59e7191..bf09479 100644 +--- a/plasma/applet/applet.cpp ++++ b/plasma/applet/applet.cpp +@@ -21,6 +21,9 @@ + #include "applet.h" + #include <QFile> + #include <QGraphicsLinearLayout> ++#include <QDBusConnection> ++#include <QDBusConnectionInterface> ++#include <QDBusMessage> + #include <KConfigDialog> + #include <KLocale> + #include <KRun> +@@ -31,12 +34,11 @@ + #include <Plasma/IconWidget> + #endif + #include <Plasma/Label> +-#include <taskmanager/taskmanager.h> +-#include <taskmanager/task.h> + #include <util/functions.h> + #include "chunkbar.h" + #include "fadingnavigationwidget.h" + ++ + using namespace bt; + + namespace ktplasma +@@ -174,7 +176,8 @@ namespace ktplasma + } + } + +- void Applet::updateNavigation() { ++ void Applet::updateNavigation() ++ { + navigation->setEnabled(connected_to_app && !sources.empty() + && (sources.count() > 1 || !sources.contains(current_source))); + } +@@ -193,12 +196,14 @@ namespace ktplasma + } + } + +- void Applet::updateSources() { ++ void Applet::updateSources() ++ { + sources = engine->sources(); + sources.removeOne("core"); + } + +- void Applet::setSource(QString source) { ++ void Applet::setSource(QString source) ++ { + if (!current_source.isEmpty()) + engine->disconnectSource(current_source,this); + clearData(); +@@ -340,20 +345,39 @@ namespace ktplasma + + void Applet::iconClicked() + { +- TaskManager::TaskDict tasks = TaskManager::TaskManager::self()->tasks(); +- for (TaskManager::TaskDict::iterator i = tasks.begin();i != tasks.end();i ++) ++ QDBusConnection session_bus = QDBusConnection::sessionBus(); ++ QDBusConnectionInterface* dbus_service = session_bus.interface(); ++ if (!session_bus.isConnected() || !dbus_service || !dbus_service->isServiceRegistered("org.ktorrent.ktorrent")) + { +- if (i.value()->className() == "ktorrent") +- { +- KWindowSystem::activateWindow(i.key()); +- return; +- } ++ // can't find the window, try launching it ++ KUrl::List empty; ++ KRun::run("ktorrent", empty, 0); ++ } ++ else ++ { ++ QDBusMessage msg = QDBusMessage::createMethodCall("org.ktorrent.ktorrent", "/ktorrent/MainWindow_1", "org.kde.KMainWindow", "winId"); ++ QDBusPendingCall call = session_bus.asyncCall(msg, 5000); ++ QDBusPendingCallWatcher* watcher = new QDBusPendingCallWatcher(call ,this); ++ connect(watcher, SIGNAL(finished(QDBusPendingCallWatcher*)), this, SLOT(dbusCallFinished(QDBusPendingCallWatcher*))); + } +- +- // can't find the window, try launching it +- KUrl::List empty; +- KRun::run("ktorrent", empty, 0); + } ++ ++ void Applet::dbusCallFinished(QDBusPendingCallWatcher* self) ++ { ++ if (self->isError()) ++ { ++ // call failed, try launching it ++ KUrl::List empty; ++ KRun::run("ktorrent", empty, 0); ++ } ++ else ++ { ++ QDBusPendingReply<qlonglong> reply = *self; ++ KWindowSystem::activateWindow(reply.value()); ++ } ++ self->deleteLater(); ++ } ++ + + void Applet::clearData() + { +diff --git a/plasma/applet/applet.h b/plasma/applet/applet.h +index 29b3265..d396118 100644 +--- a/plasma/applet/applet.h ++++ b/plasma/applet/applet.h +@@ -27,6 +27,7 @@ + #include "fadingnavigationwidget.h" + + class QGraphicsLinearLayout; ++class QDBusPendingCallWatcher; + + namespace Plasma + { +@@ -68,6 +69,7 @@ namespace ktplasma + void iconClicked(); + void selectPrev(); + void selectNext(); ++ void dbusCallFinished(QDBusPendingCallWatcher* self); + + private: + void updateTorrentCombo(); diff --git a/net-p2p/ktorrent/ktorrent-4.1.3.ebuild b/net-p2p/ktorrent/ktorrent-4.1.3.ebuild new file mode 100644 index 000000000000..a1a8fa69b87d --- /dev/null +++ b/net-p2p/ktorrent/ktorrent-4.1.3.ebuild @@ -0,0 +1,104 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-p2p/ktorrent/ktorrent-4.1.3.ebuild,v 1.1 2011/12/30 23:14:15 dilfridge Exp $ + +EAPI=4 + +KDE_SCM="git" +KDE_MINIMAL="4.5" +LIBKT_VERSION_MIN="${PV}" +LIBKT_VERSION_MAX="99999999" +if [[ ${PV} != 9999* ]]; then + inherit versionator + # upstream likes to skip that _ in beta releases + MY_PV="${PV/_/}" + LIBKT_VERSION_MIN=$(($(get_major_version)-3)).$(get_version_component_range 2-3 ${PV}) + LIBKT_VERSION_MAX=$(($(get_major_version)-3)).$(($(get_version_component_range 2)+1)) + MY_P="${PN}-${MY_PV}" + KDE_HANDBOOK="optional" + KDE_DOC_DIRS="doc" + + KDE_LINGUAS="ar ast be bg ca ca@valencia cs da de el en_GB eo es et eu + fi fr ga gl hi hne hr hu is it ja km lt lv mai ms nb nds nl nn oc + pl pt pt_BR ro ru se si sk sl sr sr@ijekavian sr@ijekavianlatin + sr@latin sv tr uk zh_CN zh_TW" + SRC_URI="http://ktorrent.org/downloads/${MY_PV}/${MY_P}.tar.bz2" + S="${WORKDIR}"/"${MY_P}" + + KEYWORDS="~amd64 ~ppc ~ppc64 ~x86" +else + LIBKT_VERSION_MIN="${PV}" + LIBKT_VERSION_MAX="99999999" + KEYWORDS="" +fi + +inherit kde4-base + +DESCRIPTION="A BitTorrent program for KDE." +HOMEPAGE="http://ktorrent.org/" + +LICENSE="GPL-2" +SLOT="4" +IUSE="+bwscheduler debug +downloadorder +infowidget +ipfilter +kross +logviewer ++magnetgenerator +mediaplayer plasma rss +scanfolder +search +shutdown +stats ++upnp webinterface +zeroconf" + +COMMONDEPEND=" + <net-libs/libktorrent-${LIBKT_VERSION_MAX} + >=net-libs/libktorrent-${LIBKT_VERSION_MIN} + infowidget? ( dev-libs/geoip ) + mediaplayer? ( >=media-libs/taglib-1.5 ) + plasma? ( $(add_kdebase_dep libtaskmanager) ) + rss? ( $(add_kdebase_dep kdepimlibs) ) + shutdown? ( + $(add_kdebase_dep libkworkspace) + $(add_kdebase_dep solid) + ) +" +DEPEND="${COMMONDEPEND} + dev-libs/boost + sys-devel/gettext +" +RDEPEND="${COMMONDEPEND} + ipfilter? ( + app-arch/bzip2 + app-arch/unzip + $(add_kdebase_dep kdebase-kioslaves) + ) + kross? ( $(add_kdebase_dep krosspython) ) +" + +PATCHES=( "${FILESDIR}/${P}-tasks.patch" ) + +src_prepare() { + if ! use plasma; then + sed -i \ + -e "s:add_subdirectory(plasma):#nada:g" \ + CMakeLists.txt || die "Failed to make plasmoid optional" + fi + + kde4-base_src_prepare +} + +src_configure() { + mycmakeargs=( + $(cmake-utils_use_enable bwscheduler BWSCHEDULER_PLUGIN) + $(cmake-utils_use_enable downloadorder DOWNLOADORDER_PLUGIN) + $(cmake-utils_use_enable infowidget INFOWIDGET_PLUGIN) + $(cmake-utils_use_with infowidget SYSTEM_GEOIP) + $(cmake-utils_use_enable ipfilter IPFILTER_PLUGIN) + $(cmake-utils_use_enable kross SCRIPTING_PLUGIN) + $(cmake-utils_use_enable logviewer LOGVIEWER_PLUGIN) + $(cmake-utils_use_enable magnetgenerator MAGNETGENERATOR_PLUGIN) + $(cmake-utils_use_enable mediaplayer MEDIAPLAYER_PLUGIN) + $(cmake-utils_use_enable rss SYNDICATION_PLUGIN) + $(cmake-utils_use_enable scanfolder SCANFOLDER_PLUGIN) + $(cmake-utils_use_enable search SEARCH_PLUGIN) + $(cmake-utils_use_enable shutdown SHUTDOWN_PLUGIN) + $(cmake-utils_use_enable stats STATS_PLUGIN) + $(cmake-utils_use_enable upnp UPNP_PLUGIN) + $(cmake-utils_use_enable webinterface WEBINTERFACE_PLUGIN) + $(cmake-utils_use_enable zeroconf ZEROCONF_PLUGIN) + ) + kde4-base_src_configure +} |