blob: 6760d7cb6b97d7218a8bccb14396662bb8ee5886 [file] [log] [blame]
# Copyright 2018 The Fuchsia Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//build/rust/toolchain.gni")
import("//build/toolchain/basic_toolchain.gni")
group("disable_strict_sources_check_allowlist") {
# ________ _________ ________ ________
# |\ ____\|\___ ___\\ __ \|\ __ \
# \ \ \___|\|___ \ \_\ \ \|\ \ \ \|\ \
# \ \_____ \ \ \ \ \ \ \\\ \ \ ____\
# \|____|\ \ \ \ \ \ \ \\\ \ \ \___|
# ____\_\ \ \ \__\ \ \_______\ \__\
# |\_________\ \|__| \|_______|\|__|
# \|_________|
# This is an allowlist of packages that do not enforce that the source files
# are listed in `source`. This is only intended to be used as a temporary
# allowlist during soft migrations.
visibility = []
}
cargo_toml_gen_desc_out = "$target_out_dir/cargo_toml_gen_desc.json"
action("cargo_toml_gen_desc") {
visibility = [ ":cargo_toml_gen" ]
script = "//scripts/generate_cargo_desc.py"
sources = []
inputs = []
outputs = [ cargo_toml_gen_desc_out ]
depfile = "$cargo_toml_gen_desc_out.d"
args = [
"--root_build_dir",
".",
"--fuchsia_dir",
rebase_path("//", root_build_dir),
"--gn_binary",
rebase_path("//prebuilt/third_party/gn/${host_platform}/gn",
root_build_dir),
"--output",
rebase_path(cargo_toml_gen_desc_out, root_build_dir),
"--depfile",
rebase_path("$cargo_toml_gen_desc_out.d", root_build_dir),
]
}
# NOTE: This target is used by "fx set --cargo-toml-gen ..." which
# will do the following:
#
# 1) Ensure that "fx gen" (and "fx build") will pass `--ide-json`
# to `gn gen`, which generates an up-to-date
# `$root_build_dir/project.json` file, used here as input.
#
# 2) Add this target to the base packages list to ensure its
# action script is run by "fx build".
#
# For more details, see docs/development/language/rust/README.md
#
action("cargo_toml_gen") {
# Nothing in-tree should depend on Cargo files.
# TODO(bwb) remove base_packages visibility when auto-generation is disabled
visibility = [
"//:additional_base_packages",
"//:additional_cache_packages",
"//:additional_universe_packages",
]
script = "//scripts/generate_cargo.py"
sources = []
inputs = [ cargo_toml_gen_desc_out ]
outputs = [ "$root_build_dir/cargo/generate_cargo.stamp" ]
depfile = "$root_build_dir/cargo/generate_cargo.stamp.d"
args = [
rebase_path(cargo_toml_gen_desc_out, root_build_dir),
"--root_build_dir",
".",
"--fuchsia_dir",
rebase_path("//", root_build_dir),
]
deps = [ ":cargo_toml_gen_desc" ]
}