mirror of
https://github.com/FairRootGroup/FairMQ.git
synced 2025-10-13 16:46:47 +00:00
Support BUILD_SHARED_LIBS flag
https://cmake.org/cmake/help/v3.0/variable/BUILD_SHARED_LIBS.html
This commit is contained in:
parent
adfa0e2c95
commit
60f27b94b2
|
@ -123,8 +123,14 @@ macro(set_fairmq_defaults)
|
||||||
endif()
|
endif()
|
||||||
set(CMAKE_CXX_EXTENSIONS OFF)
|
set(CMAKE_CXX_EXTENSIONS OFF)
|
||||||
|
|
||||||
|
if(NOT BUILD_SHARED_LIBS)
|
||||||
|
set(BUILD_SHARED_LIBS ON CACHE BOOL "Whether to build shared libraries or static archives")
|
||||||
|
endif()
|
||||||
|
|
||||||
# Set -fPIC as default for all library types
|
# Set -fPIC as default for all library types
|
||||||
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
|
if(NOT CMAKE_POSITION_INDEPENDENT_CODE)
|
||||||
|
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
|
||||||
|
endif()
|
||||||
|
|
||||||
# Generate compile_commands.json file (https://clang.llvm.org/docs/JSONCompilationDatabase.html)
|
# Generate compile_commands.json file (https://clang.llvm.org/docs/JSONCompilationDatabase.html)
|
||||||
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
|
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
|
||||||
|
|
|
@ -195,7 +195,7 @@ if(FAST_BUILD)
|
||||||
else()
|
else()
|
||||||
set(_target FairMQ)
|
set(_target FairMQ)
|
||||||
endif()
|
endif()
|
||||||
add_library(${_target} SHARED
|
add_library(${_target}
|
||||||
${FAIRMQ_SOURCE_FILES}
|
${FAIRMQ_SOURCE_FILES}
|
||||||
${FAIRMQ_PUBLIC_HEADER_FILES} # for IDE integration
|
${FAIRMQ_PUBLIC_HEADER_FILES} # for IDE integration
|
||||||
${FAIRMQ_PRIVATE_HEADER_FILES} # for IDE integration
|
${FAIRMQ_PRIVATE_HEADER_FILES} # for IDE integration
|
||||||
|
@ -237,7 +237,7 @@ target_link_libraries(${_target}
|
||||||
PUBLIC # libFairMQ AND consumers of libFairMQ link aginst public dependencies
|
PUBLIC # libFairMQ AND consumers of libFairMQ link aginst public dependencies
|
||||||
Threads::Threads
|
Threads::Threads
|
||||||
dl
|
dl
|
||||||
rt
|
$<$<PLATFORM_ID:Linux>:rt>
|
||||||
Boost::boost
|
Boost::boost
|
||||||
Boost::program_options
|
Boost::program_options
|
||||||
Boost::thread
|
Boost::thread
|
||||||
|
@ -301,7 +301,7 @@ target_link_libraries(runConfigExample FairMQ)
|
||||||
add_executable(fairmq-shmmonitor shmem/Monitor.cxx shmem/Monitor.h shmem/runMonitor.cxx)
|
add_executable(fairmq-shmmonitor shmem/Monitor.cxx shmem/Monitor.h shmem/runMonitor.cxx)
|
||||||
target_link_libraries(fairmq-shmmonitor PUBLIC
|
target_link_libraries(fairmq-shmmonitor PUBLIC
|
||||||
Threads::Threads
|
Threads::Threads
|
||||||
rt
|
$<$<PLATFORM_ID:Linux>:rt>
|
||||||
Boost::boost
|
Boost::boost
|
||||||
Boost::date_time
|
Boost::date_time
|
||||||
Boost::program_options
|
Boost::program_options
|
||||||
|
@ -332,6 +332,7 @@ install(
|
||||||
EXPORT ${PROJECT_EXPORT_SET}
|
EXPORT ${PROJECT_EXPORT_SET}
|
||||||
RUNTIME DESTINATION ${PROJECT_INSTALL_BINDIR}
|
RUNTIME DESTINATION ${PROJECT_INSTALL_BINDIR}
|
||||||
LIBRARY DESTINATION ${PROJECT_INSTALL_LIBDIR}
|
LIBRARY DESTINATION ${PROJECT_INSTALL_LIBDIR}
|
||||||
|
ARCHIVE DESTINATION ${PROJECT_INSTALL_LIBDIR}
|
||||||
)
|
)
|
||||||
|
|
||||||
# preserve relative path and prepend fairmq
|
# preserve relative path and prepend fairmq
|
||||||
|
|
Loading…
Reference in New Issue
Block a user