[compiler-rt] [cmake] Add cmake file for hexagon-builtins baremetal (PR #151500)

via llvm-commits llvm-commits at lists.llvm.org
Thu Jul 31 04:39:23 PDT 2025


https://github.com/quic-k created https://github.com/llvm/llvm-project/pull/151500

This will be used to build hexagon-builtins for baremetal.


>From 99b22999abd5ff895a1bd059f857639f4a5d7783 Mon Sep 17 00:00:00 2001
From: Kushal Pal <kushpal at qti.qualcomm.com>
Date: Thu, 31 Jul 2025 17:01:06 +0530
Subject: [PATCH] [cmake] Add cmake file for hexagon-builtins baremetal

Signed-off-by: Kushal Pal <kushpal at qti.qualcomm.com>
---
 .../caches/hexagon-builtins-baremetal.cmake   | 27 +++++++++++++++++++
 1 file changed, 27 insertions(+)
 create mode 100644 compiler-rt/cmake/caches/hexagon-builtins-baremetal.cmake

diff --git a/compiler-rt/cmake/caches/hexagon-builtins-baremetal.cmake b/compiler-rt/cmake/caches/hexagon-builtins-baremetal.cmake
new file mode 100644
index 0000000000000..c06806a448947
--- /dev/null
+++ b/compiler-rt/cmake/caches/hexagon-builtins-baremetal.cmake
@@ -0,0 +1,27 @@
+set(CMAKE_ASM_FLAGS "-G0 -mlong-calls -fno-pic" CACHE STRING "")
+set(LLVM_ENABLE_PER_TARGET_RUNTIME_DIR OFF CACHE BOOL "")
+set(LLVM_TARGET_TRIPLE hexagon-unknown-unknown-elf CACHE STRING "")
+set(COMPILER_RT_DEFAULT_TARGET_TRIPLE hexagon-unknown-unknown-elf CACHE STRING "")
+set(COMPILER_RT_BUILD_BUILTINS ON CACHE BOOL "")
+set(COMPILER_RT_BUILD_SANITIZERS OFF CACHE BOOL "")
+set(COMPILER_RT_BUILD_XRAY OFF CACHE BOOL "")
+set(COMPILER_RT_BUILD_LIBFUZZER OFF CACHE BOOL "")
+set(COMPILER_RT_BUILD_PROFILE OFF CACHE BOOL "")
+set(COMPILER_RT_BUILD_MEMPROF OFF CACHE BOOL "")
+set(COMPILER_RT_BUILD_ORC OFF CACHE BOOL "")
+set(COMPILER_RT_BUILD_GWP_ASAN OFF CACHE BOOL "")
+set(COMPILER_RT_BUILTINS_ENABLE_PIC OFF CACHE BOOL "")
+set(COMPILER_RT_SUPPORTED_ARCH hexagon CACHE STRING "")
+# without this, build tries to use pthread which is not supported by hexagon-unknown-unknown-elf
+set(COMPILER_RT_BAREMETAL_BUILD ON CACHE BOOL "" FORCE)
+
+set(CMAKE_C_FLAGS "-ffreestanding")
+set(CMAKE_CXX_FLAGS "-ffreestanding")
+set(CMAKE_CROSSCOMPILING ON CACHE BOOL "")
+set(COMPILER_RT_OS_DIR "baremetal" CACHE STRING "")
+set(CAN_TARGET_hexagon 1 CACHE STRING "")
+set(CMAKE_C_COMPILER_FORCED ON CACHE BOOL "")
+set(CMAKE_CXX_COMPILER_FORCED ON CACHE BOOL "")
+
+set(CMAKE_C_COMPILER_TARGET hexagon-unknown-unknown-elf CACHE STRING "")
+set(CMAKE_CXX_COMPILER_TARGET hexagon-unknown-unknown-elf CACHE STRING "")



More information about the llvm-commits mailing list