# Copyright 2019 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.

# Packages added to the universe set complementing SDK images.
group("tools") {
  testonly = true
  public_deps = [
    ":core-tools",
    "//src/chromium:web_engine",
    "//src/chromium:web_runner",
  ]
}

group("core-tools") {
  testonly = true
  public_deps = [
    "//bundles/packages/prod:cmdutils",
    "//bundles/packages/prod:debug_agent",
    "//bundles/packages/prod:far",
    "//bundles/packages/prod:run",
    "//bundles/packages/prod:tiles",
    "//bundles/packages/prod:tracing",
    "//bundles/packages/testing:all",
    "//src/connectivity:tools",
    "//src/dart",
    "//src/developer/memory/mem",
    "//src/graphics/lib/magma:magma-tools",
    "//src/recovery/factory_reset:tools",
    "//src/sys/pkg/bin/pm:host",
    "//src/ui/tools:scenic",
    "//src/ui/tools/tiles_ctl",
    "//third_party/curl",
    "//third_party/iperf",
    "//third_party/openssh-portable:openssh-tools",
    "//third_party/sbase",
    "//tools/check-licenses:host($host_toolchain)",
    "//tools/fidl/fidlmerge:host",
    "//tools/fidl/gidl:host",
    "//tools/whereiscl:host($host_toolchain)",

    # We don't include the AOT flutter tools due to ABI stability.
    # SDK customers should download the AOT tools directly from
    # the flutter respository or use JIT instead.
    "//src/flutter:flutter_jit",
    "//src/flutter:flutter_jit_product",
    "//src/fonts",
    "//src/media/audio/bundles:services",
    "//src/media/bundles:tools",
    "//src/media/codec/bundles:services",
    "//src/media/playback/bundles:config",
    "//src/media/playback/bundles:services",
    "//src/media/sessions/bundles:services",
    "//src/modular/bin/sessionctl",
    "//src/modular/bundles:framework",
    "//src/modular/bundles:tools",
  ]
}
