commit:     4c3b7adb63d3fef8963877291a490600a1a55443
Author:     Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Sep 11 21:42:14 2020 +0000
Commit:     Zac Medico <zmedico <AT> gentoo <DOT> org>
CommitDate: Mon Sep 14 06:52:39 2020 +0000
URL:        https://gitweb.gentoo.org/proj/portage.git/commit/?id=4c3b7adb

Recognize riscv_{ilp32,ilp32d} ABIs

Bug: https://bugs.gentoo.org/742446
Signed-off-by: Zac Medico <zmedico <AT> gentoo.org>

 lib/portage/dep/soname/multilib_category.py | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/lib/portage/dep/soname/multilib_category.py 
b/lib/portage/dep/soname/multilib_category.py
index 301c62a35..fb2839e01 100644
--- a/lib/portage/dep/soname/multilib_category.py
+++ b/lib/portage/dep/soname/multilib_category.py
@@ -14,7 +14,7 @@
 #      m68k_{32,64}
 #      mips_{eabi32,eabi64,n32,n64,o32,o64}
 #      ppc_{32,64}
-#      riscv_{lp64,lp64d}
+#      riscv_{ilp32,ilp32d,lp64,lp64d}
 #      s390_{32,64}
 #      sh_{32,64}
 #      sparc_{32,64}
@@ -99,6 +99,8 @@ def _compute_suffix_riscv(elf_header):
        Compute riscv multilib suffix. In order to avoid possible
        misidentification, only the following ABIs are recognized:
 
+               * ilp32
+               * ilp32d
                * lp64
                * lp64d
        """
@@ -111,8 +113,13 @@ def _compute_suffix_riscv(elf_header):
                elif elf_header.e_flags == EF_RISCV_RVC | 
EF_RISCV_FLOAT_ABI_DOUBLE:
                        name = "lp64d"
 
-       return name
+       elif elf_header.ei_class == ELFCLASS32:
+               if elf_header.e_flags == EF_RISCV_RVC:
+                       name = "ilp32"
+               elif elf_header.e_flags == EF_RISCV_RVC | 
EF_RISCV_FLOAT_ABI_DOUBLE:
+                       name = "ilp32d"
 
+       return name
 
 _specialized_funcs = {
        "mips": _compute_suffix_mips,

Reply via email to