1# Copyright 2017 The Chromium Authors. All rights reserved. 2# Use of this source code is governed by a BSD-style license that can be 3# found in the LICENSE file. 4 5import("//mojo/public/tools/bindings/mojom.gni") 6 7# This needs to be conditionally-compiled since the typemaps are 8# unconditionally-included from //mojo/public/tools/bindings/mojom.gni. The 9# inclusion is done through read_file(), which does not respect the global 10# defines for GN, so it itself cannot use the "is_chromeos" variable. 11if (is_chromeos) { 12 mojom("mojom") { 13 sources = [ 14 "accessibility_helper.mojom", 15 "app.mojom", 16 "app_permissions.mojom", 17 "appfuse.mojom", 18 "arc_bridge.mojom", 19 "audio.mojom", 20 "auth.mojom", 21 "backup_settings.mojom", 22 "bluetooth.mojom", 23 "boot_phase_monitor.mojom", 24 "camera.mojom", 25 "cast_receiver.mojom", 26 "cert_store.mojom", 27 "clipboard.mojom", 28 "crash_collector.mojom", 29 "disk_quota.mojom", 30 "enterprise_reporting.mojom", 31 "file_system.mojom", 32 "ime.mojom", 33 "input_method_manager.mojom", 34 "intent_common.mojom", 35 "intent_helper.mojom", 36 "keymaster.mojom", 37 "kiosk.mojom", 38 "lock_screen.mojom", 39 "media_session.mojom", 40 "metrics.mojom", 41 "midis.mojom", 42 "net.mojom", 43 "obb_mounter.mojom", 44 "oemcrypto.mojom", 45 "oemcrypto_daemon.mojom", 46 "pip.mojom", 47 "policy.mojom", 48 "power.mojom", 49 "print.mojom", 50 "print_common.mojom", 51 "print_spooler.mojom", 52 "process.mojom", 53 "property.mojom", 54 "rotation_lock.mojom", 55 "scale_factor.mojom", 56 "screen_capture.mojom", 57 "storage_manager.mojom", 58 "timer.mojom", 59 "tracing.mojom", 60 "tts.mojom", 61 "usb_host.mojom", 62 "voice_interaction_arc_home.mojom", 63 "voice_interaction_framework.mojom", 64 "volume_mounter.mojom", 65 "wake_lock.mojom", 66 "wallpaper.mojom", 67 ] 68 69 public_deps = [ 70 ":camera_intent", 71 ":media", 72 ":notifications", 73 "//components/chromeos_camera/common:camera_app_helper", 74 "//media/capture/video/chromeos/mojom:cros_camera", 75 "//mojo/public/mojom/base", 76 "//services/device/public/mojom:usb", 77 "//services/media_session/public/mojom", 78 "//services/resource_coordinator/public/mojom", 79 "//ui/accessibility/mojom", 80 "//ui/gfx/geometry/mojom", 81 "//url/mojom:url_mojom_gurl", 82 ] 83 } 84 85 mojom("camera_intent") { 86 sources = [ "camera_intent.mojom" ] 87 } 88 89 mojom("notifications") { 90 sources = [ 91 "bitmap.mojom", 92 "notifications.mojom", 93 ] 94 95 deps = [ ":media" ] # for gfx.mojom 96 } 97 98 # Media related mojo interfaces. These are used by 99 # //services/viz/public/mojom. We have this separate mojom target to 100 # avoid pulling in unnecessary interfaces. 101 mojom("media") { 102 sources = [ 103 "gfx.mojom", 104 "protected_buffer_manager.mojom", 105 "video.mojom", 106 "video_common.mojom", 107 "video_decode_accelerator.mojom", 108 "video_encode_accelerator.mojom", 109 "video_protected_buffer_allocator.mojom", 110 ] 111 112 public_deps = [ "//ui/gfx/geometry/mojom" ] 113 } 114 115 source_set("mojom_traits") { 116 sources = [ "ime_mojom_traits.h" ] 117 118 deps = [ 119 ":mojom", 120 "//ui/base/ime:text_input_types", 121 ] 122 } 123 124 source_set("unit_tests") { 125 testonly = true 126 sources = [ "video_accelerator_mojom_traits_unittest.cc" ] 127 128 deps = [ 129 ":mojom", 130 "//media", 131 "//mojo/public/cpp/test_support:test_utils", 132 "//testing/gtest", 133 ] 134 } 135} 136