DXR is a code search and navigation tool aimed at making sense of large projects. It supports full-text and regex searches as well as structural queries.

Mercurial (d38398e5144e)

VCS Links

Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115
# -*- 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/.

include('gyp_base.mozbuild')

gyp_vars.update({
    'lsan': 0,
    'asan': 0,
    'build_with_mozilla': 1,
    'build_with_chromium': 0,
    'use_official_google_api_keys': 0,
    'have_clock_monotonic': 1 if CONFIG['HAVE_CLOCK_MONOTONIC'] else 0,
    'have_ethtool_cmd_speed_hi': 1 if CONFIG['MOZ_WEBRTC_HAVE_ETHTOOL_SPEED_HI'] else 0,
    'include_alsa_audio': 1 if CONFIG['MOZ_ALSA'] else 0,
    'include_pulse_audio': 1 if CONFIG['MOZ_PULSEAUDIO'] else 0,
    # basic stuff for everything
    'include_internal_video_render': 0,
    'clang': 1 if CONFIG['CLANG_CXX'] else 0,
    'clang_use_chrome_plugins': 0,
    'enable_protobuf': 0,
    'include_tests': 0,
    'enable_android_opensl': 1,
    'enable_android_opensl_output': 0,
    # use_system_lib* still seems to be in use in trunk/build
    'use_system_libjpeg': 0,
    'use_system_libvpx': 0,
    'build_json': 0,
    'build_libjpeg': 0,
    'build_libyuv': 0,
    'build_libvpx': 0,
    'build_ssl': 0,
    'build_json': 0,
    'build_icu': 0,
    'build_opus': 0,
    'libyuv_dir': '/media/libyuv/libyuv',
    'yuv_disable_avx2': 0 if CONFIG['HAVE_X86_AVX2'] else 1,
    # don't use openssl
    'use_openssl': 0,

    'debug': 1 if CONFIG['DEBUG'] else 0,

    'use_x11': 1 if CONFIG['MOZ_X11'] else 0,
    'use_glib': 1 if CONFIG['GLIB_LIBS'] else 0,

     # turn off mandatory use of NEON and instead use NEON detection
    'arm_neon': 0,
    'arm_neon_optional': 1,

    'moz_widget_toolkit_gonk': 0,
    'moz_webrtc_omx': 0,
    'moz_webrtc_mediacodec': 0,

    # Turn off multi monitor screen share
    'multi_monitor_screenshare%' : 0,

    # (for vp8) chromium sets to 0 also
    'use_temporal_layers': 0,

    # Creates AEC internal sample dump files in current directory
    'aec_debug_dump': 1,

    # Enable and force use of hardware AEC
    'hardware_aec_ns': 1 if CONFIG['MOZ_WEBRTC_HARDWARE_AEC_NS'] else 0,

    # codec enable/disables:
    'include_g711': 1,
    'include_opus': 1,
    'include_g722': 1,
    'include_ilbc': 0,
    # We turn on ISAC because the AGC uses parts of it, and depend on the
    # linker to throw away uneeded bits.
    'include_isac': 1,
    'include_pcm16b': 1,
})

if os == 'Android':
    if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gonk':
        gyp_vars['build_with_gonk'] = 1
        gyp_vars['moz_widget_toolkit_gonk'] = 1
        gyp_vars['opus_complexity'] = 1
        if int(CONFIG['ANDROID_VERSION']) >= 18:
          gyp_vars['moz_webrtc_omx'] = 1
    else:
        gyp_vars.update(
            gtest_target_type='executable',
            moz_webrtc_mediacodec=1,
            android_toolchain=CONFIG.get('ANDROID_TOOLCHAIN', ''),
        )

if CONFIG['ARM_ARCH']:
    if int(CONFIG['ARM_ARCH']) < 7:
        gyp_vars['armv7'] = 0
        gyp_vars['arm_neon_optional'] = 0
    elif os == 'Android':
        gyp_vars['armv7'] = 1
    else:
        # CPU detection for ARM works on Android only.  armv7 always uses CPU
        # detection, so we have to set armv7=0 for non-Android target
        gyp_vars['armv7'] = 0
    # For libyuv
    gyp_vars['arm_version'] = int(CONFIG['ARM_ARCH'])

# Don't try to compile ssse3/sse4.1 code if toolchain doesn't support
if CONFIG['INTEL_ARCHITECTURE']:
    if not CONFIG['HAVE_TOOLCHAIN_SUPPORT_MSSSE3'] or not CONFIG['HAVE_TOOLCHAIN_SUPPORT_MSSE4_1']:
        gyp_vars['yuv_disable_asm'] = 1

if CONFIG['MACOS_SDK_DIR']:
    gyp_vars['mac_sdk_path'] = CONFIG['MACOS_SDK_DIR']

if not CONFIG['MOZ_SYSTEM_LIBVPX']:
    gyp_vars['libvpx_dir'] =  '/media/libvpx/libvpx'