michael@0: # -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*- michael@0: # vim: set filetype=python: michael@0: # This Source Code Form is subject to the terms of the Mozilla Public michael@0: # License, v. 2.0. If a copy of the MPL was not distributed with this michael@0: # file, You can obtain one at http://mozilla.org/MPL/2.0/. michael@0: michael@0: XPIDL_SOURCES += [ michael@0: 'gonk/nsIRecoveryService.idl', michael@0: ] michael@0: michael@0: XPIDL_MODULE = 'hal' michael@0: michael@0: EXPORTS.mozilla += [ michael@0: 'Hal.h', michael@0: 'HalImpl.h', michael@0: 'HalSandbox.h', michael@0: 'HalScreenConfiguration.h', michael@0: 'HalSensor.h', michael@0: 'HalTypes.h', michael@0: 'HalWakeLock.h', michael@0: ] michael@0: michael@0: TEST_DIRS += ['tests'] michael@0: UNIFIED_SOURCES += [ michael@0: 'HalWakeLock.cpp', michael@0: 'sandbox/SandboxHal.cpp', michael@0: 'WindowIdentifier.cpp', michael@0: ] michael@0: michael@0: # Hal.cpp cannot be built in unified mode because it relies on HalImpl.h. michael@0: SOURCES += [ michael@0: 'Hal.cpp', michael@0: ] michael@0: michael@0: if CONFIG['MOZ_GAMEPAD_BACKEND'] == 'stub': michael@0: UNIFIED_SOURCES += [ michael@0: 'fallback/FallbackGamepad.cpp' michael@0: ] michael@0: elif CONFIG['MOZ_GAMEPAD_BACKEND'] == 'cocoa': michael@0: UNIFIED_SOURCES += [ michael@0: 'cocoa/CocoaGamepad.cpp' michael@0: ] michael@0: elif CONFIG['MOZ_GAMEPAD_BACKEND'] == 'windows': michael@0: UNIFIED_SOURCES += [ michael@0: 'windows/WindowsGamepad.cpp' michael@0: ] michael@0: elif CONFIG['MOZ_GAMEPAD_BACKEND'] == 'linux': michael@0: UNIFIED_SOURCES += [ michael@0: 'linux/LinuxGamepad.cpp' michael@0: ] michael@0: michael@0: if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'android': michael@0: UNIFIED_SOURCES += [ michael@0: 'android/AndroidSensor.cpp', michael@0: 'fallback/FallbackAlarm.cpp', michael@0: 'fallback/FallbackPower.cpp', michael@0: 'linux/LinuxMemory.cpp', michael@0: ] michael@0: # AndroidHal.cpp cannot be built in unified mode because it relies on HalImpl.h. michael@0: SOURCES += [ michael@0: 'android/AndroidHal.cpp', michael@0: ] michael@0: elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gonk': michael@0: UNIFIED_SOURCES += [ michael@0: 'gonk/GonkDiskSpaceWatcher.cpp', michael@0: 'gonk/GonkFMRadio.cpp', michael@0: 'gonk/GonkSensor.cpp', michael@0: 'gonk/GonkSwitch.cpp', michael@0: 'gonk/UeventPoller.cpp', michael@0: 'linux/LinuxMemory.cpp', michael@0: 'linux/LinuxPower.cpp', michael@0: ] michael@0: # GonkHal.cpp cannot be built in unified mode because it relies on HalImpl.h. michael@0: SOURCES += [ michael@0: 'gonk/GonkHal.cpp', michael@0: ] michael@0: elif CONFIG['OS_TARGET'] == 'Linux': michael@0: UNIFIED_SOURCES += [ michael@0: 'fallback/FallbackAlarm.cpp', michael@0: 'fallback/FallbackScreenConfiguration.cpp', michael@0: 'fallback/FallbackSensor.cpp', michael@0: 'fallback/FallbackVibration.cpp', michael@0: 'linux/LinuxMemory.cpp', michael@0: 'linux/LinuxPower.cpp', michael@0: ] michael@0: if CONFIG['MOZ_ENABLE_DBUS']: michael@0: UNIFIED_SOURCES += [ michael@0: 'linux/UPowerClient.cpp', michael@0: ] michael@0: else: michael@0: UNIFIED_SOURCES += [ michael@0: 'fallback/FallbackBattery.cpp', michael@0: ] michael@0: elif CONFIG['OS_TARGET'] == 'WINNT': michael@0: UNIFIED_SOURCES += [ michael@0: 'fallback/FallbackAlarm.cpp', michael@0: 'fallback/FallbackMemory.cpp', michael@0: 'fallback/FallbackPower.cpp', michael@0: 'fallback/FallbackScreenConfiguration.cpp', michael@0: 'fallback/FallbackVibration.cpp', michael@0: 'windows/WindowsSensor.cpp', michael@0: ] michael@0: # WindowsBattery.cpp cannot be built in unified mode because it relies on HalImpl.h. michael@0: SOURCES += [ michael@0: 'windows/WindowsBattery.cpp', michael@0: ] michael@0: elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa': michael@0: UNIFIED_SOURCES += [ michael@0: 'cocoa/CocoaBattery.cpp', michael@0: 'fallback/FallbackAlarm.cpp', michael@0: 'fallback/FallbackMemory.cpp', michael@0: 'fallback/FallbackPower.cpp', michael@0: 'fallback/FallbackScreenConfiguration.cpp', michael@0: 'fallback/FallbackVibration.cpp', michael@0: ] michael@0: elif CONFIG['OS_TARGET'] in ('OpenBSD', 'NetBSD', 'FreeBSD', 'DragonFly'): michael@0: UNIFIED_SOURCES += [ michael@0: 'fallback/FallbackAlarm.cpp', michael@0: 'fallback/FallbackMemory.cpp', michael@0: 'fallback/FallbackPower.cpp', michael@0: 'fallback/FallbackScreenConfiguration.cpp', michael@0: 'fallback/FallbackSensor.cpp', michael@0: 'fallback/FallbackVibration.cpp', michael@0: ] michael@0: if CONFIG['MOZ_ENABLE_DBUS']: michael@0: UNIFIED_SOURCES += [ michael@0: 'linux/UPowerClient.cpp', michael@0: ] michael@0: else: michael@0: UNIFIED_SOURCES += [ michael@0: 'fallback/FallbackBattery.cpp', michael@0: ] michael@0: else: michael@0: UNIFIED_SOURCES += [ michael@0: 'fallback/FallbackAlarm.cpp', michael@0: 'fallback/FallbackBattery.cpp', michael@0: 'fallback/FallbackMemory.cpp', michael@0: 'fallback/FallbackPower.cpp', michael@0: 'fallback/FallbackScreenConfiguration.cpp', michael@0: 'fallback/FallbackSensor.cpp', michael@0: 'fallback/FallbackVibration.cpp', michael@0: ] michael@0: michael@0: # Fallbacks for backends implemented on Gonk only. michael@0: if CONFIG['MOZ_WIDGET_TOOLKIT'] != 'gonk': michael@0: UNIFIED_SOURCES += [ michael@0: 'fallback/FallbackDiskSpaceWatcher.cpp', michael@0: 'fallback/FallbackFactoryReset.cpp', michael@0: 'fallback/FallbackFMRadio.cpp', michael@0: 'fallback/FallbackLights.cpp', michael@0: 'fallback/FallbackProcessPriority.cpp', michael@0: 'fallback/FallbackScreenPower.cpp', michael@0: 'fallback/FallbackSwitch.cpp', michael@0: 'fallback/FallbackTime.cpp', michael@0: 'fallback/FallbackWakeLocks.cpp', michael@0: ] michael@0: michael@0: # Fallbacks for backends implemented on Android only. michael@0: if CONFIG['MOZ_WIDGET_TOOLKIT'] != 'android': michael@0: UNIFIED_SOURCES += [ michael@0: 'fallback/FallbackNetwork.cpp', michael@0: ] michael@0: michael@0: if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa': michael@0: UNIFIED_SOURCES += [ michael@0: 'cocoa/CocoaSensor.mm', michael@0: 'cocoa/smslib.mm', michael@0: ] michael@0: michael@0: IPDL_SOURCES = [ michael@0: 'sandbox/PHal.ipdl', michael@0: ] michael@0: michael@0: FAIL_ON_WARNINGS = True michael@0: michael@0: include('/ipc/chromium/chromium-config.mozbuild') michael@0: michael@0: FINAL_LIBRARY = 'xul' michael@0: michael@0: if CONFIG['MOZ_GAMEPAD']: michael@0: LOCAL_INCLUDES += [ michael@0: '/dom/base', michael@0: ] michael@0: michael@0: if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gonk': michael@0: # So that we can call nsScreenManagerGonk::GetConfiguration(). michael@0: LOCAL_INCLUDES += [ michael@0: '/widget/gonk', michael@0: '/widget/xpwidgets' michael@0: ] michael@0: michael@0: if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gonk': michael@0: CXXFLAGS += ['-I%s/hardware/libhardware_legacy/include' % CONFIG['ANDROID_SOURCE']]