MLECO-2525 Upgrade to C++ 14

-Updated CMake to use C++ 14
-Removed cmsis makefile include from tensorflow.cmake
-Documentation update
-Added more flags for processor in CMake

Change-Id: I1c2b72141e98a5cf8bb09176d7c331da3b05b4c5
diff --git a/scripts/cmake/bare-metal-sources.cmake b/scripts/cmake/bare-metal-sources.cmake
index c797d5f..98030d5 100644
--- a/scripts/cmake/bare-metal-sources.cmake
+++ b/scripts/cmake/bare-metal-sources.cmake
@@ -183,7 +183,7 @@
 
 set(COMPILER_FLAGS              "${TENSORFLOW_LITE_MICRO_FLAG} ${PROFILING_OPT} ${OPTIONAL_FLAGS}")
 # For some reason, cmake doesn't pass the c++ standard flag, adding it manually
-set(CMAKE_CXX_FLAGS             "${COMPILER_FLAGS} -std=c++11" CACHE INTERNAL "")
+set(CMAKE_CXX_FLAGS             "${COMPILER_FLAGS}" CACHE INTERNAL "")
 set(CMAKE_C_FLAGS               "${COMPILER_FLAGS}" CACHE INTERNAL "")
 set(CMAKE_ASM_COMPILE_OBJECT    ${CMAKE_CXX_FLAGS})
 
diff --git a/scripts/cmake/tensorflow.cmake b/scripts/cmake/tensorflow.cmake
index c2906f5..60f191f 100644
--- a/scripts/cmake/tensorflow.cmake
+++ b/scripts/cmake/tensorflow.cmake
@@ -58,7 +58,7 @@
 set(TENSORFLOW_LITE_MICRO_PATH "${TENSORFLOW_SRC_PATH}/tensorflow/lite/micro")
 set(TENSORFLOW_LITE_MICRO_GENDIR ${CMAKE_CURRENT_BINARY_DIR}/tensorflow/)
 
-set(CMSIS_DSP_MAKEFILE_INC ${CMAKE_CURRENT_SOURCE_DIR}/scripts/make/cmsis_dsp.inc)
+
 set(ETHOS_EVAL_TARGET_MAKEFILE_INC ${CMAKE_CURRENT_SOURCE_DIR}/scripts/make/cortex_m_ethos_eval_makefile.inc)
 
 if (TARGET_PLATFORM STREQUAL native)
@@ -127,3 +127,5 @@
 # Create library
 add_library(tensorflow-lite-micro STATIC IMPORTED)
 add_dependencies(tensorflow-lite-micro tensorflow_build)
+set_property(TARGET tensorflow-lite-micro PROPERTY IMPORTED_LOCATION
+             "${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/${TENSORFLOW_LITE_MICRO_PLATFORM_LIB_NAME}")
diff --git a/scripts/cmake/toolchains/bare-metal-armclang.cmake b/scripts/cmake/toolchains/bare-metal-armclang.cmake
index c1f066b..2ac2ac4 100644
--- a/scripts/cmake/toolchains/bare-metal-armclang.cmake
+++ b/scripts/cmake/toolchains/bare-metal-armclang.cmake
@@ -38,12 +38,15 @@
 
 if (CMAKE_SYSTEM_PROCESSOR STREQUAL cortex-m55)
     # Flags for cortex-m55
-    set(CPU_COMPILE_DEF             CPU_CORTEX_M55)
+    set(CPU_ID                      M55)
+    set(CPU_COMPILE_DEF             CPU_CORTEX_${CPU_ID})
     set(CPU_NAME                    ${CMAKE_SYSTEM_PROCESSOR})
+    set(ARM_CPU                     "ARMC${CPU_ID}")
     set(FLOAT_ABI                   hard)
     set(ARM_MATH_DSP                1)
     set(ARM_MATH_LOOPUNROLL         1)
-    set(CPU_LINK_OPT                "--cpu=Cortex-M55")
+    set(CPU_HEADER_FILE             "${ARM_CPU}.h")
+    set(CPU_LINK_OPT                "--cpu=Cortex-${CPU_ID}")
 elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL cortex-m33)
     # Flags for cortex-m33 to go here
 endif()
@@ -74,7 +77,8 @@
 # Compile definitions:
 add_compile_definitions(
     PLATFORM_HAL=${PLATFORM_HAL}
-    ${CPU_COMPILE_DEF}=1
+    CPU_HEADER_FILE=\"${CPU_HEADER_FILE}\"
+    $<$<BOOL:${CPU_COMPILE_DEF}>:${CPU_COMPILE_DEF}>
     $<$<BOOL:${ARM_MATH_DSP}>:ARM_MATH_DSP>
     $<$<BOOL:${ARM_MATH_LOOPUNROLL}>:ARM_MATH_LOOPUNROLL>)
 
diff --git a/scripts/cmake/toolchains/bare-metal-gcc.cmake b/scripts/cmake/toolchains/bare-metal-gcc.cmake
index 2ffc1bb..455f5ec 100644
--- a/scripts/cmake/toolchains/bare-metal-gcc.cmake
+++ b/scripts/cmake/toolchains/bare-metal-gcc.cmake
@@ -36,11 +36,15 @@
 
 if (CMAKE_SYSTEM_PROCESSOR STREQUAL cortex-m55)
     # Flags for cortex-m55
-    set(CPU_COMPILE_DEF             CPU_CORTEX_M55)
+    set(CPU_ID                      M55)
+    set(CPU_COMPILE_DEF             CPU_CORTEX_${CPU_ID})
     set(CPU_NAME                    ${CMAKE_SYSTEM_PROCESSOR})
+    set(ARM_CPU                     "ARMC${CPU_ID}")
     set(FLOAT_ABI                   hard)
     set(ARM_MATH_DSP                1)
     set(ARM_MATH_LOOPUNROLL         1)
+    set(CPU_HEADER_FILE             "${ARM_CPU}.h")
+    set(CPU_LINK_OPT                "--cpu=Cortex-${CPU_ID}")
 elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL cortex-m33)
     # Flags for cortex-m33 to go here
 endif()
@@ -71,7 +75,8 @@
 # Compile definitions:
 add_compile_definitions(
     PLATFORM_HAL=${PLATFORM_HAL}
-    ${CPU_COMPILE_DEF}=1
+    CPU_HEADER_FILE=\"${CPU_HEADER_FILE}\"
+    $<$<BOOL:${CPU_COMPILE_DEF}>:${CPU_COMPILE_DEF}>
     $<$<BOOL:${ARM_MATH_DSP}>:ARM_MATH_DSP>
     $<$<BOOL:${ARM_MATH_LOOPUNROLL}>:ARM_MATH_LOOPUNROLL>)