Source code

Revision control

Other Tools

# This mozconfig is used when compiling the browser for the rooting hazard
# analysis build (labeled H on treeherder). See
# Do NOT include build/unix/mozconfig.linux because it points directly at the
# tooltool-installed gcc, and the analysis works by wrapping the gcc invocation
# with a script that invokes the real gcc with -fplugin and its configuration
# directives. Instead, duplicate the contents of that mozconfig here:
MOZ_HAZARD=1
# Skip as many non-compile steps as we can.
MOZ_AUTOMATION_BUILD_SYMBOLS=0
MOZ_AUTOMATION_PACKAGE=0
MOZ_AUTOMATION_UPLOAD=0
ac_add_options --enable-js-shell
# The objdir must be at a known location so its path can be stripped from the
# filenames stored by the analysis
mk_add_options MOZ_OBJDIR=obj-analyzed
export LLVM_CONFIG=$MOZ_FETCHES_DIR/clang/bin/llvm-config
export CBINDGEN="${MOZ_FETCHES_DIR}/cbindgen/cbindgen"
# The configuration options are chosen to compile the most code
# (--enable-debug, --enable-tests) in the trickiest way possible
# (--enable-optimize) to maximize the chance of seeing tricky static orderings.
ac_add_options --enable-debug
ac_add_options --enable-tests
ac_add_options --enable-optimize
ac_add_options --with-compiler-wrapper=$MOZ_FETCHES_DIR/sixgill/usr/libexec/sixgill/scripts/wrap_gcc/basecc
ac_add_options --without-ccache
ac_add_options --disable-replace-malloc
# -Wattributes is very verbose due to attributes being ignored on template
# instantiations. -Wignored-attributes is very verbose due to attributes being
# ignored on template parameters.
CFLAGS="$CFLAGS -Wno-attributes -Wno-ignored-attributes"
CPPFLAGS="$CPPFLAGS -Wno-attributes -Wno-ignored-attributes"
CXXFLAGS="$CXXFLAGS -Wno-attributes -Wno-ignored-attributes"
NODEJS="$MOZ_FETCHES_DIR/node/bin/node"
NASM="$MOZ_FETCHES_DIR/nasm/nasm"