Bug 1777562 [wpt PR 34663] - [FedCM] Rename FederatedCredential to IdentityCredential...
[gecko.git] / widget / cocoa / moz.build
blobac541cc4c52859fa926a1feb89190326f65c5994
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/.
7 with Files("**"):
8     BUG_COMPONENT = ("Core", "Widget: Cocoa")
9     SCHEDULES.exclusive = ["macosx"]
11 with Files("*TextInput*"):
12     BUG_COMPONENT = ("Core", "DOM: UI Events & Focus Handling")
14 XPIDL_SOURCES += [
15     "nsPIWidgetCocoa.idl",
18 XPIDL_MODULE = "widget_cocoa"
20 EXPORTS += [
21     "CFTypeRefPtr.h",
22     "DesktopBackgroundImage.h",
23     "MediaHardwareKeysEventSourceMac.h",
24     "MediaHardwareKeysEventSourceMacMediaCenter.h",
25     "mozView.h",
26     "nsBidiKeyboard.h",
27     "nsChangeObserver.h",
28     "nsCocoaFeatures.h",
29     "nsCocoaUtils.h",
30     "SDKDeclarations.h",
33 UNIFIED_SOURCES += [
34     "AppearanceOverride.mm",
35     "GfxInfo.mm",
36     "MOZIconHelper.mm",
37     "MOZMenuOpeningCoordinator.mm",
38     "NativeKeyBindings.mm",
39     "NativeMenuMac.mm",
40     "NativeMenuSupport.mm",
41     "nsAppShell.mm",
42     "nsBidiKeyboard.mm",
43     "nsCocoaFeatures.mm",
44     "nsCocoaUtils.mm",
45     "nsCocoaWindow.mm",
46     "nsColorPicker.mm",
47     "nsCursorManager.mm",
48     "nsDeviceContextSpecX.mm",
49     "nsFilePicker.mm",
50     "nsLookAndFeel.mm",
51     "nsMacCursor.mm",
52     "nsMacDockSupport.mm",
53     "nsMacFinderProgress.mm",
54     "nsMacSharingService.mm",
55     "nsMacUserActivityUpdater.mm",
56     "nsMacWebAppUtils.mm",
57     "nsMenuBarX.mm",
58     "nsMenuGroupOwnerX.mm",
59     "nsMenuItemIconX.mm",
60     "nsMenuItemX.mm",
61     "nsMenuUtilsX.mm",
62     "nsMenuX.mm",
63     "nsPrintDialogX.mm",
64     "nsPrintSettingsServiceX.mm",
65     "nsPrintSettingsX.mm",
66     "nsSound.mm",
67     "nsStandaloneNativeMenu.mm",
68     "nsSystemStatusBarCocoa.mm",
69     "nsToolkit.mm",
70     "nsTouchBar.mm",
71     "nsTouchBarInput.mm",
72     "nsTouchBarInputIcon.mm",
73     "nsTouchBarUpdater.mm",
74     "nsUserIdleServiceX.mm",
75     "nsWidgetFactory.mm",
76     "nsWindowMap.mm",
77     "OSXNotificationCenter.mm",
78     "ScreenHelperCocoa.mm",
79     "TextInputHandler.mm",
80     "TextRecognition.mm",
81     "VibrancyManager.mm",
82     "ViewRegion.mm",
83     "WidgetTraceEvent.mm",
86 # These files cannot be built in unified mode because they cause symbol conflicts
87 SOURCES += [
88     "DesktopBackgroundImage.mm",
89     "MediaHardwareKeysEventSourceMac.mm",
90     "MediaHardwareKeysEventSourceMacMediaCenter.mm",
91     "MediaKeysEventSourceFactory.cpp",
92     "nsChildView.mm",
93     "nsClipboard.mm",
94     "nsDragService.mm",
95     "nsNativeThemeCocoa.mm",
98 if not CONFIG["RELEASE_OR_BETA"] or CONFIG["MOZ_DEBUG"]:
99     SOURCES += [
100         "nsSandboxViolationSink.mm",
101     ]
103 XPCOM_MANIFESTS += [
104     "components.conf",
107 include("/ipc/chromium/chromium-config.mozbuild")
109 FINAL_LIBRARY = "xul"
110 LOCAL_INCLUDES += [
111     "/dom/events",
112     "/dom/media/platforms/apple",
113     "/layout/base",
114     "/layout/forms",
115     "/layout/generic",
116     "/layout/style",
117     "/layout/xul",
118     "/widget",
119     "/widget/headless",
122 if CONFIG["MOZ_ENABLE_SKIA_PDF"]:
123     # Skia includes because widget code includes PrintTargetSkPDF.h, and that
124     # includes skia headers.
125     LOCAL_INCLUDES += CONFIG["SKIA_INCLUDES"]
127 RESOURCE_FILES.cursors += [
128     "cursors/arrowN.png",
129     "cursors/arrowN@2x.png",
130     "cursors/arrowS.png",
131     "cursors/arrowS@2x.png",
132     "cursors/cell.png",
133     "cursors/cell@2x.png",
134     "cursors/colResize.png",
135     "cursors/colResize@2x.png",
136     "cursors/help.png",
137     "cursors/help@2x.png",
138     "cursors/move.png",
139     "cursors/move@2x.png",
140     "cursors/rowResize.png",
141     "cursors/rowResize@2x.png",
142     "cursors/sizeNE.png",
143     "cursors/sizeNE@2x.png",
144     "cursors/sizeNESW.png",
145     "cursors/sizeNESW@2x.png",
146     "cursors/sizeNS.png",
147     "cursors/sizeNS@2x.png",
148     "cursors/sizeNW.png",
149     "cursors/sizeNW@2x.png",
150     "cursors/sizeNWSE.png",
151     "cursors/sizeNWSE@2x.png",
152     "cursors/sizeSE.png",
153     "cursors/sizeSE@2x.png",
154     "cursors/sizeSW.png",
155     "cursors/sizeSW@2x.png",
156     "cursors/vtIBeam.png",
157     "cursors/vtIBeam@2x.png",
158     "cursors/zoomIn.png",
159     "cursors/zoomIn@2x.png",
160     "cursors/zoomOut.png",
161     "cursors/zoomOut@2x.png",
164 # These resources go in $(DIST)/bin/res/MainMenu.nib, but we can't use a magic
165 # RESOURCE_FILES.MainMenu.nib attribute, since that would put the files in
166 # $(DIST)/bin/res/MainMenu/nib. Instead, we call __setattr__ directly to create
167 # an attribute with the correct name.
168 RESOURCE_FILES.__setattr__(
169     "MainMenu.nib",
170     [
171         "resources/MainMenu.nib/classes.nib",
172         "resources/MainMenu.nib/info.nib",
173         "resources/MainMenu.nib/keyedobjects.nib",
174     ],
177 OS_LIBS += [
178     "-framework IOSurface",
179     "-framework Vision",
182 SPHINX_TREES["/widget/cocoa"] = "docs"
184 REQUIRES_UNIFIED_BUILD = True