Refactor message_handler app to be more test friendly
Fix importing indexed models, the inclusion of header files was not
working.
Change-Id: Idab7e002abc31f57acc4eda6a2f1cf2defdfd5c4
diff --git a/applications/message_handler/CMakeLists.txt b/applications/message_handler/CMakeLists.txt
index 040b27d..8d4ef54 100644
--- a/applications/message_handler/CMakeLists.txt
+++ b/applications/message_handler/CMakeLists.txt
@@ -21,27 +21,6 @@
return()
endif()
-set(MESSAGE_HANDLER_ARENA_SIZE 2000000 CACHE STRING "Total size of all message handler tensor arenas")
-set(MESSAGE_HANDLER_MODEL_0 FALSE CACHE STRING "Path to built in model 0")
-set(MESSAGE_HANDLER_MODEL_1 FALSE CACHE STRING "Path to built in model 1")
-set(MESSAGE_HANDLER_MODEL_2 FALSE CACHE STRING "Path to built in model 2")
-set(MESSAGE_HANDLER_MODEL_3 FALSE CACHE STRING "Path to built in model 3")
-
-ethosu_add_executable(message_handler
- SOURCES
- main.cpp
- message_handler.cpp
- message_queue.cpp
- LIBRARIES
- cmsis_device
- $<$<TARGET_EXISTS:ethosu_core_driver>:ethosu_core_driver>
- ethosu_mailbox
- freertos_kernel
- inference_process)
-
-target_include_directories(message_handler PRIVATE
- ${LINUX_DRIVER_STACK_PATH}/kernel)
-
# Split total tensor arena equally for each NPU
if (TARGET ethosu_core_driver AND ETHOSU_TARGET_NPU_COUNT GREATER 0)
set(NUM_ARENAS ${ETHOSU_TARGET_NPU_COUNT})
@@ -49,8 +28,27 @@
set(NUM_ARENAS 1)
endif()
+set(MESSAGE_HANDLER_ARENA_SIZE 2000000 CACHE STRING "Total size of all message handler tensor arenas")
math(EXPR TENSOR_ARENA_SIZE "${MESSAGE_HANDLER_ARENA_SIZE} / ${NUM_ARENAS}")
+add_subdirectory(lib)
+
+set(MESSAGE_HANDLER_MODEL_0 "" CACHE STRING "Path to built in model 0")
+set(MESSAGE_HANDLER_MODEL_1 "" CACHE STRING "Path to built in model 1")
+set(MESSAGE_HANDLER_MODEL_2 "" CACHE STRING "Path to built in model 2")
+set(MESSAGE_HANDLER_MODEL_3 "" CACHE STRING "Path to built in model 3")
+
+ethosu_add_executable(message_handler
+ SOURCES
+ main.cpp
+ LIBRARIES
+ message_handler_lib
+ freertos_kernel)
+
+target_include_directories(message_handler PRIVATE
+ indexed_networks
+ ${LINUX_DRIVER_STACK_PATH}/kernel)
+
target_compile_definitions(message_handler PRIVATE
TENSOR_ARENA_SIZE=${TENSOR_ARENA_SIZE}
$<$<BOOL:${MESSAGE_HANDLER_MODEL_0}>:MODEL_0=${MESSAGE_HANDLER_MODEL_0}>