Add a build rule for bytecode version of kernel_service.dill
Bug: https://github.com/dart-lang/sdk/issues/36047
Change-Id: Ifc95ff270c33cce13699bda23c1b7c8fb6139e2e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/96835
Commit-Queue: Liam Appelbe <liama@google.com>
Reviewed-by: Siva Annamalai <asiva@google.com>
diff --git a/runtime/bin/BUILD.gn b/runtime/bin/BUILD.gn
index d0c16c7..f4961fb 100644
--- a/runtime/bin/BUILD.gn
+++ b/runtime/bin/BUILD.gn
@@ -650,6 +650,7 @@
":gen_kernel_bytecode_dill",
":kernel_service_dill_linkable",
":platform_strong_dill_linkable",
+ "../../utils/kernel-service:kernel_service_bytecode_dill",
]
sources = get_target_outputs(":kernel_service_dill_linkable") +
get_target_outputs(":platform_strong_dill_linkable")
diff --git a/utils/kernel-service/BUILD.gn b/utils/kernel-service/BUILD.gn
index e20ade7..846640b 100644
--- a/utils/kernel-service/BUILD.gn
+++ b/utils/kernel-service/BUILD.gn
@@ -60,40 +60,51 @@
output = "$root_out_dir/frontend_server.dart.snapshot"
}
-prebuilt_dart_action("kernel_service_dill") {
- deps = [
- "../../runtime/vm:kernel_platform_files($dart_host_toolchain)",
- "../../runtime/vm:vm_platform",
- ]
- kernel_service_script = "../../pkg/vm/bin/kernel_service.dart"
- gen_kernel_script = "../../pkg/vm/bin/gen_kernel.dart"
+template("kernel_service_dill") {
+ prebuilt_dart_action("kernel_service" + target_name + "_dill") {
+ deps = [
+ "../../runtime/vm:kernel_platform_files($dart_host_toolchain)",
+ "../../runtime/vm:vm_platform",
+ ]
+ kernel_service_script = "../../pkg/vm/bin/kernel_service.dart"
+ gen_kernel_script = "../../pkg/vm/bin/gen_kernel.dart"
- inputs = [
- gen_kernel_script,
- kernel_service_script,
- "$root_out_dir/vm_platform_strong.dill",
- ]
- output = "$root_gen_dir/kernel_service.dill"
- outputs = [
- output,
- ]
+ inputs = [
+ gen_kernel_script,
+ kernel_service_script,
+ "$root_out_dir/vm_platform_strong.dill",
+ ]
+ output = "$root_gen_dir/kernel_service" + invoker.target_name + ".dill"
+ outputs = [
+ output,
+ ]
- depfile = "$root_gen_dir/kernel_service_dill.d"
- abs_depfile = rebase_path(depfile)
- rebased_output = rebase_path(output, root_build_dir)
- vm_args = [
- "--depfile=$abs_depfile",
- "--depfile_output_filename=$rebased_output",
- ]
+ depfile = "$root_gen_dir/kernel_service" + invoker.target_name + "_dill.d"
+ abs_depfile = rebase_path(depfile)
+ rebased_output = rebase_path(output, root_build_dir)
+ vm_args = [
+ "--depfile=$abs_depfile",
+ "--depfile_output_filename=$rebased_output",
+ ]
- script = gen_kernel_script
+ script = gen_kernel_script
- args = [
- "--packages=" + rebase_path("../../.packages"),
- "--platform=" + rebase_path("$root_out_dir/vm_platform_strong.dill"),
- "--no-aot",
- "--no-embed-sources",
- "--output=" + rebase_path("$root_gen_dir/kernel_service.dill"),
- rebase_path(kernel_service_script),
- ]
+ args =
+ invoker.extra_args + [
+ "--packages=" + rebase_path("../../.packages"),
+ "--platform=" + rebase_path("$root_out_dir/vm_platform_strong.dill"),
+ "--no-aot",
+ "--no-embed-sources",
+ "--output=" + rebase_path(output),
+ rebase_path(kernel_service_script),
+ ]
+ }
+}
+
+kernel_service_dill("") {
+ extra_args = []
+}
+
+kernel_service_dill("_bytecode") {
+ extra_args = [ "--gen-bytecode" ]
}