# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Jakub Jirutka <jakub@jirutka.cz>
pkgname=sexpp
pkgver=0.9.2
pkgrel=0
pkgdesc="S-Expressions parser and generator library in C++"
url="https://github.com/rnpgp/sexpp"
arch="all"
license="MIT"
makedepends="cmake samurai"
checkdepends="gtest-dev"
subpackages="
	$pkgname-dev
	$pkgname-doc
	$pkgname-cli
	"
source="https://github.com/rnpgp/sexpp/archive/v$pkgver/sexpp-$pkgver.tar.gz"

build() {
	_build build-shared -DBUILD_SHARED_LIBS=ON
	_build build-static -DBUILD_SHARED_LIBS=OFF
}

_build() {
	local outdir="$1"; shift

	local crossopts=
	[ "$CBUILD" != "$CHOST" ] \
		&& crossopts="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"

	cmake -B "$outdir" -G Ninja \
		-DCMAKE_BUILD_TYPE=MinSizeRel \
		-DCMAKE_INSTALL_PREFIX=/usr \
		-DCMAKE_INSTALL_LIBDIR=lib \
		-DDOWNLOAD_GTEST=OFF \
		-DWITH_SEXP_CLI=ON \
		-DWITH_SEXP_TESTS="$(want_check && echo ON || echo OFF)" \
		$crossopts \
		"$@"
	cmake --build "$outdir"
}

check() {
	ctest --test-dir build-shared
}

package() {
	DESTDIR="$pkgdir" cmake --install build-static
	DESTDIR="$pkgdir" cmake --install build-shared
}

cli() {
	pkgdesc="S-Expressions parser and generator utility"
	depends="$pkgname=$pkgver-r$pkgrel"

	amove usr/bin
}

sha512sums="
a6eddfd495b16366e6fea1834e53839f83b8fdfd7ada59bda3c127849aecefc088ade64c9acd692dabd5e0c871791cafd41861aad9217f1f1925d7b554d3819d  sexpp-0.9.2.tar.gz
"
