dom/plugins/ipc/moz.build
author Gregory Szorc <gps@mozilla.com>
Mon, 14 Mar 2016 15:21:09 -0700
changeset 340041 7aa1ae5098c608c628bdbb7abe87ab8074cd98ce
parent 313604 86b8d0183c5d7ff5434ae931f295efe937e6e848
child 341349 893ad80cb51583a03fede14252875b5a3c35cef0
child 341353 c6e7c1cd0c9bf90943bfebf40923aa3fc5f1b5f2
child 341716 f7d698066341c52e32c5a9fb024e9b6d643ad20f
permissions -rw-r--r--
Bug 1256024 - Disable C4838 to unblock compilation on VS2015; r?aklotz As part of unblocking building with VS2015u1 in automation, I'm mass disabling compiler warnings that are turned into errors. This is not the preferred mechanism to fix compilation warnings. So hopefully this patch never lands because someone insists of fixing the underlying problem instead. But if it does land, hopefully the workaround is only temporary. MozReview-Commit-ID: Gcq3Qna02iB

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

if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa':
    DIRS += ['interpose']

EXPORTS.mozilla += [
    'PluginLibrary.h',
]

EXPORTS.mozilla.plugins += [
    'AStream.h',
    'BrowserStreamChild.h',
    'BrowserStreamParent.h',
    'ChildAsyncCall.h',
    'ChildTimer.h',
    'NPEventAndroid.h',
    'NPEventOSX.h',
    'NPEventUnix.h',
    'NPEventWindows.h',
    'PluginAsyncSurrogate.h',
    'PluginBridge.h',
    'PluginDataResolver.h',
    'PluginInstanceChild.h',
    'PluginInstanceParent.h',
    'PluginMessageUtils.h',
    'PluginModuleChild.h',
    'PluginModuleParent.h',
    'PluginProcessChild.h',
    'PluginProcessParent.h',
    'PluginQuirks.h',
    'PluginScriptableObjectChild.h',
    'PluginScriptableObjectParent.h',
    'PluginScriptableObjectUtils-inl.h',
    'PluginScriptableObjectUtils.h',
    'PluginStreamChild.h',
    'PluginStreamParent.h',
    'PluginUtilsOSX.h',
    'PluginWidgetChild.h',
    'PluginWidgetParent.h',
    'StreamNotifyChild.h',
    'StreamNotifyParent.h',
    'TaskFactory.h',
]

if CONFIG['OS_ARCH'] == 'WINNT':
    EXPORTS.mozilla.plugins += [
        'PluginSurfaceParent.h',
    ]
    UNIFIED_SOURCES += [
        'PluginHangUIParent.cpp',
        'PluginSurfaceParent.cpp',
    ]
    SOURCES += [
        'MiniShmParent.cpp', # Issues with CreateEvent
    ]
    DEFINES['MOZ_HANGUI_PROCESS_NAME'] = '"plugin-hang-ui%s"' % CONFIG['BIN_SUFFIX']
    LOCAL_INCLUDES += [
        '/widget',
        'hangui',
    ]

if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa':
    EXPORTS.mozilla.plugins += [
        'PluginInterposeOSX.h',
    ]

if CONFIG['MOZ_ENABLE_QT']:
    SOURCES += [
        '!moc_NestedLoopTimer.cpp',
        'NestedLoopTimer.cpp',
        'PluginHelperQt.cpp',
    ]

UNIFIED_SOURCES += [
    'BrowserStreamChild.cpp',
    'BrowserStreamParent.cpp',
    'ChildAsyncCall.cpp',
    'ChildTimer.cpp',
    'PluginAsyncSurrogate.cpp',
    'PluginBackgroundDestroyer.cpp',
    'PluginInstanceParent.cpp',
    'PluginMessageUtils.cpp',
    'PluginModuleParent.cpp',
    'PluginProcessChild.cpp',
    'PluginProcessParent.cpp',
    'PluginQuirks.cpp',
    'PluginScriptableObjectChild.cpp',
    'PluginScriptableObjectParent.cpp',
    'PluginStreamChild.cpp',
    'PluginStreamParent.cpp',
]

SOURCES += [
    'PluginInstanceChild.cpp', # 'PluginThreadCallback' : ambiguous symbol
    'PluginModuleChild.cpp',   # Redefinition of mozilla::WindowsDllInterceptor sUser32Intercept
    'PluginWidgetChild.cpp',
    'PluginWidgetParent.cpp',
]

if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa':
    UNIFIED_SOURCES += [
        'PluginInterposeOSX.mm',
        'PluginUtilsOSX.mm',
    ]

if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'windows':
    UNIFIED_SOURCES += [
        'D3D11SurfaceHolder.cpp',
    ]

IPDL_SOURCES += [
    'PBrowserStream.ipdl',
    'PluginTypes.ipdlh',
    'PPluginBackgroundDestroyer.ipdl',
    'PPluginInstance.ipdl',
    'PPluginModule.ipdl',
    'PPluginScriptableObject.ipdl',
    'PPluginStream.ipdl',
    'PPluginSurface.ipdl',
    'PStreamNotify.ipdl',
]

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

FINAL_LIBRARY = 'xul'
LOCAL_INCLUDES += [
    '../base',
    '/xpcom/base/',
]

if CONFIG['MOZ_SANDBOX'] and CONFIG['OS_ARCH'] == 'WINNT':
    LOCAL_INCLUDES += [
        '/security/sandbox/chromium',
        '/security/sandbox/chromium-shim',
    ]

DEFINES['FORCE_PR_LOG'] = True

if CONFIG['MOZ_WIDGET_TOOLKIT'] != 'gtk3':
    CXXFLAGS += CONFIG['TK_CFLAGS']
else:
    # Force build against gtk+2 for struct offsets and such.
    CXXFLAGS += CONFIG['MOZ_GTK2_CFLAGS']

CXXFLAGS += CONFIG['MOZ_CAIRO_CFLAGS']

if CONFIG['_MSC_VER']:
    # This is intended as a temporary hack to support building with VS2015.
    # conversion from 'X' to 'Y' requires a narrowing conversion
    CXXFLAGS += ['-wd4838']