From 13c2a74ab515ab28b0952555aaa925e13b444dff Mon Sep 17 00:00:00 2001 From: kth5 Date: Thu, 18 May 2023 17:42:30 +0200 Subject: [PATCH] * update pahole to 1:1.25-4 --- pahole/PKGBUILD | 105 +++++++++++++++++++++++++++++++-------------- pahole/python.diff | 2 +- 2 files changed, 73 insertions(+), 34 deletions(-) diff --git a/pahole/PKGBUILD b/pahole/PKGBUILD index 7711d99ecb..2b85275430 100644 --- a/pahole/PKGBUILD +++ b/pahole/PKGBUILD @@ -1,46 +1,54 @@ # POWER Maintainer: Alexander Baldeck # Maintainer: Jan Alexander Steffens (heftig) -pkgname=pahole -pkgver=1.24+r29+g02d67c5 -pkgrel=1 +pkgbase=pahole +pkgname=( + pahole + ostra-cg +) +pkgver=1.25 +pkgrel=4 epoch=1 pkgdesc="Pahole and other DWARF utils" url="https://git.kernel.org/pub/scm/devel/pahole/pahole.git" -arch=(x86_64 powerpc64le powerpc riscv64) +arch=(x86_64 powerpc64le powerpc64 powerpc riscv64) license=(GPL2) -depends=(libelf python) -makedepends=(git cmake ninja) -provides=(libdwarves{,_emit,_reorganize}.so) +makedepends=( + bash + cmake + libelf + ninja + python + python-matplotlib + zlib +) _commit=02d67c51765dfbd5893087da63744c864c7cc9e0 # master -source=("git+https://git.kernel.org/pub/scm/devel/pahole/pahole.git#commit=$_commit" - "git+https://github.com/libbpf/libbpf" - python.diff) -sha256sums=('SKIP' - 'SKIP' - '12f3d83bda3ec503aca910d0a4372ff8c72886a02aa512b2f37c3f1b21c690c7') - -pkgver() { - cd pahole - git describe --tags | sed 's/^v//;s/[^-]*-g/r&/;s/-/+/g' -} +source=( + https://fedorapeople.org/~acme/dwarves/dwarves-$pkgver.tar.{xz,sign} + python.diff +) +b2sums=('1926fa1fa123fc3ad0f7f063406260b1e1e2611c563fedebee4c837e491164571fdb40408421c0c4ea2fd24e89c54a7a1ea669313b6dd6d7dcfa4934e2c1336e' + 'SKIP' + 'e88fcda77c0a6aaea0d83949cabbaaaf24f6a4b2324a14e459efc202b210c31b58f7a90c75c34ffd08911514b3b6db4be4423e3f8e0fb50b6d914da5be002319') +validpgpkeys=( + 2DBF5BAA46FB4DED338A335BD65016F35352AA40 # Arnaldo Carvalho de Melo +) prepare() { - cd pahole + cd dwarves-$pkgver # https://bugs.archlinux.org/task/70013 - git apply -3 ../python.diff - - git submodule init - git submodule set-url lib/bpf "$srcdir/libbpf" - git -c protocol.file.allow=always submodule update + patch -Np1 -i ../python.diff } build() { - cmake -S pahole -B build -G Ninja \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_BUILD_TYPE=None \ + local cmake_options=( + -DCMAKE_INSTALL_PREFIX=/usr + -DCMAKE_BUILD_TYPE=None -D__LIB=lib + ) + + cmake -S dwarves-$pkgver -B build -G Ninja "${cmake_options[@]}" cmake --build build } @@ -49,11 +57,42 @@ check() { ctest --output-on-failure --stop-on-failure -j$(nproc) } -package() { - DESTDIR="$pkgdir" cmake --install build - - python -m compileall -d / "$pkgdir" - python -O -m compileall -d / "$pkgdir" +_pick() { + local p="$1" f d; shift + for f; do + d="$srcdir/$p/${f#$pkgdir/}" + mkdir -p "$(dirname "$d")" + mv "$f" "$d" + rmdir -p --ignore-fail-on-non-empty "$(dirname "$f")" + done } -# vim:set sw=2 et: +package_pahole() { + depends=( + bash + libelf + zlib + ) + optdepends=('ostra-cg: Generate call graphs from encoded traces') + provides=(libdwarves{,_emit,_reorganize}.so) + + DESTDIR="$pkgdir" cmake --install build + + _pick ostra "$pkgdir"/usr/{bin/ostra-cg,lib/python*} +} + +package_ostra-cg() { + pkgdesc="Generate call graphs from encoded traces" + depends=( + pahole + python + python-matplotlib + ) + + mv ostra/* "$pkgdir" + + python -m compileall -d /usr/lib "$pkgdir/usr/lib" + python -O -m compileall -d /usr/lib "$pkgdir/usr/lib" +} + +# vim:set sw=2 sts=-1 et: diff --git a/pahole/python.diff b/pahole/python.diff index 067332d2ef..4ce2d862b0 100644 --- a/pahole/python.diff +++ b/pahole/python.diff @@ -1,5 +1,5 @@ diff --git i/CMakeLists.txt w/CMakeLists.txt -index 1cd82ad..91a10f3 100644 +index 98642e1..b4295fd 100644 --- i/CMakeLists.txt +++ w/CMakeLists.txt @@ -188,7 +188,7 @@ install(FILES dwarves.h dwarves_emit.h dwarves_reorganize.h