# Contributor: Rasmus Thomsen <oss@cogitri.dev>
# Contributor: Struan Robertson <contact@struan.tech>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=tectonic
pkgver=0.15.0
pkgrel=4
pkgdesc="Tectonic is a modernized, complete, self-contained TeX/LaTeX engine"
url="https://tectonic-typesetting.github.io"
# s390x: rust
# loongarch64: blocked by nix crate
# 32-bit: SIGSEGVs in tests
arch="all !s390x !armhf !armv7 !x86 !loongarch64"
license="MIT"
# needed for font things
depends="icu-data-full"
makedepends="
	cargo
	cargo-auditable
	curl-dev
	fontconfig-dev
	harfbuzz-dev
	openssl-dev>3
	"
source="$pkgname-$pkgver.tar.gz::https://github.com/tectonic-typesetting/tectonic/archive/tectonic@$pkgver.tar.gz
	time-crate-update.patch
	use-cpp17.patch
	"
builddir="$srcdir/tectonic-tectonic-$pkgver"
options="net !check" # needs unpackages ubuntu mono font

_features="--no-default-features --features=external-harfbuzz,geturl-curl,serialization"

prepare() {
	default_prepare

	cargo fetch --target="$CTARGET" --locked
}

build() {
	cargo auditable build --release --frozen $_features
}

check() {
	cargo test --frozen $_features
}

package() {
	install -Dm755 target/release/tectonic "$pkgdir"/usr/bin/tectonic
}

sha512sums="
82ccaf68ddfb864ae439b2698a518ce77b000044b74d7752e9a45fa200c95d3a08cbdda14c2d253b4c78824e061bd2721f26fa2cac2ace9d60684cb330d1f3be  tectonic-0.15.0.tar.gz
a74132063038a993672df8afa9460cfebe125182f39e3d8b275b8d2b689eb99bc521e240fa65c18dc1694d6ebaba7aa44288fddb2dc97809a45873feb1b7abc4  time-crate-update.patch
64daeb5aecabec9ce458c2b01f51e6e6d0029692f8122910a1ae0c25dbb8e356f86c19b8884d1191112bd67f0e8270b63730d94dcfc36e43fe3cae6cc8c6c6a0  use-cpp17.patch
"
