98 lines
2.7 KiB
Bash
98 lines
2.7 KiB
Bash
#!/usr/bin/bash
|
|
# JOBoRun : Jwm OpenBox Obarun RUNit
|
|
# Maintainer : Joe Bo Run <joborun@disroot.org>
|
|
# PkgSource : url="https://gittea.disroot.org/joborun-pkg/jobextra/$pkgname"
|
|
# Website : https://pozol.eu
|
|
#-----------------------------------------| DESCRIPTION |---------------------------------------
|
|
|
|
pkgbase=pahole
|
|
pkgname=(pahole ostra-cg)
|
|
pkgver=1.26
|
|
pkgrel=01
|
|
epoch=1
|
|
pkgdesc="Pahole and other DWARF utils"
|
|
url="https://git.kernel.org/pub/scm/devel/pahole/pahole.git"
|
|
makedepends=(bash cmake libelf ninja python python-matplotlib zlib)
|
|
source=(https://fedorapeople.org/~acme/dwarves/dwarves-$pkgver.tar.{xz,sign}
|
|
python.diff)
|
|
|
|
prepare() {
|
|
cd dwarves-$pkgver
|
|
|
|
# https://bugs.archlinux.org/task/70013
|
|
patch -Np1 -i ../python.diff
|
|
}
|
|
|
|
build() {
|
|
local cmake_options=(
|
|
-D CMAKE_INSTALL_PREFIX=/usr
|
|
-D CMAKE_BUILD_TYPE=None
|
|
-D __LIB=lib
|
|
)
|
|
|
|
cmake -S dwarves-$pkgver -B build -G Ninja "${cmake_options[@]}"
|
|
cmake --build build
|
|
}
|
|
|
|
check() {
|
|
ctest --test-dir build --output-on-failure --stop-on-failure -j$(nproc)
|
|
}
|
|
|
|
_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
|
|
}
|
|
|
|
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"
|
|
}
|
|
|
|
#---- arch license gpg-key & sha256sums ----
|
|
|
|
arch=(x86_64)
|
|
|
|
license=(GPL-2.0-only)
|
|
|
|
validpgpkeys=(2DBF5BAA46FB4DED338A335BD65016F35352AA40) # Arnaldo Carvalho de Melo <acme@kernel.org>
|
|
|
|
b2sums=('cb86bf964f22633432e80d335937379c2096877c6130f49dbe03f2653b7c932bb1c5d87621ac93383be9e4f35294a4f95aadb6392491fb782812db519b39b666'
|
|
'SKIP'
|
|
'd423eb1e05b634516ae1cf652e291fd559650b00b016ed35d0f2bd8ccb04ffd9e1ed1c53e95d86039d656651633792932544de1871a09cb8b4953fa8026492e9')
|
|
|
|
sha256sums=(ad4c08339850e404609e2808012580b7e98366d2b91054bb93fe6dca94651fb4 # dwarves-1.26.tar.xz
|
|
67c02c3714cd778b4c4b5c5ea808f6921ee9bf855d1ea6a816943d73037c4c1e # dwarves-1.26.tar.sign
|
|
b208e4fc49c11caaa7fb3fdc8840ecb0cdb84e6d73312a97f6e68f9eb81dd622) # python.diff
|
|
|
|
## d6f63c8b499474d1724d481328a54d0b93fa53a70b7c00977542a7e5d00884d9 pahole-1_1.26-01-x86_64.pkg.tar.lz
|
|
## 364be13bbef7abd7a440152bee1b047a32b5b240e5ddff9068349c4980dce380 ostra-cg-1_1.26-01-x86_64.pkg.tar.lz
|
|
|