xref: /aosp_15_r20/external/cronet/url/mojom/BUILD.gn (revision 6777b5387eb2ff775bb5750e3f5d96f37fb7352b)
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