games-board/stockfish: bump to EAPI 6, add maintainer-needed
authorAustin English <wizardedit@gentoo.org>
Thu, 7 Jul 2016 19:40:42 +0000 (14:40 -0500)
committerAustin English <wizardedit@gentoo.org>
Thu, 7 Jul 2016 19:47:00 +0000 (14:47 -0500)
Package-Manager: portage-2.2.28

games-board/stockfish/metadata.xml
games-board/stockfish/stockfish-6-r2.ebuild [new file with mode: 0644]

index cae58169f594cce315b4891b33d10870669758bb..831231b280b4611b874fbeeeaef96365379b72f0 100644 (file)
@@ -1,6 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
 <pkgmetadata>
+  <!-- maintainer-needed -->
   <use>
     <flag name="armv7">Build for armv7; enables PIE</flag>
     <flag name="general-32">Generic unoptimized 32-bits build</flag>
diff --git a/games-board/stockfish/stockfish-6-r2.ebuild b/games-board/stockfish/stockfish-6-r2.ebuild
new file mode 100644 (file)
index 0000000..c38f33f
--- /dev/null
@@ -0,0 +1,62 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+if [[ ${PV} == *9999* ]]; then
+       inherit git-r3
+       EGIT_REPO_URI="git://github.com/official-stockfish/Stockfish.git"
+       KEYWORDS=""
+       S=${WORKDIR}/${P}/src
+else
+       SRC_URI="https://stockfish.s3.amazonaws.com/${P}-src.zip"
+       KEYWORDS="~amd64 ~x86"
+       S=${WORKDIR}/${P}-src/src
+fi
+
+DESCRIPTION="Free UCI chess engine, claimed to be the strongest in the world"
+HOMEPAGE="http://stockfishchess.org/"
+
+LICENSE="GPL-3"
+SLOT="0"
+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=""
+
+src_prepare() {
+       default
+
+       # prevent pre-stripping
+       sed -e 's:-strip $(BINDIR)/$(EXE)::' -i Makefile || die
+}
+
+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
+
+       emake build ARCH=${my_arch} \
+               debug=$(usex debug "yes" "no") \
+               optimize=$(usex optimize "yes" "no")
+}
+
+src_install() {
+       emake PREFIX="${D}/usr" install
+       dodoc ../AUTHORS ../Readme.md
+}