summaryrefslogtreecommitdiff
path: root/build/unix/mozconfig.tsan
blob: f78c1071f1a1921e14db343548e8519ae578b3de (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
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"

# Use a newer binutils, from the tooltool gcc package, if it's there
if [ -e "$topsrcdir/gcc/bin/ld" ]; then
    export CC="$CC -B $topsrcdir/gcc/bin"
    export CXX="$CXX -B $topsrcdir/gcc/bin"
fi

# Enable TSan specific code and build workarounds
ac_add_options --enable-thread-sanitizer

# The ThreadSanitizer is not compatible with sandboxing
# (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"

. "$topsrcdir/build/unix/mozconfig.stdcxx"