# Copyright 2023 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("subpackage_blobs_package") {
  edition = "2024"
  name = "assembly_subpackage_blobs_package"
  version = "0.1.0"
  with_unit_tests = true
  deps = [
    "//src/lib/versioning/version-history/rust",
    "//src/sys/pkg/lib/fuchsia-merkle",
    "//src/sys/pkg/lib/fuchsia-pkg",
    "//third_party/rust_crates:anyhow",
    "//third_party/rust_crates:camino",
  ]
  test_deps = [
    "//src/sys/pkg/lib/far/rust:fuchsia-archive",
    "//third_party/rust_crates:pretty_assertions",
    "//third_party/rust_crates:serde_json",
    "//third_party/rust_crates:tempfile",
  ]
  sources = [
    "src/lib.rs",
    "src/subpackage_blobs_package.rs",
  ]
}
