diff options
Diffstat (limited to 'browser/config/mozconfigs')
65 files changed, 1171 insertions, 0 deletions
diff --git a/browser/config/mozconfigs/common b/browser/config/mozconfigs/common new file mode 100644 index 000000000..febf5622f --- /dev/null +++ b/browser/config/mozconfigs/common @@ -0,0 +1,7 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +# This file is included by all browser mozconfigs + +. "$topsrcdir/build/mozconfig.common" diff --git a/browser/config/mozconfigs/linux32/artifact b/browser/config/mozconfigs/linux32/artifact new file mode 100644 index 000000000..29eb8ba1c --- /dev/null +++ b/browser/config/mozconfigs/linux32/artifact @@ -0,0 +1,10 @@ +MOZ_AUTOMATION_BUILD_SYMBOLS=0 +MOZ_AUTOMATION_L10N_CHECK=0 + +. "$topsrcdir/browser/config/mozconfigs/linux32/common-opt" +. "$topsrcdir/build/mozconfig.common.override" + +ac_add_options --enable-artifact-builds +ac_add_options --enable-artifact-build-symbols +unset CC +unset CXX diff --git a/browser/config/mozconfigs/linux32/beta b/browser/config/mozconfigs/linux32/beta new file mode 100644 index 000000000..315c32b84 --- /dev/null +++ b/browser/config/mozconfigs/linux32/beta @@ -0,0 +1,15 @@ +MOZ_AUTOMATION_SDK=${MOZ_AUTOMATION_SDK-1} +if [ -n "$ENABLE_RELEASE_PROMOTION" ]; then + MOZ_AUTOMATION_UPLOAD_SYMBOLS=${MOZ_AUTOMATION_UPLOAD_SYMBOLS-1} + MOZ_AUTOMATION_UPDATE_PACKAGING=1 +fi + +. "$topsrcdir/browser/config/mozconfigs/linux32/common-opt" + +ac_add_options --enable-official-branding +ac_add_options --enable-verify-mar + +mk_add_options MOZ_PGO=1 + +. "$topsrcdir/build/mozconfig.rust" +. "$topsrcdir/build/mozconfig.common.override" diff --git a/browser/config/mozconfigs/linux32/common-opt b/browser/config/mozconfigs/linux32/common-opt new file mode 100644 index 000000000..3bf3e530e --- /dev/null +++ b/browser/config/mozconfigs/linux32/common-opt @@ -0,0 +1,15 @@ +# This file is sourced by nightly, beta, and release mozconfigs. + +ac_add_options --enable-update-channel=${MOZ_UPDATE_CHANNEL} +ac_add_options --with-google-api-keyfile=/builds/gapi.data +ac_add_options --with-mozilla-api-keyfile=/builds/mozilla-desktop-geoloc-api.key + +. $topsrcdir/build/unix/mozconfig.linux32 + +# Needed to enable breakpad in application.ini +export MOZILLA_OFFICIAL=1 + +export MOZ_TELEMETRY_REPORTING=1 + +# Package js shell. +export MOZ_PACKAGE_JSSHELL=1 diff --git a/browser/config/mozconfigs/linux32/debug b/browser/config/mozconfigs/linux32/debug new file mode 100644 index 000000000..de97087d2 --- /dev/null +++ b/browser/config/mozconfigs/linux32/debug @@ -0,0 +1,24 @@ +ac_add_options --enable-debug +ac_add_options --enable-dmd +ac_add_options --enable-verify-mar + +MOZ_AUTOMATION_L10N_CHECK=0 + +. $topsrcdir/build/unix/mozconfig.linux32 + +# Needed to enable breakpad in application.ini +export MOZILLA_OFFICIAL=1 + +# Enable Telemetry +export MOZ_TELEMETRY_REPORTING=1 + +#Use ccache + +# Package js shell. +export MOZ_PACKAGE_JSSHELL=1 + +ac_add_options --with-branding=browser/branding/nightly + +. "$topsrcdir/build/mozconfig.rust" +. "$topsrcdir/build/mozconfig.common.override" +. "$topsrcdir/build/mozconfig.cache" diff --git a/browser/config/mozconfigs/linux32/debug-artifact b/browser/config/mozconfigs/linux32/debug-artifact new file mode 100644 index 000000000..3fc3faf89 --- /dev/null +++ b/browser/config/mozconfigs/linux32/debug-artifact @@ -0,0 +1,12 @@ +MOZ_AUTOMATION_BUILD_SYMBOLS=0 +MOZ_AUTOMATION_L10N_CHECK=0 + +. "$topsrcdir/build/unix/mozconfig.linux32" +. "$topsrcdir/build/mozconfig.common.override" + +ac_add_options --enable-artifact-builds +ac_add_options --enable-artifact-build-symbols +unset CC +unset CXX + +ac_add_options --enable-debug diff --git a/browser/config/mozconfigs/linux32/debug-asan b/browser/config/mozconfigs/linux32/debug-asan new file mode 100644 index 000000000..9fc7b9bff --- /dev/null +++ b/browser/config/mozconfigs/linux32/debug-asan @@ -0,0 +1,23 @@ +# Use at least -O1 for optimization to avoid stack space +# exhaustions caused by Clang function inlining. +ac_add_options --enable-debug +ac_add_options --enable-optimize="-O1" + +# ASan specific options on Linux +ac_add_options --enable-valgrind + +. $topsrcdir/build/unix/mozconfig.asan + +export PKG_CONFIG_LIBDIR=/usr/lib/pkgconfig:/usr/share/pkgconfig +. $topsrcdir/build/unix/mozconfig.gtk + +# Enable Telemetry +export MOZ_TELEMETRY_REPORTING=1 + +# 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" diff --git a/browser/config/mozconfigs/linux32/l10n-mozconfig b/browser/config/mozconfigs/linux32/l10n-mozconfig new file mode 100644 index 000000000..ae7cc933b --- /dev/null +++ b/browser/config/mozconfigs/linux32/l10n-mozconfig @@ -0,0 +1,20 @@ +no_sccache=1 + +ac_add_options --with-l10n-base=../../l10n +ac_add_options --enable-update-channel=${MOZ_UPDATE_CHANNEL} +ac_add_options --enable-official-branding + +. $topsrcdir/build/unix/mozconfig.linux32 + +export MOZILLA_OFFICIAL=1 + +# Enable Telemetry +export MOZ_TELEMETRY_REPORTING=1 + +ac_add_options --disable-stdcxx-compat + +# Don't autoclobber l10n, as this can lead to missing binaries and broken builds +# Bug 1283438 +mk_add_options AUTOCLOBBER= + +. "$topsrcdir/build/mozconfig.common.override" diff --git a/browser/config/mozconfigs/linux32/nightly b/browser/config/mozconfigs/linux32/nightly new file mode 100644 index 000000000..6d605ca7d --- /dev/null +++ b/browser/config/mozconfigs/linux32/nightly @@ -0,0 +1,15 @@ +. "$topsrcdir/browser/config/mozconfigs/linux32/common-opt" + + +ac_add_options --enable-verify-mar + +# This will overwrite the default of stripping everything and keep the symbol table. +# This is useful for profiling and debugging and only increases the package size +# by 2 MBs. +STRIP_FLAGS="--strip-debug" + +ac_add_options --with-branding=browser/branding/nightly + +. "$topsrcdir/build/mozconfig.rust" +. "$topsrcdir/build/mozconfig.common.override" +. "$topsrcdir/build/mozconfig.cache" diff --git a/browser/config/mozconfigs/linux32/nightly-asan b/browser/config/mozconfigs/linux32/nightly-asan new file mode 100644 index 000000000..0930c184f --- /dev/null +++ b/browser/config/mozconfigs/linux32/nightly-asan @@ -0,0 +1,22 @@ +# We still need to build with debug symbols +ac_add_options --disable-debug +ac_add_options --enable-optimize="-O2 -g" + +# ASan specific options on Linux +ac_add_options --enable-valgrind + +. $topsrcdir/build/unix/mozconfig.asan + +export PKG_CONFIG_LIBDIR=/usr/lib/pkgconfig:/usr/share/pkgconfig +. $topsrcdir/build/unix/mozconfig.gtk + +# Package js shell. +export MOZ_PACKAGE_JSSHELL=1 + +# Enable Telemetry +export MOZ_TELEMETRY_REPORTING=1 + +# Need this to prevent name conflicts with the normal nightly build packages +export MOZ_PKG_SPECIAL=asan + +. "$topsrcdir/build/mozconfig.common.override" diff --git a/browser/config/mozconfigs/linux32/release b/browser/config/mozconfigs/linux32/release new file mode 100644 index 000000000..b17186666 --- /dev/null +++ b/browser/config/mozconfigs/linux32/release @@ -0,0 +1,22 @@ +# This make file should be identical to the beta mozconfig, apart from the +# safeguard below +MOZ_AUTOMATION_SDK=${MOZ_AUTOMATION_SDK-1} + +if [ -n "$ENABLE_RELEASE_PROMOTION" ]; then + MOZ_AUTOMATION_UPLOAD_SYMBOLS=${MOZ_AUTOMATION_UPLOAD_SYMBOLS-1} + MOZ_AUTOMATION_UPDATE_PACKAGING=1 +fi + +. "$topsrcdir/browser/config/mozconfigs/linux32/common-opt" + +ac_add_options --enable-official-branding +ac_add_options --enable-verify-mar + +mk_add_options MOZ_PGO=1 + +# safeguard against someone forgetting to re-set EARLY_BETA_OR_EARLIER in +# defines.sh during the beta cycle +export BUILDING_RELEASE=1 + +. "$topsrcdir/build/mozconfig.rust" +. "$topsrcdir/build/mozconfig.common.override" diff --git a/browser/config/mozconfigs/linux32/valgrind b/browser/config/mozconfigs/linux32/valgrind new file mode 100644 index 000000000..c8fb4f574 --- /dev/null +++ b/browser/config/mozconfigs/linux32/valgrind @@ -0,0 +1,9 @@ +. $topsrcdir/browser/config/mozconfigs/linux32/nightly + +ac_add_options --enable-valgrind +ac_add_options --disable-jemalloc +ac_add_options --disable-install-strip + +# Include the override mozconfig again (even though the above includes it) +# since it's supposed to override everything. +. "$topsrcdir/build/mozconfig.common.override" diff --git a/browser/config/mozconfigs/linux64/add-on-devel b/browser/config/mozconfigs/linux64/add-on-devel new file mode 100644 index 000000000..0a3dfeb3f --- /dev/null +++ b/browser/config/mozconfigs/linux64/add-on-devel @@ -0,0 +1,9 @@ +. $topsrcdir/browser/config/mozconfigs/linux64/nightly + +#add-on signing is checked but not enforced +MOZ_REQUIRE_SIGNING=0 +ac_add_options --with-branding=browser/branding/unofficial +ac_add_options --enable-update-channel=default + +# Need this to prevent name conflicts with the normal nightly build packages +export MOZ_PKG_SPECIAL=add-on-devel diff --git a/browser/config/mozconfigs/linux64/artifact b/browser/config/mozconfigs/linux64/artifact new file mode 100644 index 000000000..524a25e69 --- /dev/null +++ b/browser/config/mozconfigs/linux64/artifact @@ -0,0 +1,10 @@ +MOZ_AUTOMATION_BUILD_SYMBOLS=0 +MOZ_AUTOMATION_L10N_CHECK=0 + +. "$topsrcdir/browser/config/mozconfigs/linux64/common-opt" +. "$topsrcdir/build/mozconfig.common.override" + +ac_add_options --enable-artifact-builds +ac_add_options --enable-artifact-build-symbols +unset CC +unset CXX diff --git a/browser/config/mozconfigs/linux64/beta b/browser/config/mozconfigs/linux64/beta new file mode 100644 index 000000000..f349ee9f8 --- /dev/null +++ b/browser/config/mozconfigs/linux64/beta @@ -0,0 +1,15 @@ +MOZ_AUTOMATION_SDK=${MOZ_AUTOMATION_SDK-1} +if [ -n "$ENABLE_RELEASE_PROMOTION" ]; then + MOZ_AUTOMATION_UPLOAD_SYMBOLS=${MOZ_AUTOMATION_UPLOAD_SYMBOLS-1} + MOZ_AUTOMATION_UPDATE_PACKAGING=1 +fi + +. "$topsrcdir/browser/config/mozconfigs/linux64/common-opt" + +ac_add_options --enable-official-branding +ac_add_options --enable-verify-mar + +mk_add_options MOZ_PGO=1 + +. "$topsrcdir/build/mozconfig.rust" +. "$topsrcdir/build/mozconfig.common.override" diff --git a/browser/config/mozconfigs/linux64/code-coverage b/browser/config/mozconfigs/linux64/code-coverage new file mode 100644 index 000000000..48ffa9b17 --- /dev/null +++ b/browser/config/mozconfigs/linux64/code-coverage @@ -0,0 +1,13 @@ +. "$topsrcdir/browser/config/mozconfigs/linux64/nightly" + +TOOLTOOL_DIR=${TOOLTOOL_DIR:-$topsrcdir} + +ac_add_options --disable-install-strip +ac_add_options --disable-jemalloc +ac_add_options --disable-crashreporter +ac_add_options --disable-elf-hack + +MOZ_CODE_COVERAGE=1 +export CFLAGS="-fprofile-arcs -ftest-coverage" +export CXXFLAGS="-fprofile-arcs -ftest-coverage" +export LDFLAGS="-fprofile-arcs -ftest-coverage -lgcov -L$TOOLTOOL_DIR/gtk3/usr/local/lib" diff --git a/browser/config/mozconfigs/linux64/common-opt b/browser/config/mozconfigs/linux64/common-opt new file mode 100644 index 000000000..0d605ff9e --- /dev/null +++ b/browser/config/mozconfigs/linux64/common-opt @@ -0,0 +1,15 @@ +# This file is sourced by the nightly, beta, and release mozconfigs. + +ac_add_options --enable-update-channel=${MOZ_UPDATE_CHANNEL} +ac_add_options --with-google-api-keyfile=/builds/gapi.data +ac_add_options --with-mozilla-api-keyfile=/builds/mozilla-desktop-geoloc-api.key + +. $topsrcdir/build/unix/mozconfig.linux + +# Needed to enable breakpad in application.ini +export MOZILLA_OFFICIAL=1 + +export MOZ_TELEMETRY_REPORTING=1 + +# Package js shell. +export MOZ_PACKAGE_JSSHELL=1 diff --git a/browser/config/mozconfigs/linux64/debug b/browser/config/mozconfigs/linux64/debug new file mode 100644 index 000000000..a879da75e --- /dev/null +++ b/browser/config/mozconfigs/linux64/debug @@ -0,0 +1,22 @@ +ac_add_options --enable-debug +ac_add_options --enable-dmd +ac_add_options --enable-verify-mar + +MOZ_AUTOMATION_L10N_CHECK=0 + +. $topsrcdir/build/unix/mozconfig.linux + +# Needed to enable breakpad in application.ini +export MOZILLA_OFFICIAL=1 + +# Enable Telemetry +export MOZ_TELEMETRY_REPORTING=1 + +# Package js shell. +export MOZ_PACKAGE_JSSHELL=1 + +ac_add_options --with-branding=browser/branding/nightly + +. "$topsrcdir/build/mozconfig.rust" +. "$topsrcdir/build/mozconfig.common.override" +. "$topsrcdir/build/mozconfig.cache" diff --git a/browser/config/mozconfigs/linux64/debug-artifact b/browser/config/mozconfigs/linux64/debug-artifact new file mode 100644 index 000000000..6dc4d13ce --- /dev/null +++ b/browser/config/mozconfigs/linux64/debug-artifact @@ -0,0 +1,13 @@ +MOZ_AUTOMATION_BUILD_SYMBOLS=0 +MOZ_AUTOMATION_L10N_CHECK=0 + +. "$topsrcdir/build/unix/mozconfig.linux" +. "$topsrcdir/build/mozconfig.common.override" + +ac_add_options --enable-artifact-builds +ac_add_options --enable-artifact-build-symbols +unset CC +unset CXX + +ac_add_options --enable-debug + diff --git a/browser/config/mozconfigs/linux64/debug-asan b/browser/config/mozconfigs/linux64/debug-asan new file mode 100644 index 000000000..a772dbb51 --- /dev/null +++ b/browser/config/mozconfigs/linux64/debug-asan @@ -0,0 +1,23 @@ +# Use at least -O1 for optimization to avoid stack space +# exhaustions caused by Clang function inlining. +ac_add_options --enable-debug +ac_add_options --enable-optimize="-O1" + +# ASan specific options on Linux +ac_add_options --enable-valgrind + +. $topsrcdir/build/unix/mozconfig.asan + +export PKG_CONFIG_LIBDIR=/usr/lib64/pkgconfig:/usr/share/pkgconfig +. $topsrcdir/build/unix/mozconfig.gtk + +# Enable Telemetry +export MOZ_TELEMETRY_REPORTING=1 + +# 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" diff --git a/browser/config/mozconfigs/linux64/debug-static-analysis-clang b/browser/config/mozconfigs/linux64/debug-static-analysis-clang new file mode 100644 index 000000000..ff41e13f9 --- /dev/null +++ b/browser/config/mozconfigs/linux64/debug-static-analysis-clang @@ -0,0 +1,23 @@ +MOZ_AUTOMATION_BUILD_SYMBOLS=0 +MOZ_AUTOMATION_PACKAGE_TESTS=0 +MOZ_AUTOMATION_L10N_CHECK=0 + +. "$topsrcdir/build/mozconfig.common" + +ac_add_options --enable-debug +ac_add_options --enable-dmd + +# Use Clang as specified in manifest +export CC="$topsrcdir/clang/bin/clang" +export CXX="$topsrcdir/clang/bin/clang++" + +# Add the static checker +ac_add_options --enable-clang-plugin + +. "$topsrcdir/build/unix/mozconfig.stdcxx" + +export PKG_CONFIG_LIBDIR=/usr/lib64/pkgconfig:/usr/share/pkgconfig +. $topsrcdir/build/unix/mozconfig.gtk + +. "$topsrcdir/build/mozconfig.common.override" +. "$topsrcdir/build/mozconfig.cache" diff --git a/browser/config/mozconfigs/linux64/hazards b/browser/config/mozconfigs/linux64/hazards new file mode 100644 index 000000000..03d72ef7e --- /dev/null +++ b/browser/config/mozconfigs/linux64/hazards @@ -0,0 +1,35 @@ +# This mozconfig is used when compiling the browser for the rooting hazard +# analysis build (labeled H on treeherder). See +# https://wiki.mozilla.org/Javascript:SpiderMonkey:ExactStackRooting + +# 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: + +. "$topsrcdir/build/mozconfig.common" +ac_add_options --enable-elf-hack + +. "$topsrcdir/build/unix/mozconfig.stdcxx" + +# 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 + +# 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=$TOOLTOOL_DIR/sixgill/usr/libexec/sixgill/scripts/wrap_gcc/basecc +ac_add_options --without-ccache + +CFLAGS="$CFLAGS -Wno-attributes" +CPPFLAGS="$CPPFLAGS -Wno-attributes" +CXXFLAGS="$CXXFLAGS -Wno-attributes" + +export PKG_CONFIG_LIBDIR=/usr/lib64/pkgconfig:/usr/share/pkgconfig +. $topsrcdir/build/unix/mozconfig.gtk + +. "$topsrcdir/build/mozconfig.common.override" diff --git a/browser/config/mozconfigs/linux64/l10n-mozconfig b/browser/config/mozconfigs/linux64/l10n-mozconfig new file mode 100644 index 000000000..4df482dc3 --- /dev/null +++ b/browser/config/mozconfigs/linux64/l10n-mozconfig @@ -0,0 +1,20 @@ +no_sccache=1 + +ac_add_options --with-l10n-base=../../l10n +ac_add_options --enable-update-channel=${MOZ_UPDATE_CHANNEL} +ac_add_options --enable-official-branding + +. $topsrcdir/build/unix/mozconfig.linux + +export MOZILLA_OFFICIAL=1 + +# Enable Telemetry +export MOZ_TELEMETRY_REPORTING=1 + +ac_add_options --disable-stdcxx-compat + +# Don't autoclobber l10n, as this can lead to missing binaries and broken builds +# Bug 1283438 +mk_add_options AUTOCLOBBER= + +. "$topsrcdir/build/mozconfig.common.override" diff --git a/browser/config/mozconfigs/linux64/nightly b/browser/config/mozconfigs/linux64/nightly new file mode 100644 index 000000000..ec360a99a --- /dev/null +++ b/browser/config/mozconfigs/linux64/nightly @@ -0,0 +1,15 @@ +. "$topsrcdir/browser/config/mozconfigs/linux64/common-opt" + + +ac_add_options --enable-verify-mar + +# This will overwrite the default of stripping everything and keep the symbol table. +# This is useful for profiling and debugging and only increases the package size +# by 2 MBs. +STRIP_FLAGS="--strip-debug" + +ac_add_options --with-branding=browser/branding/nightly + +. "$topsrcdir/build/mozconfig.rust" +. "$topsrcdir/build/mozconfig.common.override" +. "$topsrcdir/build/mozconfig.cache" diff --git a/browser/config/mozconfigs/linux64/nightly-asan b/browser/config/mozconfigs/linux64/nightly-asan new file mode 100644 index 000000000..833b530d2 --- /dev/null +++ b/browser/config/mozconfigs/linux64/nightly-asan @@ -0,0 +1,19 @@ +# We still need to build with debug symbols +ac_add_options --disable-debug +ac_add_options --enable-optimize="-O2 -gline-tables-only" + +# ASan specific options on Linux +ac_add_options --enable-valgrind + +. $topsrcdir/build/unix/mozconfig.asan + +export PKG_CONFIG_LIBDIR=/usr/lib64/pkgconfig:/usr/share/pkgconfig +. $topsrcdir/build/unix/mozconfig.gtk + +# 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" diff --git a/browser/config/mozconfigs/linux64/opt-static-analysis-clang b/browser/config/mozconfigs/linux64/opt-static-analysis-clang new file mode 100644 index 000000000..936cc46f7 --- /dev/null +++ b/browser/config/mozconfigs/linux64/opt-static-analysis-clang @@ -0,0 +1,22 @@ +MOZ_AUTOMATION_BUILD_SYMBOLS=0 +MOZ_AUTOMATION_PACKAGE_TESTS=0 +MOZ_AUTOMATION_L10N_CHECK=0 + +. "$topsrcdir/build/mozconfig.common" + +ac_add_options --enable-dmd + +# Use Clang as specified in manifest +CC="$topsrcdir/clang/bin/clang" +CXX="$topsrcdir/clang/bin/clang++" + +# Add the static checker +ac_add_options --enable-clang-plugin + +. "$topsrcdir/build/unix/mozconfig.stdcxx" + +export PKG_CONFIG_LIBDIR=/usr/lib64/pkgconfig:/usr/share/pkgconfig +. $topsrcdir/build/unix/mozconfig.gtk + +. "$topsrcdir/build/mozconfig.common.override" +. "$topsrcdir/build/mozconfig.cache" diff --git a/browser/config/mozconfigs/linux64/opt-tsan b/browser/config/mozconfigs/linux64/opt-tsan new file mode 100644 index 000000000..12b156633 --- /dev/null +++ b/browser/config/mozconfigs/linux64/opt-tsan @@ -0,0 +1,9 @@ +. $topsrcdir/build/unix/mozconfig.tsan + +export PKG_CONFIG_LIBDIR=/usr/lib64/pkgconfig:/usr/share/pkgconfig +. $topsrcdir/build/unix/mozconfig.gtk + +# Need this to prevent name conflicts with the normal nightly build packages +export MOZ_PKG_SPECIAL=tsan + +. "$topsrcdir/build/mozconfig.common.override" diff --git a/browser/config/mozconfigs/linux64/release b/browser/config/mozconfigs/linux64/release new file mode 100644 index 000000000..2090f3525 --- /dev/null +++ b/browser/config/mozconfigs/linux64/release @@ -0,0 +1,22 @@ +# This make file should be identical to the beta mozconfig, apart from the +# safeguard below +MOZ_AUTOMATION_SDK=${MOZ_AUTOMATION_SDK-1} + +if [ -n "$ENABLE_RELEASE_PROMOTION" ]; then + MOZ_AUTOMATION_UPLOAD_SYMBOLS=${MOZ_AUTOMATION_UPLOAD_SYMBOLS-1} + MOZ_AUTOMATION_UPDATE_PACKAGING=1 +fi + +. "$topsrcdir/browser/config/mozconfigs/linux64/common-opt" + +ac_add_options --enable-official-branding +ac_add_options --enable-verify-mar + +mk_add_options MOZ_PGO=1 + +# safeguard against someone forgetting to re-set EARLY_BETA_OR_EARLIER in +# defines.sh during the beta cycle +export BUILDING_RELEASE=1 + +. "$topsrcdir/build/mozconfig.rust" +. "$topsrcdir/build/mozconfig.common.override" diff --git a/browser/config/mozconfigs/linux64/source b/browser/config/mozconfigs/linux64/source new file mode 100644 index 000000000..4a3c6996b --- /dev/null +++ b/browser/config/mozconfigs/linux64/source @@ -0,0 +1,4 @@ +# The source "build" only needs a mozconfig because we use the build system as +# our script for generating it. This allows us to run configure without any +# extra dependencies on specific toolchains, e.g. gtk3. +ac_add_options --disable-compile-environment diff --git a/browser/config/mozconfigs/linux64/valgrind b/browser/config/mozconfigs/linux64/valgrind new file mode 100644 index 000000000..2efc6e3bb --- /dev/null +++ b/browser/config/mozconfigs/linux64/valgrind @@ -0,0 +1,9 @@ +. $topsrcdir/browser/config/mozconfigs/linux64/nightly + +ac_add_options --enable-valgrind +ac_add_options --disable-jemalloc +ac_add_options --disable-install-strip + +# Include the override mozconfig again (even though the above includes it) +# since it's supposed to override everything. +. "$topsrcdir/build/mozconfig.common.override" diff --git a/browser/config/mozconfigs/macosx-universal/beta b/browser/config/mozconfigs/macosx-universal/beta new file mode 100644 index 000000000..937185e94 --- /dev/null +++ b/browser/config/mozconfigs/macosx-universal/beta @@ -0,0 +1,15 @@ +MOZ_AUTOMATION_SDK=${MOZ_AUTOMATION_SDK-1} + +if [ -n "$ENABLE_RELEASE_PROMOTION" ]; then + MOZ_AUTOMATION_UPLOAD_SYMBOLS=${MOZ_AUTOMATION_UPLOAD_SYMBOLS-1} + MOZ_AUTOMATION_UPDATE_PACKAGING=1 +fi + +. "$topsrcdir/browser/config/mozconfigs/macosx-universal/common-opt" + +ac_add_options --enable-official-branding +ac_add_options --enable-verify-mar + +. "$topsrcdir/build/mozconfig.rust" +. "$topsrcdir/build/mozconfig.common.override" +. "$topsrcdir/build/mozconfig.cache" diff --git a/browser/config/mozconfigs/macosx-universal/common-opt b/browser/config/mozconfigs/macosx-universal/common-opt new file mode 100644 index 000000000..145d32fc9 --- /dev/null +++ b/browser/config/mozconfigs/macosx-universal/common-opt @@ -0,0 +1,18 @@ +# This file is sourced by the nightly, beta, and release mozconfigs. + +. $topsrcdir/build/macosx/universal/mozconfig + +# Universal builds override the default of browser (bug 575283 comment 29) +ac_add_options --enable-application=browser + +ac_add_options --enable-update-channel=${MOZ_UPDATE_CHANNEL} +ac_add_options --with-google-api-keyfile=/builds/gapi.data +ac_add_options --with-mozilla-api-keyfile=/builds/mozilla-desktop-geoloc-api.key + +# Needed to enable breakpad in application.ini +export MOZILLA_OFFICIAL=1 + +export MOZ_TELEMETRY_REPORTING=1 + +# Package js shell. +export MOZ_PACKAGE_JSSHELL=1 diff --git a/browser/config/mozconfigs/macosx-universal/l10n-mozconfig b/browser/config/mozconfigs/macosx-universal/l10n-mozconfig new file mode 100644 index 000000000..80a06ed65 --- /dev/null +++ b/browser/config/mozconfigs/macosx-universal/l10n-mozconfig @@ -0,0 +1,22 @@ +. "$topsrcdir/browser/config/mozconfigs/common" +. "$topsrcdir/build/macosx/mozconfig.common" + +ac_add_options --with-l10n-base=../../l10n +ac_add_options --enable-update-channel=${MOZ_UPDATE_CHANNEL} +ac_add_options --enable-official-branding + +if test "${MOZ_UPDATE_CHANNEL}" = "nightly"; then +ac_add_options --with-macbundlename-prefix=Firefox +fi + +export MOZILLA_OFFICIAL=1 + +# Enable Telemetry +export MOZ_TELEMETRY_REPORTING=1 + +# Don't autoclobber l10n, as this can lead to missing binaries and broken builds +# Bug 1283438 +mk_add_options AUTOCLOBBER= + +. "$topsrcdir/build/mozconfig.common.override" +. "$topsrcdir/build/mozconfig.cache" diff --git a/browser/config/mozconfigs/macosx-universal/nightly b/browser/config/mozconfigs/macosx-universal/nightly new file mode 100644 index 000000000..7af737e56 --- /dev/null +++ b/browser/config/mozconfigs/macosx-universal/nightly @@ -0,0 +1,21 @@ +. "$topsrcdir/browser/config/mozconfigs/macosx-universal/common-opt" + +ac_add_options --disable-install-strip +ac_add_options --enable-verify-mar + +ac_add_options --enable-instruments + +# Cross-universal builds fail when dtrace is enabled +if test `uname -s` != Linux; then + ac_add_options --enable-dtrace +fi + +if test "${MOZ_UPDATE_CHANNEL}" = "nightly"; then +ac_add_options --with-macbundlename-prefix=Firefox +fi + +ac_add_options --with-branding=browser/branding/nightly + +. "$topsrcdir/build/mozconfig.rust" +. "$topsrcdir/build/mozconfig.common.override" +. "$topsrcdir/build/mozconfig.cache" diff --git a/browser/config/mozconfigs/macosx-universal/release b/browser/config/mozconfigs/macosx-universal/release new file mode 100644 index 000000000..4700886aa --- /dev/null +++ b/browser/config/mozconfigs/macosx-universal/release @@ -0,0 +1,21 @@ +# This make file should be identical to the beta mozconfig, apart from the +# safeguard below +MOZ_AUTOMATION_SDK=${MOZ_AUTOMATION_SDK-1} + +if [ -n "$ENABLE_RELEASE_PROMOTION" ]; then + MOZ_AUTOMATION_UPLOAD_SYMBOLS=${MOZ_AUTOMATION_UPLOAD_SYMBOLS-1} + MOZ_AUTOMATION_UPDATE_PACKAGING=1 +fi + +. "$topsrcdir/browser/config/mozconfigs/macosx-universal/common-opt" + +ac_add_options --enable-official-branding +ac_add_options --enable-verify-mar + +# safeguard against someone forgetting to re-set EARLY_BETA_OR_EARLIER in +# defines.sh during the beta cycle +export BUILDING_RELEASE=1 + +. "$topsrcdir/build/mozconfig.rust" +. "$topsrcdir/build/mozconfig.common.override" +. "$topsrcdir/build/mozconfig.cache" diff --git a/browser/config/mozconfigs/macosx64/add-on-devel b/browser/config/mozconfigs/macosx64/add-on-devel new file mode 100644 index 000000000..e76df4dfa --- /dev/null +++ b/browser/config/mozconfigs/macosx64/add-on-devel @@ -0,0 +1,9 @@ +. $topsrcdir/browser/config/mozconfigs/macosx64/nightly + +#add-on signing is checked but not enforced +MOZ_REQUIRE_SIGNING=0 +ac_add_options --with-branding=browser/branding/unofficial +ac_add_options --enable-update-channel=default + +# Need this to prevent name conflicts with the normal nightly build packages +export MOZ_PKG_SPECIAL=add-on-devel diff --git a/browser/config/mozconfigs/macosx64/artifact b/browser/config/mozconfigs/macosx64/artifact new file mode 100644 index 000000000..c25b21122 --- /dev/null +++ b/browser/config/mozconfigs/macosx64/artifact @@ -0,0 +1,10 @@ +MOZ_AUTOMATION_BUILD_SYMBOLS=0 +MOZ_AUTOMATION_L10N_CHECK=0 + +. "$topsrcdir/build/macosx/mozconfig.common" +. "$topsrcdir/build/mozconfig.common.override" + +ac_add_options --enable-artifact-builds +ac_add_options --enable-artifact-build-symbols +unset CC +unset CXX diff --git a/browser/config/mozconfigs/macosx64/debug b/browser/config/mozconfigs/macosx64/debug new file mode 100644 index 000000000..4b052aa00 --- /dev/null +++ b/browser/config/mozconfigs/macosx64/debug @@ -0,0 +1,24 @@ +. $topsrcdir/build/macosx/mozconfig.common + +ac_add_options --enable-debug +ac_add_options --enable-dmd +ac_add_options --enable-verify-mar + +# Needed to enable breakpad in application.ini +export MOZILLA_OFFICIAL=1 + +# Enable Telemetry +export MOZ_TELEMETRY_REPORTING=1 + +if test "${MOZ_UPDATE_CHANNEL}" = "nightly"; then +ac_add_options --with-macbundlename-prefix=Firefox +fi + +# Package js shell. +export MOZ_PACKAGE_JSSHELL=1 + +ac_add_options --with-branding=browser/branding/nightly + +. "$topsrcdir/build/mozconfig.rust" +. "$topsrcdir/build/mozconfig.common.override" +. "$topsrcdir/build/mozconfig.cache" diff --git a/browser/config/mozconfigs/macosx64/debug-artifact b/browser/config/mozconfigs/macosx64/debug-artifact new file mode 100644 index 000000000..3afa8e4bf --- /dev/null +++ b/browser/config/mozconfigs/macosx64/debug-artifact @@ -0,0 +1,12 @@ +MOZ_AUTOMATION_BUILD_SYMBOLS=0 +MOZ_AUTOMATION_L10N_CHECK=0 + +. "$topsrcdir/build/macosx/mozconfig.common" +. "$topsrcdir/build/mozconfig.common.override" + +ac_add_options --enable-artifact-builds +ac_add_options --enable-artifact-build-symbols +unset CC +unset CXX + +ac_add_options --enable-debug diff --git a/browser/config/mozconfigs/macosx64/debug-asan b/browser/config/mozconfigs/macosx64/debug-asan new file mode 100644 index 000000000..28d23798b --- /dev/null +++ b/browser/config/mozconfigs/macosx64/debug-asan @@ -0,0 +1,20 @@ +. $topsrcdir/build/unix/mozconfig.asan + +ac_add_options --enable-application=browser +ac_add_options --enable-debug +ac_add_options --enable-optimize="-O1" + +# Enable Telemetry +export MOZ_TELEMETRY_REPORTING=1 + +# Package js shell. +export MOZ_PACKAGE_JSSHELL=1 + +if test "${MOZ_UPDATE_CHANNEL}" = "nightly"; then +ac_add_options --with-macbundlename-prefix=Firefox +fi + +# Need this to prevent name conflicts with the normal nightly build packages +export MOZ_PKG_SPECIAL=asan + +. "$topsrcdir/build/mozconfig.common.override" diff --git a/browser/config/mozconfigs/macosx64/debug-static-analysis b/browser/config/mozconfigs/macosx64/debug-static-analysis new file mode 100644 index 000000000..bb19af612 --- /dev/null +++ b/browser/config/mozconfigs/macosx64/debug-static-analysis @@ -0,0 +1,13 @@ +MOZ_AUTOMATION_BUILD_SYMBOLS=0 +MOZ_AUTOMATION_PACKAGE_TESTS=0 +MOZ_AUTOMATION_L10N_CHECK=0 + +. $topsrcdir/build/macosx/mozconfig.common + +ac_add_options --enable-debug +ac_add_options --enable-dmd + +ac_add_options --enable-clang-plugin + +. "$topsrcdir/build/mozconfig.common.override" +. "$topsrcdir/build/mozconfig.cache" diff --git a/browser/config/mozconfigs/macosx64/l10n-mozconfig b/browser/config/mozconfigs/macosx64/l10n-mozconfig new file mode 100644 index 000000000..40ad84086 --- /dev/null +++ b/browser/config/mozconfigs/macosx64/l10n-mozconfig @@ -0,0 +1,12 @@ +. "$topsrcdir/browser/config/mozconfigs/common" + +ac_add_options --with-l10n-base=../../l10n +ac_add_options --enable-update-channel=${MOZ_UPDATE_CHANNEL} +ac_add_options --enable-official-branding + +# Don't autoclobber l10n, as this can lead to missing binaries and broken builds +# Bug 1283438 +mk_add_options AUTOCLOBBER= + +. "$topsrcdir/build/mozconfig.common.override" +. "$topsrcdir/build/mozconfig.cache" diff --git a/browser/config/mozconfigs/macosx64/nightly b/browser/config/mozconfigs/macosx64/nightly new file mode 100644 index 000000000..12fec0474 --- /dev/null +++ b/browser/config/mozconfigs/macosx64/nightly @@ -0,0 +1,22 @@ +. $topsrcdir/build/macosx/mozconfig.common + +ac_add_options --enable-verify-mar + +# Needed to enable breakpad in application.ini +export MOZILLA_OFFICIAL=1 + +# Enable Telemetry +export MOZ_TELEMETRY_REPORTING=1 + +if test "${MOZ_UPDATE_CHANNEL}" = "nightly"; then +ac_add_options --with-macbundlename-prefix=Firefox +fi + +# Package js shell. +export MOZ_PACKAGE_JSSHELL=1 + +ac_add_options --with-branding=browser/branding/nightly + +. "$topsrcdir/build/mozconfig.rust" +. "$topsrcdir/build/mozconfig.common.override" +. "$topsrcdir/build/mozconfig.cache" diff --git a/browser/config/mozconfigs/macosx64/opt-static-analysis b/browser/config/mozconfigs/macosx64/opt-static-analysis new file mode 100644 index 000000000..72ed3d6bd --- /dev/null +++ b/browser/config/mozconfigs/macosx64/opt-static-analysis @@ -0,0 +1,16 @@ +MOZ_AUTOMATION_BUILD_SYMBOLS=0 +MOZ_AUTOMATION_PACKAGE_TESTS=0 +MOZ_AUTOMATION_L10N_CHECK=0 + +. $topsrcdir/build/macosx/mozconfig.common + +ac_add_options --disable-debug +ac_add_options --enable-optimize +ac_add_options --enable-dmd + +ac_add_options --enable-clang-plugin + +. "$topsrcdir/build/mozconfig.rust" +. "$topsrcdir/build/mozconfig.common.override" +. "$topsrcdir/build/mozconfig.cache" + diff --git a/browser/config/mozconfigs/whitelist b/browser/config/mozconfigs/whitelist new file mode 100644 index 000000000..65b66b6f2 --- /dev/null +++ b/browser/config/mozconfigs/whitelist @@ -0,0 +1,100 @@ +# 'nightly' contains things that are in nightly mozconfigs and allowed to be missing from release builds. +# Other keys in whitelist contain things are in that branches mozconfigs and allowed to be missing from nightly builds. +whitelist = { + 'release': {}, + 'nightly': {}, + } + +all_platforms = ['win64', 'win32', 'linux32', 'linux64', 'macosx-universal'] + +for platform in all_platforms: + whitelist['nightly'][platform] = [ + 'ac_add_options --enable-update-channel=nightly', + 'ac_add_options --with-branding=browser/branding/nightly', + 'ac_add_options --enable-profiling', + 'mk_add_options CLIENT_PY_ARGS="--hg-options=\'--verbose --time\' --hgtool=../tools/buildfarm/utils/hgtool.py --skip-chatzilla --skip-comm --skip-inspector --tinderbox-print"' + ] + +for platform in ['linux32', 'linux64', 'macosx-universal']: + whitelist['nightly'][platform] += [ + 'mk_add_options MOZ_MAKE_FLAGS="-j4"', + ] + +whitelist['nightly']['linux32'] += [ + 'CXX=$REAL_CXX', + 'CXX="ccache $REAL_CXX"', + 'CC="ccache $REAL_CC"', + 'mk_add_options PROFILE_GEN_SCRIPT=@TOPSRCDIR@/build/profile_pageloader.pl', + 'ac_add_options --with-ccache=/usr/bin/ccache', + '. "$topsrcdir/build/mozconfig.cache"', + 'export MOZILLA_OFFICIAL=1', + 'export MOZ_TELEMETRY_REPORTING=1', + "mk_add_options PROFILE_GEN_SCRIPT='$(PYTHON) @MOZ_OBJDIR@/_profile/pgo/profileserver.py 10'", + 'STRIP_FLAGS="--strip-debug"', +] + +whitelist['nightly']['linux64'] += [ + 'export MOZILLA_OFFICIAL=1', + 'export MOZ_TELEMETRY_REPORTING=1', + "mk_add_options PROFILE_GEN_SCRIPT='$(PYTHON) @MOZ_OBJDIR@/_profile/pgo/profileserver.py 10'", + 'STRIP_FLAGS="--strip-debug"', + 'ac_add_options --with-ccache=/usr/bin/ccache', + '. "$topsrcdir/build/mozconfig.cache"', +] + +whitelist['nightly']['macosx-universal'] += [ + 'if test "${MOZ_UPDATE_CHANNEL}" = "nightly"; then', + 'ac_add_options --with-macbundlename-prefix=Firefox', + 'fi', + 'mk_add_options MOZ_MAKE_FLAGS="-j12"', + 'ac_add_options --with-ccache', + '. "$topsrcdir/build/mozconfig.cache"', + 'ac_add_options --disable-install-strip', + 'ac_add_options --enable-instruments', + 'ac_add_options --enable-dtrace', +] + +whitelist['nightly']['win32'] += [ + '. $topsrcdir/configs/mozilla2/win32/include/choose-make-flags', + 'mk_add_options MOZ_MAKE_FLAGS=-j1', + '. "$topsrcdir/build/mozconfig.cache"', + 'if test "$IS_NIGHTLY" != ""; then', + 'ac_add_options --disable-auto-deps', + 'fi', +] +whitelist['nightly']['win64'] += [ + '. "$topsrcdir/browser/config/mozconfigs/win64/common-win64"', + '. "$topsrcdir/build/mozconfig.cache"', +] + +for platform in all_platforms: + whitelist['release'][platform] = [ + 'ac_add_options --enable-update-channel=release', + 'ac_add_options --enable-official-branding', + 'mk_add_options MOZ_MAKE_FLAGS="-j4"', + 'export BUILDING_RELEASE=1', + 'if [ -n "$ENABLE_RELEASE_PROMOTION" ]; then', + 'MOZ_AUTOMATION_UPLOAD_SYMBOLS=1', + 'MOZ_AUTOMATION_UPDATE_PACKAGING=1', + 'fi', + 'MOZ_AUTOMATION_SDK=${MOZ_AUTOMATION_SDK-1}', + ] +whitelist['release']['win32'] += ['mk_add_options MOZ_PGO=1'] +whitelist['release']['win64'] += ['mk_add_options MOZ_PGO=1'] + +whitelist['release']['linux32'] += [ + 'export MOZILLA_OFFICIAL=1', + 'export MOZ_TELEMETRY_REPORTING=1', + 'mk_add_options MOZ_PGO=1', + "mk_add_options PROFILE_GEN_SCRIPT='$(PYTHON) @MOZ_OBJDIR@/_profile/pgo/profileserver.py 10'", +] +whitelist['release']['linux64'] += [ + 'export MOZILLA_OFFICIAL=1', + 'export MOZ_TELEMETRY_REPORTING=1', + 'mk_add_options MOZ_PGO=1', + "mk_add_options PROFILE_GEN_SCRIPT='$(PYTHON) @MOZ_OBJDIR@/_profile/pgo/profileserver.py 10'", +] + +if __name__ == '__main__': + import pprint + pprint.pprint(whitelist) diff --git a/browser/config/mozconfigs/win32/add-on-devel b/browser/config/mozconfigs/win32/add-on-devel new file mode 100644 index 000000000..d84c1f5e4 --- /dev/null +++ b/browser/config/mozconfigs/win32/add-on-devel @@ -0,0 +1,9 @@ +. $topsrcdir/browser/config/mozconfigs/win32/nightly + +#add-on signing is checked but not enforced +MOZ_REQUIRE_SIGNING=0 +ac_add_options --with-branding=browser/branding/unofficial +ac_add_options --enable-update-channel=default + +# Need this to prevent name conflicts with the normal nightly build packages +export MOZ_PKG_SPECIAL=add-on-devel diff --git a/browser/config/mozconfigs/win32/artifact b/browser/config/mozconfigs/win32/artifact new file mode 100644 index 000000000..888c99668 --- /dev/null +++ b/browser/config/mozconfigs/win32/artifact @@ -0,0 +1,10 @@ +MOZ_AUTOMATION_BUILD_SYMBOLS=0 +MOZ_AUTOMATION_L10N_CHECK=0 + +. "$topsrcdir/browser/config/mozconfigs/common" +. "$topsrcdir/build/mozconfig.win-common" +. "$topsrcdir/build/win32/mozconfig.vs-latest" +. "$topsrcdir/build/mozconfig.common.override" + +ac_add_options --enable-artifact-builds +ac_add_options --enable-artifact-build-symbols diff --git a/browser/config/mozconfigs/win32/beta b/browser/config/mozconfigs/win32/beta new file mode 100644 index 000000000..cc14d6800 --- /dev/null +++ b/browser/config/mozconfigs/win32/beta @@ -0,0 +1,18 @@ +MOZ_AUTOMATION_SDK=${MOZ_AUTOMATION_SDK-1} + +if [ -n "$ENABLE_RELEASE_PROMOTION" ]; then + MOZ_AUTOMATION_UPLOAD_SYMBOLS=1 + MOZ_AUTOMATION_UPDATE_PACKAGING=1 +fi + +. "$topsrcdir/build/mozconfig.win-common" +. "$topsrcdir/browser/config/mozconfigs/win32/common-opt" + +mk_add_options MOZ_PGO=1 + +ac_add_options --enable-official-branding +ac_add_options --enable-verify-mar + +. "$topsrcdir/build/mozconfig.rust" + +. "$topsrcdir/build/mozconfig.common.override" diff --git a/browser/config/mozconfigs/win32/common-opt b/browser/config/mozconfigs/win32/common-opt new file mode 100644 index 000000000..d43a9878b --- /dev/null +++ b/browser/config/mozconfigs/win32/common-opt @@ -0,0 +1,26 @@ +# This file is sourced by the nightly, beta, and release mozconfigs. + +. "$topsrcdir/browser/config/mozconfigs/common" + +ac_add_options --enable-update-channel=${MOZ_UPDATE_CHANNEL} +ac_add_options --enable-jemalloc +ac_add_options --enable-require-all-d3dc-versions + +if [ -f /c/builds/gapi.data ]; then + _gapi_keyfile=c:/builds/gapi.data +else + _gapi_keyfile=e:/builds/gapi.data +fi +ac_add_options --with-google-api-keyfile=${_gapi_keyfile} + +ac_add_options --with-mozilla-api-keyfile=c:/builds/mozilla-desktop-geoloc-api.key + +# Needed to enable breakpad in application.ini +export MOZILLA_OFFICIAL=1 + +export MOZ_TELEMETRY_REPORTING=1 + +. $topsrcdir/build/win32/mozconfig.vs-latest + +# Package js shell. +export MOZ_PACKAGE_JSSHELL=1 diff --git a/browser/config/mozconfigs/win32/debug b/browser/config/mozconfigs/win32/debug new file mode 100644 index 000000000..6beee93c2 --- /dev/null +++ b/browser/config/mozconfigs/win32/debug @@ -0,0 +1,27 @@ +. "$topsrcdir/build/mozconfig.win-common" +MOZ_AUTOMATION_L10N_CHECK=0 +. "$topsrcdir/browser/config/mozconfigs/common" + +ac_add_options --enable-debug +ac_add_options --enable-dmd +ac_add_options --enable-profiling # needed for --enable-dmd to work on Windows +ac_add_options --enable-verify-mar +ac_add_options --enable-require-all-d3dc-versions + +# Needed to enable breakpad in application.ini +export MOZILLA_OFFICIAL=1 + +# Enable Telemetry +export MOZ_TELEMETRY_REPORTING=1 + +. $topsrcdir/build/win32/mozconfig.vs-latest + +# Package js shell. +export MOZ_PACKAGE_JSSHELL=1 + +ac_add_options --with-branding=browser/branding/nightly + +. "$topsrcdir/build/mozconfig.rust" + +. "$topsrcdir/build/mozconfig.common.override" +. "$topsrcdir/build/mozconfig.cache" diff --git a/browser/config/mozconfigs/win32/debug-artifact b/browser/config/mozconfigs/win32/debug-artifact new file mode 100644 index 000000000..5a31b8b3e --- /dev/null +++ b/browser/config/mozconfigs/win32/debug-artifact @@ -0,0 +1,12 @@ +MOZ_AUTOMATION_BUILD_SYMBOLS=0 +MOZ_AUTOMATION_L10N_CHECK=0 + +. "$topsrcdir/browser/config/mozconfigs/common" +. "$topsrcdir/build/mozconfig.win-common" +. "$topsrcdir/build/win32/mozconfig.vs-latest" +. "$topsrcdir/build/mozconfig.common.override" + +ac_add_options --enable-artifact-builds +ac_add_options --enable-artifact-build-symbols + +ac_add_options --enable-debug diff --git a/browser/config/mozconfigs/win32/debug-static-analysis b/browser/config/mozconfigs/win32/debug-static-analysis new file mode 100644 index 000000000..efc0820b5 --- /dev/null +++ b/browser/config/mozconfigs/win32/debug-static-analysis @@ -0,0 +1,19 @@ +MOZ_AUTOMATION_BUILD_SYMBOLS=0 +MOZ_AUTOMATION_PACKAGE_TESTS=0 +MOZ_AUTOMATION_L10N_CHECK=0 + +. "$topsrcdir/build/mozconfig.win-common" +. "$topsrcdir/browser/config/mozconfigs/common" + +ac_add_options --enable-debug +ac_add_options --enable-dmd + +ac_add_options --enable-clang-plugin + +. $topsrcdir/build/win32/mozconfig.vs-latest + +. "$topsrcdir/build/mozconfig.rust" + +. "$topsrcdir/build/mozconfig.common.override" +. "$topsrcdir/build/mozconfig.cache" +. "$topsrcdir/build/mozconfig.clang-cl" diff --git a/browser/config/mozconfigs/win32/l10n-mozconfig b/browser/config/mozconfigs/win32/l10n-mozconfig new file mode 100644 index 000000000..d05067e03 --- /dev/null +++ b/browser/config/mozconfigs/win32/l10n-mozconfig @@ -0,0 +1,19 @@ +. "$topsrcdir/browser/config/mozconfigs/common" + +ac_add_options --enable-update-channel=${MOZ_UPDATE_CHANNEL} +ac_add_options --with-l10n-base=../../l10n +ac_add_options --with-windows-version=603 +ac_add_options --enable-official-branding + +export MOZILLA_OFFICIAL=1 + +# Enable Telemetry +export MOZ_TELEMETRY_REPORTING=1 + +# Don't autoclobber l10n, as this can lead to missing binaries and broken builds +# Bug 1283438 +mk_add_options AUTOCLOBBER= + +. $topsrcdir/build/win32/mozconfig.vs-latest + +. "$topsrcdir/build/mozconfig.common.override" diff --git a/browser/config/mozconfigs/win32/nightly b/browser/config/mozconfigs/win32/nightly new file mode 100644 index 000000000..210004905 --- /dev/null +++ b/browser/config/mozconfigs/win32/nightly @@ -0,0 +1,12 @@ +. "$topsrcdir/build/mozconfig.win-common" +. "$topsrcdir/browser/config/mozconfigs/win32/common-opt" + + +ac_add_options --enable-verify-mar + +ac_add_options --with-branding=browser/branding/nightly + +. "$topsrcdir/build/mozconfig.rust" + +. "$topsrcdir/build/mozconfig.common.override" +. "$topsrcdir/build/mozconfig.cache" diff --git a/browser/config/mozconfigs/win32/release b/browser/config/mozconfigs/win32/release new file mode 100644 index 000000000..daaa45f89 --- /dev/null +++ b/browser/config/mozconfigs/win32/release @@ -0,0 +1,24 @@ +# This make file should be identical to the beta mozconfig, apart from the +# safeguard below +MOZ_AUTOMATION_SDK=${MOZ_AUTOMATION_SDK-1} + +if [ -n "$ENABLE_RELEASE_PROMOTION" ]; then + MOZ_AUTOMATION_UPLOAD_SYMBOLS=1 + MOZ_AUTOMATION_UPDATE_PACKAGING=1 +fi + +. "$topsrcdir/build/mozconfig.win-common" +. "$topsrcdir/browser/config/mozconfigs/win32/common-opt" + +mk_add_options MOZ_PGO=1 + +ac_add_options --enable-official-branding +ac_add_options --enable-verify-mar + +# safeguard against someone forgetting to re-set EARLY_BETA_OR_EARLIER in +# defines.sh during the beta cycle +export BUILDING_RELEASE=1 + +. "$topsrcdir/build/mozconfig.rust" + +. "$topsrcdir/build/mozconfig.common.override" diff --git a/browser/config/mozconfigs/win64/add-on-devel b/browser/config/mozconfigs/win64/add-on-devel new file mode 100644 index 000000000..47d0bf589 --- /dev/null +++ b/browser/config/mozconfigs/win64/add-on-devel @@ -0,0 +1,9 @@ +. $topsrcdir/browser/config/mozconfigs/win64/nightly + +#add-on signing is checked but not enforced +MOZ_REQUIRE_SIGNING=0 +ac_add_options --with-branding=browser/branding/unofficial +ac_add_options --enable-update-channel=default + +#Need this to prevent name conflicts with the normal nightly build packages +export MOZ_PKG_SPECIAL=add-on-devel diff --git a/browser/config/mozconfigs/win64/artifact b/browser/config/mozconfigs/win64/artifact new file mode 100644 index 000000000..ce6969667 --- /dev/null +++ b/browser/config/mozconfigs/win64/artifact @@ -0,0 +1,11 @@ +MOZ_AUTOMATION_BUILD_SYMBOLS=0 +MOZ_AUTOMATION_L10N_CHECK=0 + +. "$topsrcdir/browser/config/mozconfigs/win64/common-win64" +. "$topsrcdir/browser/config/mozconfigs/common" +. "$topsrcdir/build/mozconfig.win-common" +. "$topsrcdir/build/win64/mozconfig.vs-latest" +. "$topsrcdir/build/mozconfig.common.override" + +ac_add_options --enable-artifact-builds +ac_add_options --enable-artifact-build-symbols diff --git a/browser/config/mozconfigs/win64/beta b/browser/config/mozconfigs/win64/beta new file mode 100644 index 000000000..6fc4ebe36 --- /dev/null +++ b/browser/config/mozconfigs/win64/beta @@ -0,0 +1,19 @@ +MOZ_AUTOMATION_SDK=${MOZ_AUTOMATION_SDK-1} + +if [ -n "$ENABLE_RELEASE_PROMOTION" ]; then + MOZ_AUTOMATION_UPLOAD_SYMBOLS=1 + MOZ_AUTOMATION_UPDATE_PACKAGING=1 +fi + +. "$topsrcdir/build/mozconfig.win-common" +. "$topsrcdir/browser/config/mozconfigs/win64/common-win64" +. "$topsrcdir/browser/config/mozconfigs/win64/common-opt" + +mk_add_options MOZ_PGO=1 + +ac_add_options --enable-official-branding +ac_add_options --enable-verify-mar + +. "$topsrcdir/build/mozconfig.rust" + +. "$topsrcdir/build/mozconfig.common.override" diff --git a/browser/config/mozconfigs/win64/common-opt b/browser/config/mozconfigs/win64/common-opt new file mode 100644 index 000000000..40fba7f76 --- /dev/null +++ b/browser/config/mozconfigs/win64/common-opt @@ -0,0 +1,24 @@ +# This file is sourced by the nightly, beta, and release mozconfigs. + +. "$topsrcdir/browser/config/mozconfigs/common" + +ac_add_options --enable-update-channel=${MOZ_UPDATE_CHANNEL} +ac_add_options --enable-jemalloc +if [ -f /c/builds/gapi.data ]; then + _gapi_keyfile=c:/builds/gapi.data +else + _gapi_keyfile=e:/builds/gapi.data +fi +ac_add_options --with-google-api-keyfile=${_gapi_keyfile} + +ac_add_options --with-mozilla-api-keyfile=c:/builds/mozilla-desktop-geoloc-api.key + +# Needed to enable breakpad in application.ini +export MOZILLA_OFFICIAL=1 + +export MOZ_TELEMETRY_REPORTING=1 + +. $topsrcdir/build/win64/mozconfig.vs-latest + +# Package js shell. +export MOZ_PACKAGE_JSSHELL=1 diff --git a/browser/config/mozconfigs/win64/common-win64 b/browser/config/mozconfigs/win64/common-win64 new file mode 100644 index 000000000..8f167cad1 --- /dev/null +++ b/browser/config/mozconfigs/win64/common-win64 @@ -0,0 +1,5 @@ +# This file is used by all Win64 builds + +ac_add_options --target=x86_64-pc-mingw32 +ac_add_options --host=x86_64-pc-mingw32 + diff --git a/browser/config/mozconfigs/win64/debug b/browser/config/mozconfigs/win64/debug new file mode 100644 index 000000000..db4eb5940 --- /dev/null +++ b/browser/config/mozconfigs/win64/debug @@ -0,0 +1,29 @@ +. "$topsrcdir/build/mozconfig.win-common" +MOZ_AUTOMATION_L10N_CHECK=0 +. "$topsrcdir/browser/config/mozconfigs/common" + +ac_add_options --target=x86_64-pc-mingw32 +ac_add_options --host=x86_64-pc-mingw32 + +ac_add_options --enable-debug +ac_add_options --enable-dmd +ac_add_options --enable-profiling # needed for --enable-dmd to work on Windows +ac_add_options --enable-verify-mar + +# Needed to enable breakpad in application.ini +export MOZILLA_OFFICIAL=1 + +# Enable Telemetry +export MOZ_TELEMETRY_REPORTING=1 + +# Package js shell. +export MOZ_PACKAGE_JSSHELL=1 + +ac_add_options --with-branding=browser/branding/nightly + +. $topsrcdir/build/win64/mozconfig.vs-latest + +. "$topsrcdir/build/mozconfig.rust" + +. "$topsrcdir/build/mozconfig.common.override" +. "$topsrcdir/build/mozconfig.cache" diff --git a/browser/config/mozconfigs/win64/debug-artifact b/browser/config/mozconfigs/win64/debug-artifact new file mode 100644 index 000000000..bbba268fb --- /dev/null +++ b/browser/config/mozconfigs/win64/debug-artifact @@ -0,0 +1,13 @@ +MOZ_AUTOMATION_BUILD_SYMBOLS=0 +MOZ_AUTOMATION_L10N_CHECK=0 + +. "$topsrcdir/browser/config/mozconfigs/win64/common-win64" +. "$topsrcdir/browser/config/mozconfigs/common" +. "$topsrcdir/build/mozconfig.win-common" +. "$topsrcdir/build/win64/mozconfig.vs-latest" +. "$topsrcdir/build/mozconfig.common.override" + +ac_add_options --enable-artifact-builds +ac_add_options --enable-artifact-build-symbols + +ac_add_options --enable-debug diff --git a/browser/config/mozconfigs/win64/l10n-mozconfig b/browser/config/mozconfigs/win64/l10n-mozconfig new file mode 100644 index 000000000..3b9b4af1c --- /dev/null +++ b/browser/config/mozconfigs/win64/l10n-mozconfig @@ -0,0 +1,20 @@ +. "$topsrcdir/browser/config/mozconfigs/common" +. "$topsrcdir/browser/config/mozconfigs/win64/common-win64" + +ac_add_options --enable-update-channel=${MOZ_UPDATE_CHANNEL} +ac_add_options --with-l10n-base=../../l10n +ac_add_options --with-windows-version=603 +ac_add_options --enable-official-branding + +export MOZILLA_OFFICIAL=1 + +# Enable Telemetry +export MOZ_TELEMETRY_REPORTING=1 + +# Don't autoclobber l10n, as this can lead to missing binaries and broken builds +# Bug 1283438 +mk_add_options AUTOCLOBBER= + +. $topsrcdir/build/win64/mozconfig.vs-latest + +. "$topsrcdir/build/mozconfig.common.override" diff --git a/browser/config/mozconfigs/win64/nightly b/browser/config/mozconfigs/win64/nightly new file mode 100644 index 000000000..aee22f1c0 --- /dev/null +++ b/browser/config/mozconfigs/win64/nightly @@ -0,0 +1,13 @@ +. "$topsrcdir/build/mozconfig.win-common" +. "$topsrcdir/browser/config/mozconfigs/win64/common-win64" +. "$topsrcdir/browser/config/mozconfigs/win64/common-opt" + + +ac_add_options --enable-verify-mar + +ac_add_options --with-branding=browser/branding/nightly + +. "$topsrcdir/build/mozconfig.rust" + +. "$topsrcdir/build/mozconfig.common.override" +. "$topsrcdir/build/mozconfig.cache" diff --git a/browser/config/mozconfigs/win64/release b/browser/config/mozconfigs/win64/release new file mode 100644 index 000000000..62e83205f --- /dev/null +++ b/browser/config/mozconfigs/win64/release @@ -0,0 +1,25 @@ +# This make file should be identical to the beta mozconfig, apart from the +# safeguard below +MOZ_AUTOMATION_SDK=${MOZ_AUTOMATION_SDK-1} + +if [ -n "$ENABLE_RELEASE_PROMOTION" ]; then + MOZ_AUTOMATION_UPLOAD_SYMBOLS=1 + MOZ_AUTOMATION_UPDATE_PACKAGING=1 +fi + +. "$topsrcdir/build/mozconfig.win-common" +. "$topsrcdir/browser/config/mozconfigs/win64/common-win64" +. "$topsrcdir/browser/config/mozconfigs/win64/common-opt" + +mk_add_options MOZ_PGO=1 + +ac_add_options --enable-official-branding +ac_add_options --enable-verify-mar + +# safeguard against someone forgetting to re-set EARLY_BETA_OR_EARLIER in +# defines.sh during the beta cycle +export BUILDING_RELEASE=1 + +. "$topsrcdir/build/mozconfig.rust" + +. "$topsrcdir/build/mozconfig.common.override" |