summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: a13c293f51fd5757a4df1405b1ce00e89daabcdf (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
# Maintainer: envolution
# Contributor: Jose Fernandez <josefernandez.dev@gmail.com>
# shellcheck shell=bash disable=SC2034,SC2154
pkgname=below
pkgver=0.9.0
pkgrel=1
pkgdesc="A time traveling resource monitor for modern Linux systems"
arch=(x86_64)
url="https://github.com/facebookincubator/below"
license=('Apache-2.0')
depends=(glibc gcc-libs libelf zlib)
makedepends=(cargo clang)
options=(!lto)
install=below.install
source=(
  "$pkgname-$pkgver.tar.gz::$url/archive/refs/tags/v$pkgver.zip"
  "below.install"
)
sha256sums=('d45c8edbaae1df61cf2436c923e20392bff72598e8f3f0244f880d1e875cf349'
            'af3057fcf8bf411522d76cf5def98b6c871687002b44236a9fe34bf8a47d95c2')

prepare() {
  cd $pkgname-$pkgver
  export RUSTUP_TOOLCHAIN=stable
  cargo update
  cargo fetch --locked --target "$(rustc -vV | sed -n 's/host: //p')"
}

build() {
  cd $pkgname-$pkgver
  export RUSTUP_TOOLCHAIN=stable
  export CARGO_TARGET_DIR=target
  export LIBBPF_LIB_DIR=/usr/lib
  export LIBBPF_INCLUDE_DIR=/usr/include/bpf 
  cargo build  --frozen --no-default-features --features "libbpf-cargo/default libbpf-rs/default" --release
}

check() {
  cd $pkgname-$pkgver
  export RUSTUP_TOOLCHAIN=stable
  export CARGO_TARGET_DIR=target
  export LIBBPF_LIB_DIR=/usr/lib
  export LIBBPF_INCLUDE_DIR=/usr/include/bpf 
  cargo test --no-default-features --features "libbpf-cargo/default libbpf-rs/default" --workspace -- --skip sudotest
}

package() {
  cd "$pkgname-$pkgver"
  install -Dm755 "target/release/$pkgname" -t "$pkgdir/usr/bin/"
  install -Dm644 'LICENSE' -t "$pkgdir/usr/share/licenses/$pkgname/"
  install -Dm644 'README.md' -t "$pkgdir/usr/share/doc/$pkgname/"
  install -Dm644 "etc/below.service" "${pkgdir}/usr/lib/systemd/system/below.service"
}
# vim:set ts=2 sw=2 et: