summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRaúl Porcel <armin76@gentoo.org>2007-03-16 19:44:45 +0000
committerRaúl Porcel <armin76@gentoo.org>2007-03-16 19:44:45 +0000
commit1fcce41dbf28a1108c61655b8edea92276b3b36d (patch)
treec0d427b235cd2334612bcd472b24070ed5bc65f8 /net-p2p/deluge
parentStable on ppc wrt bug 161781 (diff)
downloadgentoo-2-1fcce41dbf28a1108c61655b8edea92276b3b36d.tar.gz
gentoo-2-1fcce41dbf28a1108c61655b8edea92276b3b36d.tar.bz2
gentoo-2-1fcce41dbf28a1108c61655b8edea92276b3b36d.zip
Some changes, including use the rb_libtorrent library from the system, and some other changes from Fedora
(Portage version: 2.1.2.2)
Diffstat (limited to 'net-p2p/deluge')
-rw-r--r--net-p2p/deluge/ChangeLog7
-rw-r--r--net-p2p/deluge/deluge-0.5.0_rc2.ebuild14
-rw-r--r--net-p2p/deluge/files/0.5.0_rc2-use-system-rblibtorrent.patch211
3 files changed, 229 insertions, 3 deletions
diff --git a/net-p2p/deluge/ChangeLog b/net-p2p/deluge/ChangeLog
index 3564dfdccae1..f13bbbc143b4 100644
--- a/net-p2p/deluge/ChangeLog
+++ b/net-p2p/deluge/ChangeLog
@@ -1,6 +1,11 @@
# ChangeLog for net-p2p/deluge
# Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-p2p/deluge/ChangeLog,v 1.1 2007/03/16 16:38:38 armin76 Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-p2p/deluge/ChangeLog,v 1.2 2007/03/16 19:44:45 armin76 Exp $
+
+ 16 Mar 2007; Raúl Porcel <armin76@gentoo.org>
+ +files/0.5.0_rc2-use-system-rblibtorrent.patch, deluge-0.5.0_rc2.ebuild:
+ Some changes, including use the rb_libtorrent library from the system, and
+ some other changes from Fedora
*deluge-0.5.0_rc2 (16 Mar 2007)
diff --git a/net-p2p/deluge/deluge-0.5.0_rc2.ebuild b/net-p2p/deluge/deluge-0.5.0_rc2.ebuild
index 8be4004e71c9..a8412bbdcd4d 100644
--- a/net-p2p/deluge/deluge-0.5.0_rc2.ebuild
+++ b/net-p2p/deluge/deluge-0.5.0_rc2.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/net-p2p/deluge/deluge-0.5.0_rc2.ebuild,v 1.1 2007/03/16 16:38:38 armin76 Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-p2p/deluge/deluge-0.5.0_rc2.ebuild,v 1.2 2007/03/16 19:44:45 armin76 Exp $
inherit eutils distutils
@@ -16,7 +16,8 @@ KEYWORDS="~amd64 ~x86"
IUSE="libnotify"
DEPEND=">=dev-lang/python-2.3
- dev-libs/boost"
+ dev-libs/boost
+ >=net-libs/rb_libtorrent-0.11"
RDEPEND="${DEPEND}
>=dev-python/pygtk-2
dev-python/pyxdg
@@ -36,6 +37,8 @@ src_unpack() {
unpack ${A}
cd "${S}"
+ epatch "${FILESDIR}"/${PV}-use-system-rblibtorrent.patch
+
# use the threaded libs
sed -i -e "s:\('boost_[^']*\):\1-mt:g" setup.py \
|| die "sed failed"
@@ -45,6 +48,13 @@ src_unpack() {
src/dcommon.py || die "sed failed"
}
+src_compile() {
+ if use amd64 || use ia64 || use ppc64; then
+ CFLAGS="${CFLAGS} -DAMD64"
+ fi
+ distutils_src_compile
+}
+
pkg_postinst() {
elog
elog "Please note that Deluge is still in it's early stages"
diff --git a/net-p2p/deluge/files/0.5.0_rc2-use-system-rblibtorrent.patch b/net-p2p/deluge/files/0.5.0_rc2-use-system-rblibtorrent.patch
new file mode 100644
index 000000000000..ceb37714f651
--- /dev/null
+++ b/net-p2p/deluge/files/0.5.0_rc2-use-system-rblibtorrent.patch
@@ -0,0 +1,211 @@
+--- setup.py 2007-03-16 20:06:06.000000000 +0100
++++ deluge-fixed-setup.py 2007-03-16 20:06:20.000000000 +0100
+@@ -1,4 +1,9 @@
+ # Copyright (c) 2006 Zach Tibbitts ('zachtib') <zach@collegegeek.org>
++# Heavily modified by Peter Gordon ('codergeek42') <peter@thecodergeek.com>:
++# (1) Forcibly build against a system copy of libtorrent (Rasterbar's);
++# (2) Don't let the build script hardcode the RPM buildroot install path in the
++# installed files.
++# (3) Use proper CFLAGS (e.g., don't strip any)
+ #
+ # This program is free software; you can redistribute it and/or modify
+ # it under the terms of the GNU General Public License as published by
+@@ -28,148 +33,29 @@
+
+ pythonVersion = platform.python_version()[0:3]
+
+-NAME = "deluge"
+-FULLNAME = "Deluge BitTorrent Client"
+-VERSION = "0.4.99.2"
+-AUTHOR = "Zach Tibbitts, Alon Zakai"
+-EMAIL = "zach@collegegeek.org, kripkensteiner@gmail.com"
+-DESCRIPTION = "A bittorrent client written in PyGTK"
+-URL = "http://deluge-torrent.org"
+-LICENSE = "GPLv2"
+-
+-# NOTE: The following "hack" removes the -g and -Wstrict-prototypes
+-# build options from the command that will compile the C++ module,
+-# deluge_core. While we understand that you aren't generally
+-# encouraged to do this, we have done so for the following reasons:
+-# 1) The -g compiler option produces debugging information about
+-# the compiled module. However, this option increases the
+-# size of deluge_core.so from ~1.9MB to 13.6MB and slows down
+-# the program's execution without offering any benefits
+-# whatsoever.
+-# 2) -Wstrict-prototypes is not a valid C++ build option, and the
+-# compiler will throw a number of warnings at compile time.
+-# While this does not really impact anything, it makes it
+-# seem as if something is going wrong with the compile, and
+-# it has been removed to prevent confusion.
++APP_VERSION = "0.4.99.2"
+
+-removals = ['-g', '-DNDEBUG', '-O2', '-Wstrict-prototypes']
+ additions = ['-DNDEBUG', '-O2']
+
+ if pythonVersion == '2.5':
+ cv_opt = sysconfig.get_config_vars()["CFLAGS"]
+- for removal in removals:
+- cv_opt = cv_opt.replace(removal, " ")
+ for addition in additions:
+ cv_opt = cv_opt + " " + addition
+ sysconfig.get_config_vars()["CFLAGS"] = ' '.join(cv_opt.split())
+ else:
+ cv_opt = sysconfig.get_config_vars()["OPT"]
+- for removal in removals:
+- cv_opt = cv_opt.replace(removal, " ")
+ for addition in additions:
+ cv_opt = cv_opt + " " + addition
+ sysconfig.get_config_vars()["OPT"] = ' '.join(cv_opt.split())
+
+-# NOTE: The Rasterbar Libtorrent source code is in the libtorrent/ directory
+-# inside of Deluge's source tarball. On several occasions, it has been
+-# pointed out to us that we should build against the system's installed
+-# libtorrent rather than our internal copy, and a few people even submitted
+-# patches to do just that. However, as of now, this version
+-# of libtorrent is not available in Debian, and as a result, Ubuntu. Once
+-# libtorrent-rasterbar is available in the repositories of these distributions,
+-# we will probably begin to build against a system libtorrent, but at the
+-# moment, we are including the source code to make packaging on Debian and
+-# Ubuntu possible.
+
+ deluge_core = Extension('deluge_core',
+- include_dirs = ['./libtorrent', './libtorrent/include',
+- './libtorrent/include/libtorrent',
+- '/usr/include/python' + pythonVersion],
+- libraries = ['boost_filesystem', 'boost_date_time',
+- 'boost_program_options', 'boost_regex',
+- 'boost_serialization', 'boost_thread',
+- 'z', 'pthread'],
+- extra_compile_args = ["-Wno-missing-braces"],
+- sources = ['src/deluge_core.cpp',
+- 'libtorrent/src/alert.cpp',
+- 'libtorrent/src/allocate_resources.cpp',
+- 'libtorrent/src/bt_peer_connection.cpp',
+- 'libtorrent/src/entry.cpp',
+- 'libtorrent/src/escape_string.cpp',
+- 'libtorrent/src/file.cpp',
+- 'libtorrent/src/http_tracker_connection.cpp',
+- 'libtorrent/src/identify_client.cpp',
+- 'libtorrent/src/ip_filter.cpp',
+- 'libtorrent/src/peer_connection.cpp',
+- 'libtorrent/src/piece_picker.cpp',
+- 'libtorrent/src/policy.cpp',
+- 'libtorrent/src/session.cpp',
+- 'libtorrent/src/session_impl.cpp',
+- 'libtorrent/src/sha1.cpp',
+- 'libtorrent/src/stat.cpp',
+- 'libtorrent/src/storage.cpp',
+- 'libtorrent/src/torrent.cpp',
+- 'libtorrent/src/torrent_handle.cpp',
+- 'libtorrent/src/torrent_info.cpp',
+- 'libtorrent/src/tracker_manager.cpp',
+- 'libtorrent/src/udp_tracker_connection.cpp',
+- 'libtorrent/src/web_peer_connection.cpp',
+- 'libtorrent/src/kademlia/closest_nodes.cpp',
+- 'libtorrent/src/kademlia/dht_tracker.cpp',
+- 'libtorrent/src/kademlia/find_data.cpp',
+- 'libtorrent/src/kademlia/node.cpp',
+- 'libtorrent/src/kademlia/node_id.cpp',
+- 'libtorrent/src/kademlia/refresh.cpp',
+- 'libtorrent/src/kademlia/routing_table.cpp',
+- 'libtorrent/src/kademlia/rpc_manager.cpp',
+- 'libtorrent/src/kademlia/traversal_algorithm.cpp'])
++ include_dirs = [sysconfig.get_python_inc(), '/usr/include', '/usr/include/libtorrent'],
++ libraries = ['boost_filesystem', 'torrent'],
++ extra_compile_args = ["-Wno-missing-braces"],
++ sources = ['src/deluge_core.cpp'])
+
+-# Thanks to Iain Nicol for code to save the location for installed prefix
+-# At runtime, we need to know where we installed the data to.
+
+-class write_data_install_path(cmd.Command):
+- description = 'saves the data installation path for access at runtime'
+-
+- def initialize_options(self):
+- self.prefix = None
+- self.lib_build_dir = None
+-
+- def finalize_options(self):
+- self.set_undefined_options('install',
+- ('prefix', 'prefix')
+- )
+- self.set_undefined_options('build',
+- ('build_lib', 'lib_build_dir')
+- )
+-
+- def run(self):
+- conf_filename = os.path.join(self.lib_build_dir,
+- 'deluge', 'dcommon.py')
+-
+- conf_file = open(conf_filename, 'r')
+- data = conf_file.read()
+- conf_file.close()
+- data = data.replace('@datadir@', self.prefix)
+-
+- conf_file = open(conf_filename, 'w')
+- conf_file.write(data)
+- conf_file.close()
+-
+-class unwrite_data_install_path(cmd.Command):
+- description = 'undoes write_data_install_path'
+-
+- def initialize_options(self):
+- self.lib_build_dir = None
+-
+- def finalize_options(self):
+- self.set_undefined_options('build',
+- ('build_lib', 'lib_build_dir')
+- )
+-
+- def run(self):
+- dest = os.path.join(self.lib_build_dir,
+- 'deluge', 'dcommon.py')
+- shutil.copyfile('src/dcommon.py', dest)
+
+ class build_trans(cmd.Command):
+ description = 'Compile .po files into .mo files'
+@@ -206,12 +92,6 @@
+ def run(self):
+ _build.run(self)
+
+-class install(_install):
+- sub_commands = [('write_data_install_path', None)] + \
+- _install.sub_commands + [('unwrite_data_install_path', None)]
+- def run(self):
+- _install.run(self)
+-
+ class install_data(_install_data):
+ def run(self):
+ for lang in os.listdir('build/locale/'):
+@@ -220,13 +100,12 @@
+ self.data_files.append( (lang_dir, [lang_file]) )
+ _install_data.run(self)
+
++
++
+ cmdclass = {
+ 'build': build,
+- 'install': install,
+ 'build_trans': build_trans,
+ 'install_data': install_data,
+- 'write_data_install_path': write_data_install_path,
+- 'unwrite_data_install_path': unwrite_data_install_path,
+ }
+
+ data = [('share/deluge/glade', glob.glob('glade/*.glade')),
+@@ -237,9 +116,12 @@
+ for plugin in glob.glob('plugins/*'):
+ data.append( ('share/deluge/' + plugin, glob.glob(plugin + '/*')) )
+
+-setup(name=NAME, fullname=FULLNAME, version=VERSION,
+- author=AUTHOR, author_email=EMAIL, description=DESCRIPTION,
+- url=URL, license=LICENSE,
++setup(name="deluge", fullname="Deluge BitTorrent Client", version=APP_VERSION,
++ author="Zach Tibbitts, Alon Zakai",
++ author_email="zach@collegegeek.org, kripkensteiner@gmail.com",
++ description="A bittorrent client written in PyGTK",
++ url="http://deluge-torrent.org",
++ license="GPLv2",
+ scripts=["scripts/deluge"],
+ packages=['deluge'],
+ package_dir = {'deluge': 'src'},