| MOZ_AUTOMATION_L10N_CHECK=0 |
| |
| . "$topsrcdir/build/mozconfig.common" |
| |
| # Use Clang as specified in manifest |
| export CC="$topsrcdir/clang/bin/clang" |
| export CXX="$topsrcdir/clang/bin/clang++" |
| export LLVM_SYMBOLIZER="$topsrcdir/clang/bin/llvm-symbolizer" |
| |
| # Mandatory flag for TSan |
| export CFLAGS="-fsanitize=thread" |
| export CXXFLAGS="-fsanitize=thread" |
| export LDFLAGS="-fsanitize=thread" |
| |
| # Enable TSan specific code and build workarounds |
| ac_add_options --enable-thread-sanitizer |
| |
| # The ThreadSanitizer is not compatible with sanboxing |
| # (see bug 1182565) |
| ac_add_options --disable-sandbox |
| |
| # These are required by TSan |
| ac_add_options --disable-jemalloc |
| ac_add_options --disable-crashreporter |
| ac_add_options --disable-elf-hack |
| ac_add_options --enable-pie |
| |
| # Keep symbols to symbolize TSan traces |
| ac_add_options --disable-install-strip |
| # -gline-tables-only results in significantly smaller binaries. |
| ac_add_options --enable-debug-symbols="-gline-tables-only" |
| |
| # Avoid dependency on libstdc++ 4.7 |
| ac_add_options --enable-stdcxx-compat |