summaryrefslogtreecommitdiff
path: root/dom/plugins/ipc/moz.build
blob: 00f9a471284d2c2cd6e8f0be13ee6b07d2516492 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
# 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.mozilla += [
    'PluginLibrary.h',
]

EXPORTS.mozilla.plugins += [
    'AStream.h',
    'BrowserStreamChild.h',
    'BrowserStreamParent.h',
    'ChildAsyncCall.h',
    'ChildTimer.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',
    'PluginWidgetChild.h',
    'PluginWidgetParent.h',
    'StreamNotifyChild.h',
    'StreamNotifyParent.h',
]

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

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

if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'windows':
    SOURCES += [
        'D3D11SurfaceHolder.cpp',
        'PluginUtilsWin.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/',
]

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['GNU_CXX']:
    CXXFLAGS += ['-Wno-error=shadow']

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']

    # 'type cast': conversion from 'unsigned int' to 'HIMC' of greater size
    CXXFLAGS += ['-wd4312']