diff --git a/DDCore/CMakeLists.txt b/DDCore/CMakeLists.txt index 3ce3fffa772e27d66b7d8ccc22b896fe4cd5be51..9c80a05042ec9cf66fc3519dad7f541098f1ce17 100644 --- a/DDCore/CMakeLists.txt +++ b/DDCore/CMakeLists.txt @@ -2,7 +2,7 @@ cmake_minimum_required(VERSION 2.8.3 FATAL_ERROR) project(DDCore) -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include ${ROOT_INCLUDE_DIR} ${CMAKE_SOURCE_DIR}/DDSegmentation/include ) +include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include ${ROOT_INCLUDE_DIR} ${DDSegmentation_INCLUDE_DIR} ) file(GLOB sources src/*.cpp src/Evaluator/*.cpp src/XML/*.cpp) @@ -22,10 +22,16 @@ else() file(GLOB parser_sources ) endif() +# Find the DDSegmentation libraries +find_library(DDSegmentation_LIBS + NAMES ${DDSegmentation_LIBRARIES} + PATHS ${DDSegmentation_LIBRARY_DIR} +) + file(GLOB headers include/DD4hep/*.h) file(GLOB internal_headers include/DD4hep/objects/*.h) -list(APPEND headers ${CMAKE_SOURCE_DIR}/DDSegmentation/include/DDSegmentation/BitField64.h) -list(APPEND headers ${CMAKE_SOURCE_DIR}/DDSegmentation/include/DDSegmentation/Segmentation.h) +list(APPEND headers ${DDSegmentation_INCLUDE_DIR}/DDSegmentation/BitField64.h) +list(APPEND headers ${DDSegmentation_INCLUDE_DIR}/DDSegmentation/Segmentation.h) list(REMOVE_ITEM headers ${CMAKE_CURRENT_SOURCE_DIR}/include/DD4hep/DetFactoryHelper.h ${CMAKE_CURRENT_SOURCE_DIR}/include/DD4hep/Factories.h ${CMAKE_CURRENT_SOURCE_DIR}/include/DD4hep/Plugins.h @@ -42,7 +48,7 @@ include(DD4hep_XML_setup) add_library(DD4hepCore SHARED ${sources} ${parser_sources} ) -target_link_libraries(DD4hepCore ${ROOT_LIBRARIES} ${XML_LIBRARIES} DDSegmentation Geom Reflex ${libraries}) +target_link_libraries(DD4hepCore ${ROOT_LIBRARIES} ${XML_LIBRARIES} ${DDSegmentation_LIBS} Geom Reflex ${libraries}) add_library(DD4hepPlugins SHARED ${plugin_sources}) target_link_libraries(DD4hepPlugins ${ROOT_LIBRARIES} ${XML_LIBRARIES} DD4hepCore Geom Reflex ${libraries}) diff --git a/DDCore/include/DD4hep/Dictionary.h b/DDCore/include/DD4hep/Dictionary.h index c55722a75bb2f2eb053eaf84062bd418cbc1bb70..3f5941e246efdbd181f8f822632cc66a9baffc04 100644 --- a/DDCore/include/DD4hep/Dictionary.h +++ b/DDCore/include/DD4hep/Dictionary.h @@ -266,6 +266,7 @@ template vector<pair<string, int> >::iterator; #include "DDSegmentation/ProjectiveCylinder.h" #include "DDSegmentation/SegmentationParameter.h" #include "DDSegmentation/TiledLayerSegmentation.h" +typedef DD4hep::DDSegmentation::VolumeID VolumeID; typedef DD4hep::DDSegmentation::CellID CellID; #ifdef __CINT__ diff --git a/DDRec/CMakeLists.txt b/DDRec/CMakeLists.txt index 062dd8590a73b691bfbafdfee78f8e60050d7fbb..2a0ea9dd8ce7fc0dd3093b76cdf3256a02f244a1 100644 --- a/DDRec/CMakeLists.txt +++ b/DDRec/CMakeLists.txt @@ -3,7 +3,7 @@ cmake_minimum_required(VERSION 2.8.0 FATAL_ERROR) project(DDRec) include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include - ${ROOT_INCLUDE_DIR} ${CMAKE_SOURCE_DIR}/DDSegmentation/include + ${DDSegmentation_INCLUDE_DIR} ${ROOT_INCLUDE_DIR} ${CMAKE_SOURCE_DIR}/DDSurfaces/include ${CMAKE_SOURCE_DIR}/DDCore/include) @@ -26,8 +26,14 @@ endif() add_library(DD4hepRec SHARED ${sources} ) +# Find the DDSegmentation libraries +find_library(DDSegmentation_LIBS + NAMES ${DDSegmentation_LIBRARIES} + PATHS ${DDSegmentation_LIBRARY_DIR} +) + if(DD4HEP_WITH_GEAR) - target_link_libraries(DD4hepRec ${ROOT_LIBRARIES} DDSegmentation DD4hepCore Geom Reflex ${libraries} ${GEAR_LIBRARIES} ${GEAR_COMPONENT_LIBRARIES}) + target_link_libraries(DD4hepRec ${ROOT_LIBRARIES} ${DDSegmentation_LIBS} DD4hepCore Geom Reflex ${libraries} ${GEAR_LIBRARIES} ${GEAR_COMPONENT_LIBRARIES}) #------ binary ---------- @@ -39,7 +45,7 @@ if(DD4HEP_WITH_GEAR) ) else() - target_link_libraries(DD4hepRec ${ROOT_LIBRARIES} DDSegmentation DD4hepCore Geom Reflex ${libraries}) + target_link_libraries(DD4hepRec ${ROOT_LIBRARIES} ${DDSegmentation_LIBS} DD4hepCore Geom Reflex ${libraries}) endif(DD4HEP_WITH_GEAR)