# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=lcov2cobertura
pkgver=1.0.5
pkgrel=1
pkgdesc="Converts lcov info files to Corbertura XML"
url="https://github.com/mike-kfed/lcov2cobertura"
arch="all"
license="Apache-2.0"
makedepends="cargo-auditable"
source="https://github.com/mike-kfed/lcov2cobertura/archive/$pkgver/lcov2cobertura-$pkgver.tar.gz
	strip-regex-features.patch
	Cargo.lock
	"
options="!check"  # no unit tests included

prepare() {
	default_prepare

	# Remove linter rules that has been removed from recent Rust.
	sed -i \
		-e '/proc-macro-back-compat/d' \
		-e '/pointer-structural-match/d' \
		-e '/indirect-structural-match/d' \
		-e '/where-clauses-object-safety/d' \
		-e '/unsupported-calling-conventions/d' \
		-e '/deprecated-cfg-attr-crate-type-name/d' \
		-e '/cenum-impl-drop-cast/d' \
		Cargo.toml lcov2cobertura/Cargo.toml

	cp "$srcdir"/Cargo.lock .
	cargo fetch --target="$CTARGET" --locked
}

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

check() {
	cargo test --frozen
}

package() {
	install -D -m755 target/release/lcov2xml -t "$pkgdir"/usr/bin/
	install -D -m755 target/release/cobertura_split "$pkgdir"/usr/bin/cobertura-split
}

sha512sums="
f22c524c9b46fd0e8957940470ad904b14d61256e88be6085d787e6de100e78989c28ca4dc770c196376cafa0e3a09cd8fbe1fb729b68db6131d9ee6f2b64a2d  lcov2cobertura-1.0.5.tar.gz
85c438e45c607647828dfff0b45f0bffee167c6068b2eafeb8e3395a74c66b19ef093cd3c77cb16336bb6f23807e2c7dfcbe652103a67d5c069cdb802bd898a0  strip-regex-features.patch
84ab5aea985feea2d64788698b06558a15eec90745717dd6a2b2b2e2e08dee69dd2b780a1ff537c819b1f089f3f1e4012b64f9ea4489bff317219846ae1fb76f  Cargo.lock
"
