1*6777b538SAndroid Build Coastguard Worker# Copyright 2016 The Chromium Authors 2*6777b538SAndroid Build Coastguard Worker# Use of this source code is governed by a BSD-style license that can be 3*6777b538SAndroid Build Coastguard Worker# found in the LICENSE file. 4*6777b538SAndroid Build Coastguard Worker 5*6777b538SAndroid Build Coastguard Workerimport("//build/config/chromeos/ui_mode.gni") 6*6777b538SAndroid Build Coastguard Workerimport("//mojo/public/tools/bindings/mojom.gni") 7*6777b538SAndroid Build Coastguard Worker 8*6777b538SAndroid Build Coastguard Workermojom("url_mojom_gurl") { 9*6777b538SAndroid Build Coastguard Worker generate_java = true 10*6777b538SAndroid Build Coastguard Worker sources = [ "url.mojom" ] 11*6777b538SAndroid Build Coastguard Worker 12*6777b538SAndroid Build Coastguard Worker cpp_typemaps = [ 13*6777b538SAndroid Build Coastguard Worker { 14*6777b538SAndroid Build Coastguard Worker types = [ 15*6777b538SAndroid Build Coastguard Worker { 16*6777b538SAndroid Build Coastguard Worker mojom = "url.mojom.Url" 17*6777b538SAndroid Build Coastguard Worker cpp = "::GURL" 18*6777b538SAndroid Build Coastguard Worker }, 19*6777b538SAndroid Build Coastguard Worker ] 20*6777b538SAndroid Build Coastguard Worker traits_headers = [ "//url/mojom/url_gurl_mojom_traits.h" ] 21*6777b538SAndroid Build Coastguard Worker traits_public_deps = [ 22*6777b538SAndroid Build Coastguard Worker ":mojom_traits", 23*6777b538SAndroid Build Coastguard Worker "//url", 24*6777b538SAndroid Build Coastguard Worker ] 25*6777b538SAndroid Build Coastguard Worker }, 26*6777b538SAndroid Build Coastguard Worker ] 27*6777b538SAndroid Build Coastguard Worker 28*6777b538SAndroid Build Coastguard Worker blink_cpp_typemaps = [ 29*6777b538SAndroid Build Coastguard Worker { 30*6777b538SAndroid Build Coastguard Worker types = [ 31*6777b538SAndroid Build Coastguard Worker { 32*6777b538SAndroid Build Coastguard Worker mojom = "url.mojom.Url" 33*6777b538SAndroid Build Coastguard Worker cpp = "::blink::KURL" 34*6777b538SAndroid Build Coastguard Worker force_serialize = true 35*6777b538SAndroid Build Coastguard Worker }, 36*6777b538SAndroid Build Coastguard Worker ] 37*6777b538SAndroid Build Coastguard Worker traits_headers = [ 38*6777b538SAndroid Build Coastguard Worker "//third_party/blink/renderer/platform/mojo/kurl_mojom_traits.h", 39*6777b538SAndroid Build Coastguard Worker "//third_party/blink/renderer/platform/weborigin/kurl_hash.h", 40*6777b538SAndroid Build Coastguard Worker ] 41*6777b538SAndroid Build Coastguard Worker traits_public_deps = [ "//url" ] 42*6777b538SAndroid Build Coastguard Worker }, 43*6777b538SAndroid Build Coastguard Worker ] 44*6777b538SAndroid Build Coastguard Worker 45*6777b538SAndroid Build Coastguard Worker webui_module_path = "chrome://resources/mojo/url/mojom" 46*6777b538SAndroid Build Coastguard Worker 47*6777b538SAndroid Build Coastguard Worker # Used by Closure compiler targets in ash/webui/help_app_ui/, so this needs 48*6777b538SAndroid Build Coastguard Worker # to generate WebUI bindings in JavaScript on Ash. 49*6777b538SAndroid Build Coastguard Worker if (is_chromeos_ash) { 50*6777b538SAndroid Build Coastguard Worker generate_webui_js_bindings = true 51*6777b538SAndroid Build Coastguard Worker } 52*6777b538SAndroid Build Coastguard Worker 53*6777b538SAndroid Build Coastguard Worker # Legacy JS bindings are needed for Blink regardless of platform. 54*6777b538SAndroid Build Coastguard Worker generate_legacy_js_bindings = true 55*6777b538SAndroid Build Coastguard Worker} 56*6777b538SAndroid Build Coastguard Worker 57*6777b538SAndroid Build Coastguard Workermojom("url_mojom_origin") { 58*6777b538SAndroid Build Coastguard Worker generate_java = true 59*6777b538SAndroid Build Coastguard Worker sources = [ "origin.mojom" ] 60*6777b538SAndroid Build Coastguard Worker 61*6777b538SAndroid Build Coastguard Worker public_deps = [ 62*6777b538SAndroid Build Coastguard Worker ":url_mojom_gurl", 63*6777b538SAndroid Build Coastguard Worker "//mojo/public/mojom/base", 64*6777b538SAndroid Build Coastguard Worker ] 65*6777b538SAndroid Build Coastguard Worker 66*6777b538SAndroid Build Coastguard Worker check_includes_blink = false 67*6777b538SAndroid Build Coastguard Worker 68*6777b538SAndroid Build Coastguard Worker cpp_typemaps = [ 69*6777b538SAndroid Build Coastguard Worker { 70*6777b538SAndroid Build Coastguard Worker types = [ 71*6777b538SAndroid Build Coastguard Worker { 72*6777b538SAndroid Build Coastguard Worker mojom = "url.mojom.Origin" 73*6777b538SAndroid Build Coastguard Worker cpp = "::url::Origin" 74*6777b538SAndroid Build Coastguard Worker }, 75*6777b538SAndroid Build Coastguard Worker ] 76*6777b538SAndroid Build Coastguard Worker traits_headers = [ "//url/mojom/origin_mojom_traits.h" ] 77*6777b538SAndroid Build Coastguard Worker traits_public_deps = [ 78*6777b538SAndroid Build Coastguard Worker ":mojom_traits", 79*6777b538SAndroid Build Coastguard Worker "//url", 80*6777b538SAndroid Build Coastguard Worker ] 81*6777b538SAndroid Build Coastguard Worker }, 82*6777b538SAndroid Build Coastguard Worker ] 83*6777b538SAndroid Build Coastguard Worker 84*6777b538SAndroid Build Coastguard Worker blink_cpp_typemaps = [ 85*6777b538SAndroid Build Coastguard Worker { 86*6777b538SAndroid Build Coastguard Worker types = [ 87*6777b538SAndroid Build Coastguard Worker { 88*6777b538SAndroid Build Coastguard Worker mojom = "url.mojom.Origin" 89*6777b538SAndroid Build Coastguard Worker cpp = "::scoped_refptr<const ::blink::SecurityOrigin>" 90*6777b538SAndroid Build Coastguard Worker nullable_is_same_type = true 91*6777b538SAndroid Build Coastguard Worker }, 92*6777b538SAndroid Build Coastguard Worker ] 93*6777b538SAndroid Build Coastguard Worker traits_headers = [ "//third_party/blink/renderer/platform/mojo/security_origin_mojom_traits.h" ] 94*6777b538SAndroid Build Coastguard Worker traits_public_deps = [ "//url" ] 95*6777b538SAndroid Build Coastguard Worker }, 96*6777b538SAndroid Build Coastguard Worker ] 97*6777b538SAndroid Build Coastguard Worker 98*6777b538SAndroid Build Coastguard Worker webui_module_path = "chrome://resources/mojo/url/mojom" 99*6777b538SAndroid Build Coastguard Worker generate_legacy_js_bindings = true 100*6777b538SAndroid Build Coastguard Worker} 101*6777b538SAndroid Build Coastguard Worker 102*6777b538SAndroid Build Coastguard Workermojom("url_mojom_scheme_host_port") { 103*6777b538SAndroid Build Coastguard Worker generate_java = true 104*6777b538SAndroid Build Coastguard Worker sources = [ "scheme_host_port.mojom" ] 105*6777b538SAndroid Build Coastguard Worker 106*6777b538SAndroid Build Coastguard Worker cpp_typemaps = [ 107*6777b538SAndroid Build Coastguard Worker { 108*6777b538SAndroid Build Coastguard Worker types = [ 109*6777b538SAndroid Build Coastguard Worker { 110*6777b538SAndroid Build Coastguard Worker mojom = "url.mojom.SchemeHostPort" 111*6777b538SAndroid Build Coastguard Worker cpp = "::url::SchemeHostPort" 112*6777b538SAndroid Build Coastguard Worker }, 113*6777b538SAndroid Build Coastguard Worker ] 114*6777b538SAndroid Build Coastguard Worker traits_headers = [ "//url/mojom/scheme_host_port_mojom_traits.h" ] 115*6777b538SAndroid Build Coastguard Worker traits_public_deps = [ "//url" ] 116*6777b538SAndroid Build Coastguard Worker }, 117*6777b538SAndroid Build Coastguard Worker ] 118*6777b538SAndroid Build Coastguard Worker} 119*6777b538SAndroid Build Coastguard Worker 120*6777b538SAndroid Build Coastguard Workermojom("test_url_mojom_gurl") { 121*6777b538SAndroid Build Coastguard Worker sources = [ "url_test.mojom" ] 122*6777b538SAndroid Build Coastguard Worker 123*6777b538SAndroid Build Coastguard Worker public_deps = [ 124*6777b538SAndroid Build Coastguard Worker ":url_mojom_gurl", 125*6777b538SAndroid Build Coastguard Worker ":url_mojom_origin", 126*6777b538SAndroid Build Coastguard Worker ":url_mojom_scheme_host_port", 127*6777b538SAndroid Build Coastguard Worker ] 128*6777b538SAndroid Build Coastguard Worker} 129*6777b538SAndroid Build Coastguard Worker 130*6777b538SAndroid Build Coastguard Workercomponent("mojom_traits") { 131*6777b538SAndroid Build Coastguard Worker output_name = "url_mojom_traits" 132*6777b538SAndroid Build Coastguard Worker 133*6777b538SAndroid Build Coastguard Worker sources = [ 134*6777b538SAndroid Build Coastguard Worker "origin_mojom_traits.cc", 135*6777b538SAndroid Build Coastguard Worker "origin_mojom_traits.h", 136*6777b538SAndroid Build Coastguard Worker "scheme_host_port_mojom_traits.cc", 137*6777b538SAndroid Build Coastguard Worker "scheme_host_port_mojom_traits.h", 138*6777b538SAndroid Build Coastguard Worker "url_gurl_mojom_traits.cc", 139*6777b538SAndroid Build Coastguard Worker "url_gurl_mojom_traits.h", 140*6777b538SAndroid Build Coastguard Worker ] 141*6777b538SAndroid Build Coastguard Worker 142*6777b538SAndroid Build Coastguard Worker defines = [ "IS_URL_MOJOM_TRAITS_IMPL" ] 143*6777b538SAndroid Build Coastguard Worker 144*6777b538SAndroid Build Coastguard Worker public_deps = [ 145*6777b538SAndroid Build Coastguard Worker ":url_mojom_gurl_shared", 146*6777b538SAndroid Build Coastguard Worker ":url_mojom_origin_shared", 147*6777b538SAndroid Build Coastguard Worker ":url_mojom_scheme_host_port", 148*6777b538SAndroid Build Coastguard Worker "//base", 149*6777b538SAndroid Build Coastguard Worker "//mojo/public/cpp/base:shared_typemap_traits", 150*6777b538SAndroid Build Coastguard Worker "//url", 151*6777b538SAndroid Build Coastguard Worker ] 152*6777b538SAndroid Build Coastguard Worker 153*6777b538SAndroid Build Coastguard Worker configs += [ "//build/config/compiler:wexit_time_destructors" ] 154*6777b538SAndroid Build Coastguard Worker} 155