# -*- Mode: python; 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/. with Files("**"): BUG_COMPONENT = ("Core", "Hardware Abstraction Layer (HAL)") EXPORTS.mozilla += [ "Hal.h", "HalBatteryInformation.h", "HalImpl.h", "HalIPCUtils.h", "HalNetworkInformation.h", "HalSandbox.h", "HalScreenConfiguration.h", "HalSensor.h", "HalTypes.h", "HalWakeLock.h", "HalWakeLockInformation.h", ] 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/AndroidHeterogeneousCpuInfo.cpp", "android/AndroidPerformanceHintManager.cpp", "android/AndroidProcessPriority.cpp", "android/AndroidSensor.cpp", ] # AndroidHal.cpp cannot be built in unified mode because it relies on HalImpl.h. SOURCES += [ "android/AndroidHal.cpp", ] elif CONFIG["OS_TARGET"] == "Linux": UNIFIED_SOURCES += [ "fallback/FallbackHeterogeneousCpuInfo.cpp", "fallback/FallbackScreenConfiguration.cpp", "fallback/FallbackSensor.cpp", "fallback/FallbackVibration.cpp", "linux/LinuxProcessPriority.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/FallbackHeterogeneousCpuInfo.cpp", "fallback/FallbackVibration.cpp", "windows/WindowsProcessPriority.cpp", "windows/WindowsScreenConfiguration.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", "cocoa/CocoaHeterogeneousCpuInfo.cpp", "fallback/FallbackProcessPriority.cpp", "fallback/FallbackScreenConfiguration.cpp", "fallback/FallbackVibration.cpp", ] elif CONFIG["OS_TARGET"] in ("OpenBSD", "NetBSD", "FreeBSD", "DragonFly"): UNIFIED_SOURCES += [ "fallback/FallbackHeterogeneousCpuInfo.cpp", "fallback/FallbackProcessPriority.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/FallbackBattery.cpp", "fallback/FallbackHeterogeneousCpuInfo.cpp", "fallback/FallbackProcessPriority.cpp", "fallback/FallbackScreenConfiguration.cpp", "fallback/FallbackSensor.cpp", "fallback/FallbackVibration.cpp", ] # Fallbacks for backends implemented on Android only. if CONFIG["MOZ_WIDGET_TOOLKIT"] != "android": UNIFIED_SOURCES += [ "fallback/FallbackNetwork.cpp", "fallback/FallbackPerformanceHintManager.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" LOCAL_INCLUDES += [ "/dom/base", ] CFLAGS += CONFIG["GLIB_CFLAGS"] CFLAGS += CONFIG["MOZ_GTK3_CFLAGS"] CXXFLAGS += CONFIG["GLIB_CFLAGS"] CXXFLAGS += CONFIG["MOZ_GTK3_CFLAGS"]