moz.build (4178B)
1 # -*- Mode: python; 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/. 6 7 with Files("**"): 8 BUG_COMPONENT = ("Core", "Hardware Abstraction Layer (HAL)") 9 10 EXPORTS.mozilla += [ 11 "Hal.h", 12 "HalBatteryInformation.h", 13 "HalImpl.h", 14 "HalIPCUtils.h", 15 "HalNetworkInformation.h", 16 "HalSandbox.h", 17 "HalScreenConfiguration.h", 18 "HalSensor.h", 19 "HalTypes.h", 20 "HalWakeLock.h", 21 "HalWakeLockInformation.h", 22 ] 23 24 UNIFIED_SOURCES += [ 25 "HalWakeLock.cpp", 26 "sandbox/SandboxHal.cpp", 27 "WindowIdentifier.cpp", 28 ] 29 30 # Hal.cpp cannot be built in unified mode because it relies on HalImpl.h. 31 SOURCES += [ 32 "Hal.cpp", 33 ] 34 35 if CONFIG["MOZ_WIDGET_TOOLKIT"] == "android": 36 LOCAL_INCLUDES += [ 37 "/widget/android", 38 ] 39 UNIFIED_SOURCES += [ 40 "android/AndroidHapticFeedback.cpp", 41 "android/AndroidHeterogeneousCpuInfo.cpp", 42 "android/AndroidPerformanceHintManager.cpp", 43 "android/AndroidProcessPriority.cpp", 44 "android/AndroidSensor.cpp", 45 ] 46 # AndroidHal.cpp cannot be built in unified mode because it relies on HalImpl.h. 47 SOURCES += [ 48 "android/AndroidHal.cpp", 49 ] 50 elif CONFIG["OS_TARGET"] == "Linux": 51 UNIFIED_SOURCES += [ 52 "fallback/FallbackHeterogeneousCpuInfo.cpp", 53 "fallback/FallbackScreenConfiguration.cpp", 54 "fallback/FallbackSensor.cpp", 55 "fallback/FallbackVibration.cpp", 56 "linux/LinuxProcessPriority.cpp", 57 ] 58 if CONFIG["MOZ_ENABLE_DBUS"]: 59 UNIFIED_SOURCES += [ 60 "linux/UPowerClient.cpp", 61 ] 62 else: 63 UNIFIED_SOURCES += [ 64 "fallback/FallbackBattery.cpp", 65 ] 66 elif CONFIG["OS_TARGET"] == "WINNT": 67 UNIFIED_SOURCES += [ 68 "fallback/FallbackVibration.cpp", 69 "windows/WindowsHeterogeneousCpuInfo.cpp", 70 "windows/WindowsProcessPriority.cpp", 71 "windows/WindowsScreenConfiguration.cpp", 72 "windows/WindowsSensor.cpp", 73 ] 74 # WindowsBattery.cpp cannot be built in unified mode because it relies on HalImpl.h. 75 SOURCES += [ 76 "windows/WindowsBattery.cpp", 77 ] 78 elif CONFIG["MOZ_WIDGET_TOOLKIT"] == "cocoa": 79 UNIFIED_SOURCES += [ 80 "cocoa/CocoaBattery.cpp", 81 "cocoa/CocoaHeterogeneousCpuInfo.cpp", 82 "fallback/FallbackProcessPriority.cpp", 83 "fallback/FallbackScreenConfiguration.cpp", 84 "fallback/FallbackVibration.cpp", 85 ] 86 elif CONFIG["OS_TARGET"] in ("OpenBSD", "NetBSD", "FreeBSD", "DragonFly"): 87 UNIFIED_SOURCES += [ 88 "fallback/FallbackHeterogeneousCpuInfo.cpp", 89 "fallback/FallbackProcessPriority.cpp", 90 "fallback/FallbackScreenConfiguration.cpp", 91 "fallback/FallbackSensor.cpp", 92 "fallback/FallbackVibration.cpp", 93 ] 94 if CONFIG["MOZ_ENABLE_DBUS"]: 95 UNIFIED_SOURCES += [ 96 "linux/UPowerClient.cpp", 97 ] 98 else: 99 UNIFIED_SOURCES += [ 100 "fallback/FallbackBattery.cpp", 101 ] 102 else: 103 UNIFIED_SOURCES += [ 104 "fallback/FallbackBattery.cpp", 105 "fallback/FallbackHeterogeneousCpuInfo.cpp", 106 "fallback/FallbackProcessPriority.cpp", 107 "fallback/FallbackScreenConfiguration.cpp", 108 "fallback/FallbackSensor.cpp", 109 "fallback/FallbackVibration.cpp", 110 ] 111 112 # Fallbacks for backends implemented on Android only. 113 if CONFIG["MOZ_WIDGET_TOOLKIT"] != "android": 114 UNIFIED_SOURCES += [ 115 "fallback/FallbackHapticFeedback.cpp", 116 "fallback/FallbackNetwork.cpp", 117 "fallback/FallbackPerformanceHintManager.cpp", 118 ] 119 120 if CONFIG["MOZ_WIDGET_TOOLKIT"] == "cocoa": 121 UNIFIED_SOURCES += [ 122 "cocoa/CocoaSensor.mm", 123 "cocoa/smslib.mm", 124 ] 125 126 IPDL_SOURCES = [ 127 "sandbox/PHal.ipdl", 128 ] 129 130 include("/ipc/chromium/chromium-config.mozbuild") 131 132 FINAL_LIBRARY = "xul" 133 134 LOCAL_INCLUDES += [ 135 "/dom/base", 136 ] 137 138 CFLAGS += CONFIG["GLIB_CFLAGS"] 139 CFLAGS += CONFIG["MOZ_GTK3_CFLAGS"] 140 CXXFLAGS += CONFIG["GLIB_CFLAGS"] 141 CXXFLAGS += CONFIG["MOZ_GTK3_CFLAGS"]