aboutsummaryrefslogtreecommitdiffstats
path: root/community/bpftrace/APKBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'community/bpftrace/APKBUILD')
-rw-r--r--community/bpftrace/APKBUILD59
1 files changed, 40 insertions, 19 deletions
diff --git a/community/bpftrace/APKBUILD b/community/bpftrace/APKBUILD
index a4f99678d76..ad8f7cea109 100644
--- a/community/bpftrace/APKBUILD
+++ b/community/bpftrace/APKBUILD
@@ -1,17 +1,36 @@
# Contributor: Konstantin Kulikov <k.kulikov2@gmail.com>
# Maintainer: Adam Jensen <adam@acj.sh>
pkgname=bpftrace
-pkgver=0.14.0
+pkgver=0.20.3
pkgrel=0
pkgdesc="High-level tracing language for Linux eBPF"
url="https://github.com/iovisor/bpftrace"
-arch="aarch64 ppc64le x86_64"
+arch="all !x86" # x86 unsupported
license="Apache-2.0"
-_llvmver=12
-makedepends="cmake llvm$_llvmver-dev llvm$_llvmver-static clang-dev clang-static
- flex-dev bison elfutils-dev linux-headers bcc-dev binutils-dev libbpf-dev
- cereal asciidoctor"
-source="$pkgname-$pkgver.tar.gz::https://github.com/iovisor/bpftrace/archive/v$pkgver.tar.gz"
+_llvmver=17
+makedepends="
+ asciidoctor
+ bcc-dev
+ binutils-dev
+ bison
+ cereal
+ clang$_llvmver-dev
+ clang$_llvmver-static
+ cmake
+ elfutils-dev
+ flex-dev
+ libbpf-dev
+ linux-headers
+ llvm$_llvmver-dev
+ llvm$_llvmver-gtest
+ llvm$_llvmver-static
+ samurai
+ libxml2-dev
+ "
+source="$pkgname-$pkgver.tar.gz::https://github.com/iovisor/bpftrace/archive/v$pkgver.tar.gz
+ 10-link-libbpf.patch
+ 20-zlib.patch
+ "
# Tests require root, network to download gmock and a few tests fail.
# Stripping is done ourselves to keep the BEGIN_trigger symbol required
# for BEGIN probe (see https://github.com/iovisor/bpftrace/issues/954 )
@@ -19,22 +38,23 @@ options="!check !strip"
subpackages="$pkgname-doc:doc $pkgname-tools:tools:noarch $pkgname-tools-doc:tools_doc"
build() {
- cmake -B build \
+ cmake -B build -G Ninja \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_BUILD_TYPE=None \
- -DCMAKE_CXX_FLAGS="$CXXFLAGS" \
- -DCMAKE_C_FLAGS="$CFLAGS" \
- -DBUILD_TESTING:BOOL=OFF \
- -DLLVM_REQUESTED_VERSION="$(/usr/lib/llvm$_llvmver/bin/llvm-config --version)"
- make -C build
+ -DCMAKE_BUILD_TYPE=MinSizeRel \
+ -DBUILD_TESTING=OFF \
+ -DCMAKE_PREFIX_PATH=/usr/lib/llvm$_llvmver/lib/cmake \
+ -DLLVM_REQUESTED_VERSION="$(/usr/lib/llvm$_llvmver/bin/llvm-config --version)" \
+ -DUSE_SYSTEM_BPF_BCC=1
+ cmake --build build
}
# Main package contains only bpftrace binary.
package() {
- make -C build DESTDIR="$pkgdir" install
+ DESTDIR="$pkgdir" cmake --install build
strip --keep-symbol BEGIN_trigger \
--keep-symbol END_trigger \
- "$pkgdir/usr/bin/bpftrace"
+ "$pkgdir"/usr/bin/bpftrace \
+ "$pkgdir"/usr/bin/bpftrace-aotrt
mv "$pkgdir/usr/share/bpftrace/tools/doc" "$pkgdir/usr/share/bpftrace/tools_doc"
}
@@ -49,8 +69,7 @@ doc() {
tools() {
depends="$pkgname"
pkgdesc="$pkgdesc (tools)"
- mkdir -p "$subpkgdir/usr/share/bpftrace"
- mv "$pkgdir/usr/share/bpftrace/tools" "$subpkgdir/usr/share/bpftrace/tools"
+ amove usr/share/bpftrace/tools
}
# Tools docs contains man pages and examples for tools. They shouldn't go into shared MANPATH for the same reasons as tools pkg above.
@@ -63,5 +82,7 @@ tools_doc() {
}
sha512sums="
-78f2d9a4d54c0dda1947b924a828777b402befc3a05031b609da4d256907df1e64f946454a9be7317449f49706f02a881febc4e63d2ef2f4e76924ea19e36ddb bpftrace-0.14.0.tar.gz
+218a1bfac7e1a2b7eef5b0ed3e7403eed4bc932f2aa03c5f4c8924246c09088f5074ab3d54031e582cb4f8e7d0c7df1bb30007c2421c44d2c2506364f0ba5a0e bpftrace-0.20.3.tar.gz
+1f884e75ee7df8d28e8f613eca64cc56f859806c5a8d0f491c07709b0000be3a29be62a3eab6dfb04fcf9aadd1a4c3fde26e212ea0c40e5a54e59a197f148ed4 10-link-libbpf.patch
+45aab5507ca1b8d4a8914cef5d771f9769c2984e5d7fc03a4c509948b2864170c58dc255d96ddf92defde5c76f41003ee653887f7036833c135481449781f251 20-zlib.patch
"