You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It's a bit inconvenient when building/debugging C++ code with sanitizers, esp. working in an IDE like vscode. I either manually modify CMakePresets.json file to add a temporary preset with necessary sanitizer variables (and carefully avoid including this changes along with other intended changes), or change vscode setting by passing the sanitizer variables into cmake configuration process (but this will rebuild most of the source files because compiler flags have changed). And specifying sanitizer variables always involves at least three variables along: ARROW_USE_XXSAN=ONARROW_JEMALLOC=OFF and ARROW_MIMALLOC=OFF (sanitizers generally don't work with 3rd-party allocators).
We should consider adding cmake presets for such sanitizer builds.
Component(s)
C++
The text was updated successfully, but these errors were encountered:
manually modify CMakePresets.json file to add a temporary preset with necessary sanitizer variables (and carefully avoid including this changes along with other intended changes),
That's what CMakeUserPresets.json is for! It's already in the gitignore and should also be picked up by vsc.
But regardless a preset for sanitizers makes sense :)
That's what CMakeUserPresets.json is for! It's already in the gitignore and should also be picked up by vsc.
But regardless a preset for sanitizers makes sense :)
Oops, I think CMakeUserPresets.json might just work for me, thank you!
As for the PR already filed, let's just have it as long as people think it would make sense - though the reasoning in this issue doesn't fully justify :)
### Rationale for this change
See #45206
### What changes are included in this PR?
Add base presets for ASAN/TSAN/UBSAN. And cross product such base presets by `ninja-debug` which is, IMO, the config just enough necessary and likely to need sanitizers' aid.
### Are these changes tested?
No need.
### Are there any user-facing changes?
None.
* GitHub Issue: #45206
Authored-by: Rossi Sun <[email protected]>
Signed-off-by: Rossi Sun <[email protected]>
Describe the enhancement requested
It's a bit inconvenient when building/debugging C++ code with sanitizers, esp. working in an IDE like vscode. I either manually modify CMakePresets.json file to add a temporary preset with necessary sanitizer variables (and carefully avoid including this changes along with other intended changes), or change vscode setting by passing the sanitizer variables into cmake configuration process (but this will rebuild most of the source files because compiler flags have changed). And specifying sanitizer variables always involves at least three variables along:
ARROW_USE_XXSAN=ON
ARROW_JEMALLOC=OFF
andARROW_MIMALLOC=OFF
(sanitizers generally don't work with 3rd-party allocators).We should consider adding cmake presets for such sanitizer builds.
Component(s)
C++
The text was updated successfully, but these errors were encountered: