1# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
2# vim: set filetype=python:
3# This Source Code Form is subject to the terms of the Mozilla Public
4# License, v. 2.0. If a copy of the MPL was not distributed with this
5# file, You can obtain one at http://mozilla.org/MPL/2.0/.
6
7# For BinaryPath::GetLong for Windows
8LOCAL_INCLUDES += [
9    '/xpcom/build'
10]
11
12BROWSER_CHROME_MANIFESTS += ['test/browser.ini']
13MOCHITEST_CHROME_MANIFESTS += ['test/chrome.ini']
14XPCSHELL_TESTS_MANIFESTS += ['test/unit/xpcshell.ini']
15
16JAR_MANIFESTS += ['jar.mn']
17
18XPIDL_SOURCES += [
19    'nsIShellService.idl',
20]
21
22if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa':
23    XPIDL_SOURCES += [
24        'nsIMacShellService.idl',
25    ]
26
27    SOURCES += [
28        'nsMacShellService.cpp',
29    ]
30
31    LOCAL_INCLUDES += [
32        # For CocoaFileUtils
33        '/xpcom/io'
34    ]
35elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gtk':
36    XPIDL_SOURCES += [
37        'nsIGNOMEShellService.idl',
38    ]
39
40    SOURCES += [
41        'nsGNOMEShellService.cpp',
42    ]
43    if CONFIG['MOZ_ENABLE_DBUS']:
44        SOURCES += [
45            'nsGNOMEShellDBusHelper.cpp',
46            'nsGNOMEShellSearchProvider.cpp',
47        ]
48        include('/ipc/chromium/chromium-config.mozbuild')
49
50elif CONFIG['OS_ARCH'] == 'WINNT':
51    XPIDL_SOURCES += [
52        'nsIWindowsShellService.idl',
53    ]
54    SOURCES += [
55        'nsWindowsShellService.cpp',
56    ]
57    LOCAL_INCLUDES += [
58        '../../../other-licenses/nsis/Contrib/CityHash/cityhash',
59    ]
60
61XPIDL_MODULE = 'shellservice'
62
63if SOURCES:
64    FINAL_LIBRARY = 'browsercomps'
65
66EXTRA_JS_MODULES += [
67    'HeadlessShell.jsm',
68    'ScreenshotChild.jsm',
69    'ShellService.jsm',
70]
71
72for var in ('MOZ_APP_NAME', 'MOZ_APP_VERSION'):
73    DEFINES[var] = '"%s"' % CONFIG[var]
74
75CXXFLAGS += CONFIG['TK_CFLAGS']
76if CONFIG['MOZ_ENABLE_DBUS']:
77    CXXFLAGS += CONFIG['MOZ_DBUS_GLIB_CFLAGS']
78
79with Files('**'):
80    BUG_COMPONENT = ('Firefox', 'Shell Integration')
81