gecko-dev/dom/plugins/base/moz.build

129 lines
3.2 KiB
Python

# -*- 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'] == 'android':
DIRS += ['android']
XPIDL_SOURCES += [
'nsIHTTPHeaderListener.idl',
'nsIPluginDocument.idl',
'nsIPluginHost.idl',
'nsIPluginInputStream.idl',
'nsIPluginInstanceOwner.idl',
'nsIPluginTag.idl',
'nspluginroot.idl',
]
XPIDL_MODULE = 'plugin'
EXPORTS += [
'npapi.h',
'npfunctions.h',
'npruntime.h',
'nptypes.h',
'nsJSNPRuntime.h',
'nsNPAPIPluginInstance.h',
'nsPluginDirServiceProvider.h',
'nsPluginHost.h',
'nsPluginInstanceOwner.h',
'nsPluginLogging.h',
'nsPluginNativeWindow.h',
'nsPluginPlayPreviewInfo.h',
'nsPluginsCID.h',
'nsPluginsDir.h',
'nsPluginTags.h',
]
EXPORTS.mozilla += [
'PluginPRLibrary.h',
]
UNIFIED_SOURCES += [
'nsJSNPRuntime.cpp',
'nsPluginInstanceOwner.cpp',
'nsPluginModule.cpp',
'nsPluginPlayPreviewInfo.cpp',
'PluginPRLibrary.cpp',
]
# These files cannot be built in unified mode because they force NSPR logging.
SOURCES += [
'nsNPAPIPlugin.cpp',
'nsNPAPIPluginInstance.cpp',
'nsNPAPIPluginStreamListener.cpp',
'nsPluginHost.cpp',
'nsPluginStreamListenerPeer.cpp',
'nsPluginTags.cpp',
]
if CONFIG['OS_ARCH'] == 'WINNT':
UNIFIED_SOURCES += [
'nsPluginDirServiceProvider.cpp',
'nsPluginNativeWindowWin.cpp',
'nsPluginsDirWin.cpp',
]
elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa':
UNIFIED_SOURCES += [
'nsPluginNativeWindow.cpp',
'nsPluginsDirDarwin.cpp',
]
else:
UNIFIED_SOURCES += [
'nsPluginsDirUnix.cpp',
]
if CONFIG['MOZ_ENABLE_GTK']:
# This file cannot be built in unified mode because of name clashes in X11 headers.
SOURCES += [
'nsPluginNativeWindowGtk.cpp',
]
elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'qt':
UNIFIED_SOURCES += [
'nsPluginNativeWindowQt.cpp',
]
else:
UNIFIED_SOURCES += [
'nsPluginNativeWindow.cpp',
]
if CONFIG['MOZ_WIDGET_TOOLKIT'] != 'android':
# android_npapi.h extends the NPNVariable and NPPVariable enums
# using #defines, which results in Wswitch warnings in gcc-4.6.
# Therefore, enable FAIL_ON_WARNINGS only on non-Android platforms.
FAIL_ON_WARNINGS = True
MSVC_ENABLE_PGO = True
LOCAL_INCLUDES += [
'/content/base/src',
'/dom/base',
'/gfx/skia/include/config',
'/gfx/skia/include/core',
'/layout/generic',
'/layout/xul',
'/widget/android',
'/widget/xpwidgets',
'/xpcom/base',
]
if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'android':
LOCAL_INCLUDES += [
'/dom/plugins/base/android',
]
if CONFIG['OS_ARCH'] == 'WINNT':
LOCAL_INCLUDES += [
'/xpcom/base',
]
include('/ipc/chromium/chromium-config.mozbuild')
DEFINES['SK_BUILD_FOR_ANDROID_NDK'] = True
FINAL_LIBRARY = 'xul'
CXXFLAGS += CONFIG['MOZ_CAIRO_CFLAGS']
CXXFLAGS += CONFIG['TK_CFLAGS']