From: Matthias Dahl Date: Tue, 4 Jul 2017 08:02:11 +0000 (+0200) Subject: sys-boot/gnu-efi: Add custom-cflags flag and prevent avx instructions X-Git-Url: http://git.tremily.us/gitweb.cgi?a=commitdiff_plain;h=3d47ec7831aa3c05e7b9dd2fad67e3e9dcb38c18;p=gentoo.git sys-boot/gnu-efi: Add custom-cflags flag and prevent avx instructions Building gnu-efi with custom compiler flags is risky at best and should generally be avoided. Nevertheless, if custom flags are used, we need to make sure no avx instructions are generated as those cause a non-functional gnu-efi build. This is only required for >= 3.0.5 as prior to this, "-mno-sse" was used which also implied no avx. Fixes bug #619628. --- diff --git a/sys-boot/gnu-efi/gnu-efi-3.0.6.ebuild b/sys-boot/gnu-efi/gnu-efi-3.0.6-r1.ebuild similarity index 87% rename from sys-boot/gnu-efi/gnu-efi-3.0.6.ebuild rename to sys-boot/gnu-efi/gnu-efi-3.0.6-r1.ebuild index 838f2b4ecb0c..356ce6f38e93 100644 --- a/sys-boot/gnu-efi/gnu-efi-3.0.6.ebuild +++ b/sys-boot/gnu-efi/gnu-efi-3.0.6-r1.ebuild @@ -19,7 +19,7 @@ SLOT="0" # IA64 build is broken in setjmp code: # https://sourceforge.net/p/gnu-efi/bugs/9/ KEYWORDS="-* ~amd64 ~arm ~arm64 -ia64 ~x86" -IUSE="abi_x86_32 abi_x86_64" +IUSE="abi_x86_32 abi_x86_64 -custom-cflags" DEPEND="sys-apps/pciutils" RDEPEND="" @@ -61,8 +61,15 @@ efimake() { src_compile() { tc-export BUILD_CC AR AS CC LD - # https://bugs.gentoo.org/607992 - filter-mfpmath sse + if use custom-cflags; then + # https://bugs.gentoo.org/607992 + filter-mfpmath sse + + # https://bugs.gentoo.org/619628 + append-flags $(test-flags-CC -mno-avx) + else + unset CFLAGS CPPFLAGS LDFLAGS + fi if [[ ${CHOST} == x86_64* ]]; then use abi_x86_32 && CHOST=i686 ABI=x86 efimake