Commit 97ed7e75 authored by Yuki Shiino's avatar Yuki Shiino Committed by Commit Bot

Reland "bind-gen: Build generated IDL enumeration in prod"

This is a reland of c1f6f104

The build failure of release branches (canary, etc.) should be
fixed with https://crrev.com/c/2029405 .  This is a reland of
the original patch with no change.

Original change's description:
> bind-gen: Build generated IDL enumeration in prod
>
> Builds the bindings of IDL enumeration generated with the new
> bindings generator in prod, despite that the bindings is not
> yet used.  This patch makes it available for real use.
>
> Bug: 839389
> Change-Id: Id5cafd53ab043f75c5244f8fb6a0e134c5ce861d
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2022124
> Commit-Queue: Yuki Shiino <yukishiino@chromium.org>
> Reviewed-by: Hitoshi Yoshida <peria@chromium.org>
> Reviewed-by: Kentaro Hara <haraken@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#736356}

Bug: 839389
Change-Id: I577dc9e7f2a488585f0c10785fd8fb216df33ea0
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2030351Reviewed-by: default avatarHitoshi Yoshida <peria@chromium.org>
Reviewed-by: default avatarKentaro Hara <haraken@chromium.org>
Commit-Queue: Yuki Shiino <yukishiino@chromium.org>
Cr-Commit-Position: refs/heads/master@{#737679}
parent 62145d3e
......@@ -5,6 +5,8 @@
import("//build/config/python.gni")
import("//third_party/blink/renderer/bindings/bindings.gni")
import("//third_party/blink/renderer/bindings/core/v8/generated.gni")
import("//third_party/blink/renderer/bindings/generated_in_core.gni")
import("//third_party/blink/renderer/bindings/generated_in_modules.gni")
import("//third_party/blink/renderer/bindings/idl_in_core.gni")
import("//third_party/blink/renderer/bindings/idl_in_modules.gni")
import("//third_party/blink/renderer/bindings/modules/v8/generated.gni")
......@@ -13,6 +15,8 @@ import("//third_party/blink/renderer/build/scripts/scripts.gni")
import("//third_party/blink/renderer/core/core_idl_files.gni")
import("//third_party/blink/renderer/modules/modules_idl_files.gni")
visibility = [ "//third_party/blink/renderer/*" ]
action("interfaces_info") {
script = "$bindings_scripts_dir/compute_interfaces_info_overall.py"
......@@ -178,6 +182,40 @@ if (use_v8_bind_gen_for_dictionary) {
}
}
template("generate_bindings") {
action_with_pydeps(target_name) {
script = "${bindings_scripts_dir}/generate_bindings.py"
web_idl_database_outputs = get_target_outputs(":web_idl_database")
web_idl_database = web_idl_database_outputs[0]
inputs = [ web_idl_database ]
outputs = invoker.outputs
args = [
invoker.target,
"--web_idl_database",
rebase_path(web_idl_database, root_build_dir),
"--root_src_dir",
rebase_path("//", root_build_dir),
"--root_gen_dir",
rebase_path(root_gen_dir, root_build_dir),
"--output_core_reldir",
rebase_path("${bindings_output_dir}/core/v8/", root_gen_dir),
"--output_modules_reldir",
rebase_path("${bindings_output_dir}/modules/v8/", root_gen_dir),
]
deps = [ ":web_idl_database" ]
}
}
generate_bindings("generate_bindings_enumeration") {
target = "enumeration"
outputs = generated_enumeration_sources_in_core +
generated_enumeration_sources_in_modules
}
action_with_pydeps("generate_high_entropy_list") {
script = "${bindings_scripts_dir}/generate_high_entropy_list.py"
......
......@@ -5,12 +5,19 @@
import("//testing/libfuzzer/fuzzer_test.gni")
import("//third_party/blink/renderer/bindings/bindings.gni")
import("//third_party/blink/renderer/bindings/core/v8/generated.gni")
import("//third_party/blink/renderer/bindings/generated_in_core.gni")
import("//third_party/blink/renderer/bindings/scripts/scripts.gni")
import("//third_party/blink/renderer/core/core.gni")
import("//third_party/blink/renderer/core/core_idl_files.gni")
visibility = [ "//third_party/blink/renderer/*" ]
blink_core_sources("generated") {
sources = generated_enumeration_sources_in_core
deps =
[ "//third_party/blink/renderer/bindings:generate_bindings_enumeration" ]
}
generate_origin_trial_features("bindings_core_origin_trial_features") {
sources =
core_idl_files + core_idl_with_modules_dependency_files +
......
......@@ -2,8 +2,6 @@
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
visibility = [ "//third_party/blink/renderer/bindings/*" ]
generated_enumeration_sources_in_core = [
"$root_gen_dir/third_party/blink/renderer/bindings/core/v8/v8_address_space.cc",
"$root_gen_dir/third_party/blink/renderer/bindings/core/v8/v8_address_space.h",
......
......@@ -2,8 +2,6 @@
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
visibility = [ "//third_party/blink/renderer/bindings/*" ]
generated_enumeration_sources_in_modules = [
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_app_banner_prompt_outcome.cc",
"$root_gen_dir/third_party/blink/renderer/bindings/modules/v8/v8_app_banner_prompt_outcome.h",
......
......@@ -2,8 +2,6 @@
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
visibility = [ "//third_party/blink/renderer/bindings/*" ]
# CAUTION: static_idl_files_in_core is used only by a new V8 bindings generator,
# which is under development. You have to update core/core_idl_files.gni in
# addition to this list.
......
......@@ -4,8 +4,6 @@
import("//third_party/blink/renderer/config.gni")
visibility = [ "//third_party/blink/renderer/bindings/*" ]
# CAUTION: static_idl_files_in_modules is used only by a new V8 bindings
# generator, which is under development. You have to update
# modules/modules_idl_files.gni in addition to this list.
......
......@@ -3,12 +3,19 @@
# found in the LICENSE file.
import("//third_party/blink/renderer/bindings/bindings.gni")
import("//third_party/blink/renderer/bindings/generated_in_modules.gni")
import("//third_party/blink/renderer/bindings/modules/v8/generated.gni")
import("//third_party/blink/renderer/bindings/scripts/scripts.gni")
import("//third_party/blink/renderer/modules/modules.gni")
import("//third_party/blink/renderer/modules/modules_idl_files.gni")
visibility = [ "//third_party/blink/*" ]
visibility = [ "//third_party/blink/renderer/*" ]
blink_modules_sources("generated") {
sources = generated_enumeration_sources_in_modules
deps =
[ "//third_party/blink/renderer/bindings:generate_bindings_enumeration" ]
}
group("bindings_modules_v8_generated") {
public_deps = [
......
......@@ -73,6 +73,7 @@ source_set("generated") {
"//skia",
"//third_party/blink/renderer/bindings/core/v8:bindings_core_origin_trial_features",
"//third_party/blink/renderer/bindings/core/v8:bindings_core_v8_generated",
"//third_party/blink/renderer/bindings/core/v8:generated",
"//third_party/blink/renderer/core/inspector:generated",
"//third_party/blink/renderer/core/probe:generated",
"//third_party/iccjpeg",
......
......@@ -168,6 +168,7 @@ jumbo_component("modules") {
"//third_party/blink/renderer/bindings/modules:generated",
"//third_party/blink/renderer/bindings/modules/v8:bindings_modules_impl",
"//third_party/blink/renderer/bindings/modules/v8:bindings_modules_origin_trial_features",
"//third_party/blink/renderer/bindings/modules/v8:generated",
"//third_party/blink/renderer/core",
"//third_party/icu",
"//third_party/webrtc_overrides:webrtc_component",
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment