From 6f86b69989de2469c0d7cac4c685cd081e6cf812 Mon Sep 17 00:00:00 2001 From: Sadik Armagan Date: Mon, 9 Mar 2020 11:04:32 +0000 Subject: [PATCH] IVGCVSW-4540 Fix master build failure to link UnitTests on Android Change-Id: I22148a0bf243eabfd045475644510f30096d96e3 Signed-off-by: Jim Flynn Signed-off-by: Sadik Armagan --- CMakeLists.txt | 13 +++++++++++-- cmake/GlobalConfig.cmake | 1 + src/timelineDecoder/CMakeLists.txt | 34 +++++++++++++++++++++------------- 3 files changed, 33 insertions(+), 15 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 046ef83..8d63e43 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -868,10 +868,15 @@ if(BUILD_UNIT_TESTS) if(BUILD_GATORD_MOCK) list(APPEND unittest_sources tests/profiling/gatordmock/tests/GatordMockTests.cpp - src/timelineDecoder/tests/TimelineTests.cpp ) endif() + if(BUILD_TIMELINE_DECODER) + list(APPEND unittest_sources + src/timelineDecoder/tests/TimelineTests.cpp + ) + endif() + foreach(lib ${armnnUnitTestLibraries}) message(STATUS "Adding object library dependency to UnitTests: ${lib}") list(APPEND unittest_sources $) @@ -882,6 +887,7 @@ if(BUILD_UNIT_TESTS) target_include_directories(UnitTests PRIVATE src/armnnUtils) target_include_directories(UnitTests PRIVATE src/backends) target_include_directories(UnitTests PRIVATE src/profiling) + target_include_directories(UnitTests PRIVATE src/timelineDecoder) if(VALGRIND_FOUND) if(HEAP_PROFILING OR LEAK_CHECKING) @@ -904,6 +910,9 @@ if(BUILD_UNIT_TESTS) if(BUILD_GATORD_MOCK) target_link_libraries(UnitTests gatordMockService) + endif() + + if(BUILD_TIMELINE_DECODER) target_link_libraries(UnitTests timelineDecoder) endif() @@ -990,7 +999,7 @@ if(BUILD_GATORD_MOCK) tests/profiling/gatordmock/StreamMetadataCommandHandler.hpp ) - include_directories(src/timelineDecoder src/profiling tests/profiling tests/profiling/gatordmock) + include_directories(src/profiling tests/profiling tests/profiling/gatordmock) add_library_ex(gatordMockService STATIC ${gatord_mock_sources}) target_include_directories(gatordMockService PRIVATE src/armnnUtils) diff --git a/cmake/GlobalConfig.cmake b/cmake/GlobalConfig.cmake index 1fb86e9..f4e4ad5 100644 --- a/cmake/GlobalConfig.cmake +++ b/cmake/GlobalConfig.cmake @@ -22,6 +22,7 @@ option(TF_LITE_GENERATED_PATH "Tensorflow lite generated C++ schema location" OF option(FLATBUFFERS_ROOT "Location where the flatbuffers 'include' and 'lib' folders to be found" Off) option(DYNAMIC_BACKEND_PATHS "Colon seperated list of paths where to load the dynamic backends from" "") option(BUILD_GATORD_MOCK "Build the Gatord simulator for external profiling testing." ON) +option(BUILD_TIMELINE_DECODER "Build the Timeline Decoder for external profiling." ON) option(SHARED_BOOST "Use dynamic linking for boost libraries" OFF) include(SelectLibraryConfigurations) diff --git a/src/timelineDecoder/CMakeLists.txt b/src/timelineDecoder/CMakeLists.txt index 6b8517a..e34fae7 100644 --- a/src/timelineDecoder/CMakeLists.txt +++ b/src/timelineDecoder/CMakeLists.txt @@ -3,19 +3,27 @@ # SPDX-License-Identifier: MIT # -set(timelineDecoder_sources) -list(APPEND timelineDecoder_sources - ../../include/armnn/profiling/ITimelineDecoder.hpp - TimelineCaptureCommandHandler.cpp - TimelineCaptureCommandHandler.hpp - TimelineDecoder.cpp - TimelineDecoder.hpp - TimelineDirectoryCaptureCommandHandler.cpp - TimelineDirectoryCaptureCommandHandler.hpp - ) +if(BUILD_TIMELINE_DECODER) + set(timelineDecoder_sources) + list(APPEND timelineDecoder_sources + ../../include/armnn/profiling/ITimelineDecoder.hpp + TimelineCaptureCommandHandler.cpp + TimelineCaptureCommandHandler.hpp + TimelineDecoder.cpp + TimelineDecoder.hpp + TimelineDirectoryCaptureCommandHandler.cpp + TimelineDirectoryCaptureCommandHandler.hpp + ) -include_directories(../timelineDecoder ../profiling) + include_directories(../timelineDecoder ../profiling) + + add_library_ex(timelineDecoder SHARED ${timelineDecoder_sources}) + set_target_properties(timelineDecoder PROPERTIES LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}) + set_target_properties(timelineDecoder PROPERTIES VERSION ${GENERIC_LIB_VERSION} SOVERSION ${GENERIC_LIB_SOVERSION} ) + + install(TARGETS timelineDecoder + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) +endif() -add_library_ex(timelineDecoder SHARED ${timelineDecoder_sources}) -set_target_properties(timelineDecoder PROPERTIES VERSION ${GENERIC_LIB_VERSION} SOVERSION ${GENERIC_LIB_SOVERSION} ) \ No newline at end of file -- 2.7.4