| # Copyright 2014 The Chromium Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import("//build/config/features.gni") |
| import("//mojo/public/tools/bindings/mojom.gni") |
| |
| component("battery") { |
| output_name = "device_battery" |
| |
| sources = [ |
| "battery_export.h", |
| "battery_monitor_impl.cc", |
| "battery_monitor_impl.h", |
| "battery_status_manager_android.cc", |
| "battery_status_manager_android.h", |
| "battery_status_manager_chromeos.cc", |
| "battery_status_manager_default.cc", |
| "battery_status_manager_linux.cc", |
| "battery_status_manager_linux.h", |
| "battery_status_manager_mac.cc", |
| "battery_status_manager_win.cc", |
| "battery_status_manager_win.h", |
| "battery_status_service.cc", |
| "battery_status_service.h", |
| ] |
| |
| defines = [ |
| "DEVICE_BATTERY_IMPLEMENTATION", |
| ] |
| |
| deps = [ |
| ":mojo_bindings", |
| "//base", |
| "//base/third_party/dynamic_annotations", |
| "//mojo/environment:chromium", |
| "//mojo/public/cpp/bindings", |
| "//mojo/edk/system", |
| ] |
| |
| if (is_android) { |
| deps += [ |
| "//device/battery/android:battery_jni_headers", |
| ] |
| sources += [ |
| "android/battery_jni_registrar.h", |
| "android/battery_jni_registrar.cc", |
| ] |
| sources -= [ |
| "battery_status_manager_default.cc", |
| ] |
| } |
| |
| if (is_chromeos) { |
| configs += [ |
| "//build/config/linux:dbus", |
| ] |
| deps += [ |
| "//chromeos:power_manager_proto", |
| ] |
| sources -= [ |
| "battery_status_manager_default.cc", |
| "battery_status_manager_linux.cc", |
| ] |
| } |
| |
| if (is_desktop_linux) { |
| if (use_dbus) { |
| configs += [ |
| "//build/config/linux:dbus", |
| ] |
| deps += [ |
| "//dbus" |
| ] |
| sources -= [ |
| "battery_status_manager_default.cc", |
| ] |
| } else { |
| sources -= [ |
| "battery_status_manager_linux.cc", |
| ] |
| } |
| } |
| |
| if (is_mac) { |
| sources -= [ |
| "battery_status_manager_default.cc", |
| ] |
| } |
| |
| if (is_win) { |
| sources -= [ |
| "battery_status_manager_default.cc", |
| ] |
| } |
| } |
| |
| mojom("mojo_bindings") { |
| sources = [ |
| "battery_monitor.mojom", |
| "battery_status.mojom", |
| ] |
| } |