michael@0: # 'nightly' contains things that are in nightly mozconfigs and allowed to be missing from release builds. michael@0: # Other keys in whitelist contain things are in that branches mozconfigs and allowed to be missing from nightly builds. michael@0: whitelist = { michael@0: 'release': {}, michael@0: 'nightly': {}, michael@0: } michael@0: michael@0: all_platforms = ['win64', 'win32', 'linux32', 'linux64', 'macosx-universal'] michael@0: michael@0: for platform in all_platforms: michael@0: whitelist['nightly'][platform] = [ michael@0: 'ac_add_options --enable-update-channel=nightly', michael@0: 'ac_add_options --enable-profiling', michael@0: 'mk_add_options CLIENT_PY_ARGS="--hg-options=\'--verbose --time\' --hgtool=../tools/buildfarm/utils/hgtool.py --skip-chatzilla --skip-comm --skip-inspector --skip-venkman --tinderbox-print"' michael@0: ] michael@0: michael@0: for platform in ['linux32', 'linux64', 'macosx-universal']: michael@0: whitelist['nightly'][platform] += [ michael@0: 'mk_add_options MOZ_MAKE_FLAGS="-j4"', michael@0: ] michael@0: michael@0: for platform in ['linux32', 'linux64', 'macosx-universal', 'win32', 'win64']: michael@0: whitelist['nightly'][platform] += ['ac_add_options --enable-signmar'] michael@0: whitelist['nightly'][platform] += ['ac_add_options --enable-js-diagnostics'] michael@0: michael@0: whitelist['nightly']['linux32'] += [ michael@0: 'CXX=$REAL_CXX', michael@0: 'CXX="ccache $REAL_CXX"', michael@0: 'CC="ccache $REAL_CC"', michael@0: 'mk_add_options PROFILE_GEN_SCRIPT=@TOPSRCDIR@/build/profile_pageloader.pl', michael@0: 'ac_add_options --with-ccache=/usr/bin/ccache', michael@0: '. "$topsrcdir/build/mozconfig.cache"', michael@0: 'export MOZILLA_OFFICIAL=1', michael@0: 'export MOZ_TELEMETRY_REPORTING=1', michael@0: "mk_add_options PROFILE_GEN_SCRIPT='$(PYTHON) @MOZ_OBJDIR@/_profile/pgo/profileserver.py 10'", michael@0: 'STRIP_FLAGS="--strip-debug"', michael@0: 'ac_add_options --disable-elf-hack # --enable-elf-hack conflicts with --enable-profiling', michael@0: ] michael@0: michael@0: whitelist['nightly']['linux64'] += [ michael@0: 'export MOZILLA_OFFICIAL=1', michael@0: 'export MOZ_TELEMETRY_REPORTING=1', michael@0: "mk_add_options PROFILE_GEN_SCRIPT='$(PYTHON) @MOZ_OBJDIR@/_profile/pgo/profileserver.py 10'", michael@0: 'STRIP_FLAGS="--strip-debug"', michael@0: 'ac_add_options --with-ccache=/usr/bin/ccache', michael@0: '. "$topsrcdir/build/mozconfig.cache"', michael@0: 'ac_add_options --disable-elf-hack # --enable-elf-hack conflicts with --enable-profiling', michael@0: ] michael@0: michael@0: whitelist['nightly']['macosx-universal'] += [ michael@0: 'ac_add_options --with-macbundlename-prefix=Firefox', michael@0: 'mk_add_options MOZ_MAKE_FLAGS="-j12"', michael@0: 'ac_add_options --with-ccache', michael@0: '. "$topsrcdir/build/mozconfig.cache"', michael@0: 'ac_add_options --disable-install-strip', michael@0: 'ac_add_options --enable-instruments', michael@0: 'ac_add_options --enable-dtrace', michael@0: ] michael@0: michael@0: whitelist['nightly']['win32'] += [ michael@0: '. $topsrcdir/configs/mozilla2/win32/include/choose-make-flags', michael@0: 'mk_add_options MOZ_MAKE_FLAGS=-j1', michael@0: '. "$topsrcdir/build/mozconfig.cache"', michael@0: 'if test "$IS_NIGHTLY" != ""; then', michael@0: 'ac_add_options --disable-auto-deps', michael@0: 'fi', michael@0: ] michael@0: whitelist['nightly']['win64'] += [ michael@0: '. "$topsrcdir/browser/config/mozconfigs/win64/common-win64"', michael@0: ] michael@0: michael@0: for platform in all_platforms: michael@0: whitelist['release'][platform] = [ michael@0: 'ac_add_options --enable-update-channel=release', michael@0: 'ac_add_options --enable-official-branding', michael@0: 'mk_add_options MOZ_MAKE_FLAGS="-j4"', michael@0: 'export BUILDING_RELEASE=1', michael@0: ] michael@0: whitelist['release']['win32'] += ['mk_add_options MOZ_PGO=1'] michael@0: whitelist['release']['win64'] += ['mk_add_options MOZ_PGO=1'] michael@0: michael@0: whitelist['release']['linux32'] += [ michael@0: 'export MOZILLA_OFFICIAL=1', michael@0: 'export MOZ_TELEMETRY_REPORTING=1', michael@0: 'mk_add_options MOZ_PGO=1', michael@0: "mk_add_options PROFILE_GEN_SCRIPT='$(PYTHON) @MOZ_OBJDIR@/_profile/pgo/profileserver.py 10'", michael@0: ] michael@0: whitelist['release']['linux64'] += [ michael@0: 'export MOZILLA_OFFICIAL=1', michael@0: 'export MOZ_TELEMETRY_REPORTING=1', michael@0: 'mk_add_options MOZ_PGO=1', michael@0: "mk_add_options PROFILE_GEN_SCRIPT='$(PYTHON) @MOZ_OBJDIR@/_profile/pgo/profileserver.py 10'", michael@0: ] michael@0: michael@0: if __name__ == '__main__': michael@0: import pprint michael@0: pprint.pprint(whitelist)