summaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
authorhathach <[email protected]>2024-04-19 13:40:42 +0700
committerhathach <[email protected]>2024-04-19 23:17:00 +0700
commitbe0d62ba6c84e6c44416f5a837d830000f316505 (patch)
tree014f512d659ab2c3bb9ec130e13df31db285c552 /examples
parent824e39ddeb762a0876702304ac95ea3b1d40cb5a (diff)
clang samd51 compile but does not run, rom is correct, but ram is lacking bss. Got stkerr -> hardfault
Diffstat (limited to 'examples')
-rw-r--r--examples/build_system/cmake/cpu/cortex-m0.cmake6
-rw-r--r--examples/build_system/cmake/cpu/cortex-m23.cmake6
-rw-r--r--examples/build_system/cmake/cpu/cortex-m3.cmake6
-rw-r--r--examples/build_system/cmake/cpu/cortex-m33.cmake7
-rw-r--r--examples/build_system/cmake/toolchain/common.cmake4
5 files changed, 24 insertions, 5 deletions
diff --git a/examples/build_system/cmake/cpu/cortex-m0.cmake b/examples/build_system/cmake/cpu/cortex-m0.cmake
index 2438ca96a..ddf0f16af 100644
--- a/examples/build_system/cmake/cpu/cortex-m0.cmake
+++ b/examples/build_system/cmake/cpu/cortex-m0.cmake
@@ -7,7 +7,11 @@ if (TOOLCHAIN STREQUAL "gcc")
set(FREERTOS_PORT GCC_ARM_CM0 CACHE INTERNAL "")
elseif (TOOLCHAIN STREQUAL "clang")
- message(FATAL_ERROR "Clang is not supported for this target")
+ set(TOOLCHAIN_COMMON_FLAGS
+ --target=arm-none-eabi
+ -mcpu=cortex-m0plus
+ )
+ set(FREERTOS_PORT GCC_ARM_CM0 CACHE INTERNAL "")
elseif (TOOLCHAIN STREQUAL "iar")
set(TOOLCHAIN_COMMON_FLAGS
diff --git a/examples/build_system/cmake/cpu/cortex-m23.cmake b/examples/build_system/cmake/cpu/cortex-m23.cmake
index a7eb82684..00382ed9b 100644
--- a/examples/build_system/cmake/cpu/cortex-m23.cmake
+++ b/examples/build_system/cmake/cpu/cortex-m23.cmake
@@ -7,7 +7,11 @@ if (TOOLCHAIN STREQUAL "gcc")
set(FREERTOS_PORT GCC_ARM_CM23_NTZ_NONSECURE CACHE INTERNAL "")
elseif (TOOLCHAIN STREQUAL "clang")
- message(FATAL_ERROR "Clang is not supported for this target")
+ set(TOOLCHAIN_COMMON_FLAGS
+ --target=arm-none-eabi
+ -mcpu=cortex-m23
+ )
+ set(FREERTOS_PORT GCC_ARM_CM23_NTZ_NONSECURE CACHE INTERNAL "")
elseif (TOOLCHAIN STREQUAL "iar")
set(TOOLCHAIN_COMMON_FLAGS
diff --git a/examples/build_system/cmake/cpu/cortex-m3.cmake b/examples/build_system/cmake/cpu/cortex-m3.cmake
index 90982f415..27888604e 100644
--- a/examples/build_system/cmake/cpu/cortex-m3.cmake
+++ b/examples/build_system/cmake/cpu/cortex-m3.cmake
@@ -6,7 +6,11 @@ if (TOOLCHAIN STREQUAL "gcc")
set(FREERTOS_PORT GCC_ARM_CM3 CACHE INTERNAL "")
elseif (TOOLCHAIN STREQUAL "clang")
- message(FATAL_ERROR "Clang is not supported for this target")
+ set(TOOLCHAIN_COMMON_FLAGS
+ --target=arm-none-eabi
+ -mcpu=cortex-m3
+ )
+ set(FREERTOS_PORT GCC_ARM_CM3 CACHE INTERNAL "")
elseif (TOOLCHAIN STREQUAL "iar")
set(TOOLCHAIN_COMMON_FLAGS
diff --git a/examples/build_system/cmake/cpu/cortex-m33.cmake b/examples/build_system/cmake/cpu/cortex-m33.cmake
index c38d05376..d56d07ebc 100644
--- a/examples/build_system/cmake/cpu/cortex-m33.cmake
+++ b/examples/build_system/cmake/cpu/cortex-m33.cmake
@@ -8,7 +8,12 @@ if (TOOLCHAIN STREQUAL "gcc")
set(FREERTOS_PORT GCC_ARM_CM33_NTZ_NONSECURE CACHE INTERNAL "")
elseif (TOOLCHAIN STREQUAL "clang")
- message(FATAL_ERROR "Clang is not supported for this target")
+ set(TOOLCHAIN_COMMON_FLAGS
+ --target=arm-none-eabi
+ -mcpu=cortex-m33
+ -mfpu=fpv5-sp-d16
+ )
+ set(FREERTOS_PORT GCC_ARM_CM33_NTZ_NONSECURE CACHE INTERNAL "")
elseif (TOOLCHAIN STREQUAL "iar")
set(TOOLCHAIN_COMMON_FLAGS
diff --git a/examples/build_system/cmake/toolchain/common.cmake b/examples/build_system/cmake/toolchain/common.cmake
index bbd670b65..688715914 100644
--- a/examples/build_system/cmake/toolchain/common.cmake
+++ b/examples/build_system/cmake/toolchain/common.cmake
@@ -31,11 +31,13 @@ if (TOOLCHAIN STREQUAL "gcc")
-Wl,--gc-sections
-Wl,--cref
)
+
elseif (TOOLCHAIN STREQUAL "iar")
#list(APPEND TOOLCHAIN_COMMON_FLAGS)
list(APPEND TOOLCHAIN_EXE_LINKER_FLAGS
--diag_suppress=Li065
)
+
elseif (TOOLCHAIN STREQUAL "clang")
list(APPEND TOOLCHAIN_COMMON_FLAGS
-fdata-sections
@@ -45,7 +47,7 @@ elseif (TOOLCHAIN STREQUAL "clang")
list(APPEND TOOLCHAIN_EXE_LINKER_FLAGS
-Wl,--print-memory-usage
-Wl,--gc-sections
- #-Wl,--cref
+ -Wl,--cref
)
endif ()