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