BUILD.gn 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. # Copyright 2020 The Chromium Authors. All rights reserved.
  2. # Use of this source code is governed by a BSD-style license that can be
  3. # found in the LICENSE file.
  4. import("//build/buildflag_header.gni")
  5. import("//build/config/chromeos/ui_mode.gni")
  6. import("//chromeos/components/sensors/buildflags.gni")
  7. assert(is_chromeos, "Non-ChromeOS builds cannot depend on //chromeos")
  8. buildflag_header("buildflags") {
  9. header = "buildflags.h"
  10. flags = [ "USE_IIOSERVICE=$use_iioservice" ]
  11. }
  12. component("sensors") {
  13. output_name = "chromeos_sensors"
  14. defines = [ "IS_CHROMEOS_SENSORS_IMPL" ]
  15. sources = [
  16. "sensor_util.cc",
  17. "sensor_util.h",
  18. ]
  19. deps = [
  20. "//base",
  21. "//build:chromeos_buildflags",
  22. "//chromeos/components/sensors/mojom",
  23. "//mojo/public/cpp/bindings",
  24. ]
  25. if (is_chromeos_ash) {
  26. sources += [
  27. "ash/sensor_hal_dispatcher.cc",
  28. "ash/sensor_hal_dispatcher.h",
  29. ]
  30. }
  31. if (is_chromeos_lacros) {
  32. deps += [
  33. "//chromeos/crosapi/mojom",
  34. "//chromeos/lacros",
  35. ]
  36. }
  37. }
  38. source_set("test_support") {
  39. testonly = true
  40. sources = [
  41. "fake_sensor_device.cc",
  42. "fake_sensor_device.h",
  43. "fake_sensor_hal_client.cc",
  44. "fake_sensor_hal_client.h",
  45. "fake_sensor_hal_server.cc",
  46. "fake_sensor_hal_server.h",
  47. "fake_sensor_service.cc",
  48. "fake_sensor_service.h",
  49. ]
  50. deps = [
  51. ":sensors",
  52. "//base",
  53. "//chromeos/components/sensors/mojom",
  54. "//mojo/public/cpp/bindings",
  55. ]
  56. }
  57. source_set("unit_tests") {
  58. testonly = true
  59. sources = [ "ash/sensor_hal_dispatcher_unittest.cc" ]
  60. deps = [
  61. ":sensors",
  62. ":test_support",
  63. "//base/test:test_support",
  64. "//chromeos/components/sensors/mojom",
  65. "//mojo/public/cpp/bindings",
  66. "//testing/gtest",
  67. ]
  68. }