moz.build
author Andrew Halberstadt <ahalberstadt@mozilla.com>
Wed, 01 Mar 2017 11:52:51 -0500
changeset 394445 290234233d6bee7dc87db5f59f076f2c039e412d
parent 394388 d2b0ed8f69e0c58328b772d235d4202103af3497
child 395429 65d80cd8f42280ebcea7e741714e4e3612c7076a
child 397065 e9e58225837b7dffdacf29f134e417b3cc869b83
permissions -rw-r--r--
Bug 1335873 - Add marionette-harness python tests to root moz.build file, r=mshal The marionette-harness tests should be runnable even without an objdir, however the marionette moz.build file doesn't get included without a build via the DIRS variable. This change gets around that issue by specifically including the marionette-harness manifest from the root moz.build, though maybe it would be better to always process the testing/marionette/moz.build file, and move things that need to behind an "if CONFIG['MOZ_BUILD_APP']" condition? MozReview-Commit-ID: Ata99evHxbd

# -*- 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('**/Makefile.in'):
    BUG_COMPONENT = ('Core', 'Build Config')
    FINAL = True

FILES_PER_UNIFIED_FILE = 1

CONFIGURE_SUBST_FILES += [
    'config/autoconf.mk',
    'config/emptyvars.mk',
]

if CONFIG['ENABLE_CLANG_PLUGIN']:
    DIRS += ['build/clang-plugin']

DIRS += [
    'config',
    'python',
    'taskcluster',
    'testing/mozbase',
]

if not CONFIG['JS_STANDALONE']:
    CONFIGURE_SUBST_FILES += [
        'tools/update-packaging/Makefile',
    ]
    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',
        'probes',
    ]

DIRS += [
    'config/external/fdlibm',
    'config/external/nspr',
    'config/external/zlib',
    'memory',
    'mfbt',
    'mozglue',
]

if not CONFIG['JS_STANDALONE']:
    DIRS += ['xpcom/xpidl']

if CONFIG['USE_ICU']:
    DIRS += ['config/external/icu']

if CONFIG['COMPILE_ENVIRONMENT']:

    if not CONFIG['JS_STANDALONE']:
        DIRS += [
            'config/external',
            'security',
        ]

    if CONFIG['BUILD_CTYPES']:
        DIRS += ['config/external/ffi']

    DIRS += ['js/src']
else:
    TEST_DIRS += ['js/src/tests']

if not CONFIG['JS_STANDALONE'] and CONFIG['MOZ_BUILD_APP']:
    # Bring in the configuration for the configured application.
    include('/' + CONFIG['MOZ_BUILD_APP'] + '/app.mozbuild')

if not CONFIG['JS_STANDALONE']:
    # These python manifests are included here so they get picked up without an objdir
    PYTHON_UNITTEST_MANIFESTS += [
        'testing/marionette/harness/marionette_harness/tests/harness_unit/python.ini',
    ]

CONFIGURE_SUBST_FILES += ['.cargo/config']

include('build/templates.mozbuild')