# Copyright 2020 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/board.gni")

group("bootfs_labels") {
  testonly = true
  deps = board_bootfs_labels
}

group("system_image_deps") {
  testonly = true
  deps = board_system_image_deps
}
