gecko-dev/moz.build
Mike Shal e4b57ecdda Bug 1507334 - Add mozconfigs for 3-stage PGO; r=firefox-build-system-reviewers,chmanchester#firefox-build-system-reviewers
These two mozconfigs are used for the 1st and 3rd stages of PGO.
'profile-generate' is used for the 1st stage to generate a firefox
binary with instrumentation enabled. Since it is only used for getting
profile data, we don't run tests against it or need crashreporter
symbol.s

The 'profile-use' mozconfig is for the 3rd and final stage were we
produce the fully optimized build. The profiling information and jarlog
are input artifacts produced by the 2nd stage (running the
profileserver).

Differential Revision: https://phabricator.services.mozilla.com/D15749

--HG--
extra : moz-landing-system : lando
2019-01-10 01:34:49 +00:00

143 lines
3.5 KiB
Python

# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
# vim: set filetype=python:
# 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/.
with Files('AUTHORS'):
BUG_COMPONENT = ('mozilla.org', 'Licensing')
with Files('LICENSE'):
BUG_COMPONENT = ('mozilla.org', 'Licensing')
with Files('LEGAL'):
BUG_COMPONENT = ('mozilla.org', 'Licensing')
with Files('aclocal.m4'):
BUG_COMPONENT = ('Firefox Build System', 'General')
with Files('Cargo.*'):
BUG_COMPONENT = ('Firefox Build System', 'General')
with Files('client.*'):
BUG_COMPONENT = ('Firefox Build System', 'General')
with Files('CLOBBER'):
BUG_COMPONENT = ('Firefox Build System', 'General')
with Files('*configure*'):
BUG_COMPONENT = ('Firefox Build System', 'General')
with Files('mach'):
BUG_COMPONENT = ('Firefox Build System', 'Mach Core')
with Files('*moz*'):
BUG_COMPONENT = ('Firefox Build System', 'General')
with Files('GNUmakefile'):
BUG_COMPONENT = ('Firefox Build System', 'General')
with Files('*gradle*'):
BUG_COMPONENT = ('Firefox for Android', 'Build Config & IDE Support')
SCHEDULES.exclusive = ['android']
with Files('*.json'):
BUG_COMPONENT = ('Firefox Build System', 'General')
with Files('**/l10n.toml'):
BUG_COMPONENT = ('Core', 'Localization')
FINAL = True
with Files('README.txt'):
BUG_COMPONENT = ('Core', 'General')
with Files("nsprpub/**"):
BUG_COMPONENT = ("NSPR", "NSPR")
with Files('**/Makefile.in'):
BUG_COMPONENT = ('Firefox Build System', 'General')
FINAL = True
with Files("**/*.js"):
SCHEDULES.inclusive += ['test-verify', 'test-verify-gpu', 'docs']
with Files("**/*.jsm"):
SCHEDULES.inclusive += ['docs']
with Files("**/*.rst"):
SCHEDULES.inclusive += ['docs']
with Files("**/*.md"):
SCHEDULES.inclusive += ['docs']
with Files("**/*.html"):
SCHEDULES.inclusive += ['test-verify', 'test-verify-gpu']
with Files("**/*.xhtml"):
SCHEDULES.inclusive += ['test-verify', 'test-verify-gpu']
with Files("**/*.xul"):
SCHEDULES.inclusive += ['test-verify', 'test-verify-gpu']
CONFIGURE_SUBST_FILES += [
'config/autoconf.mk',
'config/emptyvars.mk',
]
if CONFIG['ENABLE_CLANG_PLUGIN']:
DIRS += ['build/clang-plugin']
DIRS += [
'config',
'python',
'taskcluster',
'testing/mozbase',
'third_party/python',
]
if not CONFIG['JS_STANDALONE'] or not CONFIG['MOZ_BUILD_APP']:
CONFIGURE_DEFINE_FILES += [
'mozilla-config.h',
]
EXPORTS += [
'!buildid.h',
'!mozilla-config.h',
'!source-repo.h',
]
GENERATED_FILES += [
'buildid.h',
'source-repo.h',
]
GENERATED_FILES['buildid.h'].script = 'build/variables.py:buildid_header'
GENERATED_FILES['source-repo.h'].script = 'build/variables.py:source_repo_header'
DIRS += [
'build',
]
if CONFIG['PGO_PROFILE_PATH']:
profdata_gen = ('merged.profdata.stub', 'merged.profdata')
GENERATED_FILES += [
profdata_gen
]
GENERATED_FILES[profdata_gen].script = 'build/merge_profdata.py'
GENERATED_FILES[profdata_gen].inputs = [
'/' + CONFIG['PGO_PROFILE_PATH'],
]
DIRS += [
'mfbt',
]
if CONFIG['MOZ_BUILD_APP']:
# Bring in the configuration for the configured application.
include('/' + CONFIG['MOZ_BUILD_APP'] + '/app.mozbuild')
else:
include('/toolkit/toolkit.mozbuild')
CONFIGURE_SUBST_FILES += ['.cargo/config']
include('build/templates.mozbuild')