blob: f978581e6a93742921e426eae169d49487aceb16 [file]
# Copyright 2017 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//components/proto_extras/proto_extras.gni")
import("//third_party/protobuf/proto_library.gni")
if (is_android) {
import("//build/config/android/rules.gni")
}
proto_library("optimization_guide_proto") {
proto_in_dir = "//"
sources = [
"autocomplete_scoring_model_metadata.proto",
"autofill_field_classification_model_metadata.proto",
"category_classifier_metadata.proto",
"client_side_phishing_model_metadata.proto",
"common_types.proto",
"contextual_cueing_metadata.proto",
"descriptors.proto",
"features/actions_data.proto",
"features/actor_login.proto",
"features/amount_extraction.proto",
"features/annotation_reducer_live_tab_resolver.proto",
"features/annotation_reducer_one_p_resolver.proto",
"features/annotation_reducer_query_classifier.proto",
"features/bling_prototyping.proto",
"features/classify_api.proto",
"features/common_quality_data.proto",
"features/compose.proto",
"features/content_annotation.proto",
"features/contextual_cueing.proto",
"features/contextual_tasks_context.proto",
"features/default.proto",
"features/enhanced_calendar.proto",
"features/example_for_testing.proto",
"features/finds.proto",
"features/forms_classifications.proto",
"features/gemini_antiscam_protection.proto",
"features/history_answer.proto",
"features/history_query.proto",
"features/history_query_intent.proto",
"features/history_search_strings.proto",
"features/ios_smart_tab_grouping.proto",
"features/media.proto",
"features/model_prototyping.proto",
"features/notification_content_detection.proto",
"features/password_change_submission.proto",
"features/product_specifications.proto",
"features/prompt_api.proto",
"features/proofreader_api.proto",
"features/scam_detection.proto",
"features/skills.proto",
"features/summarize.proto",
"features/tab_organization.proto",
"features/text_safety.proto",
"features/walletable_pass_extraction.proto",
"features/wallpaper_search.proto",
"features/writing_assistance_api.proto",
"features/zero_state_suggestions.proto",
"fieldwise_parser_config.proto",
"finds_metadata.proto",
"hint_cache.proto",
"hints.proto",
"history_query_intent_model_metadata.proto",
"icon_view_metadata.proto",
"loading_predictor_metadata.proto",
"manifest.proto",
"model_execution.proto",
"model_quality_metadata.proto",
"model_quality_service.proto",
"model_validation.proto",
"models.proto",
"on_device_base_model_metadata.proto",
"on_device_model_execution_config.proto",
"on_device_tail_suggest_model_metadata.proto",
"page_entities_metadata.proto",
"page_topics_model_metadata.proto",
"page_topics_override_list.proto",
"parser_kind.proto",
"passage_embeddings_model_metadata.proto",
"push_notification.proto",
"redaction.proto",
"salient_image_metadata.proto",
"string_value.proto",
"substitution.proto",
"tab_relevance_model_metadata.proto",
"text_safety_model_metadata.proto",
"visual_search_model_metadata.proto",
]
# Python stubs are needed at runtime for model validation tests.
generate_py_runtime = true
# TODO(crbug.com/421441072): Once protobuf-javascript supports editions we
# should enable this flag, as it will allow us to more thoroughly test our
# APIs and production logic.
# generate_javascript = true
# These are required to import system_profile.proto in
# model_quality_metadata.proto.
deps = [ "//third_party/metrics_proto" ]
import_dirs = [ "//third_party/metrics_proto/" ]
}
# Proto extras for optimization_guide_proto. This is not meant to be a complete
# mirror of optimization_guide_proto target, just a subset of protos that are
# needed for proto extras.
proto_extras("optimization_guide_proto_extras") {
sources = [
"common_types.proto",
"features/common_quality_data.proto",
"features/content_annotation.proto",
"model_execution.proto",
"model_quality_metadata.proto",
"on_device_base_model_metadata.proto",
]
deps = [ ":optimization_guide_proto" ]
extras_deps = [ "//third_party/metrics_proto:metrics_proto_with_extension_and_system_extras" ]
import_dirs = [ "//third_party/metrics_proto/" ]
}
if (is_android) {
proto_java_library("optimization_guide_proto_java") {
proto_path = "//"
sources = [
"common_types.proto",
"features/common_quality_data.proto",
"hints.proto",
"loading_predictor_metadata.proto",
"model_execution.proto",
"models.proto",
"push_notification.proto",
]
}
}
proto_library("optimization_guide_proto_descriptors") {
proto_in_dir = "//"
proto_out_dir = "components/optimization_guide/proto"
sources = [ "features/feature_proto_registry.proto" ]
deps = [
":optimization_guide_proto",
"//third_party/metrics_proto",
]
generate_cc = false
generate_python = false
generate_descriptor = "optimization_guide_proto.descriptor"
import_dirs = [ "//third_party/metrics_proto/" ]
}