Skip to content
Snippets Groups Projects

Add DetCommon project

Merged Frank Winklmeier requested to merge fwinkl/athena:DetCommon into master

To address the LCG layer issues observed in ATLINFR-3977, we decided to build a separate DetCommon project that can be used by CTP/L1Calo instead of the full athena release (unlike the DetCommon project of SVN days, this is a completely standalone project and Athena will not build against it). Its configuration is mostly a copy of AthDataQuality, i.e. the project does not build a separate externals project (it just does a checkout for the cmake code). The LCG dependency should be kept the same as the corresponding TDAQ release.

The MR also contains a few cmake fixes to packages that are included in its build. I.e. it removes the TrigConf standalone (SA) libraries as there is no need to have separate names now.

cc @akraszna @stelzer @emoyse @elmsheus

Edited by Frank Winklmeier

Merge request reports

Loading
Loading

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • Frank Winklmeier
  • Frank Winklmeier
  • Frank Winklmeier changed the description

    changed the description

  • Attila Krasznahorkay
  • Frank Winklmeier added 115 commits

    added 115 commits

    Compare with previous version

  • Frank Winklmeier added 2 commits

    added 2 commits

    • fde3cdc4 - Add DetCommon project
    • 3291ac9d - TrigConfiguration: cmake fixes for DetCommon project

    Compare with previous version

  • Frank Winklmeier resolved all threads

    resolved all threads

  • mentioned in merge request atlasexternals!822 (merged)

  • Frank Winklmeier added 65 commits

    added 65 commits

    Compare with previous version

    • Resolved by Frank Winklmeier

      Hi Frank,

      I just noticed that you didn't copy

      https://gitlab.cern.ch/atlas/athena/-/blob/master/Projects/AthDataQuality/cmake/skeletons/atlas_export_sanitizer.cmake.in

      into your new DetCommon project. :frowning: You would need a carbon-copy of that file in this project as well.

      I know, I know. The way that LCG dependencies are written into our exported CMake files is kind of messed up. :frowning: We should try to make the whole thing better / more robust at one point. But for now, without a file called skeletons/atlas_export_sanitizer.cmake.in present during the build, the exported configuration comes out as:

      ...
      set_target_properties(DetCommon::CxxUtils PROPERTIES
        INTERFACE_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/src/Control/CxxUtils;${_IMPORT_PREFIX}/\${LCG_RELEASE_BASE}/LCG_98python3/Boost/1.73.0/x86_64-centos7-gcc8-opt/include"
        INTERFACE_LINK_LIBRARIES "\${LCG_RELEASE_BASE}/LCG_98python3/Boost/1.73.0/x86_64-centos7-gcc8-opt/lib/libboost_program_options.so;\${LCG_RELEASE_BASE}/LCG_98python3/Boost/1.73.0/x86_64-centos7-gcc8-opt/lib/libboost_regex.so;\${LCG_RELEASE_BASE}/LCG_98python3/Boost/1.73.0/x86_64-centos7-gcc8-opt/lib/libboost_filesystem.so;\${LCG_RELEASE_BASE}/LCG_98python3/Boost/1.73.0/x86_64-centos7-gcc8-opt/lib/libboost_thread.so;-lpthread;\${LCG_RELEASE_BASE}/LCG_98python3/Boost/1.73.0/x86_64-centos7-gcc8-opt/lib/libboost_system.so;\${LCG_RELEASE_BASE}/LCG_98python3/Boost/1.73.0/x86_64-centos7-gcc8-opt/lib/libboost_timer.so;\${LCG_RELEASE_BASE}/LCG_98python3/Boost/1.73.0/x86_64-centos7-gcc8-opt/lib/libboost_unit_test_framework.so;\${LCG_RELEASE_BASE}/LCG_98python3/Boost/1.73.0/x86_64-centos7-gcc8-opt/lib/libboost_chrono.so;\${LCG_RELEASE_BASE}/LCG_98python3/Boost/1.73.0/x86_64-centos7-gcc8-opt/lib/libboost_date_time.so;\${LCG_RELEASE_BASE}/LCG_98python3/Boost/1.73.0/x86_64-centos7-gcc8-opt/lib/libboost_atomic.so;Threads::Threads;-Wl,--copy-dt-needed-entries"
        INTERFACE_SYSTEM_INCLUDE_DIRECTORIES "\${LCG_RELEASE_BASE}/LCG_98python3/Boost/1.73.0/x86_64-centos7-gcc8-opt/include"
      )
      ...

      Long story short, please add a file with that name to the new DetCommon project. Otherwise client projects won't be able to build against it.

      Cheers, Attila

  • Frank Winklmeier added 2 commits

    added 2 commits

    • 6b9c7975 - Add DetCommon project
    • 1d9246aa - TrigConfiguration: cmake fixes for DetCommon project

    Compare with previous version

  • Frank Winklmeier resolved all threads

    resolved all threads

  • Frank Winklmeier marked this merge request as ready

    marked this merge request as ready

  • This merge request affects 4 packages:

    • Projects/DetCommon
    • Trigger/TrigConfiguration/TrigConfData
    • Trigger/TrigConfiguration/TrigConfIO
    • Trigger/TrigConfiguration/TrigConfStorage

    Affected files list will not be printed in this case

    Adding @orlando ,@cmorenom ,@mark ,@akraszna ,@asonay as watchers

  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Please register or sign in to reply
    Loading