Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Firefox/dom/media/webrtc/   (Browser von der Mozilla Stiftung Version 136.0.1©)  Datei vom 10.2.2025 mit Größe 3 kB image not shown  

Quelle  moz.build   Sprache: unbekannt

 
# -*- 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("/dom/media/webrtc/third_party_build/webrtc.mozbuild")

with Files("**"):
    BUG_COMPONENT = ("Core", "WebRTC: Audio/Video")

with Files("PeerIdentity.*"):
    BUG_COMPONENT = ("Core", "WebRTC: Signaling")

with Files("common/**"):
    BUG_COMPONENT = ("Core", "WebRTC: Signaling")
with Files("jsep/**"):
    BUG_COMPONENT = ("Core", "WebRTC: Signaling")
with Files("libwebrtcglue/**"):
    BUG_COMPONENT = ("Core", "WebRTC: Signaling")
with Files("transportbridge/**"):
    BUG_COMPONENT = ("Core", "WebRTC: Signaling")
with Files("jsapi/**"):
    BUG_COMPONENT = ("Core", "WebRTC: Signaling")
with Files("sdp/**"):
    BUG_COMPONENT = ("Core", "WebRTC: Signaling")
with Files("third_party_build/**"):
    BUG_COMPONENT = ("Core", "WebRTC")


EXPORTS += [
    "CubebDeviceEnumerator.h",
    "MediaEngine.h",
    "MediaEngineFake.h",
    "MediaEnginePrefs.h",
    "MediaEngineSource.h",
    "MediaTrackConstraints.h",
    "SineWaveGenerator.h",
]

SOURCES += [
    "CubebDeviceEnumerator.cpp",
]

if CONFIG["MOZ_WEBRTC"]:
    EXPORTS += [
        "MediaEngineRemoteVideoSource.h",
        "MediaEngineWebRTC.h",
        "MediaEngineWebRTCAudio.h",
    ]
    EXPORTS.mozilla.dom += ["RTCIdentityProviderRegistrar.h"]
    UNIFIED_SOURCES += [
        "MediaEngineRemoteVideoSource.cpp",
        "MediaEngineWebRTCAudio.cpp",
        "RTCCertificate.cpp",
        "RTCIdentityProviderRegistrar.cpp",
    ]
    # MediaEngineWebRTC.cpp needs to be built separately.
    SOURCES += [
        "MediaEngineWebRTC.cpp",
    ]
    PREPROCESSED_IPDL_SOURCES += [
        "PWebrtcGlobal.ipdl",
    ]
    LOCAL_INCLUDES += [
        "..",
        "/dom/base",
        "/dom/media",
        "/dom/media/webrtc/common",
        "/dom/media/webrtc/common/browser_logging",
        "/media/libyuv/libyuv/include",
        "/third_party/abseil-cpp",
        "/third_party/libwebrtc",
    ]

if CONFIG["MOZ_WEBRTC_SIGNALING"]:
    DIRS += [
        "common",
        "jsapi",
        "jsep",
        "libwebrtcglue",
        "sdp",
        "transportbridge",
        "/third_party/libwebrtc",
        "/third_party/abseil-cpp",
    ]

    if CONFIG["MOZ_WIDGET_TOOLKIT"] == "gtk":
        DIRS += [
            "/third_party/drm/",
            "/third_party/drm/libdrm",
            "/third_party/gbm/",
            "/third_party/gbm/libgbm",
            "/third_party/libepoxy/",
            "/third_party/pipewire/libpipewire",
        ]

    # Avoid warnings from third-party code that we can not modify.
    if CONFIG["CC_TYPE"] == "clang-cl":
        CXXFLAGS += ["-Wno-invalid-source-encoding"]


PREPROCESSED_IPDL_SOURCES += [
    "PMediaTransport.ipdl",
]

UNIFIED_SOURCES += [
    "MediaEngineFake.cpp",
    "MediaEngineSource.cpp",
    "MediaTrackConstraints.cpp",
    "PeerIdentity.cpp",
]

EXPORTS.mozilla += [
    "PeerIdentity.h",
]
EXPORTS.mozilla.dom += [
    "RTCCertificate.h",
]

include("/ipc/chromium/chromium-config.mozbuild")

# Suppress some GCC/clang warnings being treated as errors:
#  - about attributes on forward declarations for types that are already
#    defined, which complains about important MOZ_EXPORT attributes for
#    android API types
CXXFLAGS += [
    "-Wno-error=attributes",
]

FINAL_LIBRARY = "xul"

# Add libFuzzer configuration directives
include("/tools/fuzzing/libfuzzer-config.mozbuild")

[ Dauer der Verarbeitung: 0.12 Sekunden  (vorverarbeitet)  ]