| # -*- bazel-starlark -*- |
| # Copyright 2023 The Chromium Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| """Siso configuration for mojo.""" |
| |
| load("@builtin//struct.star", "module") |
| |
| __filegroups = {} |
| |
| __handlers = {} |
| |
| def __step_config(ctx, step_config): |
| step_config["rules"].extend([ |
| { |
| "name": "mojo/mojom_bindigns_generator", |
| "command_prefix": "python3 ../../mojo/public/tools/bindings/mojom_bindings_generator.py", |
| "inputs": [ |
| "mojo/public/tools/bindings/mojom_bindings_generator.py", |
| ], |
| "indirect_inputs": { |
| "includes": [ |
| "*.js", |
| "*.mojom", |
| "*.mojom-module", |
| "*.test-mojom", |
| "*.test-mojom-module", |
| "*.zip", |
| ], |
| }, |
| "exclude_input_patterns": [ |
| "*.stamp", |
| ], |
| # TODO(crbug.com/1437820): unspecified outputs of mojom_bindings_generator.py |
| "outputs_map": { |
| "./gen/components/aggregation_service/aggregation_service.mojom.js": { |
| "outputs": [ |
| "./gen/mojom-webui/components/aggregation_service/aggregation_service.mojom-webui.js", |
| ], |
| }, |
| "./gen/components/attribution_reporting/eligibility_error.mojom.js": { |
| "outputs": [ |
| "./gen/mojom-webui/components/attribution_reporting/eligibility_error.mojom-webui.js", |
| "./gen/mojom-webui/components/attribution_reporting/registration_type.mojom-webui.js", |
| "./gen/mojom-webui/components/attribution_reporting/source_registration_error.mojom-webui.js", |
| "./gen/mojom-webui/components/attribution_reporting/trigger_registration_error.mojom-webui.js", |
| ], |
| }, |
| "./gen/components/attribution_reporting/registration.mojom.js": { |
| "outputs": [ |
| "./gen/mojom-webui/components/attribution_reporting/registration.mojom-webui.js", |
| ], |
| }, |
| "./gen/media/capture/mojom/image_capture.mojom.js": { |
| "outputs": [ |
| "./gen/mojom-webui/media/capture/mojom/image_capture.mojom-webui.js", |
| ], |
| }, |
| "./gen/services/device/public/mojom/usb_device.mojom.js": { |
| "outputs": [ |
| "./gen/mojom-webui/services/device/public/mojom/usb_device.mojom-webui.js", |
| "./gen/mojom-webui/services/device/public/mojom/usb_enumeration_options.mojom-webui.js", |
| "./gen/mojom-webui/services/device/public/mojom/usb_manager.mojom-webui.js", |
| "./gen/mojom-webui/services/device/public/mojom/usb_manager_client.mojom-webui.js", |
| ], |
| }, |
| "./gen/services/media_session/public/mojom/audio_focus.mojom.js": { |
| "outputs": [ |
| "./gen/mojom-webui/services/media_session/public/mojom/audio_focus.mojom-webui.js", |
| "./gen/mojom-webui/services/media_session/public/mojom/constants.mojom-webui.js", |
| "./gen/mojom-webui/services/media_session/public/mojom/media_controller.mojom-webui.js", |
| "./gen/mojom-webui/services/media_session/public/mojom/media_session.mojom-webui.js", |
| ], |
| }, |
| "./gen/services/network/public/mojom/attribution.mojom.js": { |
| "outputs": [ |
| "./gen/mojom-webui/services/network/public/mojom/attribution.mojom-webui.js", |
| ], |
| }, |
| "./gen/services/network/public/mojom/schemeful_site.mojom.js": { |
| "outputs": [ |
| "./gen/mojom-webui/services/network/public/mojom/schemeful_site.mojom-webui.js", |
| ], |
| }, |
| "./gen/third_party/blink/public/mojom/quota/quota_manager_host.mojom.js": { |
| "outputs": [ |
| "./gen/mojom-webui/third_party/blink/public/mojom/quota/quota_manager_host.mojom-webui.js", |
| "./gen/mojom-webui/third_party/blink/public/mojom/quota/quota_types.mojom-webui.js", |
| ], |
| }, |
| "./gen/third_party/blink/public/mojom/storage_key/ancestor_chain_bit.mojom.js": { |
| "outputs": [ |
| "./gen/mojom-webui/third_party/blink/public/mojom/storage_key/ancestor_chain_bit.mojom-webui.js", |
| "./gen/mojom-webui/third_party/blink/public/mojom/storage_key/storage_key.mojom-webui.js", |
| ], |
| }, |
| "./gen/ui/base/mojom/ui_base_types.mojom.js": { |
| "outputs": [ |
| "./gen/mojom-webui/ui/base/mojom/ui_base_types.mojom-webui.js", |
| "./gen/mojom-webui/ui/base/mojom/window_open_disposition.mojom-webui.js", |
| ], |
| }, |
| "./gen/ui/gfx/image/mojom/image.mojom.js": { |
| "outputs": [ |
| "./gen/mojom-webui/ui/gfx/image/mojom/image.mojom-webui.js", |
| ], |
| }, |
| }, |
| "restat": True, |
| "remote": True, |
| "output_local": True, |
| "platform": { |
| # mojo_bindings_generators.py will run faster on n2-highmem-8 |
| # than n2-custom-2-3840 |
| # e.g. |
| # n2-highmem-8: exec: 880.202978ms |
| # n2-custom-2-3840: exec: 2.42808488s |
| "gceMachineType": "n2-highmem-8", |
| }, |
| }, |
| ]) |
| return step_config |
| |
| mojo = module( |
| "mojo", |
| step_config = __step_config, |
| filegroups = __filegroups, |
| handlers = __handlers, |
| ) |