mirror of https://github.com/mosra/magnum.git
Browse Source
Until now, if Magnum was found with, say,
find_package(Magnum REQUIRED DebugTools)
and then linked with
target_link_libraries(app PRIVATE Magnum::DebugTools)
the Find module correctly looked up also Corrade::PluginManager and
added it as a dependency of Magnum::DebugTools. However, DebugTools
themselves rely on the PluginManager only transitively, through Trade,
and dependency of Trade on the PluginManager isn't specified anywhere.
Which results in CMake happily putting CorradePluginManager earlier on
the linker command line than MagnumTrade, resulting in linker errors.
So instead the logic at the top is only used for finding the Corrade
dependencies, and the direct (non-transitive) dependency association
with a concrete target is done below, along with inter-Magnum-component
dependencies.
next
1 changed files with 15 additions and 11 deletions
Loading…
Reference in new issue