1# 2# Copyright © 2021, 2023 Arm Ltd and Contributors. All rights reserved. 3# SPDX-License-Identifier: MIT 4# 5 6# armnnTestUtils library provides useful test functions for backend developers. 7set(armnnTestUtils_sources) 8list(APPEND armnnTestUtils_sources 9 ../../include/armnnTestUtils/DataLayoutUtils.hpp 10 ../../include/armnnTestUtils/LayerTestResult.hpp 11 ../../include/armnnTestUtils/MockBackend.hpp 12 ../../include/armnnTestUtils/MockMemoryManager.hpp 13 ../../include/armnnTestUtils/MockTensorHandle.hpp 14 ../../include/armnnTestUtils/PredicateResult.hpp 15 ../../include/armnnTestUtils/TensorCopyUtils.hpp 16 ../../include/armnnTestUtils/WorkloadTestUtils.hpp 17 ../../include/armnnTestUtils/TensorHelpers.hpp 18 ../../include/armnnTestUtils/Version.hpp 19 CreateWorkload.hpp 20 CommonTestUtils.cpp 21 CommonTestUtils.hpp 22 DataTypeUtils.hpp 23 GraphUtils.cpp 24 GraphUtils.hpp 25 MockBackend.cpp 26 MockMemoryManager.cpp 27 MockTensorHandle.cpp 28 MockTensorHandleFactory.cpp 29 TensorCopyUtils.cpp 30 TestUtils.cpp 31 TestUtils.hpp 32 ) 33 34if(NOT BUILD_BARE_METAL AND NOT EXECUTE_NETWORK_STATIC) 35list(APPEND armnnTestUtils_sources 36 UnitTests.cpp 37 UnitTests.hpp 38 ) 39endif() 40 41 42if(BUILD_BARE_METAL) 43 add_library_ex(armnnTestUtils STATIC ${armnnTestUtils_sources}) 44elseif(EXECUTE_NETWORK_STATIC) 45 add_library_ex(armnnTestUtils OBJECT ${armnnTestUtils_sources}) 46else() 47 add_library_ex(armnnTestUtils SHARED ${armnnTestUtils_sources}) 48endif() 49 50set_target_properties(armnnTestUtils PROPERTIES LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}) 51 52target_include_directories(armnnTestUtils 53 PUBLIC 54 $<INSTALL_INTERFACE:include> 55 $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include> 56 PRIVATE 57 ${CMAKE_CURRENT_SOURCE_DIR}/src) 58 59target_include_directories(armnnTestUtils PRIVATE ../armnn) 60target_include_directories(armnnTestUtils PRIVATE ../armnnUtils) 61target_include_directories(armnnTestUtils PRIVATE ../backends) 62target_include_directories(armnnTestUtils PRIVATE ../profiling) 63 64target_link_libraries(armnnTestUtils armnn) 65 66install(TARGETS armnnTestUtils 67 EXPORT armnn-targets 68 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} 69 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} 70 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) 71 72add_library(Armnn::armnnTestUtils ALIAS armnnTestUtils) 73 74set_target_properties(armnnTestUtils PROPERTIES VERSION ${ARMNN_TEST_UTILS_LIB_VERSION} SOVERSION ${ARMNN_TEST_UTILS_LIB_SOVERSION}) 75