chromium/chromeos/ash/components/audio/BUILD.gn

# Copyright 2019 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("//build/config/chromeos/ui_mode.gni")
import("//testing/test.gni")

assert(is_chromeos_ash, "Non-Chrome-OS builds must not depend on //ash")

component("audio") {
  defines = [ "IS_CHROMEOS_ASH_COMPONENTS_AUDIO_IMPL" ]
  deps = [
    "//ash/constants",
    "//ash/strings",
    "//base",
    "//chromeos/ash/components/audio/public/mojom",
    "//chromeos/ash/components/dbus/audio",
    "//components/prefs",
    "//device/bluetooth",
    "//media/base:video_facing",
    "//mojo/public/cpp/bindings",
    "//services/media_session/public/mojom",
    "//ui/base",
    "//ui/events/devices",
    "//ui/message_center",
  ]
  sources = [
    "audio_device.cc",
    "audio_device.h",
    "audio_device_encoding.cc",
    "audio_device_encoding.h",
    "audio_device_id.cc",
    "audio_device_id.h",
    "audio_device_metrics_handler.cc",
    "audio_device_metrics_handler.h",
    "audio_devices_pref_handler.h",
    "audio_devices_pref_handler_impl.cc",
    "audio_devices_pref_handler_impl.h",
    "audio_devices_pref_handler_stub.cc",
    "audio_devices_pref_handler_stub.h",
    "audio_pref_observer.h",
    "audio_selection_notification_handler.cc",
    "audio_selection_notification_handler.h",
    "cras_audio_handler.cc",
    "cras_audio_handler.h",
    "cros_audio_config.cc",
    "cros_audio_config.h",
    "cros_audio_config_impl.cc",
    "cros_audio_config_impl.h",
    "device_activate_type.h",
    "sounds.h",
  ]
}

component("in_process_audio_config") {
  sources = [
    "in_process_instance.cc",
    "in_process_instance.h",
  ]

  defines = [ "IS_CHROMEOS_ASH_COMPONENTS_AUDIO_IN_PROCESS_AUDIO_CONFIG_IMPL" ]

  public_deps = [
    "//ash/constants",
    "//chromeos/ash/components/audio/public/mojom",
    "//mojo/public/cpp/bindings",
  ]

  deps = [ ":audio" ]
}

source_set("unit_tests") {
  testonly = true
  deps = [
    ":audio",
    "//ash/constants",
    "//ash/strings",
    "//base/test:test_support",
    "//chromeos/ash/components/audio/public/mojom",
    "//chromeos/ash/components/dbus/audio",
    "//components/prefs:test_support",
    "//device/bluetooth",
    "//media/base:video_facing",
    "//mojo/public/cpp/bindings",
    "//services/media_session/public/mojom",
    "//testing/gmock",
    "//testing/gtest",
    "//ui/base",
    "//ui/message_center",
  ]
  sources = [
    "audio_device_encoding_unittest.cc",
    "audio_device_id_unittest.cc",
    "audio_device_metrics_handler_unittest.cc",
    "audio_device_selection_generated_unittest.cc",
    "audio_device_selection_test_base.cc",
    "audio_device_selection_test_base.h",
    "audio_device_selection_unittest.cc",
    "audio_device_selection_with_notification_generated_unittest.cc",
    "audio_devices_pref_handler_impl_unittest.cc",
    "audio_selection_notification_handler_unittest.cc",
    "cras_audio_handler_unittest.cc",
    "cros_audio_config_impl_unittest.cc",
  ]
}