| # Copyright 2024 The Chromium Authors |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| component("dwa") { |
| sources = [ |
| "dwa_entry_builder.cc", |
| "dwa_entry_builder.h", |
| "dwa_entry_builder_base.cc", |
| "dwa_entry_builder_base.h", |
| "dwa_pref_names.cc", |
| "dwa_pref_names.h", |
| "dwa_recorder.cc", |
| "dwa_recorder.h", |
| "dwa_recorder_factory_impl.cc", |
| "dwa_recorder_factory_impl.h", |
| "dwa_recorder_interface.cc", |
| "dwa_recorder_interface.h", |
| "dwa_reporting_service.cc", |
| "dwa_reporting_service.h", |
| "dwa_service.cc", |
| "dwa_service.h", |
| ] |
| public_deps = [ |
| "//components/metrics/dwa/mojom", |
| "//third_party/metrics_proto", |
| ] |
| defines = [ "IS_DWA_IMPL" ] |
| deps = [ |
| "//base", |
| "//build:buildflag_header_h", |
| "//components/metrics", |
| "//components/metrics:metrics_pref_names", |
| "//components/prefs:prefs", |
| "//components/version_info:version_info", |
| "//mojo/public/cpp/bindings", |
| ] |
| } |
| |
| source_set("unit_tests") { |
| testonly = true |
| sources = [ |
| "dwa_entry_builder_unittest.cc", |
| "dwa_recorder_unittest.cc", |
| "dwa_service_unittest.cc", |
| ] |
| deps = [ |
| ":dwa", |
| "//base", |
| "//base/test:test_support", |
| "//components/metrics", |
| "//components/metrics:test_support", |
| "//components/prefs:prefs", |
| "//components/prefs:test_support", |
| "//testing/gmock", |
| "//testing/gtest", |
| "//third_party/metrics_proto", |
| ] |
| } |
| |
| action("gen_dwa_builders") { |
| script = "//tools/metrics/dwa/gen_builders.py" |
| |
| # Re-generate the outputs if the codegen code changes: |
| inputs = [ |
| "//tools/metrics/dwa/builders_template.py", |
| "//tools/metrics/dwa/decode_template.py", |
| "//tools/metrics/dwa/codegen.py", |
| ] |
| sources = [ "//tools/metrics/dwa/dwa.xml" ] |
| |
| outdir = "$target_gen_dir" |
| |
| outputs = [ |
| outdir + "/dwa_builders.cc", |
| outdir + "/dwa_builders.h", |
| outdir + "/dwa_decode.cc", |
| outdir + "/dwa_decode.h", |
| ] |
| |
| args = [ |
| "--input", |
| rebase_path(sources[0], root_build_dir), |
| "--output", |
| rebase_path(outdir, root_build_dir), |
| ] |
| } |
| |
| static_library("dwa_builders") { |
| sources = get_target_outputs(":gen_dwa_builders") |
| |
| deps = [ |
| ":dwa", |
| ":gen_dwa_builders", |
| "//base", |
| ] |
| } |