dev-libs/gmp: tie --enable-fat to USE=cpudetection

Note that USE=-cpudetection still gives a very generic
build rather than one detected at build time to be
precisely the machine compiled on (for now?)

Bug: https://bugs.gentoo.org/883201
Signed-off-by: Sam James <sam@gentoo.org>
This commit is contained in:
Sam James
2022-11-30 08:30:15 +00:00
parent 3fe1b5370c
commit bf286a7973
5 changed files with 28 additions and 14 deletions

View File

@@ -27,7 +27,8 @@ LICENSE="|| ( LGPL-3+ GPL-2+ )"
SLOT="0/10.4"
# Unkeyworded temporarily for some more testing
#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="+asm doc +cxx pic static-libs"
IUSE="+asm doc +cpudetection +cxx pic static-libs"
REQUIRED_USE="cpudetection? ( asm )"
BDEPEND="
app-arch/xz-utils
@@ -93,14 +94,14 @@ multilib_src_configure() {
--localstatedir="${EPREFIX}"/var/state/gmp
--enable-shared
$(use_enable asm assembly)
# fat is needed to avoid gmp installing either purely generic
# or specific-to-used-CPU (which our config.guess refresh prevents at the moment).
# Both Fedora and opensuse use this option to tackle the issue, bug #883201.
#
# This only works for x86, so we're still getting non-performant
# builds on other arches until we figure something out!
$(use_enable asm fat)
$(use_enable asm assembly)
$(use_enable cpudetection fat)
$(use_enable cxx)
$(use_enable static-libs static)

View File

@@ -1,15 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>toolchain@gentoo.org</email>
<name>Gentoo Toolchain Project</name>
</maintainer>
<use>
<flag name="asm">Enable use of hand optimized assembly routines (faster execution)</flag>
<flag name="pic">Force static libraries to be built as PIC to avoid TEXTRELs.</flag>
</use>
<upstream>
<remote-id type="cpe">cpe:/a:gmplib:gmp</remote-id>
</upstream>
<maintainer type="project">
<email>toolchain@gentoo.org</email>
<name>Gentoo Toolchain Project</name>
</maintainer>
<use>
<flag name="asm">Enable use of hand optimized assembly routines (faster execution)</flag>
<flag name="cpudetection">Enables runtime CPU detection (useful for binpkgs, compatibility on other CPUs)</flag>
<flag name="pic">Force static libraries to be built as PIC to avoid TEXTRELs.</flag>
</use>
<upstream>
<remote-id type="cpe">cpe:/a:gmplib:gmp</remote-id>
</upstream>
</pkgmetadata>

View File

@@ -17,6 +17,10 @@
#--- END OF EXAMPLES ---
# Sam James <sam@gentoo.org> (2022-11-30)
# Only effective on amd64/x86.
dev-libs/gmp -cpudetection
# Guillermo Joandet <gjoandet@gmail.com> (2022-11-22)
# app-text/pandoc is keyworded on this architecture
net-libs/gssdp -man

View File

@@ -1,6 +1,10 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Sam James <sam@gentoo.org> (2022-11-30)
# Only effective on amd64/x86.
dev-libs/gmp cpudetection
# Mike Gilbert <floppym@gentoo.org> (2022-10-16)
# Only supported on MIPS.
dev-lang/gnat-gpl fixed-point

View File

@@ -1,6 +1,10 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Sam James <sam@gentoo.org> (2022-11-30)
# Only effective on amd64/x86.
dev-libs/gmp -cpudetection
# Michał Górny <mgorny@gentoo.org> (2022-11-16)
# spirv-llvm-translator is not keyworded x86.
dev-libs/libclc spirv