summaryrefslogtreecommitdiffstats
path: root/dom/media/webrtc/third_party_build/webrtc.mozbuild
blob: 30169c36c2cd53aba84c44c2083a82c630121bae (plain)
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
# -*- 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/.

# This file mimics the defines used by any headers in libwebrtc that get
# included in Mozilla code.
# We currently audit these by hand. Searching for the defines upstream is a good
# start:
# https://source.chromium.org/search?q=usage:%23if.*def.*%5B%5E_%5D$%20AND%20path:%5C.h%20AND%20path:%5Ethird_party%2Fwebrtc&ss=chromium

if CONFIG['MOZ_WEBRTC']:
    DEFINES['HAVE_UINT64_T'] = True
    DEFINES['WEBRTC_MOZILLA_BUILD'] = True
    DEFINES['RTC_ENABLE_VP9'] = True

    if CONFIG['OS_TARGET'] != 'WINNT':
        DEFINES['WEBRTC_POSIX'] = True
        DEFINES['WEBRTC_BUILD_LIBEVENT'] = True

    if CONFIG['OS_TARGET'] == 'Linux':
        DEFINES['WEBRTC_LINUX'] = True
    elif CONFIG['OS_TARGET'] == 'Darwin':
        DEFINES['WEBRTC_MAC'] = True
    elif CONFIG['OS_TARGET'] == 'WINNT':
        DEFINES['WEBRTC_WIN'] = True
        DEFINES['RTC_ENABLE_WIN_WGC'] = False
        DEFINES['HAVE_WINSOCK2_H'] = True
    elif CONFIG['OS_TARGET'] in ('DragonFly', 'FreeBSD', 'NetBSD', 'OpenBSD'):
        DEFINES['WEBRTC_BSD'] = True
    elif CONFIG['OS_TARGET'] == 'Android':
        DEFINES['WEBRTC_LINUX'] = True
        DEFINES['WEBRTC_ANDROID'] = True

    if CONFIG['MOZ_X11']:
        DEFINES['WEBRTC_USE_X11'] = True

    if CONFIG["MOZ_WIDGET_TOOLKIT"] == "gtk":
        DEFINES['WEBRTC_USE_PIPEWIRE'] = True