blob: b2963c20a50cda121b648167e0914ad6a5199874 (
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
|
# Maintainer: Šarūnas Gliebus <ssharunas at vivaldi.net>
# Maintainer: George Rawlinson <grawlinson@archlinux.org>
pkgname=dragonflydb
pkgver=1.24.0
pkgrel=1
pkgdesc='A fast in-memory store that is fully compatible with Redis and Memcached'
arch=('x86_64')
url='https://dragonflydb.io'
license=('custom:BSL1.1')
depends=(
'glibc'
'gcc-libs'
'openssl'
'boost-libs'
'libunwind'
)
makedepends=(
'git'
'cmake'
'ninja'
'boost'
)
optdepends=('logrotate')
source=(
"$pkgname::git+https://github.com/dragonflydb/dragonfly#tag=v$pkgver"
'github.com-romage-helio::git+https://github.com/romange/helio'
'sysusers.conf'
'tmpfiles.conf'
'use-fhs-directories.patch'
'gcc14.patch'
)
b2sums=('SKIP'
'SKIP'
'fa10c1cfbd47eb0bdaae77e66a89fc94ee8803f30e431ce498c99724653a63102c7c34e96b44847c45f43ebdd4a549fdb67f47b30698af582aa2e38a9a760fa3'
'ed965facc221fa66c8803b6b7ddc91151ebbb857eb77f934a700f02940f8294d6c8d075b76eba8fccc550ba7054ec26dd7599fef7d7b608e5e76be7a138ae279'
'ccb72430294479155b716e0aef2a6a85c0100ecd8560735af32211632363a3ef65c35f13be8ab57b5c363577a92e893213b81aed213091c280d9d4cda13c3554'
'5eb6ee9fb6c253a8b85fa817a58d725e4273e58a59ff1247bf6a6273519dba1eae8d0a6c6f3f58edf46554e35a0734d8e6e7211dc7b24e77fba8f96b34a1f2b3')
prepare() {
cd "$pkgname"
# prepare git submodule(s)
git submodule init
git config submodule.helio.url "$srcdir/github.com-romage-helio"
git -c protocol.file.allow=always submodule update
# use FHS directories
patch -p1 -i "$srcdir/use-fhs-directories.patch"
patch -p1 -i "$srcdir/gcc14.patch"
}
build() {
cd "$pkgname"
./helio/blaze.sh -release
cd build-opt
ninja dragonfly
}
package() {
cd "$pkgname"
# systemd integration
install -vDm644 "$srcdir/sysusers.conf" "$pkgdir/usr/lib/sysusers.d/$pkgname.conf"
install -vDm644 "$srcdir/tmpfiles.conf" "$pkgdir/usr/lib/tmpfiles.d/$pkgname.conf"
install -vDm644 -t "$pkgdir/usr/lib/systemd/system" tools/packaging/debian/dragonfly.service
install -vDm644 -t "$pkgdir/etc/dragonfly" tools/packaging/debian/dragonfly.conf
# logrotate
install -vDm644 tools/packaging/debian/dragonfly.logrotate "$pkgdir/etc/logrotate.d/$pkgname"
# binary
install -vDm755 -t "$pkgdir/usr/bin" build-opt/dragonfly
# documentation
install -vDm644 -t "$pkgdir/usr/share/doc/$pkgname" README.md
cp -vr docs "$pkgdir/usr/share/doc/$pkgname"
# license
install -vDm644 -t "$pkgdir/usr/share/licenses/$pkgname" LICENSE.md
}
|