# Copyright 2022 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/rust/rustc_library.gni")

assert(is_host, "Assembly libraries are host-only")

rustc_library("validate_product") {
  edition = "2021"
  name = "assembly_validate_product"
  with_unit_tests = true
  deps = [
    "//src/lib/assembly/config_schema",
    "//src/lib/assembly/structured_config",
    "//src/lib/assembly/util",
    "//src/lib/assembly/validate_util",
    "//src/lib/versioning/version-history/rust:version-history",
    "//src/sys/pkg/lib/far/rust:fuchsia-archive",
    "//src/sys/pkg/lib/fuchsia-pkg",
    "//third_party/rust_crates:anyhow",
    "//third_party/rust_crates:camino",
    "//third_party/rust_crates:rayon",
    "//third_party/rust_crates:textwrap",
  ]
  sources = [ "src/lib.rs" ]
}
