IVGCVSW-7031 Generate static execute network
* Build ExecNet lib dependencies as object libs except libarmnn
* Disable PIPE when building static ExecNet
* Remove multiple definition from AsyncExecutionCallback
* Disable DynamicBackend for ExecNet Static build
* Disable inference tests for TfLiteParser and ONNX during static ExecNet
* Remove Tensorflow Parser if condition
* Add Disable thread macro to InferenceModel
* Don't compile dynamic backend symbols in Runtime.cpp for Baremetal and
Exenet Static
Signed-off-by: Ryan OShea <ryan.oshea3@arm.com>
Change-Id: If41c063eab5f05b3df0a6e064924a36a177f116a
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 51c4cf2..476e080 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,5 +1,5 @@
#
-# Copyright © 2018-2022 Arm Ltd and Contributors. All rights reserved.
+# Copyright © 2018-2023 Arm Ltd and Contributors. All rights reserved.
# Copyright 2020 NXP
# SPDX-License-Identifier: MIT
#
@@ -446,7 +446,7 @@
add_definitions(-DARMNN_TFLITE_DELEGATE)
endif()
-if(BUILD_BARE_METAL)
+if(BUILD_BARE_METAL OR EXECUTE_NETWORK_STATIC)
add_library_ex(armnn STATIC ${armnn_sources})
else()
if (BUILD_SHARED_LIBS)
@@ -484,7 +484,7 @@
target_link_libraries(armnn PUBLIC pipeCommon)
target_link_libraries(armnn PUBLIC pipeClient)
-if(NOT BUILD_BARE_METAL)
+if(NOT BUILD_BARE_METAL AND NOT EXECUTE_NETWORK_STATIC)
target_link_libraries(armnn PUBLIC ${CMAKE_DL_LIBS})
endif()