blob: 202d8f5530acba62221c6c731a02ffc602371996 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
# Contributor: August Klein <amatcoder@gmail.com>
# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=libtorrent-rasterbar
pkgver=2.0.10
pkgrel=1
pkgdesc="Feature complete C++ bittorrent implementation"
url="https://www.rasterbar.com/products/libtorrent"
arch="all"
license="BSD-3-Clause"
depends_dev="boost-dev openssl-dev>3"
makedepends="$depends_dev cmake linux-headers python3-dev py3-setuptools samurai"
subpackages="py3-$pkgname:_py3 $pkgname-dev"
source="https://github.com/arvidn/libtorrent/releases/download/v$pkgver/libtorrent-rasterbar-$pkgver.tar.gz"
case "$CARCH" in
arm*|x86)
# fail to build on 32-bit
options="$options !check"
;;
*)
;;
esac
build() {
CXXFLAGS="$CXXFLAGS -O2 -DNDEBUG -flto=auto" \
cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=None \
-DCMAKE_CXX_STANDARD=17 \
-DCMAKE_INSTALL_PREFIX=/usr \
-Dbuild_tests="$(want_check && echo ON || echo OFF)" \
-Dpython-bindings=ON \
-Dpython-egg-info=ON
cmake --build build
}
check() {
# upnp: relies on upnp networking setup
# flags: fails randomly, on 32-bit and aarch64
# remove_torrent: random failures when running multiple tests at once
# privacy: flaky on port allocation
local tests_to_skip="test_upnp|test_flags|test_remove_torrent|test_privacy"
# broken
tests_to_skip="$tests_to_skip|test_create_torrent"
# fails on btrfs?
tests_to_skip="$tests_to_skip|test_copy_file"
# flaky
tests_to_skip="$tests_to_skip|test_web_seed|test_url_seed|test_transfer|test_ssl"
ctest -j4 --output-on-failure --test-dir build --exclude-regex "$tests_to_skip"
}
package() {
DESTDIR=$pkgdir cmake --install build
}
dev() {
default_dev
amove usr/share/cmake
}
_py3() {
pkgdesc="$pkgdesc (python bindings)"
amove usr/lib/python3*
}
sha512sums="
a6406ccdd1d0c8d42543419a3b9edca880ab85e0849bfba29e3b1bd98f9630244aa3e88110cdf95e476792c9ea87a141fcb16a8c3b3e0c44c0076ebf6f9adbee libtorrent-rasterbar-2.0.10.tar.gz
"
|