aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--profiles/arch/riscv/rv64gc/make.defaults17
1 files changed, 16 insertions, 1 deletions
diff --git a/profiles/arch/riscv/rv64gc/make.defaults b/profiles/arch/riscv/rv64gc/make.defaults
index 46206e2..efa94c7 100644
--- a/profiles/arch/riscv/rv64gc/make.defaults
+++ b/profiles/arch/riscv/rv64gc/make.defaults
@@ -2,6 +2,9 @@
# Distributed under the terms of the GNU General Public License v2
# RISC-V profile for rv64gc multilib
+#
+# This immediate profile is ONLY useful for internal purposes; it can generate
+# stages just fine, but the only "hardware" that can run them is qemu-user ...
CFLAGS="-O2 -pipe"
CXXFLAGS="${CFLAGS}"
@@ -9,13 +12,15 @@ FFLAGS="${CFLAGS}"
FCFLAGS="${CFLAGS}"
# Multilib ABIs
-MULTILIB_ABIS="lp64d lp64"
+MULTILIB_ABIS="lp64d lp64 ilp32d ilp32"
DEFAULT_ABI="lp64d"
ABI="lp64d"
# Library directories
LIBDIR_lp64d="lib64/lp64d"
LIBDIR_lp64="lib64/lp64"
+LIBDIR_ilp32d="lib32/ilp32d"
+LIBDIR_ilp32="lib32/ilp32"
SYMLINK_LIB="no"
# Flags for lp64d
@@ -28,6 +33,16 @@ CFLAGS_lp64="-mabi=lp64"
LDFLAGS_lp64="-m elf64lriscv_lp64"
CHOST_lp64="riscv64-unknown-linux-gnu"
+# Flags for ilp32d
+CFLAGS_ilp32d="-mabi=ilp32d -march=rv32imafdc"
+LDFLAGS_ilp32d="-m elf32lriscv"
+CHOST_ilp32d="riscv32-unknown-linux-gnu"
+
+# Flags for ilp32
+CFLAGS_ilp32="-mabi=ilp32 -march=rv32imac"
+LDFLAGS_ilp32="-m elf32lriscv_ilp32"
+CHOST_ilp32="riscv32-unknown-linux-gnu"
+
# Enable lp64d by default
ABI_RISCV="lp64d"