59 lines
1.2 KiB
Bash

# POWER Maintainer: Alexander Baldeck <alex.bldck@gmail.com>
# Maintainer: Jan Alexander Steffens (heftig) <heftig@archlinux.org>
pkgname=cbindgen
pkgver=0.28.0
pkgrel=1
pkgdesc="A tool for generating C bindings to Rust code"
url="https://github.com/mozilla/cbindgen"
arch=(x86_64 powerpc64le powerpc64 powerpc riscv64)
license=(MPL-2.0)
depends=(
gcc-libs
glibc
)
makedepends=(
cargo
git
)
checkdepends=(
cmake
cython
python
)
options=(!lto)
source=("git+$url#tag=$pkgver")
b2sums=('8c93d193e8a40936e8bb5f72329477f8cff3fc62809441de669cffecf030fad32c6bf72858a609576759aeb06c9c26eb81c35a9438c089d063d9ca4145d60e82')
prepare() {
cd cbindgen
cargo fetch --locked --target "$(rustc -vV | sed -n 's/host: //p')"
}
build() {
cd cbindgen
# Use debug
export CARGO_PROFILE_RELEASE_DEBUG=2
# Use LTO
export CARGO_PROFILE_RELEASE_LTO=true CARGO_PROFILE_RELEASE_CODEGEN_UNITS=1
cargo build --release --frozen
}
check() {
cd cbindgen
# Tests need nightly features
RUSTC_BOOTSTRAP=1 cargo test --frozen
}
package() {
cd cbindgen
install -Dt "$pkgdir/usr/bin" target/release/cbindgen
install -Dt "$pkgdir/usr/share/doc/$pkgname" -m644 CHANGES \
{README,docs,internals}.md
}
# vim:set sw=2 sts=-1 et: