From 25eed2e83a180ff2b56b3d6d73e1809e2fcd11ba Mon Sep 17 00:00:00 2001 From: Alexander Biggs Date: Tue, 7 Sep 2021 13:04:13 -0700 Subject: [PATCH 1/6] [fuchsia] Add CML files for dart_runner Cfv2. --- .../fuchsia/dart_runner/meta/common.shard.cml | 39 +++++++++++++++++++ .../meta/dart_aot_product_runner.cml | 24 ++++++++++++ .../dart_runner/meta/dart_aot_runner.cml | 24 ++++++++++++ .../meta/dart_jit_product_runner.cml | 26 +++++++++++++ .../dart_runner/meta/dart_jit_runner.cml | 26 +++++++++++++ tools/fuchsia/devshell/serve.sh | 16 ++++++++ tools/fuchsia/fuchsia_archive.gni | 4 ++ 7 files changed, 159 insertions(+) create mode 100644 shell/platform/fuchsia/dart_runner/meta/common.shard.cml create mode 100644 shell/platform/fuchsia/dart_runner/meta/dart_aot_product_runner.cml create mode 100644 shell/platform/fuchsia/dart_runner/meta/dart_aot_runner.cml create mode 100644 shell/platform/fuchsia/dart_runner/meta/dart_jit_product_runner.cml create mode 100644 shell/platform/fuchsia/dart_runner/meta/dart_jit_runner.cml diff --git a/shell/platform/fuchsia/dart_runner/meta/common.shard.cml b/shell/platform/fuchsia/dart_runner/meta/common.shard.cml new file mode 100644 index 0000000000000..912fb8343c54b --- /dev/null +++ b/shell/platform/fuchsia/dart_runner/meta/common.shard.cml @@ -0,0 +1,39 @@ +// Copyright 2013 The Flutter Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. +{ + capabilities: [ + { + directory: "diagnostics", + rights: [ "connect" ], + path: "/diagnostics", + }, + ], + use: [ + { + directory: "config-data", + rights: [ "r*" ], + path: "/config/data", + }, + { + protocol: [ + "fuchsia.component.runner.ComponentRunner", + "fuchsia.deprecatedtimezone.Timezone", + "fuchsia.feedback.CrashReporter", + "fuchsia.intl.PropertyProvider", + "fuchsia.logger.LogSink", + "fuchsia.net.NameLookup", + "fuchsia.posix.socket.Provider", + "fuchsia.tracing.provider.Registry", + ], + from: "parent", + }, + ], + expose: [ + { + directory: "diagnostics", + from: "self", + to: "framework", + }, + ], +} \ No newline at end of file diff --git a/shell/platform/fuchsia/dart_runner/meta/dart_aot_product_runner.cml b/shell/platform/fuchsia/dart_runner/meta/dart_aot_product_runner.cml new file mode 100644 index 0000000000000..781cfdd3b5f2d --- /dev/null +++ b/shell/platform/fuchsia/dart_runner/meta/dart_aot_product_runner.cml @@ -0,0 +1,24 @@ +// Copyright 2013 The Flutter Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. +{ + include: [ "common.shard.cml" ], + program: { + runner: "elf", + binary: "bin/app", + forward_stdout_to: "log", + forward_stderr_to: "log", + }, + capabilities: [ + { + runner: "dart_aot_product_runner", + path: "/svc/fuchsia.component.runner.ComponentRunner", + }, + ], + expose: [ + { + runner: "dart_aot_product_runner", + from: "self", + }, + ], +} \ No newline at end of file diff --git a/shell/platform/fuchsia/dart_runner/meta/dart_aot_runner.cml b/shell/platform/fuchsia/dart_runner/meta/dart_aot_runner.cml new file mode 100644 index 0000000000000..04264721b5310 --- /dev/null +++ b/shell/platform/fuchsia/dart_runner/meta/dart_aot_runner.cml @@ -0,0 +1,24 @@ +// Copyright 2013 The Flutter Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. +{ + include: [ "common.shard.cml" ], + program: { + runner: "elf", + binary: "bin/app", + forward_stdout_to: "log", + forward_stderr_to: "log", + }, + capabilities: [ + { + runner: "dart_aot_runner", + path: "/svc/fuchsia.component.runner.ComponentRunner", + }, + ], + expose: [ + { + runner: "dart_aot_runner", + from: "self", + }, + ], +} \ No newline at end of file diff --git a/shell/platform/fuchsia/dart_runner/meta/dart_jit_product_runner.cml b/shell/platform/fuchsia/dart_runner/meta/dart_jit_product_runner.cml new file mode 100644 index 0000000000000..d8e1f44a3e03c --- /dev/null +++ b/shell/platform/fuchsia/dart_runner/meta/dart_jit_product_runner.cml @@ -0,0 +1,26 @@ +// Copyright 2013 The Flutter Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. +{ + include: [ "common.shard.cml" ], + program: { + runner: "elf", + binary: "bin/app", + forward_stdout_to: "log", + forward_stderr_to: "log", + // needed for JIT builds + job_policy_ambient_mark_vmo_exec: "true", + }, + capabilities: [ + { + runner: "dart_jit_product_runner", + path: "/svc/fuchsia.component.runner.ComponentRunner", + }, + ], + expose: [ + { + runner: "dart_jit_product_runner", + from: "self", + }, + ], +} \ No newline at end of file diff --git a/shell/platform/fuchsia/dart_runner/meta/dart_jit_runner.cml b/shell/platform/fuchsia/dart_runner/meta/dart_jit_runner.cml new file mode 100644 index 0000000000000..2b37f3afb0632 --- /dev/null +++ b/shell/platform/fuchsia/dart_runner/meta/dart_jit_runner.cml @@ -0,0 +1,26 @@ +// Copyright 2013 The Flutter Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. +{ + include: [ "common.shard.cml" ], + program: { + runner: "elf", + binary: "bin/app", + forward_stdout_to: "log", + forward_stderr_to: "log", + // needed for JIT builds + job_policy_ambient_mark_vmo_exec: "true", + }, + capabilities: [ + { + runner: "dart_jit_runner", + path: "/svc/fuchsia.component.runner.ComponentRunner", + }, + ], + expose: [ + { + runner: "dart_jit_runner", + from: "self", + }, + ], +} \ No newline at end of file diff --git a/tools/fuchsia/devshell/serve.sh b/tools/fuchsia/devshell/serve.sh index a3e3601284010..5176ca87ff627 100755 --- a/tools/fuchsia/devshell/serve.sh +++ b/tools/fuchsia/devshell/serve.sh @@ -204,6 +204,22 @@ while true; do { \"host_match\": \"fuchsia.com\", \"host_replacement\": \"engine\", \"path_prefix_match\": \"/flutter_aot_runner\", \"path_prefix_replacement\": \"/flutter_aot_runner\" + }, + { + \"host_match\": \"fuchsia.com\", \"host_replacement\": \"engine\", + \"path_prefix_match\": \"/dart_jit_runner/\", \"path_prefix_replacement\": \"/dart_jit_runner/\" + }, + { + \"host_match\": \"fuchsia.com\", \"host_replacement\": \"engine\", + \"path_prefix_match\": \"/dart_jit_runner\", \"path_prefix_replacement\": \"/dart_jit_runner\" + }, + { + \"host_match\": \"fuchsia.com\", \"host_replacement\": \"engine\", + \"path_prefix_match\": \"/dart_aot_runner/\", \"path_prefix_replacement\": \"/dart_aot_runner/\" + }, + { + \"host_match\": \"fuchsia.com\", \"host_replacement\": \"engine\", + \"path_prefix_match\": \"/dart_aot_runner\", \"path_prefix_replacement\": \"/dart_aot_runner\" }, { \"host_match\": \"fuchsia.com\", \"host_replacement\": \"devhost\", diff --git a/tools/fuchsia/fuchsia_archive.gni b/tools/fuchsia/fuchsia_archive.gni index eb0d1b9807edd..3eb9e8805b444 100644 --- a/tools/fuchsia/fuchsia_archive.gni +++ b/tools/fuchsia/fuchsia_archive.gni @@ -131,6 +131,10 @@ template("_fuchsia_archive") { ] sources = copy_outputs + if (defined(invoker.cml_file)) { + sources += [ invoker.cml_file ] + } + inputs = [] if (defined(invoker.inputs)) { inputs += invoker.inputs From db0fb1b7b5f469a8ead3f544f861386154395d07 Mon Sep 17 00:00:00 2001 From: Alexander Biggs Date: Tue, 7 Sep 2021 13:23:04 -0700 Subject: [PATCH 2/6] [fuchsia] Update licenses file. --- ci/licenses_golden/licenses_flutter | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/ci/licenses_golden/licenses_flutter b/ci/licenses_golden/licenses_flutter index 1d5cee942105c..eb0d510e1831a 100755 --- a/ci/licenses_golden/licenses_flutter +++ b/ci/licenses_golden/licenses_flutter @@ -1380,9 +1380,14 @@ FILE: ../../../flutter/shell/platform/fuchsia/dart_runner/logging.h FILE: ../../../flutter/shell/platform/fuchsia/dart_runner/main.cc FILE: ../../../flutter/shell/platform/fuchsia/dart_runner/meta/aot_product_runtime FILE: ../../../flutter/shell/platform/fuchsia/dart_runner/meta/aot_runtime +FILE: ../../../flutter/shell/platform/fuchsia/dart_runner/meta/common.shard.cml +FILE: ../../../flutter/shell/platform/fuchsia/dart_runner/meta/dart_aot_product_runner.cml FILE: ../../../flutter/shell/platform/fuchsia/dart_runner/meta/dart_aot_product_runner.cmx +FILE: ../../../flutter/shell/platform/fuchsia/dart_runner/meta/dart_aot_runner.cml FILE: ../../../flutter/shell/platform/fuchsia/dart_runner/meta/dart_aot_runner.cmx +FILE: ../../../flutter/shell/platform/fuchsia/dart_runner/meta/dart_jit_product_runner.cml FILE: ../../../flutter/shell/platform/fuchsia/dart_runner/meta/dart_jit_product_runner.cmx +FILE: ../../../flutter/shell/platform/fuchsia/dart_runner/meta/dart_jit_runner.cml FILE: ../../../flutter/shell/platform/fuchsia/dart_runner/meta/dart_jit_runner.cmx FILE: ../../../flutter/shell/platform/fuchsia/dart_runner/meta/dart_zircon_test.cmx FILE: ../../../flutter/shell/platform/fuchsia/dart_runner/meta/jit_product_runtime From f6dd0a64113cc03105e63d21c4137241583b7f75 Mon Sep 17 00:00:00 2001 From: Alexander Biggs Date: Tue, 7 Sep 2021 13:32:21 -0700 Subject: [PATCH 3/6] [fuchsia] Format fixes, removing archive tool changes --- .../fuchsia/dart_runner/meta/dart_aot_product_runner.cml | 2 +- shell/platform/fuchsia/dart_runner/meta/dart_aot_runner.cml | 2 +- .../fuchsia/dart_runner/meta/dart_jit_product_runner.cml | 2 +- shell/platform/fuchsia/dart_runner/meta/dart_jit_runner.cml | 2 +- tools/fuchsia/fuchsia_archive.gni | 4 ---- 5 files changed, 4 insertions(+), 8 deletions(-) diff --git a/shell/platform/fuchsia/dart_runner/meta/dart_aot_product_runner.cml b/shell/platform/fuchsia/dart_runner/meta/dart_aot_product_runner.cml index 781cfdd3b5f2d..5f3e58cea8ff4 100644 --- a/shell/platform/fuchsia/dart_runner/meta/dart_aot_product_runner.cml +++ b/shell/platform/fuchsia/dart_runner/meta/dart_aot_product_runner.cml @@ -21,4 +21,4 @@ from: "self", }, ], -} \ No newline at end of file +} diff --git a/shell/platform/fuchsia/dart_runner/meta/dart_aot_runner.cml b/shell/platform/fuchsia/dart_runner/meta/dart_aot_runner.cml index 04264721b5310..d884ba849fc38 100644 --- a/shell/platform/fuchsia/dart_runner/meta/dart_aot_runner.cml +++ b/shell/platform/fuchsia/dart_runner/meta/dart_aot_runner.cml @@ -21,4 +21,4 @@ from: "self", }, ], -} \ No newline at end of file +} diff --git a/shell/platform/fuchsia/dart_runner/meta/dart_jit_product_runner.cml b/shell/platform/fuchsia/dart_runner/meta/dart_jit_product_runner.cml index d8e1f44a3e03c..8dadc78b24f43 100644 --- a/shell/platform/fuchsia/dart_runner/meta/dart_jit_product_runner.cml +++ b/shell/platform/fuchsia/dart_runner/meta/dart_jit_product_runner.cml @@ -23,4 +23,4 @@ from: "self", }, ], -} \ No newline at end of file +} diff --git a/shell/platform/fuchsia/dart_runner/meta/dart_jit_runner.cml b/shell/platform/fuchsia/dart_runner/meta/dart_jit_runner.cml index 2b37f3afb0632..6304f182da124 100644 --- a/shell/platform/fuchsia/dart_runner/meta/dart_jit_runner.cml +++ b/shell/platform/fuchsia/dart_runner/meta/dart_jit_runner.cml @@ -23,4 +23,4 @@ from: "self", }, ], -} \ No newline at end of file +} diff --git a/tools/fuchsia/fuchsia_archive.gni b/tools/fuchsia/fuchsia_archive.gni index 3eb9e8805b444..eb0d1b9807edd 100644 --- a/tools/fuchsia/fuchsia_archive.gni +++ b/tools/fuchsia/fuchsia_archive.gni @@ -131,10 +131,6 @@ template("_fuchsia_archive") { ] sources = copy_outputs - if (defined(invoker.cml_file)) { - sources += [ invoker.cml_file ] - } - inputs = [] if (defined(invoker.inputs)) { inputs += invoker.inputs From fa588d914cc4a6b64db81df86e4424ce1195551b Mon Sep 17 00:00:00 2001 From: Alexander Biggs Date: Tue, 7 Sep 2021 13:35:58 -0700 Subject: [PATCH 4/6] [fuchsia] Format --- shell/platform/fuchsia/dart_runner/meta/common.shard.cml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/shell/platform/fuchsia/dart_runner/meta/common.shard.cml b/shell/platform/fuchsia/dart_runner/meta/common.shard.cml index 912fb8343c54b..c38f1704ae6c3 100644 --- a/shell/platform/fuchsia/dart_runner/meta/common.shard.cml +++ b/shell/platform/fuchsia/dart_runner/meta/common.shard.cml @@ -36,4 +36,4 @@ to: "framework", }, ], -} \ No newline at end of file +} From befbf7f41a488912ede90601a1a342680b5c09b3 Mon Sep 17 00:00:00 2001 From: Alexander Biggs Date: Wed, 8 Sep 2021 09:21:27 -0700 Subject: [PATCH 5/6] [fuchsia] Remove NameLookup (deprecated in earlier commit). --- shell/platform/fuchsia/dart_runner/meta/common.shard.cml | 1 - 1 file changed, 1 deletion(-) diff --git a/shell/platform/fuchsia/dart_runner/meta/common.shard.cml b/shell/platform/fuchsia/dart_runner/meta/common.shard.cml index c38f1704ae6c3..60c0474fe3aff 100644 --- a/shell/platform/fuchsia/dart_runner/meta/common.shard.cml +++ b/shell/platform/fuchsia/dart_runner/meta/common.shard.cml @@ -22,7 +22,6 @@ "fuchsia.feedback.CrashReporter", "fuchsia.intl.PropertyProvider", "fuchsia.logger.LogSink", - "fuchsia.net.NameLookup", "fuchsia.posix.socket.Provider", "fuchsia.tracing.provider.Registry", ], From bd7795325bd10207c586912396f05c6e4fa7b871 Mon Sep 17 00:00:00 2001 From: Alexander Biggs Date: Wed, 8 Sep 2021 09:24:03 -0700 Subject: [PATCH 6/6] [fuchsia] Format fix. --- tools/fuchsia/devshell/serve.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/fuchsia/devshell/serve.sh b/tools/fuchsia/devshell/serve.sh index 5176ca87ff627..07d389a13f64c 100755 --- a/tools/fuchsia/devshell/serve.sh +++ b/tools/fuchsia/devshell/serve.sh @@ -205,7 +205,7 @@ while true; do \"host_match\": \"fuchsia.com\", \"host_replacement\": \"engine\", \"path_prefix_match\": \"/flutter_aot_runner\", \"path_prefix_replacement\": \"/flutter_aot_runner\" }, - { + { \"host_match\": \"fuchsia.com\", \"host_replacement\": \"engine\", \"path_prefix_match\": \"/dart_jit_runner/\", \"path_prefix_replacement\": \"/dart_jit_runner/\" },