2024-11-22 15:42:11 +00:00

67 lines
1.6 KiB
Plaintext

# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=gitui
pkgver=0.26.3
pkgrel=0
pkgdesc="Blazing fast terminal client for git"
url="https://github.com/extrawurst/gitui"
arch="x86_64 armv7 armhf aarch64 x86 ppc64le" # limited by rust/cargo
license="MIT"
makedepends="
cargo
cargo-auditable
libgit2-dev
oniguruma-dev
openssl-dev
zlib-dev
"
source="https://github.com/extrawurst/gitui/archive/v$pkgver/gitui-$pkgver.tar.gz"
options="net"
export LIBSSH2_SYS_USE_PKG_CONFIG=1 # use system libssh2
export RUSTONIG_DYNAMIC_LIBONIG=1 # use system libonig
# the p521 crate fails to compile with thread 'opt cgu.0' has overflowed its stack
# Unless the RUST_MIN_STACK is expanded
# https://github.com/RustCrypto/elliptic-curves/issues/1097
export RUST_MIN_STACK=$((16*1024*1024))
_cargo_opts="--frozen --no-default-features --features regex-onig"
prepare() {
default_prepare
# Rust target triple.
local target=$(rustc -vV | sed -n 's/host: //p')
# Build against system-provided libs
mkdir -p .cargo
cat >> .cargo/config <<-EOF
[target.$target]
git2 = { rustc-link-lib = ["git2"] }
EOF
# open64
cargo update -p getrandom --precise 0.2.10
cargo update -p time --precise 0.3.35
cargo fetch --target="$CTARGET" --locked
}
build() {
cargo auditable build $_cargo_opts --release
}
check() {
cargo test $_cargo_opts
}
package() {
install -D -m755 target/release/gitui "$pkgdir"/usr/bin/gitui
}
sha512sums="
9cf160bf9f85211797096c0b18247d9ff1ac774b234d4c3622964b2ca7c856d5190a7a391824d7a431e4bfb15fe28a6ae84e3d44fcdb6889effc014e8ecfc8c0 gitui-0.26.3.tar.gz
"