summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorIvan Marquesi Lerner2019-08-04 04:25:58 -0300
committerIvan Marquesi Lerner2019-08-04 04:25:58 -0300
commit60c2fa84392cc03241501c7b9b276f1291444506 (patch)
tree13483b80447bb1408a66d77fe1612403c9a4564b
downloadaur-60c2fa84392cc03241501c7b9b276f1291444506.tar.gz
Release 0.21.4 of the rewritten Leela Chess Zero engine.
-rw-r--r--.SRCINFO35
-rw-r--r--PKGBUILD72
-rwxr-xr-xlc05
-rw-r--r--lc0.install7
4 files changed, 119 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..15c4b32c9bc5
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,35 @@
+pkgbase = lc0
+ pkgdesc = UCI-compliant chess engine designed to play chess via neural network, specifically those of the LeelaChessZero project.
+ pkgver = 0.21.4
+ pkgrel = 1
+ url = https://lczero.org/
+ install = lc0.install
+ arch = x86_64
+ license = GPL3
+ checkdepends = gtest
+ makedepends = meson
+ makedepends = zlib
+ depends = protobuf
+ depends = ocl-icd
+ optdepends = nvidia: Necessary for running on nvidia GPUs
+ optdepends = cudnn: xNeural network library for use with nvidia GPUs
+ optdepends = intel-compute-runtime: Intel OpenCL runtime for running on intel CPUs
+ optdepends = amdapp-sdk: AMD OpenCL runtime for running on amd CPUs
+ optdepends = openblas: Library for running on CPUs
+ optdepends = opencl-mesa: Free runtime for use with AMDGPU driver stack
+ optdepends = opencl-amd: AMD proprietary userspace driver for AMDGPU driver stack
+ optdepends = rocm-opencl-runtime: AMD runtime for ROCm GPU driver stack
+ optdepends = opencl-amdgpu-pro-orca: AMD proprietary runtime for legacy GPUs on the AMDGPU PRO driver stack
+ optdepends = opencl-amdgpu-pro-pal: AMD proprietary runtime for the AMDGPU PRO driver stack
+ noextract = weights_${_run}_${_nnid}.pb.gz
+ source = lc0
+ source = lc0-0.21.4.tar.gz::https://github.com/LeelaChessZero/lc0/archive/v0.21.4.tar.gz
+ source = lczero-common-master.tar.gz::https://github.com/LeelaChessZero/lczero-common/archive/master.tar.gz
+ source = weights_run1_42850.pb.gz::http://data.lczero.org/files/networks/00af53b081e80147172e6f281c01daf5ca19ada173321438914c730370aa4267
+ md5sums = SKIP
+ md5sums = 9f9cbb2f9c63311201150bbe63f45440
+ md5sums = c793a41a73cd20f8efd964152d6eeb18
+ md5sums = e7c9e1abec8d859ffdbc89e18340c254
+
+pkgname = lc0
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..f32fac10ab88
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,72 @@
+# Maintainer: Ivan Marquesi Lerner <ivanmlerner@protonmail.com>
+
+pkgname=lc0
+pkgver=0.21.4
+pkgrel=1
+_run="run1"
+_nnid=42850
+pkgdesc="UCI-compliant chess engine designed to play chess via neural network, specifically those of the LeelaChessZero project."
+arch=('x86_64')
+
+url="https://lczero.org/"
+license=('GPL3')
+
+depends=('protobuf' 'ocl-icd')
+makedepends=('meson' 'zlib')
+checkdepends=('gtest')
+optdepends=("nvidia: Necessary for running on nvidia GPUs"
+ "cudnn: xNeural network library for use with nvidia GPUs"
+ "intel-compute-runtime: Intel OpenCL runtime for \
+ running on intel CPUs"
+ "amdapp-sdk: AMD OpenCL runtime for running on amd CPUs"
+ "openblas: Library for running on CPUs"
+ "opencl-mesa: Free runtime for use with AMDGPU driver stack"
+ "opencl-amd: AMD proprietary userspace driver \
+ for AMDGPU driver stack"
+ "rocm-opencl-runtime: AMD runtime for ROCm GPU driver stack"
+ "opencl-amdgpu-pro-orca: AMD proprietary runtime for legacy \
+ GPUs on the AMDGPU PRO driver stack"
+ "opencl-amdgpu-pro-pal: AMD proprietary runtime for the \
+ AMDGPU PRO driver stack")
+
+install=lc0.install
+source=("$pkgname"
+ "$pkgname-$pkgver.tar.gz::https://github.com/LeelaChessZero/$pkgname/archive/v$pkgver.tar.gz"
+ "lczero-common-master.tar.gz::https://github.com/LeelaChessZero/lczero-common/archive/master.tar.gz"
+ "weights_${_run}_${_nnid}.pb.gz::http://data.lczero.org/files/networks/00af53b081e80147172e6f281c01daf5ca19ada173321438914c730370aa4267")
+md5sums=('SKIP'
+ '9f9cbb2f9c63311201150bbe63f45440'
+ 'c793a41a73cd20f8efd964152d6eeb18'
+ 'e7c9e1abec8d859ffdbc89e18340c254')
+
+noextract=('weights_${_run}_${_nnid}.pb.gz')
+
+prepare() {
+ cp -PRu "$srcdir/lczero-common-master/proto" "$srcdir/$pkgname-$pkgver/libs/lczero-common/"
+ rm -dr "$srcdir/lczero-common-master"
+ rm -f "$srcdir/$pkgname-$pkgver/build-cl.cmd"
+ rm -f "$srcdir/$pkgname-$pkgver/build-cuda.cmd"
+ rm -f "$srcdir/$pkgname-pkgver/install_openSUSE_lc0.sh"
+ rm -f "$srcdir/$pkgname-pkgver/windows_build.md"
+}
+
+build() {
+ cd "$pkgname-$pkgver"
+ sh build.sh
+}
+
+check() {
+ cd "$pkgname-$pkgver/build/release"
+ gtester chessboard_test
+ gtester encoder_test
+ gtester hashcat_test
+ gtester optionsparser_test
+ gtester position_test
+ gtester syzygy_test
+}
+
+package() {
+ install -Dm755 "$srcdir/$pkgname" "$pkgdir/usr/bin/$pkgname"
+ install -Dm755 "$srcdir/$pkgname-$pkgver/build/release/$pkgname" "$pkgdir/usr/lib/$pkgname/$pkgname"
+ install -Dm644 "$srcdir/weights_${_run}_${_nnid}.pb.gz" "$pkgdir/usr/lib/$pkgname/weights_${_run}_${_nnid}.pb.gz"
+}
diff --git a/lc0 b/lc0
new file mode 100755
index 000000000000..ae07057f61b8
--- /dev/null
+++ b/lc0
@@ -0,0 +1,5 @@
+#!/bin/sh
+
+pushd /usr/lib/lc0/
+./lc0 "$@"
+popd
diff --git a/lc0.install b/lc0.install
new file mode 100644
index 000000000000..abe1266e2e01
--- /dev/null
+++ b/lc0.install
@@ -0,0 +1,7 @@
+post_install() {
+ lc0 benchmark
+}
+
+post_remove() {
+ rm -dr /usr/lib/lc0
+}