| # 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/host.gni") |
| import("//build/compiled_action.gni") |
| import("//build/config/fuchsia/zircon.gni") |
| |
| executable("fidlgen_llcpp_zircon") { |
| sources = [ |
| "llcpp_codegen.cc", |
| "llcpp_codegen.h", |
| "main.cc", |
| ] |
| deps = [ "//third_party/rapidjson" ] |
| } |
| |
| foreach(command, [ "validate", "update" ]) { |
| compiled_action(command) { |
| tool = ":fidlgen_llcpp_zircon" |
| args = [ |
| command, |
| rebase_path(zircon_root_build_dir, root_build_dir), |
| rebase_path("$root_build_dir/tools/fidlgen_llcpp", root_build_dir), |
| rebase_path("$target_gen_dir/fidlgen_llcpp_zircon_${command}.stamp", root_build_dir), |
| rebase_path("$target_gen_dir/fidlgen_llcpp_zircon_${command}.d", root_build_dir), |
| rebase_path("$target_gen_dir/validator_tmp", root_build_dir) |
| ] |
| # This dependency delivers $root_build_dir/tools/fidlgen_llcpp. |
| # It doesn't have to appear in inputs, because the tool will output |
| # the exact path to fidlgen_llcpp in the depfile. |
| deps = [ "//garnet/go/src/fidl" ] |
| depfile = "$target_gen_dir/fidlgen_llcpp_zircon_${command}.d" |
| inputs = [ "$zircon_root_build_dir/fidl_gen.json" ] |
| outputs = [ "$target_gen_dir/fidlgen_llcpp_zircon_${command}.stamp" ] |
| } |
| } |