summaryrefslogtreecommitdiff
path: root/net-libs/libtorrent-rasterbar
diff options
context:
space:
mode:
Diffstat (limited to 'net-libs/libtorrent-rasterbar')
-rw-r--r--net-libs/libtorrent-rasterbar/Manifest1
-rw-r--r--net-libs/libtorrent-rasterbar/files/fix-boost-1.72.patch14
-rw-r--r--net-libs/libtorrent-rasterbar/libtorrent-rasterbar-1.2.2-r314.ebuild114
3 files changed, 129 insertions, 0 deletions
diff --git a/net-libs/libtorrent-rasterbar/Manifest b/net-libs/libtorrent-rasterbar/Manifest
new file mode 100644
index 00000000..a38f28f1
--- /dev/null
+++ b/net-libs/libtorrent-rasterbar/Manifest
@@ -0,0 +1 @@
+DIST libtorrent-rasterbar-1.2.2.tar.gz 3584187 BLAKE2B 93c77544d4641122f0bd2b5c5f0577629fb7bdfc9e81bd54f7a849f5a477255adc699676516865c93610d24a830a26a0de45f10e50ce64ad6f0214c116f7754c SHA512 34dcf5421dfccbba78bdd30890b9c18b92fdee1a2e1693ada9b55b79a167730093862017581b9251a654b5517011dbe4c46b520b03b78aa86a909457f7edcf2c
diff --git a/net-libs/libtorrent-rasterbar/files/fix-boost-1.72.patch b/net-libs/libtorrent-rasterbar/files/fix-boost-1.72.patch
new file mode 100644
index 00000000..ded59a56
--- /dev/null
+++ b/net-libs/libtorrent-rasterbar/files/fix-boost-1.72.patch
@@ -0,0 +1,14 @@
+diff -Nur a/include/libtorrent/aux_/socket_type.hpp b/include/libtorrent/aux_/socket_type.hpp
+--- a/include/libtorrent/aux_/socket_type.hpp 2019-09-24 00:28:43.000000000 +0100
++++ b/include/libtorrent/aux_/socket_type.hpp 2019-12-17 22:48:27.679305842 +0000
+@@ -184,6 +184,10 @@
+ using receive_buffer_size = tcp::socket::receive_buffer_size;
+ using send_buffer_size = tcp::socket::send_buffer_size;
+
++#if BOOST_VERSION >= 106600
++ using executor_type = tcp::socket::executor_type;
++#endif
++
+ explicit socket_type(io_service& ios): m_io_service(ios), m_type(0) {}
+ ~socket_type();
+
diff --git a/net-libs/libtorrent-rasterbar/libtorrent-rasterbar-1.2.2-r314.ebuild b/net-libs/libtorrent-rasterbar/libtorrent-rasterbar-1.2.2-r314.ebuild
new file mode 100644
index 00000000..871f0ce1
--- /dev/null
+++ b/net-libs/libtorrent-rasterbar/libtorrent-rasterbar-1.2.2-r314.ebuild
@@ -0,0 +1,114 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python2_7 python3_{5,6,7} )
+PYTHON_REQ_USE="threads(+)"
+DISTUTILS_OPTIONAL=true
+DISTUTILS_IN_SOURCE_BUILD=true
+
+inherit autotools distutils-r1
+
+MY_PV=$(ver_rs 1-2 '_')
+MY_P=${PN/-rasterbar}-${MY_PV}
+
+DESCRIPTION="C++ BitTorrent implementation focusing on efficiency and scalability"
+HOMEPAGE="https://libtorrent.org https://github.com/arvidn/libtorrent"
+SRC_URI="https://github.com/arvidn/libtorrent/archive/${MY_P}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0/9"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~sparc ~x86"
+IUSE="debug +dht doc examples libressl python +ssl static-libs test"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-libs/boost:=[threads]
+ virtual/libiconv
+ examples? ( !net-p2p/mldonkey )
+ python? (
+ ${PYTHON_DEPS}
+ dev-libs/boost:=[python,${PYTHON_USEDEP}]
+ )
+ ssl? (
+ !libressl? ( dev-libs/openssl:0= )
+ libressl? ( dev-libs/libressl:= )
+ )
+"
+DEPEND="${RDEPEND}
+ sys-devel/libtool
+"
+
+S="${WORKDIR}/${PN/-rasterbar}-${MY_P}"
+
+PATCHES="( "${FILESDIR}/fix-boost-1.72.patch" )"
+
+src_prepare() {
+ mkdir "${S}"/build-aux/ || die
+ touch "${S}"/build-aux/config.rpath || die
+ eautoreconf
+
+ default
+
+ # bug 578026
+ # prepend -L${S}/... to ensure bindings link against the lib we just built
+ sed -i -e "s|^|-L${S}/src/.libs |" bindings/python/link_flags.in || die
+
+ # prepend -I${S}/... to ensure bindings use the right headers
+ sed -i -e "s|^|-I${S}/src/include |" bindings/python/compile_flags.in || die
+
+ use python && distutils-r1_src_prepare
+}
+
+src_configure() {
+
+ local myeconfargs=(
+ $(use_enable debug)
+ $(use_enable debug export-all)
+ $(use_enable debug logging)
+ $(use_enable dht)
+ $(use_enable examples)
+ $(use_enable ssl encryption)
+ $(use_enable static-libs static)
+ $(use_enable test tests)
+ --with-libiconv
+ )
+ econf "${myeconfargs[@]}"
+
+ if use python; then
+ python_configure() {
+ econf "${myeconfargs[@]}" \
+ --enable-python-binding \
+ --with-boost-python="boost_${EPYTHON/./}"
+ }
+ distutils-r1_src_configure
+ fi
+}
+
+src_compile() {
+ default
+
+ python_compile() {
+ cd "${BUILD_DIR}/../bindings/python" || die
+ distutils-r1_python_compile
+ }
+ use python && distutils-r1_src_compile
+}
+
+src_install() {
+ use doc && HTML_DOCS+=( "${S}"/docs )
+
+ default
+
+ python_install() {
+ cd "${BUILD_DIR}/../bindings/python" || die
+ distutils-r1_python_install
+ }
+ use python && distutils-r1_src_install
+
+ find "${D}" -name '*.la' -delete || die
+}