Use direct linking to vecgeom's CUDA target to match AdePT #346
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Reported by @SeverinDiederichs, trying to build AdePT with a static VecGeom results in a failure of the
test_g4vg_link
buildtime test. This wasn't spotted in the initial PR because my setup had used a shared build of VecGeom. The underlying cause is likely a corner case incuda_rdc_target_link_libraries
not linking in everything from VecGeom in the right order, or failing to do a final device link in the static case. This does not affect linking of AdePT itself with VecGeom and G4VG, where the explicit links to the VecGeom libs are done in the same way as this fix.Use direct call to target_link_libraries for the G4VG link test, explicitly linking to both G4VG and the Vecgeomcuda targets. This gives a correct link whether VecGeom was built with static or shared libs, and matches what is done elsewhere in AdePT.