content/media/gmp/moz.build
author Chris Pearce <cpearce@mozilla.com>
Tue, 19 Aug 2014 20:56:33 +1200
changeset 200245 f636d9bdb619130a7d41586874cbc3e2ac43f475
parent 200243 1db9d4b9d7407a5f5f4a7a75c39732be6470e4ce
child 200883 b4356b4f14deca9878fc333c479ae121bc76dbff
permissions -rw-r--r--
Bug 1034368 - Add storage capabilities to GMPs. r=jesup

# -*- 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/.

XPIDL_MODULE = 'content_geckomediaplugins'

XPIDL_SOURCES += [
    'mozIGeckoMediaPluginService.idl',
]

EXPORTS += [
    'gmp-api/gmp-async-shutdown.h',
    'gmp-api/gmp-audio-codec.h',
    'gmp-api/gmp-audio-decode.h',
    'gmp-api/gmp-audio-host.h',
    'gmp-api/gmp-audio-samples.h',
    'gmp-api/gmp-decryption.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',
    'GMPAudioDecoderChild.h',
    'GMPAudioDecoderParent.h',
    'GMPAudioDecoderProxy.h',
    'GMPAudioHost.h',
    'GMPCallbackBase.h',
    'GMPChild.h',
    'GMPDecryptorChild.h',
    'GMPDecryptorParent.h',
    'GMPDecryptorProxy.h',
    'GMPEncryptedBufferDataImpl.h',
    'GMPMessageUtils.h',
    'GMPParent.h',
    'GMPPlatform.h',
    'GMPProcessChild.h',
    'GMPProcessParent.h',
    'GMPService.h',
    'GMPSharedMemManager.h',
    'GMPStorageChild.h',
    'GMPStorageParent.h',
    'GMPTimerChild.h',
    'GMPTimerParent.h',
    'GMPVideoDecoderChild.h',
    'GMPVideoDecoderParent.h',
    'GMPVideoDecoderProxy.h',
    'GMPVideoEncodedFrameImpl.h',
    'GMPVideoEncoderChild.h',
    'GMPVideoEncoderParent.h',
    'GMPVideoEncoderProxy.h',
    'GMPVideoHost.h',
    'GMPVideoi420FrameImpl.h',
    'GMPVideoPlaneImpl.h',
]

UNIFIED_SOURCES += [
    'GMPAudioDecoderChild.cpp',
    'GMPAudioDecoderParent.cpp',
    'GMPAudioHost.cpp',
    'GMPChild.cpp',
    'GMPDecryptorChild.cpp',
    'GMPDecryptorParent.cpp',
    'GMPEncryptedBufferDataImpl.cpp',
    'GMPParent.cpp',
    'GMPPlatform.cpp',
    'GMPProcessChild.cpp',
    'GMPProcessParent.cpp',
    'GMPService.cpp',
    'GMPSharedMemManager.cpp',
    'GMPStorageChild.cpp',
    'GMPStorageParent.cpp',
    'GMPTimerChild.cpp',
    'GMPTimerParent.cpp',
    'GMPVideoDecoderChild.cpp',
    'GMPVideoDecoderParent.cpp',
    'GMPVideoEncodedFrameImpl.cpp',
    'GMPVideoEncoderChild.cpp',
    'GMPVideoEncoderParent.cpp',
    'GMPVideoHost.cpp',
    'GMPVideoi420FrameImpl.cpp',
    'GMPVideoPlaneImpl.cpp',
]

IPDL_SOURCES += [
  'GMPTypes.ipdlh',
  'PGMP.ipdl',
  'PGMPAudioDecoder.ipdl',
  'PGMPDecryptor.ipdl',
  'PGMPStorage.ipdl',
  'PGMPTimer.ipdl',
  'PGMPVideoDecoder.ipdl',
  'PGMPVideoEncoder.ipdl',
]

if CONFIG['GKMEDIAS_SHARED_LIBRARY']:
    NO_VISIBILITY_FLAGS = True

# comment this out to use Unsafe Shmem for more performance
DEFINES['GMP_SAFE_SHMEM'] = True

FAIL_ON_WARNINGS = True

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

FINAL_LIBRARY = 'xul'
# media/mtransport so we work with --disable-webrtc
LOCAL_INCLUDES += [
    '../base',
    '/media/mtransport',
    '/xpcom/base',
    '/xpcom/build',
    '/xpcom/threads',
]