Skip to content

Commit

Permalink
feat: Drop public bundled dependency to asio
Browse files Browse the repository at this point in the history
  • Loading branch information
dennisklein committed Jul 16, 2021
1 parent 1007de8 commit 0c4921d
Show file tree
Hide file tree
Showing 8 changed files with 5 additions and 67 deletions.
3 changes: 0 additions & 3 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
[submodule "extern/googletest"]
path = extern/googletest
url = https://github.com/google/googletest
[submodule "extern/asio"]
path = extern/asio
url = https://github.com/FairRootGroup/asio
[submodule "extern/PicoSHA2"]
path = extern/PicoSHA2
url = https://github.com/okdshin/PicoSHA2
Expand Down
5 changes: 0 additions & 5 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -121,11 +121,6 @@ if(BUILD_DOCS)
DESTINATION ${PROJECT_INSTALL_DATADIR}/docs
)
endif()
if(BUILD_FAIRMQ OR BUILD_SDK)
if(asio_BUNDLED)
install_bundled(asio)
endif()
endif()

include(FairMQPackage)
install_cmake_package()
Expand Down
46 changes: 0 additions & 46 deletions cmake/FairMQBundlePackageHelper.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -71,16 +71,6 @@ function(build_bundled package bundle)
)
exec(${CMAKE_COMMAND} --build ${${package}_BINARY_DIR})
exec(${CMAKE_COMMAND} --build ${${package}_BINARY_DIR} --target install)
elseif(${package} STREQUAL asio)
set(${package}_INSTALL_DIR ${CMAKE_BINARY_DIR}/${bundle}_install)
file(MAKE_DIRECTORY ${${package}_INSTALL_DIR})
set(${package}_PREFIX ${${package}_INSTALL_DIR})

exec(${CMAKE_COMMAND} -S ${${package}_SOURCE_DIR} -B ${${package}_BINARY_DIR} -G ${CMAKE_GENERATOR}
-DCMAKE_INSTALL_PREFIX=${${package}_INSTALL_DIR}
)
exec(${CMAKE_COMMAND} --build ${${package}_BINARY_DIR})
exec(${CMAKE_COMMAND} --build ${${package}_BINARY_DIR} --target install)
elseif(${package} STREQUAL FairCMakeModules)
set(${package}_INSTALL_DIR ${CMAKE_BINARY_DIR}/${bundle}_install)
file(MAKE_DIRECTORY ${${package}_INSTALL_DIR})
Expand All @@ -100,39 +90,3 @@ function(build_bundled package bundle)

message(STATUS "Building bundled ${package} - done")
endfunction()

# TODO Eventually retire supporting PUBLIC bundled packages.
macro(install_bundled package)
if(${package} STREQUAL asio)
add_library(bundled_asio_headers INTERFACE)
target_include_directories(bundled_asio_headers INTERFACE
$<BUILD_INTERFACE:${asio_ROOT}/${CMAKE_INSTALL_INCLUDEDIR}>
$<INSTALL_INTERFACE:${PROJECT_INSTALL_INCDIR}/bundled>
)
install(TARGETS bundled_asio_headers EXPORT ${PROJECT_EXPORT_SET})
install(DIRECTORY "${asio_ROOT}/${CMAKE_INSTALL_INCLUDEDIR}/asio"
DESTINATION ${PROJECT_INSTALL_INCDIR}/bundled
)
install(FILES "${asio_ROOT}/${CMAKE_INSTALL_INCLUDEDIR}/asio.hpp"
DESTINATION ${PROJECT_INSTALL_INCDIR}/bundled
)
endif()
endmacro()

# TODO Eventually retire supporting PUBLIC bundled packages.
function(fairmq_generate_bundled_packages)
if(asio_BUNDLED)
set(BUNDLED_PACKAGES "\
####### Expanded from @BUNDLED_PACKAGES@ by configure_package_config_file() #########
if(\"\${CMAKE_MAJOR_VERSION}.\${CMAKE_MINOR_VERSION}\" VERSION_LESS 3.11)
message(FATAL_ERROR \"CMake >= 3.11 required\")
endif()
set_target_properties(${PROJECT_NAME}::bundled_asio_headers PROPERTIES IMPORTED_GLOBAL TRUE)
add_library(asio::asio ALIAS ${PROJECT_NAME}::bundled_asio_headers)
set(asio_VERSION ${asio_VERSION})
")
endif()
set(BUNDLED_PACKAGES ${BUNDLED_PACKAGES} PARENT_SCOPE)
endfunction()
2 changes: 0 additions & 2 deletions cmake/FairMQConfig.cmake.in
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,4 @@ set(CMAKE_MODULE_PATH ${@PROJECT_NAME@_CMAKEMODDIR} ${CMAKE_MODULE_PATH})
### Import targets
include(@PACKAGE_CMAKE_INSTALL_PREFIX@/@PACKAGE_INSTALL_DESTINATION@/@PROJECT_EXPORT_SET@.cmake)

@BUNDLED_PACKAGES@

@PACKAGE_COMPONENTS@
11 changes: 4 additions & 7 deletions cmake/FairMQDependencies.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -42,13 +42,10 @@ if(BUILD_FAIRMQ OR BUILD_SDK)
find_package2(PUBLIC Boost REQUIRED VERSION 1.66
COMPONENTS container program_options filesystem date_time regex
)
set(__asio_version 1.18.1)
find_package2(BUNDLED asio VERSION ${__asio_version})
if(NOT asio_FOUND AND NOT asio_BUNDLED)
build_bundled(asio extern/asio)
find_package2(BUNDLED asio REQUIRED VERSION ${__asio_version})
endif()
unset(__asio_version)
endif()

if(BUILD_OFI_TRANSPORT OR BUILD_SDK OR BUILD_DDS_PLUGIN)
find_package2(PUBLIC asio REQUIRED VERSION 1.18)
endif()

if(BUILD_FAIRMQ)
Expand Down
1 change: 0 additions & 1 deletion cmake/FairMQPackage.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,6 @@ macro(install_cmake_package)
)
fair_generate_package_dependencies() # fills ${PACKAGE_DEPENDENCIES}
generate_package_components() # fills ${PACKAGE_COMPONENTS}
fairmq_generate_bundled_packages() # fills ${BUNDLED_PACKAGES}
string(TOUPPER ${CMAKE_BUILD_TYPE} PROJECT_BUILD_TYPE_UPPER)
set(PROJECT_CXX_FLAGS ${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_${PROJECT_BUILD_TYPE_UPPER}})
configure_package_config_file(
Expand Down
1 change: 0 additions & 1 deletion extern/asio
Submodule asio deleted from fdabf9
3 changes: 1 addition & 2 deletions fairmq/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -59,8 +59,6 @@ if(BUILD_FAIRMQ OR BUILD_SDK)
FairLogger::FairLogger
Threads::Threads
Boost::boost
PUBLIC
asio::asio
)
set_target_properties(${target} PROPERTIES
VERSION ${PROJECT_VERSION}
Expand Down Expand Up @@ -298,6 +296,7 @@ if(BUILD_FAIRMQ)
##################
if(BUILD_OFI_TRANSPORT)
set(OFI_DEPS
asio::asio
asiofi::asiofi
)
endif()
Expand Down

0 comments on commit 0c4921d

Please sign in to comment.