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

group("bin") {
  deps = [ ":adb" ]
}

group("core_shards") {
  deps = [
    "adb:adb-shard",
    "adb-file-sync:adb-file-sync-shard",
    "adb-reboot:adb-reboot-shard",
    "adb-shell:adb-shell-shard",
  ]
}

group("tests") {
  testonly = true
  deps = [
    "adb:tests",
    "adb-file-sync:tests",
    "adb-reboot:tests",
    "adb-shell:tests",
  ]
}

group("adb-components") {
  deps = [
    "adb:adb-component",
    "adb-file-sync:adb-file-sync-component",
    "adb-reboot:adb-reboot-component",
    "adb-shell:adb-shell-component",
  ]
}

fuchsia_package("adb") {
  deps = [
    ":adb-components",

    # An adb file sync config needs to be part of the adb package.
    "adb-file-sync:adb-file-sync-config-default-values",

    # An adb shell config needs to be part of the adb package.
    "adb-shell:adb-shell-config-default-values",
  ]
}
