Skip to content

fix dependancies in CMakeLists.txt for the T tracer

Cédric Roux requested to merge T-compilation-fix-w11 into develop

On some hosts, compilations with the T tracer was failing.

The error was: common/utils/T/T.h:15:19: fatal error: T_IDs.h: No such file or directory

The problem was that in CMakeLists.txt some targets depend on the pre-generation of T_IDs.h but this dependancy relation was not set, so those targets could be generated before the T (it was the case with HASHTABLE).

This commit fixes that. Basically, we take all the targets found in "add_executable" and "add_library" and make them depend on the T if the T is enabled. Almost all existing targets were added, even those that may not need it.

The problem of this approach is that someone adding a new target using the T will not necessarily add a dependancy there.

Another solution would be to generate T_IDs.h at "cmake" stage, not "make" stage and use an "if (NOT EXISTS T_IDs.h)" to generate the file. We lose the dependancy relation though.

Things may be changed if maintenance cost is too high.

Merge request reports