blob: 4a786dbf0ba4706685a21f014df0b4343cfed398 [file] [log] [blame]
# 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",
":*",
]
}