commit:     81b7f2c2f3cccfa1d8d51eab895d2bc2b52526d5
Author:     Michael Orlitzky <mjo <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 24 23:54:16 2016 +0000
Commit:     Michael Orlitzky <mjo <AT> gentoo <DOT> org>
CommitDate: Wed Aug 24 23:54:34 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=81b7f2c2

games-board/stockfish: new version 7 that respects $CC; remove old ones.

There is a new version of this that compiles fine with the existing
ebuilds. But the build system for this package has a whitelist of
compilers that makes it hard to get it to respect $CC. Fortunately,
there's a hack in the makefile to allow the package to build with
Travis CI, and we can hijack it to force our compiler of choice to be
used.

The version 6 ebuilds have been removed, since they were never
stabilized.

Gentoo-Bug: 542932

Package-Manager: portage-2.2.28

 games-board/stockfish/Manifest                     |  2 +-
 games-board/stockfish/stockfish-6-r1.ebuild        | 60 ----------------------
 .../{stockfish-6-r2.ebuild => stockfish-7.ebuild}  | 38 ++++++++------
 3 files changed, 24 insertions(+), 76 deletions(-)

diff --git a/games-board/stockfish/Manifest b/games-board/stockfish/Manifest
index 9142b4d..e3fc501 100644
--- a/games-board/stockfish/Manifest
+++ b/games-board/stockfish/Manifest
@@ -1 +1 @@
-DIST stockfish-6-src.zip 161183 SHA256 
a69a371d3f84338cefde4575669bd930d186b046a10fa5ab0f8d1aed6cb204c3 SHA512 
8381b7a8616281629f04c6dc4cbe5a279b06067f7af3faff271461f694122eeba9d83a0c4a295b9064142bcaa3b31eca8139b58eb9441684845aad45888402dc
 WHIRLPOOL 
56672a5730ce1f9adef13b658e960f808a990752b749ab3c658e1dbdd54e81bbee9c32ab91c892cd6f8b91ad4d8fe5bcff2c5d0942616b5dda5e77c196ad5092
+DIST stockfish-7-src.zip 158788 SHA256 
89f1bb855c9251c1c644156d82960c71aa68e837390367f5111aa756e0785f36 SHA512 
e5f2bb5e1309db9bf8e89ed35d69c7cf1c63b9da5158dfb32faea33113569c337781e40ec3f4fc03760f1e17acfbb671ecc2eaf57dec1fd018173fe0ae6d70d1
 WHIRLPOOL 
201d405b977355be3326f21567b2b836522d8d021fdab028d74fb3dd21b5eb281825f28df56d35f6a85b0e91cad9f2f674775180715a96f11e85ad4a06f0d663

diff --git a/games-board/stockfish/stockfish-6-r1.ebuild 
b/games-board/stockfish/stockfish-6-r1.ebuild
deleted file mode 100644
index df819ce..00000000
--- a/games-board/stockfish/stockfish-6-r1.ebuild
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-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() {
-       # 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
-}

diff --git a/games-board/stockfish/stockfish-6-r2.ebuild 
b/games-board/stockfish/stockfish-7.ebuild
similarity index 60%
rename from games-board/stockfish/stockfish-6-r2.ebuild
rename to games-board/stockfish/stockfish-7.ebuild
index c38f33f..ff0852b 100644
--- a/games-board/stockfish/stockfish-6-r2.ebuild
+++ b/games-board/stockfish/stockfish-7.ebuild
@@ -3,60 +3,68 @@
 # $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
+
+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 )"
+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
+       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
 
-       emake build ARCH=${my_arch} \
+       # 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() {
-       emake PREFIX="${D}/usr" install
+       dobin "${PN}"
        dodoc ../AUTHORS ../Readme.md
 }

Reply via email to