Source code

Revision control

Other Tools

# -*- 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/.
XPIDL_MODULE = "content_geckomediaplugins"
XPIDL_SOURCES += [
"mozIGeckoMediaPluginChromeService.idl",
"mozIGeckoMediaPluginService.idl",
]
EXPORTS += [
"ChromiumCDMCallback.h",
"ChromiumCDMParent.h",
"ChromiumCDMProxy.h",
"DecryptJob.h",
"gmp-api/gmp-entrypoints.h",
"gmp-api/gmp-errors.h",
"gmp-api/gmp-platform.h",
"gmp-api/gmp-storage.h",
"gmp-api/gmp-video-codec.h",
"gmp-api/gmp-video-decode.h",
"gmp-api/gmp-video-encode.h",
"gmp-api/gmp-video-frame-encoded.h",
"gmp-api/gmp-video-frame-i420.h",
"gmp-api/gmp-video-frame.h",
"gmp-api/gmp-video-host.h",
"gmp-api/gmp-video-plane.h",
"GMPCallbackBase.h",
"GMPChild.h",
"GMPContentChild.h",
"GMPContentParent.h",
"GMPCrashHelper.h",
"GMPCrashHelperHolder.h",
"GMPLoader.h",
"GMPMessageUtils.h",
"GMPParent.h",
"GMPPlatform.h",
"GMPProcessChild.h",
"GMPProcessParent.h",
"GMPSanitizedExports.h",
"GMPService.h",
"GMPServiceChild.h",
"GMPServiceParent.h",
"GMPSharedMemManager.h",
"GMPStorage.h",
"GMPStorageChild.h",
"GMPStorageParent.h",
"GMPTimerChild.h",
"GMPTimerParent.h",
"GMPUtils.h",
"GMPVideoDecoderChild.h",
"GMPVideoDecoderParent.h",
"GMPVideoDecoderProxy.h",
"GMPVideoEncodedFrameImpl.h",
"GMPVideoEncoderChild.h",
"GMPVideoEncoderParent.h",
"GMPVideoEncoderProxy.h",
"GMPVideoHost.h",
"GMPVideoi420FrameImpl.h",
"GMPVideoPlaneImpl.h",
"widevine-adapter/content_decryption_module.h",
"widevine-adapter/content_decryption_module_export.h",
"widevine-adapter/content_decryption_module_ext.h",
"widevine-adapter/content_decryption_module_proxy.h",
]
UNIFIED_SOURCES += [
"CDMStorageIdProvider.cpp",
"ChromiumCDMAdapter.cpp",
"ChromiumCDMCallbackProxy.cpp",
"ChromiumCDMChild.cpp",
"ChromiumCDMParent.cpp",
"ChromiumCDMProxy.cpp",
"DecryptJob.cpp",
"GMPChild.cpp",
"GMPContentChild.cpp",
"GMPContentParent.cpp",
"GMPCrashHelperHolder.cpp",
"GMPDiskStorage.cpp",
"GMPLoader.cpp",
"GMPMemoryStorage.cpp",
"GMPParent.cpp",
"GMPPlatform.cpp",
"GMPProcessChild.cpp",
"GMPProcessParent.cpp",
"GMPService.cpp",
"GMPServiceChild.cpp",
"GMPServiceParent.cpp",
"GMPSharedMemManager.cpp",
"GMPStorageChild.cpp",
"GMPStorageParent.cpp",
"GMPTimerChild.cpp",
"GMPTimerParent.cpp",
"GMPUtils.cpp",
"GMPVideoDecoderChild.cpp",
"GMPVideoDecoderParent.cpp",
"GMPVideoEncodedFrameImpl.cpp",
"GMPVideoEncoderChild.cpp",
"GMPVideoEncoderParent.cpp",
"GMPVideoHost.cpp",
"GMPVideoi420FrameImpl.cpp",
"GMPVideoPlaneImpl.cpp",
]
DIRS += [
"rlz",
"widevine-adapter",
]
IPDL_SOURCES += [
"GMPTypes.ipdlh",
"PChromiumCDM.ipdl",
"PGMP.ipdl",
"PGMPService.ipdl",
"PGMPStorage.ipdl",
"PGMPTimer.ipdl",
"PGMPVideoDecoder.ipdl",
"PGMPVideoEncoder.ipdl",
]
PREPROCESSED_IPDL_SOURCES += [
"PGMPContent.ipdl",
]
if CONFIG["OS_TARGET"] in ["WINNT", "Darwin"]:
DEFINES["SUPPORT_STORAGE_ID"] = 1
# comment this out to use Unsafe Shmem for more performance
DEFINES["GMP_SAFE_SHMEM"] = True
include("/ipc/chromium/chromium-config.mozbuild")
if CONFIG["MOZ_SANDBOX"]:
# For sandbox includes and the include dependencies those have
LOCAL_INCLUDES += [
"/security/sandbox/chromium",
"/security/sandbox/chromium-shim",
]
FINAL_LIBRARY = "xul"
# dom/media/webrtc/transport so we work with --disable-webrtc
LOCAL_INCLUDES += [
"/dom/media/webrtc/transport",
"/xpcom/base",
"/xpcom/build",
"/xpcom/threads",
]