xref: /aosp_15_r20/external/armnn/profiling/client/src/CMakeLists.txt (revision 89c4ff92f2867872bb9e2354d150bf0c8c502810)
1#
2# Copyright © 2022 Arm Ltd and Contributors. All rights reserved.
3# SPDX-License-Identifier: MIT
4#
5
6    set(pipeClient_sources)
7    list(APPEND pipeClient_sources
8        ActivateTimelineReportingCommandHandler.cpp
9        ActivateTimelineReportingCommandHandler.hpp
10        backends/BackendProfiling.cpp
11        backends/BackendProfiling.hpp
12        backends/IBackendProfiling.cpp
13        BufferManager.cpp
14        BufferManager.hpp
15        CommandHandler.cpp
16        CommandHandler.hpp
17        ConnectionAcknowledgedCommandHandler.cpp
18        ConnectionAcknowledgedCommandHandler.hpp
19        CounterIdMap.cpp
20        DeactivateTimelineReportingCommandHandler.cpp
21        DeactivateTimelineReportingCommandHandler.hpp
22        FileOnlyProfilingConnection.cpp
23        FileOnlyProfilingConnection.hpp
24        Holder.cpp
25        IBufferManager.hpp
26        IConsumer.hpp
27        INotifyBackends.hpp
28        IPacketBuffer.hpp
29        IPeriodicCounterCapture.hpp
30        IProfilingConnectionFactory.hpp
31        IProfilingConnection.hpp
32        IProfilingService.cpp
33        ISendThread.hpp
34        NullProfilingConnection.hpp
35        PacketBuffer.cpp
36        PacketBuffer.hpp
37        PeriodicCounterCapture.cpp
38        PeriodicCounterCapture.hpp
39        PeriodicCounterSelectionCommandHandler.cpp
40        PeriodicCounterSelectionCommandHandler.hpp
41        PerJobCounterSelectionCommandHandler.cpp
42        PerJobCounterSelectionCommandHandler.hpp
43        ProfilingConnectionDumpToFileDecorator.cpp
44        ProfilingConnectionDumpToFileDecorator.hpp
45        ProfilingConnectionFactory.cpp
46        ProfilingConnectionFactory.hpp
47        ProfilingService.cpp
48        ProfilingService.hpp
49        ProfilingStateMachine.cpp
50        ProfilingStateMachine.hpp
51        ProfilingUtils.cpp
52        ProfilingUtils.hpp
53        RegisterBackendCounters.cpp
54        RegisterBackendCounters.hpp
55        RequestCounterDirectoryCommandHandler.cpp
56        RequestCounterDirectoryCommandHandler.hpp
57        SendCounterPacket.cpp
58        SendCounterPacket.hpp
59        SendThread.cpp
60        SendThread.hpp
61        SendTimelinePacket.cpp
62        SendTimelinePacket.hpp
63        SocketProfilingConnection.cpp
64        SocketProfilingConnection.hpp
65        TimelinePacketWriterFactory.cpp
66        TimelinePacketWriterFactory.hpp
67        TimelineUtilityMethods.cpp)
68
69    include_directories(${PROJECT_SOURCE_DIR}/profiling/common/include)
70    include_directories(${PROJECT_SOURCE_DIR}/common/include)
71    include_directories(${PROJECT_SOURCE_DIR}/profiling/client/include)
72    include_directories(${PROJECT_SOURCE_DIR}/client/include)
73
74    # for the moment will only build a static version of this common code
75    # to simplify the build. No extra .so file to deploy to boards etc.
76    add_library_ex(pipeClient STATIC ${pipeClient_sources})
77
78    target_link_libraries(pipeClient pipeCommon)
79
80    target_compile_definitions(pipeClient PRIVATE "ARMNN_COMPILING_DLL")
81
82    # install the target
83    install(
84        TARGETS pipeClient
85        EXPORT  armnn-targets
86        LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
87        ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
88    )
89