dd4hep_add_dictionary
fails when INTERFACE_COMPILE_DEFINITIONS contains COMPILE_LANGUAGE cmake genex
#1239
Closed
1 task done
Labels
Check duplicate issues.
Goal
I have Geant4 compiled with TiMemory profiling (
GEANT4_USE_TIMEMORY=ON
), and I use this Geant4 version to compile DD4hep (DD4HEP_USE_GEANT4=ON
). The compile definitions and options from TiMemory contain$<COMPILE_LANGUAGE:CXX>
generator expressions in their CMake config files. These generator expressions are not accepted in all contexts 1, in particular not in theadd_custom_command
that is used to callrootcling
indd4hep_add_dictionary
2.Operating System and Version
Ubuntu 23.10
compiler
gcc 13.2.0
ROOT Version
6.30.04
DD4hep Version
master c72c530
Reproducer
$ spack install geant4 +timemory ^timemory@develop
$ cmake -Bbuild -S. -DDD4HEP_USE_GEANT4:BOOL=ON -DDD4HEP_DEBUG_CMAKE:BOOL=ON --fresh
This returns the dd4hep-configure-log.txt The recurring error message is:
Additional context
I've tried a few things, without luck:
$<TARGET_GENEX_EVAL:tgt,expr>
around the relevant expressions, but this still didn't workstring(GENEX_STRIP)
seems too aggressivefile(GENERATE)
to write the command in a script and then call that script: this doesn't evaluate the CMake variablesI think the last option seemed most promising.
The text was updated successfully, but these errors were encountered: