diff --git a/GaudiPluginService/CMakeLists.txt b/GaudiPluginService/CMakeLists.txt index e4856a7a948717cc2a3712cce5841a66f6dcb3da..f036275cb12a1c01d8387edf5d86af97e9d30a5f 100644 --- a/GaudiPluginService/CMakeLists.txt +++ b/GaudiPluginService/CMakeLists.txt @@ -1,7 +1,7 @@ cmake_minimum_required(VERSION 3.3 FATAL_ERROR) project(GaudiPluginService) -find_package(Boost COMPONENTS filesystem REQUIRED) +find_package(Boost COMPONENTS filesystem system REQUIRED) include_directories(${CMAKE_CURRENT_SOURCE_DIR} ${Boost_INCLUDE_DIR}) add_library(DD4hepGaudiPluginMgr SHARED src/PluginServiceV1.cpp src/PluginServiceV2.cpp interface/DD4hepV1.cpp interface/DD4hepV2.cpp) @@ -16,7 +16,7 @@ target_compile_options(DD4hepGaudiPluginMgr PRIVATE -Wno-deprecated) target_compile_options(DD4hepGaudiPluginMgr PRIVATE -Wno-keyword-macro) target_compile_options(DD4hepGaudiPluginMgr PRIVATE -Wno-return-type-c-linkage) -target_link_libraries(DD4hepGaudiPluginMgr ${CMAKE_DL_LIBS} ${Boost_FILESYSTEM_LIBRARY} ) +target_link_libraries(DD4hepGaudiPluginMgr ${CMAKE_DL_LIBS} ${Boost_FILESYSTEM_LIBRARY} ${Boost_SYSTEM_LIBRARY} ) SET_TARGET_PROPERTIES(DD4hepGaudiPluginMgr PROPERTIES VERSION ${DD4hep_VERSION} SOVERSION ${DD4hep_SOVERSION}) if( NOT CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR ) @@ -25,7 +25,7 @@ if( NOT CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR ) endif() add_executable(listcomponents src/listcomponents.cpp ) -target_link_libraries(listcomponents DD4hepGaudiPluginMgr ${CMAKE_DL_LIBS} ${Boost_FILESYSTEM_LIBRARY}) +target_link_libraries(listcomponents DD4hepGaudiPluginMgr ${CMAKE_DL_LIBS} ${Boost_FILESYSTEM_LIBRARY} ${Boost_SYSTEM_LIBRARY} ) target_compile_options(listcomponents PRIVATE -Wno-deprecated) install(TARGETS listcomponents DD4hepGaudiPluginMgr diff --git a/cmake/DD4hep.cmake b/cmake/DD4hep.cmake index 7f45928f9df8fe29c45ed52256629f4c7fb15f26..180fab2b95a4f8c0ec55704985eea8d052e84633 100644 --- a/cmake/DD4hep.cmake +++ b/cmake/DD4hep.cmake @@ -96,12 +96,17 @@ function(dd4hep_generate_rootmap_notapple library) set(libname ${CMAKE_SHARED_MODULE_PREFIX}${library}${CMAKE_SHARED_LIBRARY_SUFFIX}) #message(STATUS "DD4hep_DIR = ${DD4hep_DIR}" ) + + find_package(Boost COMPONENTS filesystem) + GET_FILENAME_COMPONENT(boost_dir ${Boost_FILESYSTEM_LIBRARY} DIRECTORY) + message(STATUS " *** listcomponents: boost_dir: ${boost_dir} " ) add_custom_command(TARGET ${library} POST_BUILD COMMAND ${CMAKE_COMMAND} -Dlibname=${libname} -Drootmapfile=${rootmapfile} -Dgenmap_install_dir=${LIBRARY_OUTPUT_PATH} -DROOT_VERSION=${ROOT_VERSION} -DDD4hep_DIR=${DD4hep_DIR} + -DLD_PATH=${boost_dir} -P ${DD4hep_DIR}/cmake/MakeGaudiMap.cmake) #add_custom_command(OUTPUT ${rootmapfile} diff --git a/cmake/MakeGaudiMap.cmake b/cmake/MakeGaudiMap.cmake index 0301cc7fb255146af4f34a42b2e42bf54afecfde..64ea089cbb7309fe7b129b227e20ff725da2f337 100644 --- a/cmake/MakeGaudiMap.cmake +++ b/cmake/MakeGaudiMap.cmake @@ -7,11 +7,11 @@ message(STATUS " *** Gaudi listcomponents: Generate map for ${libname} ..." ) MESSAGE( STATUS " *** MakeGaudiMap.cmake run command : ${Gaudi_listcomponents_CMD} -o ${rootmapfile} ${libname} WORKING_DIRECTORY ${genmap_install_dir} " ) - + message(STATUS " *** listcomponents: LD_PATH: ${LD_PATH} " ) if(APPLE) - SET ( ENV{DYLD_LIBRARY_PATH} ${genmap_install_dir}:$ENV{DYLD_LIBRARY_PATH}:$ENV{DD4HEP_LIBRARY_PATH}:$ENV{Boost_LIBRARY_DIRS} ) + SET ( ENV{DYLD_LIBRARY_PATH} ${genmap_install_dir}:$ENV{DYLD_LIBRARY_PATH}:$ENV{DD4HEP_LIBRARY_PATH}:${LD_PATH} ) EXECUTE_PROCESS( COMMAND echo DYLD_LIBRARY_PATH = $ENV{DYLD_LIBRARY_PATH} ) - EXECUTE_PROCESS( COMMAND echo Boost_LIBRARY_DIRS = $ENV{Boost_LIBRARY_DIRS} ) + EXECUTE_PROCESS( COMMAND echo LD_PATH = ${LD_PATH} ) else() SET ( ENV{LD_LIBRARY_PATH} ${genmap_install_dir}:$ENV{LD_LIBRARY_PATH} ) #SET ( ENV{LD_PRELOAD} /lib64/libglapi.so )