moz.build
author Ian Neal <iann_cvs@blueyonder.co.uk>
Thu, 31 Jul 2014 17:33:25 +0100
changeset 219957 47bba71f4c666a84a1301b19c154d730da6158f3
parent 218977 0300f04572b6a6d1ad192acd1608da0dd8cc1ba5
child 221119 5bf969f77c3de125f00c3d64d62c1adc16a8501a
permissions -rw-r--r--
Bug 1046468 - toolkit/library has an inter-dependency on ldap for comm-central that it needs to be told about in the moz.build world r=glandium

# -*- Mode: python; c-basic-offset: 4; 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/.

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

if CONFIG['ENABLE_CLANG_PLUGIN']:
    add_tier_dir('base', 'build/clang-plugin', external=True)

add_tier_dir('base', ['config', 'python'])
if not CONFIG['JS_STANDALONE']:
    CONFIGURE_SUBST_FILES += [
        'mozilla-config.h',
        'tools/update-packaging/Makefile',
    ]

    add_tier_dir('base', ['build', 'probes'])

if not CONFIG['LIBXUL_SDK']:
    add_tier_dir('base', ['mfbt'])

    if not CONFIG['MOZ_NATIVE_ZLIB']:
        add_tier_dir('base', ['modules/zlib'])

    if not CONFIG['JS_STANDALONE']:
        if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'android':
            add_tier_dir('base', ['other-licenses/android'])

        if CONFIG['MOZ_MEMORY']:
            add_tier_dir('base', ['memory'])

        add_tier_dir('base', ['mozglue', 'memory/mozalloc'])


if not CONFIG['JS_STANDALONE']:
    add_tier_dir('precompile', 'xpcom/xpidl')

if CONFIG['COMPILE_ENVIRONMENT'] and not CONFIG['LIBXUL_SDK']:
    if CONFIG['MOZ_BUILD_NSPR']:
        add_tier_dir('nspr', 'config/nspr', trigger='NSPR_LIBS')

    if not CONFIG['JS_STANDALONE']:
        add_tier_dir('external', 'config/external')
        if not CONFIG['MOZ_NATIVE_NSS']:
            # We want security/build to be built before anything using
            # NSPR_LIBS when MOZ_FOLD_LIBS is set, because that's where NSPR
            # actually ends up being linked. All places using NSS_LIBS also
            # use NSPR_LIBS so it's safe to use the latter.
            add_tier_dir('nss', 'security/build',
                trigger='NSPR_LIBS' if CONFIG['MOZ_FOLD_LIBS'] else 'NSS_LIBS')

    if CONFIG['BUILD_CTYPES'] and not CONFIG['MOZ_NATIVE_FFI']:
        add_tier_dir('js', ['js/src/ctypes/libffi'], static=True,
            trigger='MOZ_FFI_LIBS')
    if CONFIG['ENABLE_INTL_API'] and not CONFIG['MOZ_NATIVE_ICU']:
        add_tier_dir('js', ['intl/icu'], static=True, trigger='MOZ_ICU_LIBS')
        CONFIGURE_SUBST_FILES += ['intl/icu/Makefile']
    add_tier_dir('js', ['js/src'])

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