diff options
-rwxr-xr-x | projects/envoy/build.sh | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/projects/envoy/build.sh b/projects/envoy/build.sh index 61ef0bfd..27ed9ddf 100755 --- a/projects/envoy/build.sh +++ b/projects/envoy/build.sh @@ -15,9 +15,8 @@ # ################################################################################ -# Disable UBSan vptr since target built with -fno-rtti. -export CFLAGS="$CFLAGS -fno-sanitize=vptr" -export CXXFLAGS="$CXXFLAGS -fno-sanitize=vptr" +export CFLAGS="$CFLAGS" +export CXXFLAGS="$CXXFLAGS" declare -r FUZZER_TARGETS_CC=$(find . -name *_fuzz_test.cc) declare -r FUZZER_TARGETS="$(for t in ${FUZZER_TARGETS_CC}; do echo "${t:2:-3}"; done)" @@ -39,6 +38,13 @@ done for f in ${CXXFLAGS}; do echo "--cxxopt=${f}" "--linkopt=${f}" done + +if [ "$SANITIZER" = "undefined" ] +then + # Bazel uses clang to link binary, which does not link clang_rt ubsan library for C++ automatically. + # See issue: https://github.com/bazelbuild/bazel/issues/8777 + echo "--linkopt=\"$(find $(llvm-config --libdir) -name libclang_rt.ubsan_standalone_cxx-x86_64.a | head -1)\"" +fi )" declare BAZEL_BUILD_TARGETS="" |