gecko-dev/hal/moz.build
Aaron Klotz 71237bdc28 Bug 1620145: Part 2 - Add AndroidProcessPriority.cpp to hal; r=gsvelto,geckoview-reviewers,snorp
This patch is pretty straightforward: it translates Gecko priority levels
into GeckoView priority levels and then sends it up to GV's
`GeckoProcessManager` via JNI.

We do assume that the process is content, but if we try to do that on a
non-content process, it's just a no-op. We can expand this coverage to other
process types later as necessary.

Differential Revision: https://phabricator.services.mozilla.com/D68418

--HG--
extra : moz-landing-system : lando
2020-04-06 18:10:22 +00:00

135 lines
3.7 KiB
Python

# -*- 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',
'HalNetworkInformation.h',
'HalSandbox.h',
'HalScreenConfiguration.h',
'HalSensor.h',
'HalTypes.h',
'HalWakeLock.h',
'HalWakeLockInformation.h',
]
EXPORTS.mozilla.fallback += [
'fallback/FallbackScreenConfiguration.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/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',
]
elif CONFIG['OS_TARGET'] == 'WINNT':
UNIFIED_SOURCES += [
'fallback/FallbackScreenConfiguration.cpp',
'fallback/FallbackVibration.cpp',
'windows/WindowsProcessPriority.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/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_DBUS_GLIB_CFLAGS']
CXXFLAGS += CONFIG['GLIB_CFLAGS']
CXXFLAGS += CONFIG['MOZ_DBUS_GLIB_CFLAGS']