| # Copyright 2016 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. |
| |
| import("//build/config/features.gni") |
| import("//mojo/public/tools/bindings/mojom.gni") |
| |
| mojom("mojom") { |
| sources = [ |
| "battery_monitor.mojom", |
| "battery_status.mojom", |
| "bluetooth_system.mojom", |
| "fingerprint.mojom", |
| "geolocation.mojom", |
| "geolocation_config.mojom", |
| "geolocation_context.mojom", |
| "geolocation_control.mojom", |
| "geoposition.mojom", |
| "hid.mojom", |
| "input_service.mojom", |
| "nfc.mojom", |
| "nfc_provider.mojom", |
| "power_monitor.mojom", |
| "public_ip_address_geolocation_provider.mojom", |
| "screen_orientation.mojom", |
| "screen_orientation_lock_types.mojom", |
| "serial.mojom", |
| "time_zone_monitor.mojom", |
| "vibration_manager.mojom", |
| "wake_lock.mojom", |
| "wake_lock_context.mojom", |
| "wake_lock_provider.mojom", |
| ] |
| |
| public_deps = [ |
| ":constants", |
| "//mojo/public/mojom/base", |
| "//services/network/public/mojom", |
| "//services/network/public/mojom:mutable_network_traffic_annotation_interface", |
| ] |
| |
| if (is_chromeos && use_dbus) { |
| sources += [ |
| "mtp_file_entry.mojom", |
| "mtp_manager.mojom", |
| "mtp_storage_info.mojom", |
| ] |
| } |
| |
| # The blink variant of the Device Service mojom are depended on by the |
| # blink platform target. All blink variant mojoms use WTF types, which are |
| # part of the blink platform component. In order to avoid a dependency cycle, |
| # these targets must be part of that component. |
| export_class_attribute_blink = "BLINK_PLATFORM_EXPORT" |
| export_define_blink = "BLINK_PLATFORM_IMPLEMENTATION=1" |
| export_header_blink = "third_party/blink/public/platform/web_common.h" |
| |
| visibility_blink = [ |
| "//third_party/blink/renderer/bindings/modules/v8:generate_mojo_bindings", |
| "//third_party/blink/renderer/platform:blink_platform_public_deps", |
| "//third_party/blink/public:mojo_bindings_blink", |
| "//third_party/blink/public/mojom:mojom_platform_blink", |
| ] |
| } |
| |
| mojom("generic_sensor") { |
| sources = [ |
| "sensor.mojom", |
| "sensor_provider.mojom", |
| ] |
| |
| public_deps = [ |
| ":constants", |
| ] |
| |
| export_class_attribute_blink = "BLINK_PLATFORM_EXPORT" |
| export_define_blink = "BLINK_PLATFORM_IMPLEMENTATION=1" |
| export_header_blink = "third_party/blink/public/platform/web_common.h" |
| |
| visibility_blink = |
| [ "//third_party/blink/renderer/platform:blink_platform_public_deps" ] |
| |
| # Generic Sensor Mojom interfaces are exposed publicly to layout tests which |
| # use prepackaged redistributable JS bindings. It is therefore not desirable |
| # to scramble these messages. |
| scramble_message_ids = false |
| } |
| |
| mojom("constants") { |
| sources = [ |
| "constants.mojom", |
| ] |
| |
| export_class_attribute_blink = "BLINK_PLATFORM_EXPORT" |
| export_define_blink = "BLINK_PLATFORM_IMPLEMENTATION=1" |
| export_header_blink = "third_party/blink/public/platform/web_common.h" |
| |
| visibility_blink = [ |
| "//third_party/blink/renderer/platform:blink_platform_public_deps", |
| ":*", |
| ] |
| } |