commit:     c8cb8a9930524cd70efad59529c9e1936dcb0bf3
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Mon May 30 20:28:26 2022 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Mon May 30 20:32:13 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c8cb8a99

sys-boot/syslinux: replace efi32 and efi64 with ABI_X86 flags

Closes: https://bugs.gentoo.org/584464
Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 sys-boot/syslinux/metadata.xml              |  3 +--
 sys-boot/syslinux/syslinux-6.04_pre3.ebuild | 29 +++++++++++++++++------------
 2 files changed, 18 insertions(+), 14 deletions(-)

diff --git a/sys-boot/syslinux/metadata.xml b/sys-boot/syslinux/metadata.xml
index 22c238faa909..ca6327ed17a2 100644
--- a/sys-boot/syslinux/metadata.xml
+++ b/sys-boot/syslinux/metadata.xml
@@ -10,8 +10,7 @@
        </maintainer>
        <use>
                <flag name="bios">Enable BIOS support</flag>
-               <flag name="efi32">Enable 32-bit EFI support</flag>
-               <flag name="efi64">Enable 64-bit EFI support</flag>
+               <flag name="efi">Enable EFI support</flag>
        </use>
        <upstream>
                <remote-id type="cpe">cpe:/a:gentoo:syslinux</remote-id>

diff --git a/sys-boot/syslinux/syslinux-6.04_pre3.ebuild 
b/sys-boot/syslinux/syslinux-6.04_pre3.ebuild
index 14724565c3dd..0cdfd3d15c7b 100644
--- a/sys-boot/syslinux/syslinux-6.04_pre3.ebuild
+++ b/sys-boot/syslinux/syslinux-6.04_pre3.ebuild
@@ -13,8 +13,9 @@ 
SRC_URI="https://git.zytor.com/syslinux/syslinux.git/snapshot/${MY_P}.tar.gz";
 LICENSE="GPL-2"
 SLOT="0"
 KEYWORDS="-* ~amd64 ~x86"
-IUSE="+bios efi32 efi64"
-REQUIRED_USE="|| ( bios efi32 efi64 )"
+IUSE="abi_x86_32 abi_x86_64 +bios +efi"
+REQUIRED_USE="|| ( bios efi )
+       efi? ( || ( abi_x86_32 abi_x86_64 ) )"
 
 BDEPEND="
        dev-lang/perl
@@ -31,8 +32,7 @@ RDEPEND="
        dev-perl/Digest-SHA1
 "
 DEPEND="${RDEPEND}
-       efi32? ( sys-boot/gnu-efi[abi_x86_32(-)] )
-       efi64? ( sys-boot/gnu-efi[abi_x86_64(-)] )
+       efi? ( sys-boot/gnu-efi[abi_x86_32(-)?,abi_x86_64(-)?] )
        virtual/os-headers
 "
 
@@ -69,21 +69,26 @@ src_compile() {
        if use bios; then
                emake bios
        fi
-       if use efi32; then
-               efimake x86 efi32
-       fi
-       if use efi64; then
-               efimake amd64 efi64
+       if use efi; then
+               if use abi_x86_32; then
+                       efimake x86 efi32
+               fi
+               if use abi_x86_64; then
+                       efimake amd64 efi64
+               fi
        fi
 }
 
 src_install() {
+       local firmware=( $(usev bios) )
+       if use efi; then
+               use abi_x86_32 && firmware+=( efi32 )
+               use abi_x86_64 && firmware+=( efi64 )
+       fi
        local args=(
                INSTALLROOT="${ED}"
                MANDIR='$(DATADIR)/man'
-               $(usev bios)
-               $(usev efi32)
-               $(usev efi64)
+               "${firmware[@]}"
                install
        )
        emake -j1 "${args[@]}"

Reply via email to