aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorliodek01 <lior.dekel@arm.com>2021-06-24 12:14:47 +0300
committerKristofer Jonsson <kristofer.jonsson@arm.com>2021-06-28 13:24:05 +0200
commit8e13f90d45bb7c5b6ac54d8516468390c26fcf0c (patch)
tree75cc3f6fc881ec64fc126f7c157df7456e277323
parent34c8bc9a52a8d20b7445a54b60804850f8f5afa8 (diff)
downloadethos-u-core-software-8e13f90d45bb7c5b6ac54d8516468390c26fcf0c.tar.gz
adding ThreadX to rtos CMakeLists.txt
Change-Id: Id54df3d56e85c995842d5330b6a7b6e8129440ce
-rw-r--r--rtos/CMakeLists.txt18
1 files changed, 18 insertions, 0 deletions
diff --git a/rtos/CMakeLists.txt b/rtos/CMakeLists.txt
index 941ba32..299474d 100644
--- a/rtos/CMakeLists.txt
+++ b/rtos/CMakeLists.txt
@@ -21,3 +21,21 @@ if(CORE_SOFTWARE_RTOS_LOWER STREQUAL "freertos" OR CORE_SOFTWARE_RTOS_LOWER STRE
set(FREERTOS_KERNEL_PATH "${CMAKE_CURRENT_SOURCE_DIR}/freertos/freertos_kernel" CACHE PATH "Path to FreeRTOS kernel.")
add_subdirectory(freertos_config)
endif()
+
+# Include ThreadX
+if(CORE_SOFTWARE_RTOS_LOWER STREQUAL "threadx" OR CORE_SOFTWARE_RTOS_LOWER STREQUAL "all")
+ #threadx build requires 2 defines: THREADX_ARCH (format: cortex_m4) and THREADX_TOOLCHAIN (ac5/ac6/gnu).
+ #set them according to existing defines CMAKE_SYSTEM_PROCESSOR and CMAKE_CXX_COMPILER_ID:
+ string(REPLACE "-" "_" THREADX_ARCH ${CMAKE_SYSTEM_PROCESSOR})
+ string(TOLOWER ${CMAKE_CXX_COMPILER_ID} THREADX_TOOLCHAIN)
+ #if armclang, change the format to "ac6".
+ if(THREADX_TOOLCHAIN STREQUAL "armclang")
+ set(THREADX_TOOLCHAIN "ac6")
+ endif()
+ #if ThreadX supports this configuration, build ThreadX.
+ if (EXISTS ${CMAKE_CURRENT_LIST_DIR}/threadx/ports/${THREADX_ARCH}/${THREADX_TOOLCHAIN}/CMakeLists.txt)
+ add_subdirectory(threadx)
+ else()
+ message(STATUS "Skipping ThreadX build - doesn't support toolchain=${THREADX_TOOLCHAIN} and cpu=${THREADX_ARCH}")
+ endif()
+endif()