gfx/vr/moz.build
author Alexandre Poirot <poirot.alex@gmail.com>
Wed, 19 Jun 2019 12:22:34 +0000
changeset 479199 f24caf8d9666393bcaceb167a9f62fe2cf67bf0a
parent 474297 83a094f31fb025b5cb6b196003708b746f0591b6
child 480620 133ac0d11428079ceaeceab4dda050b4ba240e3b
permissions -rw-r--r--
Bug 1543071 - Implement Target.targetDestroyed event r=ato Differential Revision: https://phabricator.services.mozilla.com/D35106

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

EXPORTS += [
    'external_api/moz_external_vr.h',
    'gfxVR.h',
    'gfxVRExternal.h',
    'ipc/VRChild.h',
    'ipc/VRGPUChild.h',
    'ipc/VRGPUParent.h',
    'ipc/VRLayerChild.h',
    'ipc/VRManagerChild.h',
    'ipc/VRManagerParent.h',
    'ipc/VRMessageUtils.h',
    'ipc/VRParent.h',
    'ipc/VRProcessChild.h',
    'ipc/VRProcessManager.h',
    'ipc/VRProcessParent.h',
    'service/VRService.h',
    'VRDisplayClient.h',
    'VRDisplayHost.h',
    'VRDisplayPresentation.h',
    'VRManager.h',
    'VRThread.h',
]

LOCAL_INCLUDES += [
    '/dom/base',
    '/gfx/layers/d3d11',
    '/gfx/thebes',
]

UNIFIED_SOURCES += [
    'gfxVR.cpp',
    'ipc/VRChild.cpp',
    'ipc/VRGPUChild.cpp',
    'ipc/VRGPUParent.cpp',
    'ipc/VRLayerChild.cpp',
    'ipc/VRLayerParent.cpp',
    'ipc/VRManagerChild.cpp',
    'ipc/VRManagerParent.cpp',
    'ipc/VRParent.cpp',
    'ipc/VRProcessChild.cpp',
    'ipc/VRProcessManager.cpp',
    'ipc/VRProcessParent.cpp',
    'VRDisplayClient.cpp',
    'VRDisplayPresentation.cpp',
    'VRManager.cpp',
    'VRThread.cpp',
]

# VRDisplayHost includes MacIOSurface.h which includes Mac headers
# which define Size and Points types in the root namespace that
# often conflict with our own types.
SOURCES += [
    'gfxVRExternal.cpp',
    'gfxVRPuppet.cpp',
    'VRDisplayHost.cpp',
    'VRDisplayLocal.cpp',
]

if CONFIG['OS_TARGET'] == 'Android':
    LOCAL_INCLUDES += ['/widget/android']
else:
    DIRS += [
        'service',
    ]

# Only target x64 for vrhost since WebVR is only supported on 64bit.
# Also, only use MSVC compiler for Windows-specific linking
if CONFIG['OS_ARCH'] == 'WINNT' and CONFIG['HAVE_64BIT_BUILD'] and CONFIG['CC_TYPE'] not in ('clang', 'gcc'):
    DIRS += [
        'vrhost'
    ]

IPDL_SOURCES = [
    'ipc/PVR.ipdl',
    'ipc/PVRGPU.ipdl',
    'ipc/PVRLayer.ipdl',
    'ipc/PVRManager.ipdl',
]

CXXFLAGS += CONFIG['MOZ_CAIRO_CFLAGS']
CXXFLAGS += CONFIG['TK_CFLAGS']
CFLAGS += CONFIG['MOZ_CAIRO_CFLAGS']
CFLAGS += CONFIG['TK_CFLAGS']

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

FINAL_LIBRARY = 'xul'

with Files('**'):
    BUG_COMPONENT = ('Core', 'WebVR')