BUILD.gn 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. # Copyright 2017 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. if (is_android) {
  5. import("//build/config/android/config.gni")
  6. import("//build/config/android/rules.gni")
  7. }
  8. source_set("public") {
  9. sources = [
  10. "configuration.cc",
  11. "configuration.h",
  12. "event_constants.cc",
  13. "event_constants.h",
  14. "feature_configurations.cc",
  15. "feature_configurations.h",
  16. "feature_constants.cc",
  17. "feature_constants.h",
  18. "feature_list.cc",
  19. "feature_list.h",
  20. "tracker.cc",
  21. "tracker.h",
  22. ]
  23. deps = [
  24. "//base",
  25. "//components/feed:feature_list",
  26. "//components/flags_ui",
  27. "//components/keyed_service/core",
  28. ]
  29. if (is_android) {
  30. sources += [
  31. "android/wrapping_test_tracker.cc",
  32. "android/wrapping_test_tracker.h",
  33. ]
  34. deps += [ "//components/feature_engagement/public:jni_headers" ]
  35. }
  36. }
  37. source_set("unit_tests") {
  38. testonly = true
  39. visibility = [ "//components/feature_engagement:unit_tests" ]
  40. # IMPORTANT NOTE: When adding new tests, also remember to update the list of
  41. # tests in //components/feature_engagement/components_unittests.filter
  42. sources = [ "configuration_unittest.cc" ]
  43. deps = [
  44. ":public",
  45. "//testing/gtest",
  46. ]
  47. }
  48. if (is_android) {
  49. android_library("public_java") {
  50. sources = [
  51. "android/java/src/org/chromium/components/feature_engagement/CppWrappedTestTracker.java",
  52. "android/java/src/org/chromium/components/feature_engagement/EventConstants.java",
  53. "android/java/src/org/chromium/components/feature_engagement/FeatureConstants.java",
  54. "android/java/src/org/chromium/components/feature_engagement/Tracker.java",
  55. "android/java/src/org/chromium/components/feature_engagement/TriggerDetails.java",
  56. ]
  57. deps = [
  58. ":jni_headers",
  59. "//base:base_java",
  60. "//base:jni_java",
  61. "//third_party/androidx:androidx_annotation_annotation_java",
  62. ]
  63. annotation_processor_deps = [ "//base/android/jni_generator:jni_processor" ]
  64. srcjar_deps = [ ":public_java_enums_srcjar" ]
  65. }
  66. java_cpp_enum("public_java_enums_srcjar") {
  67. visibility = [ ":*" ]
  68. sources = [ "tracker.h" ]
  69. }
  70. generate_jni("jni_headers") {
  71. sources = [ "android/java/src/org/chromium/components/feature_engagement/CppWrappedTestTracker.java" ]
  72. }
  73. }