aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortobtoht <tob@featherwallet.org>2026-04-07 08:57:51 +0000
committertobtoht <tob@featherwallet.org>2026-04-07 08:57:51 +0000
commitff1746ec6e35b86eab0886c0a71b7818d5ca9c6e (patch)
tree62e747b4934d5f735715caddd654d42cf1dd8784
parent1df631970fa610824117c85e05afddcedcdf8196 (diff)
parent0e45918b2b15e1e836ca986fbebb179ce18e7654 (diff)
downloadmonzero-core-ff1746ec6e35b86eab0886c0a71b7818d5ca9c6e.tar.gz
monzero-core-ff1746ec6e35b86eab0886c0a71b7818d5ca9c6e.tar.xz
monzero-core-ff1746ec6e35b86eab0886c0a71b7818d5ca9c6e.zip
Merge pull request #10400
0e45918 Add support for Loongarch (YalingFang)
-rw-r--r--CMakeLists.txt9
-rw-r--r--contrib/depends/packages/openssl.mk1
-rw-r--r--contrib/depends/toolchain.cmake.in4
3 files changed, 13 insertions, 1 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 9b922046e..e4fe53d1d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -335,6 +335,11 @@ set(RISCV 1)
set(RISCV32 1)
endif()
+if(ARCH_ID STREQUAL "loongarch64")
+set(LOONGARCH 1)
+set(LOONGARCH64 1)
+endif()
+
if(WIN32 OR ARM OR PPC64LE OR PPC64 OR PPC)
set(OPT_FLAGS_RELEASE "-O2")
else()
@@ -748,7 +753,7 @@ else()
message(STATUS "AES support explicitly disabled")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DNO_AES")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DNO_AES")
- elseif(NOT ARM AND NOT PPC64LE AND NOT PPC64 AND NOT PPC AND NOT S390X AND NOT RISCV)
+ elseif(NOT ARM AND NOT PPC64LE AND NOT PPC64 AND NOT PPC AND NOT S390X AND NOT RISCV AND NOT LOONGARCH)
message(STATUS "AES support enabled")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -maes")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -maes")
@@ -758,6 +763,8 @@ else()
message(STATUS "AES support not available on s390x")
elseif(RISCV)
message(STATUS "AES support not available on RISC-V")
+ elseif(LOONGARCH)
+ message(STATUS "AES support not available on LOONGARCH")
elseif(ARM6)
message(STATUS "AES support not available on ARMv6")
elseif(ARM7)
diff --git a/contrib/depends/packages/openssl.mk b/contrib/depends/packages/openssl.mk
index 8f3012f02..77d4b2d11 100644
--- a/contrib/depends/packages/openssl.mk
+++ b/contrib/depends/packages/openssl.mk
@@ -38,6 +38,7 @@ $(package)_config_opts_arm_android=--static android-arm
$(package)_config_opts_aarch64_android=--static android-arm64
$(package)_config_opts_aarch64_darwin=darwin64-arm64-cc
$(package)_config_opts_riscv64_linux=linux-generic64
+$(package)_config_opts_loongarch64_linux=linux-generic64
$(package)_config_opts_mipsel_linux=linux-generic32
$(package)_config_opts_mips_linux=linux-generic32
$(package)_config_opts_powerpc_linux=linux-generic32
diff --git a/contrib/depends/toolchain.cmake.in b/contrib/depends/toolchain.cmake.in
index f118c754e..6879c806e 100644
--- a/contrib/depends/toolchain.cmake.in
+++ b/contrib/depends/toolchain.cmake.in
@@ -150,6 +150,10 @@ if(ARCHITECTURE STREQUAL "riscv64")
set(ARCH_ID "riscv64")
set(ARCH "rv64gc")
endif()
+if(ARCHITECTURE STREQUAL "loongarch64")
+ set(ARCH_ID "loongarch64")
+ set(ARCH "loongarch")
+endif()
if(ARCHITECTURE STREQUAL "i686")
SET(ARCH_ID "i386")