widget/xpwidgets/moz.build
author Daniel Holbert <dholbert@cs.stanford.edu>
Tue, 20 May 2014 12:43:57 -0700
changeset 184004 6f9b35588b74c3d530a51161ad6d197299fa883f
parent 179031 f9963d292e664987233bc8edced1e91cf43fb3d4
child 193175 8be952fedc1e1947142affdea26ea0936a0f8aed
permissions -rw-r--r--
Bug 1012858: Mark widget/xpwidgets/ as FAIL_ON_WARNINGS. r=roc

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

EXPORTS += [
    'ContentHelper.h',
    'GfxDriverInfo.h',
    'GfxInfoBase.h',
    'GfxInfoCollector.h',
]

UNIFIED_SOURCES += [
    'ContentHelper.cpp',
    'GfxDriverInfo.cpp',
    'GfxInfoBase.cpp',
    'GfxInfoCollector.cpp',
    'GfxInfoWebGL.cpp',
    'InputData.cpp',
    'nsBaseAppShell.cpp',
    'nsBaseDragService.cpp',
    'nsBaseScreen.cpp',
    'nsClipboardHelper.cpp',
    'nsClipboardPrivacyHandler.cpp',
    'nsClipboardProxy.cpp',
    'nsColorPickerProxy.cpp',
    'nsContentProcessWidgetFactory.cpp',
    'nsFilePickerProxy.cpp',
    'nsHTMLFormatConverter.cpp',
    'nsIdleService.cpp',
    'nsIWidgetListener.cpp',
    'nsPrimitiveHelpers.cpp',
    'nsPrintOptionsImpl.cpp',
    'nsPrintSession.cpp',
    'nsPrintSettingsImpl.cpp',
    'nsTransferable.cpp',
    'nsXPLookAndFeel.cpp',
    'PuppetWidget.cpp',
    'WidgetUtils.cpp',
]

# nsBaseWidget.cpp needs to be built separately because of name clashes in the OS X headers
SOURCES += [
    'nsBaseWidget.cpp',
]

if CONFIG['MOZ_X11']:
    UNIFIED_SOURCES += [
        'GfxInfoX11.cpp'
    ]

if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('cocoa', 'windows'):
    UNIFIED_SOURCES += [
        'nsBaseClipboard.cpp',
    ]

if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('qt', 'gtk2', 'gtk3', 'cocoa', 'windows',
                                    'android', 'gonk'):
    UNIFIED_SOURCES += [
        'nsBaseFilePicker.cpp',
    ]

if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('qt', 'gtk2', 'gtk3', 'windows', 'cocoa'):
    UNIFIED_SOURCES += [
        'nsNativeTheme.cpp',
    ]

if not CONFIG['MOZ_B2G']:
    DEFINES['MOZ_CROSS_PROCESS_IME'] = True

FAIL_ON_WARNINGS = True

MSVC_ENABLE_PGO = True

LIBRARY_NAME = 'xpwidgets_s'

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

LOCAL_INCLUDES += [
    '../shared',
    '/layout/base',
    '/layout/forms',
    '/layout/generic',
    '/layout/xul',
    '/view/src',
]

widget_dir = CONFIG['MOZ_WIDGET_TOOLKIT']
if widget_dir in ('gtk3', 'gtk2'):
    # gtk3 shares includes with gtk2
    widget_dir = 'gtk'

LOCAL_INCLUDES += [
    '../%s' % widget_dir,
]
if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa':
    FINAL_LIBRARY = 'widget_mac'
elif CONFIG['MOZ_WIDGET_TOOLKIT'] in ('windows', 'gonk', 'android', 'qt', 'gtk2', 'gtk3'):
    FINAL_LIBRARY = 'widget_%s' % CONFIG['MOZ_WIDGET_TOOLKIT']

if CONFIG['MOZ_ENABLE_D3D10_LAYER']:
    DEFINES['MOZ_ENABLE_D3D10_LAYER'] = True