aboutsummaryrefslogtreecommitdiff
path: root/cmsis.cmake
diff options
context:
space:
mode:
authorLedion Daja <ledion.daja@arm.com>2022-06-21 12:22:13 +0200
committerKristofer Jonsson <kristofer.jonsson@arm.com>2022-09-13 09:42:31 +0200
commit449c8d81f5b0c4d75c632b7849ddd9966cfd71cf (patch)
tree88011ec0e51e834b8f1492a8fd628bdd139f35f9 /cmsis.cmake
parent311d6533177769b1eb81ac21442c7563faac21a8 (diff)
downloadethos-u-core-software-449c8d81f5b0c4d75c632b7849ddd9966cfd71cf.tar.gz
Remove CMake workaround for Arm Clang
Previous version of CMake did not allow CMAKE_SYSTEM_PROCESSOR to contain CPU features for Arm Clang toolchain. A workaround was added to manually strip the CPU features. Recent versions of CMake have removed this limitation and instead requires the toolchain to manually add -mcpu=<CPU+features>, which means that the workaround can be removed. Change-Id: I3e8647c47df27a96cdd103614ecf2540f150ab36
Diffstat (limited to 'cmsis.cmake')
-rw-r--r--cmsis.cmake13
1 files changed, 6 insertions, 7 deletions
diff --git a/cmsis.cmake b/cmsis.cmake
index fd93545..daa8132 100644
--- a/cmsis.cmake
+++ b/cmsis.cmake
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2019-2021 Arm Limited. All rights reserved.
+# Copyright (c) 2019-2022 Arm Limited.
#
# SPDX-License-Identifier: Apache-2.0
#
@@ -17,20 +17,19 @@
#
# Extract the CPU number from the system processor
-string(REGEX MATCH "^cortex-m([0-9]+)$" CPU_NUMBER ${CMAKE_SYSTEM_PROCESSOR})
+string(REGEX REPLACE "^cortex-m([0-9]+[a-z]*)" "\\1" CPU_NUMBER ${CMAKE_SYSTEM_PROCESSOR})
if(NOT CPU_NUMBER)
message(FATAL_ERROR "System processor '${CMAKE_SYSTEM_PROCESSOR}' not supported. Should be cortex-m<nr>.")
endif()
-string(REGEX REPLACE "^cortex-m([0-9]+)$" "\\1" CPU_NUMBER ${CMAKE_SYSTEM_PROCESSOR})
-set(ARM_CPU "ARMCM${CPU_NUMBER}")
+string(TOUPPER "ARMCM${CPU_NUMBER}" ARM_CPU)
# Set CPU specific features
-if(${CMAKE_SYSTEM_PROCESSOR} STREQUAL "cortex-m33")
+if(CMAKE_SYSTEM_PROCESSOR MATCHES "cortex-m33")
set(ARM_FEATURES "_DSP_FP")
-elseif(${CMAKE_SYSTEM_PROCESSOR} STREQUAL "cortex-m4")
+elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "cortex-m4")
set(ARM_FEATURES "_FP")
-elseif(${CMAKE_SYSTEM_PROCESSOR} STREQUAL "cortex-m7")
+elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "cortex-m7")
set(ARM_FEATURES "_DP")
else()
set(ARM_FEATURES "")