Repository navigation
[cmake] Only add the Core dependency to dictionaries when Core is a target - #23618
Conversation
Test Results 24 files 24 suites 4d 1h 29m 37s ⏱️ For more details on these failures, see this check. Results for commit 449f28b. ♻️ This comment has been updated with latest results. |
Co-authored-by: Philippe Canal <pcanal@fnal.gov>
Prefer the namespaced Core target when both target names are available. Assisted-by: pi:gpt-6.1-sol
|
It would be great if this is merged today together with #23626 so that we have dev3 builds tomorrow, a few of the issues we had should have been solved. |
|
@linev Could you take a look at the failures of |
Seems unrelated to this PR: #23632 |
|
Could we get a review / merge today so we can see further tomorrow? |
…arget (root-project#23618) * [cmake] Only add the Core dependency to dictionaries when Core is a target * Add always the Core or ROOT::Core dependency Co-authored-by: Philippe Canal <pcanal@fnal.gov> * [cmake] Check ROOT::Core before Core Prefer the namespaced Core target when both target names are available. Assisted-by: pi:gpt-6.1-sol --------- Co-authored-by: Juan Miguel Carceller <jmcarcell@users.noreply.github.com> Co-authored-by: Philippe Canal <pcanal@fnal.gov>
This Pull request:
Changes or fixes:
#23207 made every dictionary with a
MODULEdepend onCoreby insertingCoreintoARG_DEPENDENCIES, which then ends up in theDEPENDSof the rootcling custom command. This works inside ROOT's build, whereCoreis a target, but downstream projects only have the importedROOT::Core, so the bareCoreis treated as a file and the build fails. For example, when building Garfield++:This adds the
Coredependency only whenCoreis a target, so the behaviour inside ROOT is unchanged and downstream projects work as before.Checklist:
This PR fixes a regression introduced in #23207