xref: /aosp_15_r20/external/armnn/src/backends/backendsCommon/CMakeLists.txt (revision 89c4ff92f2867872bb9e2354d150bf0c8c502810)
1#
2# Copyright © 2017-2023 Arm Ltd and Contributors. All rights reserved.
3# SPDX-License-Identifier: MIT
4#
5
6if(NOT BUILD_BARE_METAL AND NOT EXECUTE_NETWORK_STATIC)
7list(APPEND armnnBackendsCommon_sources
8    DynamicBackend.cpp
9    DynamicBackend.hpp
10    DynamicBackendUtils.cpp
11    DynamicBackendUtils.hpp
12)
13endif()
14
15list(APPEND armnnBackendsCommon_sources
16    IBackendContext.hpp
17    IBackendInternal.cpp
18    IMemoryManager.hpp
19    ITensorHandle.hpp
20    ITensorHandleFactory.cpp
21    ITensorHandleFactory.hpp
22    LayerSupportBase.cpp
23    LayerSupportBase.hpp
24    LayerSupportRules.hpp
25    MakeWorkloadHelper.hpp
26    MapWorkload.cpp
27    MapWorkload.hpp
28    MemCopyWorkload.cpp
29    MemImportWorkload.cpp
30    MemImportWorkload.hpp
31    MemoryManager.cpp
32    MemoryManager.hpp
33    MemSyncWorkload.cpp
34    MemSyncWorkload.hpp
35    OptimizationViews.cpp
36    OptimizationViews.hpp
37    TensorHandle.cpp
38    TensorHandleFactoryRegistry.cpp
39    TensorHandleFactoryRegistry.hpp
40    UnmapWorkload.cpp
41    UnmapWorkload.hpp
42    WorkloadDataCollector.hpp
43    WorkloadData.cpp
44    WorkloadFactory.cpp
45    WorkloadFactoryBase.hpp
46    WorkloadInfo.hpp
47    WorkloadUtils.cpp
48    WorkloadUtils.hpp
49)
50
51add_subdirectory(memoryOptimizerStrategyLibrary)
52
53if(BUILD_UNIT_TESTS)
54    add_subdirectory(test)
55endif()
56
57add_library(armnnBackendsCommon OBJECT ${armnnBackendsCommon_sources})
58target_include_directories(armnnBackendsCommon PRIVATE ${PROJECT_SOURCE_DIR}/include/armnn/backends)
59target_include_directories(armnnBackendsCommon PRIVATE ${PROJECT_SOURCE_DIR}/src/armnn)
60target_include_directories(armnnBackendsCommon PRIVATE ${PROJECT_SOURCE_DIR}/src/armnnUtils)
61target_include_directories(armnnBackendsCommon PRIVATE ${PROJECT_SOURCE_DIR}/src/backends)
62target_include_directories(armnnBackendsCommon PRIVATE ${PROJECT_SOURCE_DIR}/src/profiling)
63target_include_directories(armnnBackendsCommon PRIVATE ${PROJECT_SOURCE_DIR}/profiling/common/include)
64target_include_directories(armnnBackendsCommon PRIVATE ${PROJECT_SOURCE_DIR}/profiling/client/include)
65