Skip to content
Snippets Groups Projects
user avatar
Raphael Isemann authored
The naming of the library in the two function calls ROOT_GENERATE_DICTIONARY
and ROOT_LINKER_LIBRARY was often not matching. This causes that
ROOT_LINKER_LIBRARY couldn't correctly set its dependencies to the output
file of ROOT_GENERATE_DICTIONARY and therefore causes race conditions in
the build system.

Note: We're attached all dependencies to a custom target, and
NOT to the output files generated by rootcling. This should mitigate
the race conditions we experience when multiple targets in different
Make jobs request the same output file as a dependency and then
suffer from this Make problem that is described here:
https://cmake.org/Bug/view.php?id=10082

This patch also adds a (commented out) piece of code that can print
warnings if we don't have a fitting G__*.cxx file for a
ROOT_LINKER_LIBRARY call. This is sometimes intended, so I didn't
enable this warning by default. We should enable this code
by default in the future once we have a way to express if we
intentionally don't provide the G__*.cxx file when calling
ROOT_LINKER_LIBRARY.
82ecb5f0
History
Name Last commit Last update
..