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

SOURCES += [
    '!moc_mozqwidget.cpp',
    '!moc_nsAppShell.cpp',
    'mozqwidget.cpp',
    'nsAppShell.cpp',
    'nsBidiKeyboard.cpp',
    'nsClipboard.cpp',
    'nsIdleServiceQt.cpp',
    'nsLookAndFeel.cpp',
    'nsQtKeyUtils.cpp',
    'nsScreenManagerQt.cpp',
    'nsScreenQt.cpp',
    'nsWidgetFactory.cpp',
    'nsWindow.cpp',
]


if CONFIG['NS_PRINTING']:
    SOURCES += [
        'nsDeviceContextSpecQt.cpp',
        'nsPrintDialogQt.cpp',
        'nsPrintOptionsQt.cpp',
        'nsPrintSettingsQt.cpp',
    ]

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

FINAL_LIBRARY = 'xul'

LOCAL_INCLUDES += [
    '/widget',
]

if CONFIG['MOZ_X11']:
    LOCAL_INCLUDES += [
        '../x11',
    ]

#DEFINES['DEBUG_WIDGETS'] = True

if CONFIG['OS_ARCH'] == 'Linux':
    DEFINES['_BSD_SOURCE'] = True

if CONFIG['OS_ARCH'] == 'SunOS' and not CONFIG['GNU_CC']:
    # When using Sun's WorkShop compiler, including
    # /wherever/workshop-5.0/SC5.0/include/CC/std/time.h
    # causes most of these compiles to fail with:
    # line 29: Error: Multiple declaration for std::tm.
    # So, this gets around the problem.
    DEFINES['_TIME_H'] = 1

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