# 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", ] }