Bug 1181255 - Mozconfigs for tsan builds. r=glandium

This commit is contained in:
Chris Manchester 2015-07-14 18:45:54 -07:00
parent d4d6970b73
commit d19d375631
2 changed files with 42 additions and 0 deletions

View File

@ -0,0 +1,8 @@
ac_add_options --with-google-oauth-api-keyfile=/builds/google-oauth-api.key
. $topsrcdir/build/unix/mozconfig.tsan
# Need this to prevent name conflicts with the normal nightly build packages
export MOZ_PKG_SPECIAL=tsan
. "$topsrcdir/build/mozconfig.common.override"

34
build/unix/mozconfig.tsan Normal file
View File

@ -0,0 +1,34 @@
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