MLBEDSW-2593 Build FreeRTOS kernel as a part of ethosu_core target

The ethosu_core target now includes the FreeRTOS kernel if the
CORE_SOFTWARE_RTOS is set to FreeRTOS. Currently supported
builds are for cortex M3, M4, M7, M33, and M55. The FreeRTOSConfig.h
file is generated as a part of the build.

Change-Id: Ief6921fd0d9aa3849497ef0810d2714a12eb6773
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 99d829c..564d4d0 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -36,6 +36,7 @@
 
 # Define build options
 set(CORE_SOFTWARE_RTOS "None" CACHE STRING "Select RTOS to include. (None, MbedOS, FreeRTOS, Zephyr)")
+string(TOLOWER ${CORE_SOFTWARE_RTOS} CORE_SOFTWARE_RTOS_LOWER)
 
 #
 # Build
@@ -55,6 +56,10 @@
 # Build Tensorflow library
 include(tensorflow.cmake)
 
+# Build RTOS
+add_subdirectory(rtos)
+target_link_libraries(ethosu_core INTERFACE ethosu_core_rtos)
+
 # Build applications
 add_subdirectory(applications)