dev-libs/gmp: drop USE=pgo from stable ebuild, bug #658688

USE=pgo generates optimal constants when running 'tuneup' benchmark
locally. If benchmark does not succeed default parameters are used.
Else benchmark's output is used to tune gmp behaviour.

Unfortunately at least on x86 some primitives like
__mpn_sqr_basecase generate invalid assembly code at fail tests.

In bug #650558 we found out that 'tuneup' is not very well maintained
upstream. Let's dropp support for USE=pgo until it gets better.

Reported-by: Robert Gill
Closes: https://bugs.gentoo.org/658688
Bug: https://bugs.gentoo.org/650558
Package-Manager: Portage-2.3.59, Repoman-2.3.12
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
This commit is contained in:
Sergei Trofimovich
2019-02-05 22:18:53 +00:00
parent c559144d3c
commit de85d6ef4a
2 changed files with 1 additions and 13 deletions

View File

@@ -19,7 +19,7 @@ LICENSE="|| ( LGPL-3+ GPL-2+ )"
# The subslot reflects the C & C++ SONAMEs.
SLOT="0/10.4"
KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="+asm doc cxx pgo static-libs"
IUSE="+asm doc cxx static-libs"
DEPEND="sys-devel/m4
app-arch/xz-utils"
@@ -87,17 +87,6 @@ multilib_src_configure() {
multilib_src_compile() {
emake
if use pgo ; then
emake -j1 -C tune tuneup
ebegin "Trying to generate tuned data"
./tune/tuneup | tee gmp.mparam.h.new
if eend $(( 0 + ${PIPESTATUS[*]/#/+} )) ; then
mv gmp.mparam.h.new gmp-mparam.h || die
emake clean
emake
fi
fi
}
multilib_src_test() {

View File

@@ -7,6 +7,5 @@
</maintainer>
<use>
<flag name="asm">Enable use of hand optimized assembly routines (faster execution)</flag>
<flag name="pgo">After building gmp, run some tests against to produce faster libraries -- this option will double the compile time</flag>
</use>
</pkgmetadata>