# 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")

executable("json_validator") {
  sources = [
    "main.cc",
  ]

  deps = [
    "//third_party/rapidjson",
  ]
}

install_host_tools("install") {
  deps = [
    ":json_validator",
  ]

  outputs = [
    "json_validator",
  ]
}
