From c114423cd0a9d2e355fbc942004e1ad091343629 Mon Sep 17 00:00:00 2001
From: Florian Schmaus <flow@cs.fau.de>
Date: Sat, 15 Jan 2022 19:40:31 +0100
Subject: [PATCH] Intermediate Commit (2022-01-15 19:40)

---
 msan | 17 +++++++++--------
 1 file changed, 9 insertions(+), 8 deletions(-)

diff --git a/msan b/msan
index 196431b4..af100075 100644
--- a/msan
+++ b/msan
@@ -29,16 +29,16 @@ printf -v MESON_MSAN_CPP_ARGS "%s," "${MSAN_FLAGS[@]}"
 
 # Meson's c_stdlib flag may only work for cross builds "--native-file foo.ini"
 
+rm -rf build-msan
+
 #	-Dcpp_args="${MESON_MSAN_CPP_ARGS}" \
 meson \
 	--buildtype=debug \
 	--fatal-meson-warnings \
 	-Db_sanitize=memory \
 	-Db_lundef=false \
-	-Dcpp_args='-stdlib=libc++' \
-	-Dcpp_args=-I${INSTRUMENTED_LIBCXX_INC_DIR} \
-	-Dcpp_args=-I${INSTRUMENTED_LIBCXX_INC_DIR}/c++/v1 \
-	-Dcpp_link_args=-L${INSTRUMENTED_LIBCXX_LIB_DIR} \
+	-Dcpp_args="-stdlib=libc++ -I${INSTRUMENTED_LIBCXX_INC_DIR} -I${INSTRUMENTED_LIBCXX_INC_DIR}/c++/v1" \
+	-Dcpp_link_args="-stdlib=libc++ -lc++abi -L${INSTRUMENTED_LIBCXX_LIB_DIR} -Wl,--unresolved-symbols=ignore-in-shared-libs" \
     build-msan
 
 # It appears that meson is filtering -stdlib=libc++ and always selects
@@ -46,10 +46,11 @@ meson \
 # C++ standard library.
 # NOTE: We could potentially place a complete LLVM/Clang toolchain in
 # the CI container, that has the sanitizers enabled.
-sed --in-place \
-	s/clang++/clang++ -stdlib=libc++/ \
-	build-msan/build.ninja
+# sed --in-place \
+# 	s/clang++/clang++ -stdlib=libc++/ \
+# 	build-msan/build.ninja
 
-ninja
+ninja -C build-msan
 
 export LD_LIBRARY_PATH="${INSTRUMENTED_LIBCXX_LIB_DIR}"
+ninja -C build-msan test
-- 
GitLab