Skip to content

build(detray): Fix vecmem CMake include#5490

Closed
stephenswat wants to merge 1 commit into
acts-project:mainfrom
stephenswat:build/detray_fixes
Closed

build(detray): Fix vecmem CMake include#5490
stephenswat wants to merge 1 commit into
acts-project:mainfrom
stephenswat:build/detray_fixes

Conversation

@stephenswat

@stephenswat stephenswat commented May 21, 2026

Copy link
Copy Markdown
Member

This commit fixes an inherited bug from the detray repository in which the use of vecmem-check-language does not correctly use the path exported by vecmem. Also turns off the setup of detray by default, in order not to disturb the user experience while we complete the integration.

--- END COMMIT MESSAGE ---

see discussion https://mattermost.web.cern.ch/acts/pl/jbuxpdkyh3b18y9o48pepmcx3o

@github-actions github-actions Bot added this to the next milestone May 21, 2026
andiwand
andiwand previously approved these changes May 21, 2026
@niermann999 niermann999 added the Component - Detray Affects the Detray project label May 21, 2026
niermann999
niermann999 previously approved these changes May 21, 2026
@niermann999 niermann999 removed the Component - Detray Affects the Detray project label May 21, 2026
@stephenswat stephenswat dismissed stale reviews from niermann999 and andiwand via d3d9a34 May 21, 2026 14:13
@stephenswat stephenswat force-pushed the build/detray_fixes branch from 7e3b4e1 to d3d9a34 Compare May 21, 2026 14:13
@stephenswat

Copy link
Copy Markdown
Member Author

Sorry, made a change to this. Instead of unconditionally including that file, I believe it should actually not be included at all when using an installed version of vecmem.

andiwand
andiwand previously approved these changes May 21, 2026
@jmcarcell

jmcarcell commented May 21, 2026

Copy link
Copy Markdown
Member

Slightly related to this PR, and because building ACTS in the LCG stacks failed today, so now vecmem is required by default (and also in the future)? It's a bit weird that it broke today since the default was turned ON a few days ago, that I don't understand yet. Will detray also be required by default?

@andiwand

andiwand commented May 21, 2026

Copy link
Copy Markdown
Contributor

Slightly related to this PR, and because building ACTS in the LCG stacks broke yesterday, so now vecmem is required by default (and also in the future)? It's a bit weird that it broke today since the default was turned ON a few days ago, that I don't understand yet.

@jmcarcell a few more details were shared here https://mattermost.web.cern.ch/acts/pl/jbuxpdkyh3b18y9o48pepmcx3o

@stephenswat

Copy link
Copy Markdown
Member Author

Slightly related to this PR, and because building ACTS in the LCG stacks broke yesterday, so now vecmem is required by default (and also in the future)? It's a bit weird that it broke today since the default was turned ON a few days ago, that I don't understand yet.

Hi Juan, what broke in this case is a line inside of the detray configuration. vecmem has been enabled by default for a while now. Similarly, detray has been enabled for a while. However, it is only as of #5462 that turning on the detray code actually does anything if you don't have the traccc code turned on. In other words, detray was being masked by the traccc flag, even if the setup of detray was enabled. The underlying bug here is in how ACTS and detray set up vecmem, which was leading to colliding vecmem versions.

As I described on the ACTS Mattermost, the simplest ways of mitigating this issue is to set ACTS_SETUP_DETRAY to false, which will avoid setting up detray at all, and means that detray won't set up its own vecmem.

This PR also makes that the default behaviour so that future changes to the detray and traccc build systems won't cause downstream failures.

@github-actions github-actions Bot added the Component - Detray Affects the Detray project label May 21, 2026
This commit fixes an inherited bug from the detray repository in which
the use of `vecmem-check-language` does not correctly use the path
exported by vecmem. Also turns off the setup of detray by default, in
order not to disturb the user experience while we complete the
integration.
@stephenswat stephenswat force-pushed the build/detray_fixes branch from d3d9a34 to 6236eff Compare May 21, 2026 14:58
@github-actions github-actions Bot added the Component - Documentation Affects the documentation label May 21, 2026
@stephenswat stephenswat changed the title build(detray): Fix vecmem CMake path build(detray): Fix vecmem CMake include May 21, 2026
@stephenswat stephenswat force-pushed the build/detray_fixes branch from 1ce1af7 to 6236eff Compare May 21, 2026 15:19
@sonarqubecloud

Copy link
Copy Markdown

@github-actions

Copy link
Copy Markdown
Contributor

📊: Physics performance monitoring for 6236eff

Full contents

physmon summary

@jmcarcell

Copy link
Copy Markdown
Member

In the LCG stacks it wasn't enough to turn detray OFF, vecmem also had to be OFF not to be found : https://gitlab.cern.ch/sft/stacks/lcgcmake/-/merge_requests/3917.

@stephenswat

Copy link
Copy Markdown
Member Author

In the LCG stacks it wasn't enough to turn detray OFF, vecmem also had to be OFF not to be found : https://gitlab.cern.ch/sft/stacks/lcgcmake/-/merge_requests/3917.

The fact that only turning detray off didn't fix the issue is worrying. Do you have logs showing what went wrong with detray turned off but vecmem turned on?

@jmcarcell

Copy link
Copy Markdown
Member

Yes, but they only show that vecmem was not found, for example on Alma9: https://lcgapp-services.cern.ch/cdash/build/172617/file/11834. This is with the first commit of https://gitlab.cern.ch/sft/stacks/lcgcmake/-/merge_requests/3917 (with detray OFF but vecmem not set, so the default value).

@stephenswat

Copy link
Copy Markdown
Member Author

Superseded by #5504 and #5471.

@andiwand andiwand removed this from the next milestone May 26, 2026
@andiwand andiwand added this to the v46.7.0 milestone May 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Component - Detray Affects the Detray project Component - Documentation Affects the documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants