| # Copyright 2018 The Chromium OS 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("//common-mk/proto_library.gni") |
| |
| group("all") { |
| deps = [ |
| ":libsystem_api", |
| ":system_api-anomaly_detector-protos", |
| ":system_api-attestation-goprotos", |
| ":system_api-attestation-protos", |
| ":system_api-authpolicy-protos", |
| ":system_api-biod-protos", |
| ":system_api-bootlockbox-goprotos", |
| ":system_api-bootlockbox-protos", |
| ":system_api-chaps-protos", |
| ":system_api-chunneld-protos", |
| ":system_api-cryptohome-goprotos", |
| ":system_api-cryptohome-protos", |
| ":system_api-dlcservice-protos", |
| ":system_api-kerberos-goprotos", |
| ":system_api-kerberos-protos", |
| ":system_api-login_manager-goprotos", |
| ":system_api-login_manager-protos", |
| ":system_api-lorgnette-goprotos", |
| ":system_api-lorgnette-protos", |
| ":system_api-metrics_event-goprotos", |
| ":system_api-metrics_event-protos", |
| ":system_api-oobe_config-protos", |
| ":system_api-patchpanel-goprotos", |
| ":system_api-patchpanel-protos", |
| ":system_api-plugin_vm_service-goprotos", |
| ":system_api-plugin_vm_service-protos", |
| ":system_api-power_manager-goprotos", |
| ":system_api-power_manager-protos", |
| ":system_api-protos", |
| ":system_api-runtime_probe-goprotos", |
| ":system_api-runtime_probe-protos", |
| ":system_api-seneschal-goprotos", |
| ":system_api-seneschal-protos", |
| ":system_api-smbprovider-protos", |
| ":system_api-system_proxy-protos", |
| ":system_api-tpm_manager-protos", |
| ":system_api-u2f-protos", |
| ":system_api-update_engine-protos", |
| ":system_api-vm_applications-protos", |
| ":system_api-vm_cicerone-goprotos", |
| ":system_api-vm_cicerone-protos", |
| ":system_api-vm_concierge-goprotos", |
| ":system_api-vm_concierge-protos", |
| ":system_api-vm_permission_service-protos", |
| ":system_api-vm_plugin_dispatcher-goprotos", |
| ":system_api-vm_plugin_dispatcher-protos", |
| ] |
| } |
| |
| shared_library("libsystem_api") { |
| deps = [ |
| ":system_api-attestation-protos", |
| ":system_api-chaps-protos", |
| ":system_api-patchpanel-protos", |
| ":system_api-tpm_manager-protos", |
| ] |
| if (use.fuzzer) { |
| pkg_deps = [ "protobuf" ] |
| } else { |
| pkg_deps = [ "protobuf-lite" ] |
| } |
| } |
| |
| proto_library("system_api-protos") { |
| proto_in_dir = "dbus" |
| proto_out_dir = "include/system_api/proto_bindings" |
| sources = [ |
| "${proto_in_dir}/field_trial_list.proto", |
| "${proto_in_dir}/mtp_file_entry.proto", |
| "${proto_in_dir}/mtp_storage_info.proto", |
| ] |
| standalone = true |
| } |
| |
| proto_library("system_api-power_manager-protos") { |
| proto_in_dir = "dbus/power_manager" |
| proto_out_dir = "include/power_manager/proto_bindings" |
| sources = [ |
| "${proto_in_dir}/backlight.proto", |
| "${proto_in_dir}/idle.proto", |
| "${proto_in_dir}/input_event.proto", |
| "${proto_in_dir}/peripheral_battery_status.proto", |
| "${proto_in_dir}/policy.proto", |
| "${proto_in_dir}/power_supply_properties.proto", |
| "${proto_in_dir}/suspend.proto", |
| "${proto_in_dir}/switch_states.proto", |
| "${proto_in_dir}/thermal.proto", |
| ] |
| standalone = true |
| } |
| |
| goproto_library("system_api-power_manager-goprotos") { |
| proto_in_dir = "dbus/power_manager" |
| proto_out_dir = "go/src/chromiumos/system_api/power_manager_proto" |
| sources = [ |
| "${proto_in_dir}/backlight.proto", |
| "${proto_in_dir}/idle.proto", |
| "${proto_in_dir}/input_event.proto", |
| "${proto_in_dir}/peripheral_battery_status.proto", |
| "${proto_in_dir}/policy.proto", |
| "${proto_in_dir}/power_supply_properties.proto", |
| "${proto_in_dir}/suspend.proto", |
| "${proto_in_dir}/switch_states.proto", |
| "${proto_in_dir}/thermal.proto", |
| ] |
| } |
| |
| proto_library("system_api-cryptohome-protos") { |
| proto_in_dir = "dbus/cryptohome" |
| proto_out_dir = "include/cryptohome/proto_bindings" |
| sources = [ |
| "${proto_in_dir}/UserDataAuth.proto", |
| "${proto_in_dir}/fido.proto", |
| "${proto_in_dir}/key.proto", |
| "${proto_in_dir}/rpc.proto", |
| "${proto_in_dir}/signed_secret.proto", |
| ] |
| standalone = true |
| } |
| |
| goproto_library("system_api-cryptohome-goprotos") { |
| proto_in_dir = "dbus/cryptohome" |
| proto_out_dir = "go/src/chromiumos/system_api/cryptohome_proto" |
| sources = [ |
| "${proto_in_dir}/fido.proto", |
| "${proto_in_dir}/key.proto", |
| "${proto_in_dir}/rpc.proto", |
| ] |
| } |
| |
| proto_library("system_api-authpolicy-protos") { |
| proto_in_dir = "dbus/authpolicy" |
| proto_out_dir = "include/authpolicy/proto_bindings" |
| sources = [ "${proto_in_dir}/active_directory_info.proto" ] |
| standalone = true |
| } |
| |
| proto_library("system_api-biod-protos") { |
| proto_in_dir = "dbus/biod" |
| proto_out_dir = "include/biod/proto_bindings" |
| sources = [ |
| "${proto_in_dir}/constants.proto", |
| "${proto_in_dir}/messages.proto", |
| ] |
| standalone = true |
| } |
| |
| proto_library("system_api-kerberos-protos") { |
| proto_in_dir = "dbus/kerberos" |
| proto_out_dir = "include/kerberos/proto_bindings" |
| sources = [ "${proto_in_dir}/kerberos_service.proto" ] |
| standalone = true |
| } |
| |
| goproto_library("system_api-kerberos-goprotos") { |
| proto_in_dir = "dbus/kerberos" |
| proto_out_dir = "go/src/chromiumos/system_api/kerberos_proto" |
| sources = [ "${proto_in_dir}/kerberos_service.proto" ] |
| } |
| |
| proto_library("system_api-login_manager-protos") { |
| proto_in_dir = "dbus/login_manager" |
| proto_out_dir = "include/login_manager/proto_bindings" |
| sources = [ |
| "${proto_in_dir}/arc.proto", |
| "${proto_in_dir}/login_screen_storage.proto", |
| "${proto_in_dir}/policy_descriptor.proto", |
| ] |
| standalone = true |
| |
| # Override optimize_for option in proto file. |
| # Needed for fuzz targets using libprotobuf-mutator. |
| if (use.fuzzer) { |
| gen_cpp_mode = "speed" |
| } |
| } |
| |
| goproto_library("system_api-login_manager-goprotos") { |
| proto_in_dir = "dbus/login_manager" |
| proto_out_dir = "go/src/chromiumos/system_api/login_manager_proto" |
| sources = [ "${proto_in_dir}/policy_descriptor.proto" ] |
| } |
| |
| proto_library("system_api-lorgnette-protos") { |
| proto_in_dir = "dbus/lorgnette" |
| proto_out_dir = "include/lorgnette/proto_bindings" |
| sources = [ "${proto_in_dir}/lorgnette_service.proto" ] |
| standalone = true |
| } |
| |
| goproto_library("system_api-lorgnette-goprotos") { |
| proto_in_dir = "dbus/lorgnette" |
| proto_out_dir = "go/src/chromiumos/system_api/lorgnette_proto" |
| sources = [ "${proto_in_dir}/lorgnette_service.proto" ] |
| } |
| |
| proto_library("system_api-chaps-protos") { |
| proto_in_dir = "dbus/chaps" |
| proto_out_dir = "include/chaps/proto_bindings" |
| sources = [ |
| "${proto_in_dir}/ck_structs.proto", |
| "${proto_in_dir}/key_permissions.proto", |
| ] |
| standalone = true |
| |
| # system_api-chaps-protos" is used by a shared_library |
| # object, so we need to build it with "-fPIC" instead of "-fPIE". |
| use_pic = true |
| } |
| |
| proto_library("system_api-attestation-protos") { |
| proto_in_dir = "dbus/attestation" |
| proto_out_dir = "include/attestation/proto_bindings" |
| sources = [ |
| "${proto_in_dir}/attestation_ca.proto", |
| "${proto_in_dir}/google_key.proto", |
| "${proto_in_dir}/interface.proto", |
| "${proto_in_dir}/keystore.proto", |
| "${proto_in_dir}/pca_agent.proto", |
| ] |
| standalone = true |
| |
| # system_api-attestation-protos" is used by a shared_library |
| # object, so we need to build it with "-fPIC" instead of "-fPIE". |
| use_pic = true |
| } |
| |
| goproto_library("system_api-attestation-goprotos") { |
| proto_in_dir = "dbus/attestation" |
| proto_out_dir = "go/src/chromiumos/system_api/attestation_proto" |
| sources = [ |
| "${proto_in_dir}/attestation_ca.proto", |
| "${proto_in_dir}/interface.proto", |
| "${proto_in_dir}/keystore.proto", |
| ] |
| } |
| |
| proto_library("system_api-tpm_manager-protos") { |
| proto_in_dir = "dbus/tpm_manager" |
| proto_out_dir = "include/tpm_manager/proto_bindings" |
| sources = [ "${proto_in_dir}/tpm_manager.proto" ] |
| standalone = true |
| |
| # system_api-tpm_manager-protos is used by a shared_library |
| # object, so we need to build it with "-fPIC" instead of "-fPIE". |
| use_pic = true |
| } |
| |
| proto_library("system_api-metrics_event-protos") { |
| proto_in_dir = "dbus/metrics_event" |
| proto_out_dir = "include/metrics_event/proto_bindings" |
| sources = [ "${proto_in_dir}/metrics_event.proto" ] |
| standalone = true |
| } |
| |
| goproto_library("system_api-metrics_event-goprotos") { |
| proto_in_dir = "dbus/metrics_event" |
| proto_out_dir = "go/src/chromiumos/system_api/metrics_event_proto" |
| sources = [ "${proto_in_dir}/metrics_event.proto" ] |
| } |
| |
| proto_library("system_api-plugin_vm_service-protos") { |
| proto_in_dir = "dbus/plugin_vm_service" |
| proto_out_dir = "include/plugin_vm_service/proto_bindings" |
| sources = [ "${proto_in_dir}/plugin_vm_service.proto" ] |
| standalone = true |
| } |
| |
| goproto_library("system_api-plugin_vm_service-goprotos") { |
| proto_in_dir = "dbus/plugin_vm_service" |
| proto_out_dir = "go/src/chromiumos/system_api/plugin_vm_service_proto" |
| sources = [ "${proto_in_dir}/plugin_vm_service.proto" ] |
| } |
| |
| proto_library("system_api-smbprovider-protos") { |
| proto_in_dir = "dbus/smbprovider" |
| proto_out_dir = "include/smbprovider/proto_bindings" |
| sources = [ "${proto_in_dir}/directory_entry.proto" ] |
| standalone = true |
| } |
| |
| proto_library("system_api-vm_cicerone-protos") { |
| proto_in_dir = "dbus/vm_cicerone" |
| proto_out_dir = "include/vm_cicerone/proto_bindings" |
| sources = [ "${proto_in_dir}/cicerone_service.proto" ] |
| standalone = true |
| } |
| |
| goproto_library("system_api-vm_cicerone-goprotos") { |
| proto_in_dir = "dbus/vm_cicerone" |
| proto_out_dir = "go/src/chromiumos/system_api/vm_cicerone_proto" |
| sources = [ "${proto_in_dir}/cicerone_service.proto" ] |
| } |
| |
| proto_library("system_api-vm_concierge-protos") { |
| proto_in_dir = "dbus/vm_concierge" |
| proto_out_dir = "include/vm_concierge/proto_bindings" |
| sources = [ "${proto_in_dir}/concierge_service.proto" ] |
| standalone = true |
| } |
| |
| goproto_library("system_api-vm_concierge-goprotos") { |
| proto_in_dir = "dbus/vm_concierge" |
| proto_out_dir = "go/src/chromiumos/system_api/vm_concierge_proto" |
| sources = [ "${proto_in_dir}/concierge_service.proto" ] |
| } |
| |
| proto_library("system_api-vm_applications-protos") { |
| proto_in_dir = "dbus/vm_applications" |
| proto_out_dir = "include/vm_applications/proto_bindings" |
| sources = [ "${proto_in_dir}/apps.proto" ] |
| standalone = true |
| } |
| |
| proto_library("system_api-seneschal-protos") { |
| proto_in_dir = "dbus/seneschal" |
| proto_out_dir = "include/seneschal/proto_bindings" |
| sources = [ "${proto_in_dir}/seneschal_service.proto" ] |
| standalone = true |
| } |
| |
| goproto_library("system_api-seneschal-goprotos") { |
| proto_in_dir = "dbus/seneschal" |
| proto_out_dir = "go/src/chromiumos/system_api/seneschal_proto" |
| sources = [ "${proto_in_dir}/seneschal_service.proto" ] |
| } |
| |
| proto_library("system_api-oobe_config-protos") { |
| proto_in_dir = "dbus/oobe_config" |
| proto_out_dir = "include/oobe_config/proto_bindings" |
| sources = [ "${proto_in_dir}/oobe_config.proto" ] |
| standalone = true |
| } |
| |
| proto_library("system_api-runtime_probe-protos") { |
| proto_in_dir = "dbus/runtime_probe" |
| proto_out_dir = "include/runtime_probe/proto_bindings" |
| sources = [ "${proto_in_dir}/runtime_probe.proto" ] |
| standalone = true |
| } |
| |
| goproto_library("system_api-runtime_probe-goprotos") { |
| proto_in_dir = "dbus/runtime_probe" |
| proto_out_dir = "go/src/chromiumos/system_api/runtime_probe_proto" |
| sources = [ "${proto_in_dir}/runtime_probe.proto" ] |
| } |
| |
| proto_library("system_api-bootlockbox-protos") { |
| proto_in_dir = "dbus/bootlockbox" |
| proto_out_dir = "include/bootlockbox/proto_bindings" |
| sources = [ "${proto_in_dir}/boot_lockbox_rpc.proto" ] |
| standalone = true |
| } |
| |
| goproto_library("system_api-bootlockbox-goprotos") { |
| proto_in_dir = "dbus/bootlockbox" |
| proto_out_dir = "go/src/chromiumos/system_api/bootlockbox_proto" |
| sources = [ "${proto_in_dir}/boot_lockbox_rpc.proto" ] |
| } |
| |
| proto_library("system_api-dlcservice-protos") { |
| proto_in_dir = "dbus/dlcservice" |
| proto_out_dir = "include/dlcservice/proto_bindings" |
| sources = [ "${proto_in_dir}/dlcservice.proto" ] |
| standalone = true |
| } |
| |
| proto_library("system_api-update_engine-protos") { |
| proto_in_dir = "dbus/update_engine" |
| proto_out_dir = "include/update_engine/proto_bindings" |
| sources = [ "${proto_in_dir}/update_engine.proto" ] |
| standalone = true |
| } |
| |
| proto_library("system_api-vm_plugin_dispatcher-protos") { |
| proto_in_dir = "dbus/vm_plugin_dispatcher" |
| proto_out_dir = "include/vm_plugin_dispatcher/proto_bindings" |
| sources = [ "${proto_in_dir}/vm_plugin_dispatcher.proto" ] |
| standalone = true |
| } |
| |
| goproto_library("system_api-vm_plugin_dispatcher-goprotos") { |
| proto_in_dir = "dbus/vm_plugin_dispatcher" |
| proto_out_dir = "go/src/chromiumos/system_api/vm_plugin_dispatcher_proto" |
| sources = [ "${proto_in_dir}/vm_plugin_dispatcher.proto" ] |
| } |
| |
| proto_library("system_api-u2f-protos") { |
| proto_in_dir = "dbus/u2f" |
| proto_out_dir = "include/u2f/proto_bindings" |
| sources = [ "${proto_in_dir}/u2f_interface.proto" ] |
| standalone = true |
| } |
| |
| proto_library("system_api-chunneld-protos") { |
| proto_in_dir = "dbus/chunneld" |
| proto_out_dir = "include/chunneld/proto_bindings" |
| sources = [ "${proto_in_dir}/chunneld_service.proto" ] |
| standalone = true |
| } |
| |
| proto_library("system_api-patchpanel-protos") { |
| proto_in_dir = "dbus/patchpanel" |
| proto_out_dir = "include/patchpanel/proto_bindings" |
| sources = [ "${proto_in_dir}/patchpanel_service.proto" ] |
| standalone = true |
| use_pic = true |
| } |
| |
| goproto_library("system_api-patchpanel-goprotos") { |
| proto_in_dir = "dbus/patchpanel" |
| proto_out_dir = "go/src/chromiumos/system_api/patchpanel_proto" |
| sources = [ "${proto_in_dir}/patchpanel_service.proto" ] |
| } |
| |
| proto_library("system_api-anomaly_detector-protos") { |
| proto_in_dir = "dbus/anomaly_detector" |
| proto_out_dir = "include/anomaly_detector/proto_bindings" |
| sources = [ "${proto_in_dir}/anomaly_detector.proto" ] |
| standalone = true |
| } |
| |
| proto_library("system_api-system_proxy-protos") { |
| proto_in_dir = "dbus/system_proxy" |
| proto_out_dir = "include/system_proxy/proto_bindings" |
| sources = [ "${proto_in_dir}/system_proxy_service.proto" ] |
| standalone = true |
| } |
| |
| proto_library("system_api-vm_permission_service-protos") { |
| proto_in_dir = "dbus/vm_permission_service" |
| proto_out_dir = "include/vm_permission_service/proto_bindings" |
| sources = [ "${proto_in_dir}/vm_permission_service.proto" ] |
| standalone = true |
| } |