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/.
8 'gonk/nsIRecoveryService.idl',
17 'HalScreenConfiguration.h',
23 TEST_DIRS += ['tests']
26 'sandbox/SandboxHal.cpp',
27 'WindowIdentifier.cpp',
30 # Hal.cpp cannot be built in unified mode because it relies on HalImpl.h.
35 if CONFIG['MOZ_GAMEPAD_BACKEND'] == 'stub':
37 'fallback/FallbackGamepad.cpp'
39 elif CONFIG['MOZ_GAMEPAD_BACKEND'] == 'cocoa':
41 'cocoa/CocoaGamepad.cpp'
43 elif CONFIG['MOZ_GAMEPAD_BACKEND'] == 'windows':
45 'windows/WindowsGamepad.cpp'
47 elif CONFIG['MOZ_GAMEPAD_BACKEND'] == 'linux':
49 'linux/LinuxGamepad.cpp'
51 elif CONFIG['MOZ_GAMEPAD_BACKEND'] == 'android':
53 'android/AndroidGamepad.cpp'
56 if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'android':
58 'android/AndroidSensor.cpp',
59 'fallback/FallbackAlarm.cpp',
60 'fallback/FallbackPower.cpp',
61 'linux/LinuxMemory.cpp',
63 # AndroidHal.cpp cannot be built in unified mode because it relies on HalImpl.h.
65 'android/AndroidHal.cpp',
67 elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gonk':
69 'gonk/GonkDiskSpaceWatcher.cpp',
70 'gonk/GonkFMRadio.cpp',
71 'gonk/GonkSensor.cpp',
72 'gonk/GonkSwitch.cpp',
73 'gonk/UeventPoller.cpp',
74 'linux/LinuxMemory.cpp',
75 'linux/LinuxPower.cpp',
77 # GonkHal.cpp cannot be built in unified mode because it relies on HalImpl.h.
81 elif CONFIG['OS_TARGET'] == 'Linux':
83 'fallback/FallbackAlarm.cpp',
84 'fallback/FallbackScreenConfiguration.cpp',
85 'fallback/FallbackSensor.cpp',
86 'fallback/FallbackVibration.cpp',
87 'linux/LinuxMemory.cpp',
88 'linux/LinuxPower.cpp',
90 if CONFIG['MOZ_ENABLE_DBUS']:
92 'linux/UPowerClient.cpp',
96 'fallback/FallbackBattery.cpp',
98 elif CONFIG['OS_TARGET'] == 'WINNT':
100 'fallback/FallbackAlarm.cpp',
101 'fallback/FallbackMemory.cpp',
102 'fallback/FallbackPower.cpp',
103 'fallback/FallbackScreenConfiguration.cpp',
104 'fallback/FallbackVibration.cpp',
105 'windows/WindowsSensor.cpp',
107 # WindowsBattery.cpp cannot be built in unified mode because it relies on HalImpl.h.
109 'windows/WindowsBattery.cpp',
111 elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa':
113 'cocoa/CocoaBattery.cpp',
114 'fallback/FallbackAlarm.cpp',
115 'fallback/FallbackMemory.cpp',
116 'fallback/FallbackPower.cpp',
117 'fallback/FallbackScreenConfiguration.cpp',
118 'fallback/FallbackVibration.cpp',
120 elif CONFIG['OS_TARGET'] in ('OpenBSD', 'NetBSD', 'FreeBSD', 'DragonFly'):
122 'fallback/FallbackAlarm.cpp',
123 'fallback/FallbackMemory.cpp',
124 'fallback/FallbackPower.cpp',
125 'fallback/FallbackScreenConfiguration.cpp',
126 'fallback/FallbackSensor.cpp',
127 'fallback/FallbackVibration.cpp',
129 if CONFIG['MOZ_ENABLE_DBUS']:
131 'linux/UPowerClient.cpp',
135 'fallback/FallbackBattery.cpp',
139 'fallback/FallbackAlarm.cpp',
140 'fallback/FallbackBattery.cpp',
141 'fallback/FallbackMemory.cpp',
142 'fallback/FallbackPower.cpp',
143 'fallback/FallbackScreenConfiguration.cpp',
144 'fallback/FallbackSensor.cpp',
145 'fallback/FallbackVibration.cpp',
148 # Fallbacks for backends implemented on Gonk only.
149 if CONFIG['MOZ_WIDGET_TOOLKIT'] != 'gonk':
151 'fallback/FallbackDiskSpaceWatcher.cpp',
152 'fallback/FallbackFactoryReset.cpp',
153 'fallback/FallbackFMRadio.cpp',
154 'fallback/FallbackProcessPriority.cpp',
155 'fallback/FallbackScreenPower.cpp',
156 'fallback/FallbackSwitch.cpp',
157 'fallback/FallbackThreadPriority.cpp',
158 'fallback/FallbackTime.cpp',
159 'fallback/FallbackWakeLocks.cpp',
162 # Fallbacks for backends implemented on Android only.
163 if CONFIG['MOZ_WIDGET_TOOLKIT'] != 'android':
165 'fallback/FallbackNetwork.cpp',
168 if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa':
170 'cocoa/CocoaSensor.mm',
178 FAIL_ON_WARNINGS = True
180 include('/ipc/chromium/chromium-config.mozbuild')
182 FINAL_LIBRARY = 'xul'
184 if CONFIG['MOZ_GAMEPAD']:
189 if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gonk':
190 # So that we can call nsScreenManagerGonk::GetConfiguration().
196 if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gonk':
197 CXXFLAGS += ['-I%s/hardware/libhardware_legacy/include' % CONFIG['ANDROID_SOURCE']]
199 CFLAGS += CONFIG['GLIB_CFLAGS']
200 CFLAGS += CONFIG['MOZ_DBUS_GLIB_CFLAGS']
201 CXXFLAGS += CONFIG['GLIB_CFLAGS']
202 CXXFLAGS += CONFIG['MOZ_DBUS_GLIB_CFLAGS']