mirror of
https://github.com/klzgrad/naiveproxy.git
synced 2024-11-28 00:06:09 +03:00
144 lines
4.2 KiB
Plaintext
144 lines
4.2 KiB
Plaintext
# Copyright 2018 The Chromium Authors. All rights reserved.
|
|
# Use of this source code is governed by a BSD-style license that can be
|
|
# found in the LICENSE file.
|
|
|
|
assert(is_fuchsia)
|
|
|
|
import("//build/config/chromecast_build.gni")
|
|
import("//build/config/fuchsia/config.gni")
|
|
import("//build/config/fuchsia/package.gni")
|
|
import("//build/config/sysroot.gni")
|
|
|
|
blobstore_qcow_path = "$root_out_dir/fvm.blk.qcow2"
|
|
|
|
template("generate_runner_script") {
|
|
_pkg_dir = "$root_out_dir/gen/" + get_label_info(invoker.package_name, "dir")
|
|
_manifest_path = "$_pkg_dir/${invoker.package_name}.archive_manifest"
|
|
_package_path = "$_pkg_dir/${invoker.package_name}.far"
|
|
|
|
action(target_name) {
|
|
forward_variables_from(invoker,
|
|
[
|
|
"runner_script",
|
|
"target",
|
|
"testonly",
|
|
])
|
|
|
|
deps = [
|
|
"//build/config/fuchsia:blobstore_extended_qcow2",
|
|
"//testing/buildbot/filters:fuchsia_filters",
|
|
]
|
|
|
|
_generated_script = "${invoker.generated_script}"
|
|
|
|
script = "//build/fuchsia/create_runner_script.py"
|
|
|
|
outputs = [
|
|
_generated_script,
|
|
]
|
|
|
|
data = [
|
|
_generated_script,
|
|
_manifest_path,
|
|
"//build/fuchsia/",
|
|
"//build/util/lib/",
|
|
"${fuchsia_sdk}/",
|
|
]
|
|
|
|
# Arguments used at build time by the runner script generator.
|
|
args = [
|
|
"--script-output-path",
|
|
rebase_path(_generated_script, root_build_dir, root_out_dir),
|
|
]
|
|
|
|
if (defined(invoker.use_test_server) && invoker.use_test_server) {
|
|
args += [ "--enable-test-server" ]
|
|
}
|
|
|
|
# Arguments used at runtime by the test runner.
|
|
args += [
|
|
"--runner-script",
|
|
runner_script,
|
|
"--output-directory",
|
|
rebase_path(root_build_dir, root_build_dir),
|
|
"--target-cpu",
|
|
target_cpu,
|
|
"--package",
|
|
rebase_path(_package_path, root_out_dir, root_build_dir),
|
|
"--package-name",
|
|
invoker.package_name,
|
|
"--package-manifest",
|
|
rebase_path(_manifest_path),
|
|
]
|
|
}
|
|
}
|
|
|
|
# This template is used to generate a runner script for test binaries into the
|
|
# build dir for Fuchsia. It's generally used from the "test" template.
|
|
template("test_runner_script") {
|
|
generate_runner_script(target_name) {
|
|
testonly = true
|
|
runner_script = "test_runner.py"
|
|
generated_script =
|
|
"$root_build_dir/bin/run_" + get_label_info(invoker.test_name, "name")
|
|
forward_variables_from(invoker, "*")
|
|
}
|
|
}
|
|
|
|
# This template is used to generate a runner script for arbitrary executables
|
|
# into the build dir for Fuchsia. The executable is specified as a target
|
|
# pass to the "exe_target" attribute.
|
|
template("fuchsia_executable_runner") {
|
|
forward_variables_from(invoker, [ "exe_target" ])
|
|
|
|
_pkg_target = "${target_name}_pkg"
|
|
_gen_runner_target = "${target_name}_runner"
|
|
_archive_target = "${target_name}_archive"
|
|
_exe_name = get_label_info(exe_target, "name")
|
|
|
|
# Define the target dependencies as the union of the executable target
|
|
# and the invoker's deps.
|
|
if (defined(invoker.deps)) {
|
|
_combined_deps = invoker.deps + [ exe_target ]
|
|
} else {
|
|
_combined_deps = [ exe_target ]
|
|
}
|
|
|
|
package(_pkg_target) {
|
|
forward_variables_from(invoker, [ "testonly" ])
|
|
package_name = _exe_name
|
|
sandbox_policy = "//build/config/fuchsia/sandbox_policy"
|
|
binary = _exe_name
|
|
deps = _combined_deps
|
|
}
|
|
|
|
generate_runner_script(_gen_runner_target) {
|
|
forward_variables_from(invoker, [ "testonly" ])
|
|
runner_script = "exe_runner.py"
|
|
generated_script = "$root_build_dir/bin/run_${_exe_name}"
|
|
package_name = _exe_name
|
|
}
|
|
|
|
group(target_name) {
|
|
forward_variables_from(invoker, [ "testonly" ])
|
|
deps = [
|
|
":${_archive_target}",
|
|
":${_gen_runner_target}",
|
|
":${_pkg_target}",
|
|
]
|
|
|
|
# Disable packaging for Chromecast builds. (https://crbug.com/810069)
|
|
if (is_chromecast) {
|
|
deps -= [ ":${_pkg_target}" ]
|
|
}
|
|
}
|
|
|
|
generate_runner_script(_archive_target) {
|
|
forward_variables_from(invoker, [ "testonly" ])
|
|
runner_script = "archive_builder.py"
|
|
generated_script =
|
|
"$root_build_dir/bin/archive_" + get_label_info(exe_target, "name")
|
|
package_name = _exe_name
|
|
}
|
|
}
|