moz.build
author Jamie Nicol <jnicol@mozilla.com>
Thu, 07 Mar 2019 14:02:50 +0000
changeset 520757 cb745568d893c43e5ca7cb7dcda7d4c8464bd62b
parent 510293 6f12b99d521ca62132a90805029724defe4f062b
child 533193 8d14aa373383797d65e44e11689171068bdde62e
permissions -rw-r--r--
Bug 1528820 - Work around Adreno bug when blitting to texture array. r=kvark There is a bug on Adreno GPUs where glBlitFramebuffers always writes to the 0th layer of a texture array, regardless of which layer is actually attached to the draw framebuffer. With picture caching enabled on webrender, the cached pictures were all being drawn to the 0th layer of the picture cache texture array, leaving the other layers blank. This was resulting in the wrong content being drawn on one tile of the screen, and the rest being black. This works around this by blitting to an intermediate renderbuffer, then using glCopyTexSubImage3D to copy from the renderbuffer to the correct texture layer. Differential Revision: https://phabricator.services.mozilla.com/D22305

# -*- 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')