# Template file for 'lc0'
pkgname=lc0
version=0.30.0
revision=1
archs="x86_64* i686* aarch64* armv[67]l* ppc64le*"
create_wrksrc=yes
build_style=meson
configure_args="-Dgtest=false"
_lczero_commit=fafda0f59c8511b5d933ef758c1e4b10a62da1e0
hostmakedepends="pkg-config"
makedepends="protobuf-devel zlib-devel eigen $(vopt_if openblas openblas-devel)
 $(vopt_if opencl ocl-icd-devel)"
short_desc="UCI chess engine designed to play via neural network"
maintainer="shtayerc <david.murko@mailbox.org>"
license="GPL-3.0-only"
homepage="https://lczero.org"
distfiles="https://github.com/LeelaChessZero/lc0/archive/v${version}.tar.gz
 https://github.com/LeelaChessZero/lczero-common/archive/${_lczero_commit}.tar.gz"
checksum="c5a11469364d06731b8da09bf9e1989ca6b39695add7d08bd96dd834dd0b5b2a
 6de0fd8248369ad1050e6433c6d8d14044e99f53ccf4ffc763ad47c046979237"

build_options="openblas opencl"
build_options_default="openblas"
vopt_conflict openblas opencl

if [ "$CROSS_BUILD" ] && [ "$build_option_openblas" ]; then
	configure_args+=" -Dopenblas_include=${XBPS_CROSS_BASE}/usr/include/openblas/"
fi

case "$XBPS_TARGET_MACHINE" in
	ppc*) export CXXFLAGS+=" -DNO_WARN_X86_INTRINSICS";;
esac

post_extract() {
	mv lc0-$version/* .
	rmdir libs/lczero-common
	mv lczero-common-${_lczero_commit} libs/lczero-common
}
