| # Copyright 2021 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/go/go_library.gni") |
| import("//build/go/go_test.gni") |
| import("//build/host.gni") |
| |
| if (is_host) { |
| go_library("apidiff_test_lib") { |
| testonly = true |
| sources = [ |
| "apidiff_test.go", |
| "diff_test.go", |
| "report_test.go", |
| ] |
| deps = [ |
| ":gopkg", |
| "//tools/fidl/lib/fidlgen", |
| "//tools/fidl/lib/summarize:gopkg", |
| ] |
| } |
| |
| _fidlc_target = "//tools/fidl/fidlc($host_toolchain)" |
| _fidlc_binary = get_label_info(_fidlc_target, "root_out_dir") + "/fidlc" |
| |
| go_test("apidiff_test") { |
| gopackages = [ "go.fuchsia.dev/fuchsia/tools/fidl/lib/apidiff" ] |
| args = [ |
| "--fidlc", |
| rebase_path(_fidlc_binary, root_build_dir), |
| ] |
| deps = [ |
| ":apidiff_test_lib", |
| "//third_party/golibs:github.com/google/go-cmp", |
| "//tools/fidl/lib/fidlgentest", |
| ] |
| non_go_deps = [ ":copy_fidlc" ] |
| } |
| |
| host_test_data("copy_fidlc") { |
| sources = [ _fidlc_binary ] |
| deps = [ _fidlc_target ] |
| } |
| |
| go_library("gopkg") { |
| name = "go.fuchsia.dev/fuchsia/tools/fidl/lib/apidiff" |
| sources = [ |
| "apidiff.go", |
| "classification.go", |
| "diff.go", |
| "report.go", |
| ] |
| deps = [ |
| "//third_party/golibs:gopkg.in/yaml.v2", |
| "//tools/fidl/lib/fidlgen", |
| "//tools/fidl/lib/summarize:gopkg", |
| ] |
| |
| # This library is FIDL internal only. |
| visibility = [ "//tools/fidl/*" ] |
| } |
| } # is_host |
| |
| group("apidiff") { |
| testonly = true |
| deps = [ |
| ":gopkg($host_toolchain)", |
| ":tests", |
| ] |
| } |
| |
| group("tests") { |
| testonly = true |
| deps = [ ":apidiff_test($host_toolchain)" ] |
| } |