mirror of
https://github.com/FairRootGroup/FairMQ.git
synced 2026-07-12 02:01:36 +00:00
ci: add spack package for a tsan-instrumented libstdc++
- gcc ships no supported switch to build libstdc++ with -fsanitize=thread, and spack's gcc recipe filters all flags out of the target-library build (CXXFLAGS_FOR_TARGET is owned by its generated --with-build-config=spack makefile), so provide a dedicated libstdcxx-tsan package in a custom repo - build only the libstdc++-v3 subtree from the matching gcc release tarball, configured standalone against the already-installed toolchain (recipe modeled on https://iree.dev/developers/debugging/sanitizers/), instead of rebuilding all of gcc - the result is a drop-in runtime replacement for the compiler's libstdc++ (same soname and symbol versions), to be loaded only by the instrumented test executables - normalize the install layout after make install: the standalone build puts the runtime libraries into the multilib os dir (lib64 on x86_64) regardless of --libdir, and --with-toolexeclibdir only applies to cross builds - register the repo in the setup-deps action before creating the env
This commit is contained in:
committed by
Dennis Klein
parent
988ef81922
commit
331c50ab0e
3
test/ci/spack_repo/fairmq_ci/repo.yaml
Normal file
3
test/ci/spack_repo/fairmq_ci/repo.yaml
Normal file
@@ -0,0 +1,3 @@
|
||||
repo:
|
||||
namespace: fairmq_ci
|
||||
api: v2.0
|
||||
Reference in New Issue
Block a user