mirror of
https://github.com/FairRootGroup/FairMQ.git
synced 2025-10-13 08:41:16 +00:00
Require msgpack 3.1.0
Since 3.1.0 msgpack ships a proper CMake package exporting a target for the header-only C++ library. Allows us to get rid of our custom find module.
This commit is contained in:
parent
76aeb2c7e6
commit
c02fbed331
|
@ -43,17 +43,6 @@ if(FAST_BUILD)
|
|||
include(cotire)
|
||||
endif()
|
||||
|
||||
macro(find_msgpack)
|
||||
if(NOT msgpack_FOUND)
|
||||
find_package2(PRIVATE msgpack VERSION 3.0.0)
|
||||
set(PROJECT_msgpack_VERSION 2.1.5)
|
||||
if(NOT msgpack_FOUND)
|
||||
find_package2(PRIVATE msgpack VERSION 2.1.5 REQUIRED)
|
||||
endif()
|
||||
set(msgpack_ROOT ${PACKAGE_PREFIX_DIR})
|
||||
endif()
|
||||
endmacro()
|
||||
|
||||
set(CMAKE_THREAD_PREFER_PTHREAD TRUE)
|
||||
set(THREADS_PREFER_PTHREAD_FLAG TRUE)
|
||||
find_package(Threads REQUIRED)
|
||||
|
@ -69,12 +58,7 @@ endif()
|
|||
if(BUILD_NANOMSG_TRANSPORT)
|
||||
find_package2(PRIVATE nanomsg REQUIRED)
|
||||
set(PROJECT_nanomsg_VERSION 1.1.3) # Once upstream releases 1.1.5, we should bump again and use version check
|
||||
find_package2(PRIVATE msgpack VERSION 3.0.0)
|
||||
set(PROJECT_msgpack_VERSION 2.1.5)
|
||||
if(NOT msgpack_FOUND)
|
||||
find_package2(PRIVATE msgpack VERSION 2.1.5 REQUIRED)
|
||||
endif()
|
||||
set(msgpack_ROOT ${PACKAGE_PREFIX_DIR})
|
||||
find_package2(PRIVATE msgpack VERSION 3.1.0 REQUIRED)
|
||||
endif()
|
||||
|
||||
if(BUILD_OFI_TRANSPORT)
|
||||
|
@ -232,7 +216,8 @@ if(PROJECT_PACKAGE_DEPENDENCIES)
|
|||
elseif(${dep} STREQUAL GTest)
|
||||
get_filename_component(prefix ${GTEST_INCLUDE_DIRS}/.. ABSOLUTE)
|
||||
elseif(${dep} STREQUAL msgpack)
|
||||
set(prefix ${msgpack_ROOT})
|
||||
get_target_property(msgpack_include msgpackc-cxx INTERFACE_INCLUDE_DIRECTORIES)
|
||||
get_filename_component(prefix ${msgpack_include}/.. ABSOLUTE)
|
||||
elseif(${dep} STREQUAL OFI)
|
||||
get_filename_component(prefix ${${dep}_INCLUDE_DIRS}/.. ABSOLUTE)
|
||||
elseif(${dep} STREQUAL Doxygen)
|
||||
|
|
|
@ -1,46 +0,0 @@
|
|||
################################################################################
|
||||
# Copyright (C) 2018 GSI Helmholtzzentrum fuer Schwerionenforschung GmbH #
|
||||
# #
|
||||
# This software is distributed under the terms of the #
|
||||
# GNU Lesser General Public Licence (LGPL) version 3, #
|
||||
# copied verbatim in the file "LICENSE" #
|
||||
################################################################################
|
||||
|
||||
unset(_args)
|
||||
|
||||
if(msgpack_FIND_VERSION)
|
||||
list(APPEND _args ${msgpack_FIND_VERSION})
|
||||
endif()
|
||||
|
||||
if(msgpack_FIND_EXACT)
|
||||
list(APPEND _args "EXACT")
|
||||
endif()
|
||||
|
||||
if(msgpack_FIND_QUIETLY)
|
||||
list(APPEND _args "QUIET")
|
||||
endif()
|
||||
|
||||
if(msgpack_FIND_REQUIRED)
|
||||
list(APPEND _args "REQUIRED")
|
||||
endif()
|
||||
|
||||
if(msgpack_FIND_COMPONENTS)
|
||||
list(APPEND _args "COMPONENTS" ${msgpack_FIND_COMPONENTS})
|
||||
endif()
|
||||
|
||||
find_package(msgpack ${_args} CONFIG)
|
||||
|
||||
if(msgpack_FOUND AND NOT TARGET msgpack::msgpack)
|
||||
# config mode find_package does not set $msgpack_ROOT, workaround by extracting
|
||||
# root path from library target
|
||||
unset(_msgpack_lib)
|
||||
unset(_prefix)
|
||||
get_target_property(_msgpack_lib msgpackc INTERFACE_LOCATION)
|
||||
get_filename_component(_prefix ${_msgpack_lib} DIRECTORY)
|
||||
get_filename_component(_prefix ${_prefix}/.. ABSOLUTE)
|
||||
|
||||
add_library(msgpack::msgpack INTERFACE IMPORTED)
|
||||
set_target_properties(msgpack::msgpack PROPERTIES
|
||||
INTERFACE_INCLUDE_DIRECTORIES "${_prefix}/include"
|
||||
)
|
||||
endif()
|
|
@ -222,7 +222,7 @@ target_include_directories(${_target}
|
|||
# link libraries #
|
||||
##################
|
||||
if(BUILD_NANOMSG_TRANSPORT)
|
||||
set(NANOMSG_DEPS nanomsg msgpack::msgpack)
|
||||
set(NANOMSG_DEPS nanomsg msgpackc-cxx)
|
||||
endif()
|
||||
if(BUILD_OFI_TRANSPORT)
|
||||
set(OFI_DEPS OFI::libfabric protobuf::libprotobuf $<TARGET_OBJECTS:OfiTransport>)
|
||||
|
|
Loading…
Reference in New Issue
Block a user