diff options
Diffstat (limited to 'hal/moz.build')
-rw-r--r-- | hal/moz.build | 137 |
1 files changed, 137 insertions, 0 deletions
diff --git a/hal/moz.build b/hal/moz.build new file mode 100644 index 0000000000..97955bde5a --- /dev/null +++ b/hal/moz.build @@ -0,0 +1,137 @@ +# -*- 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/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/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": + REQUIRES_UNIFIED_BUILD = True + UNIFIED_SOURCES += [ + "fallback/FallbackVibration.cpp", + "windows/WindowsSensor.cpp", + ] + # WindowsBattery.cpp cannot be built in unified mode because it relies on HalImpl.h. + # WindowsProcessPriority.cpp needs to set _WIN32_WINNT to Windows 8 + # WindowsScreenConfiguration.cpp needs to set WINVER to 0x0602. + SOURCES += [ + "windows/WindowsBattery.cpp", + "windows/WindowsProcessPriority.cpp", + "windows/WindowsScreenConfiguration.cpp", + ] +elif CONFIG["MOZ_WIDGET_TOOLKIT"] == "cocoa": + UNIFIED_SOURCES += [ + "cocoa/CocoaBattery.cpp", + "fallback/FallbackProcessPriority.cpp", + "fallback/FallbackScreenConfiguration.cpp", + "fallback/FallbackVibration.cpp", + ] +elif CONFIG["OS_TARGET"] in ("OpenBSD", "NetBSD", "FreeBSD", "DragonFly"): + UNIFIED_SOURCES += [ + "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/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", + ] + +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"] +CFLAGS += CONFIG["MOZ_DBUS_GLIB_CFLAGS"] +CXXFLAGS += CONFIG["GLIB_CFLAGS"] +CXXFLAGS += CONFIG["MOZ_GTK3_CFLAGS"] +CXXFLAGS += CONFIG["MOZ_DBUS_GLIB_CFLAGS"] |