games-board/stockfish: bump to version 8
authorMatthias Maier <tamiko@gentoo.org>
Thu, 17 Nov 2016 05:16:25 +0000 (23:16 -0600)
committerMatthias Maier <tamiko@gentoo.org>
Thu, 17 Nov 2016 05:19:52 +0000 (23:19 -0600)
Package-Manager: portage-2.3.0

games-board/stockfish/Manifest
games-board/stockfish/stockfish-8.ebuild [new file with mode: 0644]

index e3fc501e12a4df6a7c6fa73734ec616a7c648920..77676e880f8424de79b091d51723e88c5094fe23 100644 (file)
@@ -1 +1,2 @@
 DIST stockfish-7-src.zip 158788 SHA256 89f1bb855c9251c1c644156d82960c71aa68e837390367f5111aa756e0785f36 SHA512 e5f2bb5e1309db9bf8e89ed35d69c7cf1c63b9da5158dfb32faea33113569c337781e40ec3f4fc03760f1e17acfbb671ecc2eaf57dec1fd018173fe0ae6d70d1 WHIRLPOOL 201d405b977355be3326f21567b2b836522d8d021fdab028d74fb3dd21b5eb281825f28df56d35f6a85b0e91cad9f2f674775180715a96f11e85ad4a06f0d663
+DIST stockfish-8-src.zip 159017 SHA256 7bad36f21f649ab24f6d7786bbb1b74b3e4037f165f32e3d42d1ae19c8874ce9 SHA512 4dcc8c6e975367e96d5b4e76c241094e1bade53fd19fa29320a5df10177ff5ae04844ca7ae9f9cfe929aa1341d898aabbbe523bbdab4c5beef75ca8332ce50c1 WHIRLPOOL ac28ea7e89a447e465dfc102cc4f1a7a9131e0933bf52f57b00483f541065613d678797c807d462c6b364a1052b86c55e0471bfb76fe8e61e3355ea79133fc84
diff --git a/games-board/stockfish/stockfish-8.ebuild b/games-board/stockfish/stockfish-8.ebuild
new file mode 100644 (file)
index 0000000..ff0852b
--- /dev/null
@@ -0,0 +1,70 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+inherit toolchain-funcs
+
+DESCRIPTION="Free UCI chess engine, claimed to be the strongest in the world"
+HOMEPAGE="http://stockfishchess.org/"
+
+SRC_URI="https://stockfish.s3.amazonaws.com/${P}-src.zip"
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="armv7 cpu_flags_x86_avx2 cpu_flags_x86_popcnt cpu_flags_x86_sse debug
+       general-32 general-64 +optimize"
+
+DEPEND="|| ( app-arch/unzip    app-arch/zip )"
+RDEPEND=""
+
+S="${WORKDIR}/${P}-src/src"
+
+src_prepare() {
+       default
+
+       # prevent pre-stripping
+       sed -e 's:-strip $(BINDIR)/$(EXE)::' -i Makefile \
+               || die 'failed to disable stripping in the Makefile'
+}
+
+src_compile() {
+       local my_arch
+
+       # generic unoptimized first
+       use general-32 && my_arch=general-32
+       use general-64 && my_arch=general-64
+
+       # x86
+       use x86 && my_arch=x86-32-old
+       use cpu_flags_x86_sse && my_arch=x86-32
+
+       # amd64
+       use amd64 && my_arch=x86-64
+       use cpu_flags_x86_popcnt && my_arch=x86-64-modern
+
+       # both bmi2 and avx2 are part of hni (haswell new instructions)
+       use cpu_flags_x86_avx2 && my_arch=x86-64-bmi2
+
+       # other architectures
+       use armv7 && my_arch=armv7
+       use ppc && my_arch=ppc
+       use ppc64 && my_arch=ppc64
+
+       # Skip the "build" target and use "all" instead to avoid the config
+       # sanity check (which would throw a fit about our compiler). There's
+       # a nice hack in the Makefile that overrides the value of CXX with
+       # COMPILER to support Travis CI and we abuse it to make sure that we
+       # build with our compiler of choice.
+       emake all ARCH="${my_arch}" \
+               COMP=$(tc-getCXX) \
+               COMPILER=$(tc-getCXX) \
+               debug=$(usex debug "yes" "no") \
+               optimize=$(usex optimize "yes" "no")
+}
+
+src_install() {
+       dobin "${PN}"
+       dodoc ../AUTHORS ../Readme.md
+}