# 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/package.gni")

jiri_snapshot_file = "//.jiri_root/update_history/latest"
last_update_file = "$target_gen_dir/last-update.txt"

package("build_info") {
  deprecated_system_image = true
  deps = [ ":last-update.txt" ]
  resources = [
    {
      dest = "build/last-update"
      path = last_update_file
    },
    {
      dest = "build/snapshot"
      path = jiri_snapshot_file
    },
  ]
}

action("last-update.txt") {
  visibility = [ ":*" ]
  sources = [ jiri_snapshot_file ]
  outputs = [ last_update_file ]
  script = "tools/gen-last-update"
  args = rebase_path(sources + outputs, root_build_dir)
}
