From cb223b7f485a33242fb9b18bc404bb33c29107e4 Mon Sep 17 00:00:00 2001 From: Francis Murtagh Date: Tue, 13 Dec 2022 17:21:55 +0000 Subject: Github #712: Use static libraries not object libraries for support library * .o files were being installed by cmake. Change-Id: Ie2056e09b4800fe208d784a90f3908d508b8cadf Signed-off-by: Francis Murtagh --- CMakeLists.txt | 13 ++----------- shim/sl/CMakeLists.txt | 4 ++-- src/armnnSerializer/CMakeLists.txt | 15 +++++++-------- 3 files changed, 11 insertions(+), 21 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index fc4207b258..51c4cf2c97 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,5 +1,5 @@ # -# Copyright © 2022 Arm Ltd and Contributors. All rights reserved. +# Copyright © 2018-2022 Arm Ltd and Contributors. All rights reserved. # Copyright 2020 NXP # SPDX-License-Identifier: MIT # @@ -109,7 +109,6 @@ list(APPEND armnnUtils_sources src/armnnUtils/Transpose.cpp ) -add_library(armnnUtilsObj OBJECT ${armnnUtils_sources}) add_library_ex(armnnUtils STATIC ${armnnUtils_sources}) target_include_directories(armnnUtils PRIVATE src/backends) @@ -839,7 +838,7 @@ if(BUILD_UNIT_TESTS) list(APPEND unittest_sources $) endforeach() - add_executable(UnitTests ${unittest_sources} $) + add_executable(UnitTests ${unittest_sources}) target_include_directories(UnitTests PRIVATE src/armnn) target_include_directories(UnitTests PRIVATE src/armnnUtils) target_include_directories(UnitTests PRIVATE src/armnnTestUtils) @@ -1004,14 +1003,6 @@ install( ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} ) -install( - TARGETS armnnUtilsObj - EXPORT armnn-targets - LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} - ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} - OBJECTS DESTINATION ${CMAKE_INSTALL_LIBDIR} -) - #################################################### ## Set export alias set_target_properties(armnn diff --git a/shim/sl/CMakeLists.txt b/shim/sl/CMakeLists.txt index 6912640b1c..e54101c932 100644 --- a/shim/sl/CMakeLists.txt +++ b/shim/sl/CMakeLists.txt @@ -489,9 +489,9 @@ list(APPEND armnn_support_library_sources canonical/SystemPropertiesUtils.hpp support_library_service.cpp) -list(APPEND armnn_support_library_sources "$") -list(APPEND armnn_support_library_sources "$") add_library(armnn_support_library SHARED ${armnn_support_library_sources}) +target_link_libraries(armnn_support_library PUBLIC Armnn::armnnUtils) +target_link_libraries(armnn_support_library PUBLIC Armnn::armnnSerializer-static) target_link_libraries(armnn_support_library PUBLIC Armnn::Armnn) target_link_libraries(armnn_support_library PUBLIC profiling_library_headers) diff --git a/src/armnnSerializer/CMakeLists.txt b/src/armnnSerializer/CMakeLists.txt index b7e65ad090..8acdafbc28 100755 --- a/src/armnnSerializer/CMakeLists.txt +++ b/src/armnnSerializer/CMakeLists.txt @@ -1,5 +1,5 @@ # -# Copyright © 2017 Arm Ltd. All rights reserved. +# Copyright © 2017, 2019-2020, 2022 Arm Ltd and Contributors. All rights reserved. # SPDX-License-Identifier: MIT # if(BUILD_ARMNN_SERIALIZER) @@ -39,34 +39,33 @@ if(BUILD_ARMNN_SERIALIZER) if(BUILD_BARE_METAL) add_library_ex(armnnSerializer STATIC ${armnn_serializer_sources}) else() - # We're going to export both an OBJECT library and a SHARED library here. + # We're going to export both a STATIC library and a SHARED library here. # In some instances it's easier to include the serializer directly into # the target executable or library rather than have yet another .so. - add_library(armnnSerializerObj OBJECT ${armnn_serializer_sources}) + add_library(armnnSerializer-static STATIC ${armnn_serializer_sources}) add_library_ex(armnnSerializer SHARED ${armnn_serializer_sources}) endif() include_directories(SYSTEM "${FLATBUFFERS_INCLUDE_PATH}") set_target_properties(armnnSerializer PROPERTIES LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}) - target_include_directories(armnnSerializerObj PRIVATE ../armnn) - target_include_directories(armnnSerializerObj PRIVATE ../armnnUtils) target_include_directories(armnnSerializer PRIVATE ../armnn) target_include_directories(armnnSerializer PRIVATE ../armnnUtils) target_include_directories(armnnSerializer PRIVATE ../../generated) - target_include_directories(armnnSerializerObj PRIVATE ../../generated) + target_include_directories(armnnSerializer-static PRIVATE ../armnn) + target_include_directories(armnnSerializer-static PRIVATE ../armnnUtils) + target_include_directories(armnnSerializer-static PRIVATE ../../generated) list(APPEND armnn_serializer_sources ArmnnSchema_generated.h ) # System include to suppress warnings for flatbuffers generated files - target_include_directories(armnnSerializerObj SYSTEM PRIVATE ${CMAKE_CURRENT_BINARY_DIR}) target_include_directories(armnnSerializer SYSTEM PRIVATE ${CMAKE_CURRENT_BINARY_DIR}) target_link_libraries(armnnSerializer armnn ${FLATBUFFERS_LIBRARY}) - install(TARGETS armnnSerializerObj + install(TARGETS armnnSerializer-static EXPORT armnn-targets LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} -- cgit v1.2.1