Project

General

Profile

Bug #17189

libart_Version conflict with $ART_VERSION in mrb

Added by Ron Rechenmacher over 2 years ago. Updated over 2 years ago.

Status:
Assigned
Priority:
Normal
Assignee:
Target version:
-
Start date:
07/14/2017
Due date:
% Done:

0%

Estimated time:
16.00 h
Duration:

Description

artdaq depends on art and ups therefore establishes/sets env. var $ART_VERSION.
Additionally, some utilities in artdaq link against libart_Version using cmake
variable art_Version. If we add art to our $MRB_SOURCES, the art_Version cmake
variable seems to get set to the value of the $ART_VERSION env var.

History

#1 Updated by Lynn Garren over 2 years ago

  • Status changed from New to Feedback

Cetbuildtools has been definining <product_lower_case>_VERSION for some time. This is used by various cetbuildtools methods. If artdaq also makes its own definition of art_VERSION, then there is a clear conflict. Is there a reason that you cannot use the definition from cetbuildtools? If not, are you able to change the name of your variable?

#2 Updated by Eric Flumerfelt over 2 years ago

https://cdcvs.fnal.gov/redmine/projects/art/repository/revisions/develop/entry/art/Version/CMakeLists.txt

The problem is that one of our applications is trying to link against the library called libart_Version.so, which in cetbuildtools CMake becomes art_Version in CMakeLists.txt. However, that variable is (as you noted) defined as other things in other places. Outside of mrb, we can put ${ART_LIB}/libart_Version.so in the library list, but this breaks if art is in mrb because ${ART_LIB} is undefined (and we would want CMake to figure out the correct library dependencies anyway).

Any code that calls art::getReleaseVersion outside of the art framework is going to have this issue. We have a workaround in CMake here: https://cdcvs.fnal.gov/redmine/projects/artdaq/repository/entry/test/ArtModules/CMakeLists.txt?rev=feature%2Fshared_memory_manager

#3 Updated by Lynn Garren over 2 years ago

  • Status changed from Feedback to Accepted

Thank you. We will investigate.

#4 Updated by Kyle Knoepfel over 2 years ago

  • Project changed from art to cetbuildtools
  • Status changed from Accepted to Assigned
  • Assignee set to Lynn Garren
  • Estimated time set to 16.00 h


Also available in: Atom PDF