summaryrefslogtreecommitdiffstats
path: root/browser/config/mozconfigs/linux64/nightly-fuzzing-asan-nyx
blob: bf66d15f85b1d76f85501d75f743926335d924bf (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
35
36
37
38
39
40
# We still need to build with debug symbols
ac_add_options --disable-debug
ac_add_options --enable-optimize="-O2 -gline-tables-only"

export CC="$MOZ_FETCHES_DIR/afl-instrumentation/bin/afl-clang-fast"
export CXX="$MOZ_FETCHES_DIR/afl-instrumentation/bin/afl-clang-fast++"

export HOST_CC="$MOZ_FETCHES_DIR/clang/bin/clang"
export HOST_CXX="$MOZ_FETCHES_DIR/clang/bin/clang++"

#add-on signing is checked but not enforced
MOZ_REQUIRE_SIGNING=

# ASan specific options on Linux
ac_add_options --enable-valgrind

. $topsrcdir/build/unix/mozconfig.asan
ac_add_options --disable-elf-hack

# Enable ASan for rust code. This is done for specific build tasks rather than
# globally in mozconfig.asan because it requires an unstable -Z flag.
export RUSTFLAGS="$RUSTFLAGS -Zsanitizer=address"

# gold or lld is required for libFuzzer to work properly
ac_add_options --enable-linker=lld

ac_add_options --enable-snapshot-fuzzing
unset MOZ_STDCXX_COMPAT

# Piggybacking UBSan for now since only a small subset of checks are enabled.
# A new build can be created when appropriate.
ac_add_options --enable-undefined-sanitizer

# Package js shell.
export MOZ_PACKAGE_JSSHELL=1

# Need this to prevent name conflicts with the normal nightly build packages
export MOZ_PKG_SPECIAL=asan

. "$topsrcdir/build/mozconfig.common.override"