| # Copyright 2017 The Fuchsia 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/go/go_library.gni") |
| import("//third_party/protobuf/proto_library.gni") |
| |
| config("proto_config") { |
| defines = [ "PROTO_LITE" ] |
| } |
| |
| _registry_protos = [ |
| "aggregation_window", |
| "annotations", |
| "cobalt_registry", |
| "metric_definition", |
| "project", |
| "report_definition", |
| "window_size", |
| ] |
| |
| proto_library("cobalt_registry_proto") { |
| proto_in_dir = "$cobalt_root" |
| |
| sources = [] |
| |
| foreach(name, _registry_protos) { |
| sources += [ "${name}.proto" ] |
| } |
| |
| import_dirs = [ "//third_party/protobuf/src" ] |
| generate_python = false |
| generate_go = true |
| cc_generator_options = "lite" |
| |
| extra_configs = [ |
| ":proto_config", |
| "$cobalt_root:cobalt_config", |
| ] |
| } |
| |
| go_library("cobalt_registry_proto_go") { |
| name = "config" |
| source_dir = "$root_gen_dir/go-proto-gen/src/$cobalt_root/src/registry" |
| non_go_deps = [ ":cobalt_registry_proto" ] |
| sources = [] |
| |
| foreach(name, _registry_protos) { |
| sources += [ "${name}.pb.go" ] |
| } |
| deps = [ |
| "//garnet/public/go/third_party:github.com/golang/protobuf", |
| ] |
| } |
| |
| source_set("buckets_config") { |
| sources = [ |
| "buckets_config.cc", |
| "buckets_config.h", |
| ] |
| public_deps = [ |
| ":cobalt_registry_proto", |
| "$cobalt_root/src:logging", |
| ] |
| |
| public_configs = [ "$cobalt_root:cobalt_config" ] |
| } |
| |
| source_set("buckets_config_test") { |
| testonly = true |
| sources = [ |
| "buckets_config_test.cc", |
| ] |
| deps = [ |
| ":buckets_config", |
| ":cobalt_registry_proto", |
| "$cobalt_root/src:logging", |
| "//third_party/gflags", |
| "//third_party/googletest:gtest", |
| ] |
| configs += [ "$cobalt_root:cobalt_config" ] |
| } |
| |
| source_set("project_configs") { |
| sources = [ |
| "project_configs.cc", |
| "project_configs.h", |
| ] |
| |
| public_configs = [ |
| "$cobalt_root:cobalt_config", |
| "$cobalt_root/src/registry:proto_config", |
| ] |
| |
| public_deps = [ |
| "$cobalt_root/src:logging", |
| "$cobalt_root/src/lib/crypto_util", |
| "$cobalt_root/src/registry:cobalt_registry_proto", |
| ] |
| } |
| |
| source_set("project_configs_test") { |
| testonly = true |
| sources = [ |
| "project_configs_test.cc", |
| ] |
| deps = [ |
| ":project_configs", |
| "//third_party/googletest:gtest", |
| ] |
| configs += [ "$cobalt_root:cobalt_config" ] |
| } |
| |
| source_set("packed_event_codes") { |
| sources = [ |
| "packed_event_codes.cc", |
| "packed_event_codes.h", |
| ] |
| |
| configs += [ "$cobalt_root:cobalt_config" ] |
| } |
| source_set("packed_event_codes_test") { |
| testonly = true |
| |
| sources = [ |
| "packed_event_codes_test.cc", |
| ] |
| |
| deps = [ |
| ":packed_event_codes", |
| "//third_party/googletest:gtest", |
| ] |
| |
| configs += [ "$cobalt_root:cobalt_config" ] |
| } |
| |
| group("tests") { |
| testonly = true |
| |
| deps = [ |
| ":buckets_config_test", |
| ":packed_event_codes_test", |
| ":project_configs_test", |
| ] |
| } |