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 <francis.murtagh@arm.com>
diff --git a/CMakeLists.txt b/CMakeLists.txt
index fc4207b..51c4cf2 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 @@
     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 @@
         list(APPEND unittest_sources $<TARGET_OBJECTS:${lib}>)
     endforeach()
 
-    add_executable(UnitTests ${unittest_sources}  $<TARGET_OBJECTS:armnnUtilsObj>)
+    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 @@
     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 6912640..e54101c 100644
--- a/shim/sl/CMakeLists.txt
+++ b/shim/sl/CMakeLists.txt
@@ -489,9 +489,9 @@
         canonical/SystemPropertiesUtils.hpp
         support_library_service.cpp)
 
-list(APPEND armnn_support_library_sources "$<TARGET_OBJECTS:Armnn::armnnUtilsObj>")
-list(APPEND armnn_support_library_sources "$<TARGET_OBJECTS:Armnn::armnnSerializerObj>")
 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 b7e65ad..8acdafb 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_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}