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