commit:     15150e907cc7418780fe2b9ef29f6b1e1a0fff9a
Author:     WANG Xuerui <xen0n <AT> gentoo <DOT> org>
AuthorDate: Sun Jan 26 17:34:23 2025 +0000
Commit:     Ben Kohler <bkohler <AT> gentoo <DOT> org>
CommitDate: Wed Jun 18 12:25:23 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=15150e90

sys-apps/memtest86+: add support for loong

Signed-off-by: WANG Xuerui <xen0n <AT> gentoo.org>
Part-of: https://github.com/gentoo/gentoo/pull/40321
Signed-off-by: Ben Kohler <bkohler <AT> gentoo.org>

 sys-apps/memtest86+/memtest86+-7.20.ebuild | 24 ++++++++++++++++++++++--
 1 file changed, 22 insertions(+), 2 deletions(-)

diff --git a/sys-apps/memtest86+/memtest86+-7.20.ebuild 
b/sys-apps/memtest86+/memtest86+-7.20.ebuild
index 33a4c6202519..d852a9fcc0ed 100644
--- a/sys-apps/memtest86+/memtest86+-7.20.ebuild
+++ b/sys-apps/memtest86+/memtest86+-7.20.ebuild
@@ -57,6 +57,17 @@ src_prepare() {
 src_compile() {
        tc-export OBJCOPY
        export SIZE=$(tc-getPROG SIZE size)
+
+       if use loong; then
+               # a different build directory has to be selected for loong, and
+               # there's no "BIOS" support.
+               pushd build64/la64
+                       use uefi64 && emake memtest.efi
+                       use iso64 && emake iso
+               popd
+               return
+       fi
+
        pushd build32
                use bios32 && emake memtest.bin
                use uefi32 && emake memtest.efi
@@ -71,6 +82,11 @@ src_compile() {
 }
 
 install_memtest_images() {
+       if use loong; then
+               use uefi64 && newins build64/la64/memtest.efi memtest.efi64
+               return
+       fi
+
        use bios32 && newins build32/memtest.bin memtest32.bios
        use bios64 && newins build64/memtest.bin memtest64.bios
        use uefi32 && newins build32/memtest.efi memtest.efi32
@@ -88,8 +104,12 @@ src_install() {
 
        insinto /usr/share/${PN}
        install_memtest_images
-       use iso32 && newins build32/memtest.iso memtest32.iso
-       use iso64 && newins build64/memtest.iso memtest64.iso
+       if use loong; then
+               use iso64 && newins build64/la64/memtest.iso memtest64.iso
+       else
+               use iso32 && newins build32/memtest.iso memtest32.iso
+               use iso64 && newins build64/memtest.iso memtest64.iso
+       fi
 
        if use uefi32 || use uefi64; then
                secureboot_auto_sign --in-place

Reply via email to