Merge mozilla-b2g34 to 2.1s. a=merge
[gecko.git] / widget / moz.build
blob7512cd9a40632b11480c9467e3656be40ac06ec7
1 # -*- Mode: python; c-basic-offset: 4; 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/.
7 DIRS += ['shared', 'xpwidgets']
9 toolkit = CONFIG['MOZ_WIDGET_TOOLKIT']
11 if toolkit in ('cocoa', 'qt', 'android', 'gonk'):
12     DIRS += [toolkit]
13 if toolkit in ('qt', 'android', 'gonk', 'gtk2', 'gtk3'):
14     EXPORTS += ['nsIPrintDialogService.h']
16 if toolkit == 'windows':
17     DIRS += ['windows']
19     XPIDL_SOURCES += [
20         'nsIJumpListBuilder.idl',
21         'nsIJumpListItem.idl',
22         'nsIPrintSettingsWin.idl',
23         'nsITaskbarOverlayIconController.idl',
24         'nsITaskbarPreview.idl',
25         'nsITaskbarPreviewButton.idl',
26         'nsITaskbarPreviewController.idl',
27         'nsITaskbarProgress.idl',
28         'nsITaskbarTabPreview.idl',
29         'nsITaskbarWindowPreview.idl',
30         'nsIWinTaskbar.idl',
31     ]
32 elif toolkit == 'cocoa':
33     XPIDL_SOURCES += [
34         'nsIMacDockSupport.idl',
35         'nsIMacWebAppUtils.idl',
36         'nsIStandaloneNativeMenu.idl',
37         'nsISystemStatusBar.idl',
38         'nsITaskbarProgress.idl',
39     ]
40     EXPORTS += [
41         'nsINativeMenuService.h',
42         'nsIPrintDialogService.h',
43     ]
45 TEST_DIRS += ['tests']
47 # Don't build the DSO under the 'build' directory as windows does.
49 # The DSOs get built in the toolkit dir itself.  Do this so that
50 # multiple implementations of widget can be built on the same
51 # source tree.
53 if CONFIG['MOZ_ENABLE_GTK']:
54     DIRS += ['gtk']
56     if CONFIG['MOZ_X11']:
57         DIRS += ['gtkxtbin']
59 XPIDL_SOURCES += [
60     'nsIAppShell.idl',
61     'nsIBaseWindow.idl',
62     'nsIBidiKeyboard.idl',
63     'nsIClipboard.idl',
64     'nsIClipboardDragDropHookList.idl',
65     'nsIClipboardDragDropHooks.idl',
66     'nsIClipboardHelper.idl',
67     'nsIClipboardOwner.idl',
68     'nsIColorPicker.idl',
69     'nsIDragService.idl',
70     'nsIDragSession.idl',
71     'nsIFilePicker.idl',
72     'nsIFormatConverter.idl',
73     'nsIGfxInfo.idl',
74     'nsIGfxInfoDebug.idl',
75     'nsIIdleService.idl',
76     'nsIIdleServiceInternal.idl',
77     'nsIIMEPicker.idl',
78     'nsIPrintOptions.idl',
79     'nsIPrintSession.idl',
80     'nsIPrintSettings.idl',
81     'nsIPrintSettingsService.idl',
82     'nsIScreen.idl',
83     'nsIScreenManager.idl',
84     'nsISound.idl',
85     'nsITransferable.idl',
88 if CONFIG['MOZ_METRO']:
89     XPIDL_SOURCES += [
90         'MetroUIUtils.idl',
91         'nsIWinMetroUtils.idl',
92     ]
94 XPIDL_MODULE = 'widget'
96 EXPORTS += [
97     'InputData.h',
98     'nsIDeviceContextSpec.h',
99     'nsIPluginWidget.h',
100     'nsIRollupListener.h',
101     'nsIWidget.h',
102     'nsIWidgetListener.h',
103     'nsWidgetInitData.h',
104     'nsWidgetsCID.h',
107 EXPORTS.mozilla += [
108     'BasicEvents.h',
109     'CommandList.h',
110     'ContentEvents.h',
111     'EventClassList.h',
112     'EventForwards.h',
113     'LookAndFeel.h',
114     'MiscEvents.h',
115     'MouseEvents.h',
116     'TextEvents.h',
117     'TextRange.h',
118     'TouchEvents.h',
119     'WidgetUtils.h',
122 if CONFIG['MOZ_INSTRUMENT_EVENT_LOOP']:
123     EXPORTS.mozilla += [
124         'WidgetTraceEvent.h',
125     ]
127 EXPORTS.ipc = ['nsGUIEventIPC.h']