summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 0ca568de9befe77e49ca9d62635477c8a6d9d8bd (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
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
# Maintainer: D. Can Celasun <can[at]dcc[dot]im>
# Arch Maintainer: Caleb Maclennan <caleb@alerque.com>
# Contributor: Tom Gundersen <teg@jklm.no>
# Contributor: Ionut Biru <ibiru@archlinux.org>
# Contributor: Thomas Weißschuh <thomas t-8ch de>
# Contributor: Florian Pritz <bluewind@xinu.at>

pkgname=transmission-cli-beta
_pkgname=transmission
pkgdesc='Fast, easy, and free BitTorrent client (BETA CLI tools)'
pkgver=4.1.0beta.2
_pkgver=${pkgver//beta/-beta}
_hash=rac5c9e082d
pkgrel=1
arch=(x86_64)
url="http://www.transmissionbt.com/"
license=(GPL-2.0-or-later)
makedepends=(cmake
             curl
             dht
             glibmm-2.68
             intltool
             libb64
             libdeflate
             libevent
             libnatpmp
             miniupnpc
             ninja
             npm
             systemd)
depends=(curl
         libb64
         libdeflate
         libevent
         libnatpmp
         miniupnpc
         systemd)
provides=(transmission-cli)
conflicts=(transmission-cli)
_archive="$_pkgname-$_pkgver+$_hash"
source=("https://github.com/transmission/transmission/releases/download/$_pkgver/$_archive.tar.xz"
        transmission-cli.sysusers
        transmission-cli.tmpfiles)
sha256sums=('8a339d55c9a4d12eda78eb06416d6e2ad840878524f8f187fe69059aaf24060f'
            '641310fb0590d40e00bea1b5b9c843953ab78edf019109f276be9c6a7bdaf5b2'
            '1266032bb07e47d6bcdc7dabd74df2557cc466c33bf983a5881316a4cc098451')

build() {
	export CFLAGS+=' -ffat-lto-objects'
	cd "$_archive"

	cmake \
		-G Ninja \
		-D CMAKE_BUILD_TYPE=RelWithDebInfo \
		-D CMAKE_INSTALL_PREFIX=/usr \
		-D ENABLE_CLI=ON \
		-D ENABLE_DAEMON=ON \
		-D ENABLE_GTK=OFF \
		-D ENABLE_MAC=OFF \
		-D ENABLE_QT=OFF \
		-D REBUILD_WEB=ON \
		-D ENABLE_TESTS=ON \
		-D ENABLE_UTILS=ON \
		-D ENABLE_UTP=ON \
		-D INSTALL_LIB=ON \
		-D USE_SYSTEM_B64=ON \
		-D USE_SYSTEM_DEFLATE=ON \
		-D USE_SYSTEM_DHT=ON \
		-D USE_SYSTEM_EVENT2=ON \
		-D USE_SYSTEM_MINIUPNPC=ON \
		-D USE_SYSTEM_NATPMP=ON \
		-D USE_SYSTEM_PSL=ON \
		-D USE_SYSTEM_UTP=OFF \
		-D WITH_CRYPTO=openssl \
		-S . \
		-B build
	cmake --build build --config Release
}

check() {
	cd "$_archive"
	cd build
	# Exclude test that fails on the build server
	ctest --output-on-failure -j "$(nproc)" -E LT.DhtTest.usesBootstrapFile
}

_install_component() {
	(cd $srcdir/$_archive/build; DESTDIR="$pkgdir" ninja $1/install)
}

package() {
	cd "$_archive"
	for dir in daemon cli web utils; do
		_install_component $dir
	done
	install -d "$pkgdir"/usr/share/transmission
	cp -a build/web/public_html/ "$pkgdir"/usr/share/transmission
	install -Dm644 daemon/transmission-daemon.service \
		"$pkgdir/usr/lib/systemd/system/transmission.service"
	install -Dm644 COPYING "$pkgdir/usr/share/licenses/transmission-cli/COPYING"
	install -Dm644 "$srcdir/${_pkgname}-cli.sysusers" \
		"$pkgdir/usr/lib/sysusers.d/transmission.conf"
	install -Dm644 "$srcdir/${_pkgname}-cli.tmpfiles" \
		"$pkgdir/usr/lib/tmpfiles.d/transmission.conf"
}