diff options
Diffstat (limited to 'community/bpftrace/APKBUILD')
-rw-r--r-- | community/bpftrace/APKBUILD | 69 |
1 files changed, 49 insertions, 20 deletions
diff --git a/community/bpftrace/APKBUILD b/community/bpftrace/APKBUILD index 27dc5bbd62c..ad8f7cea109 100644 --- a/community/bpftrace/APKBUILD +++ b/community/bpftrace/APKBUILD @@ -1,34 +1,60 @@ # Contributor: Konstantin Kulikov <k.kulikov2@gmail.com> -# Maintainer: Adam Jensen <acjensen@gmail.com> +# Maintainer: Adam Jensen <adam@acj.sh> pkgname=bpftrace -pkgver=0.10.0 -pkgrel=1 -_llvmver=10 +pkgver=0.20.3 +pkgrel=0 pkgdesc="High-level tracing language for Linux eBPF" url="https://github.com/iovisor/bpftrace" -arch="aarch64 x86_64" +arch="all !x86" # x86 unsupported license="Apache-2.0" -makedepends="cmake llvm$_llvmver-dev llvm$_llvmver-static clang-dev clang-static - flex-dev bison elfutils-dev linux-headers bcc-dev binutils-dev" -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. -options="!check" +# Stripping is done ourselves to keep the BEGIN_trigger symbol required +# for BEGIN probe (see https://github.com/iovisor/bpftrace/issues/954 ) +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=$_llvmver - 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-aotrt mv "$pkgdir/usr/share/bpftrace/tools/doc" "$pkgdir/usr/share/bpftrace/tools_doc" } @@ -43,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. @@ -56,4 +81,8 @@ tools_doc() { mv "$pkgdir/usr/share/man/man8" "$subpkgdir/usr/share/bpftrace/" } -sha512sums="da400efe78cea505a32deead594b047ec4394d3eefe86e7b6853fe2dc715c5847a3abcbd26c1fac39d0a534f1e57d6c0bc3625e0c3f1054b0d84b7b1d6eb69b9 bpftrace-0.10.0.tar.gz" +sha512sums=" +218a1bfac7e1a2b7eef5b0ed3e7403eed4bc932f2aa03c5f4c8924246c09088f5074ab3d54031e582cb4f8e7d0c7df1bb30007c2421c44d2c2506364f0ba5a0e bpftrace-0.20.3.tar.gz +1f884e75ee7df8d28e8f613eca64cc56f859806c5a8d0f491c07709b0000be3a29be62a3eab6dfb04fcf9aadd1a4c3fde26e212ea0c40e5a54e59a197f148ed4 10-link-libbpf.patch +45aab5507ca1b8d4a8914cef5d771f9769c2984e5d7fc03a4c509948b2864170c58dc255d96ddf92defde5c76f41003ee653887f7036833c135481449781f251 20-zlib.patch +" |