# 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("//products/core.gni")

core_realm_package_name = "core-terminal"
core_realm_shards += []

base_package_labels += [
  "//src/devices/sysmem/bin/sysmem_connector",
  "//src/ui/bin/root_presenter",
  "//src/ui/bin/root_presenter:configs",
  "//src/ui/scenic:configs",
  "//src/fonts",
  "//src/graphics/bin/vulkan_loader",
  "//src/intl/intl_services/config:sysmgr",
  "//src/intl/intl_services:pkg",
  "//src/ui/a11y",

  # TODO(fxbug.dev/82822): Remove after out-of-tree tests migrate to
  # text_manager.
  "//src/ui/bin/text:ime_service",
  "//src/ui/bin/text:text_manager",
]
base_package_labels -= [ "//src/intl/intl_services/config:sysmgr_small" ]

# Add build type config data
base_package_labels += [ "//src/fonts:build_type_eng" ]

cache_package_labels += [
  "//src/fonts:open-fonts-collection",
  "//src/ui/bin/terminal",
  "//src/ui/scenic",
  "//src/ui/tools/tiles",
]

# End to end (E2E) product test runtime dependencies. Must be added to cache,
# not universe, so the test can run on bots where there is no package server.
#
# TODO(fxbug.dev/9892): Support a package server on bots so this can be added to
# universe like the tests.
cache_package_labels += [
  # Used for Chromium tests for example:
  #    //src/chromium/web_runner_tests:tests
  "//examples/intl/manager:intl_property_manager",

  # Used to mock out display hardware.
  "//src/ui/bin/hardware_display_controller_provider",

  # General end to end dependencies.
  "//src/tests/end_to_end/bundles:end_to_end_deps",
  "//src/tests/end_to_end/bundles:terminal_end_to_end_deps",

  # CFv2 test framework.
  "//src/sys/run_test_suite",
]

# Add SDK tools set to "cache" so these tools are automatically available in
# QEMU images generated for the SDK, but in cache, so they can be updated.
cache_package_labels += [ "//sdk/bundles:tools" ]

core_realm_shards += [ "//src/media/codec:codec_factory_shard" ]

universe_package_labels += [
  # E2E Product Tests. They don't produce fuchsia packages, but host
  # executables, and must just be included somewhere in the build configuration
  # of the product.
  "//src/tests/end_to_end/screen_is_not_black:tiles_test",
  "//src/tests/end_to_end/sl4f:test",
  "//src/tests/end_to_end/perf:test",
  "//src/tests/end_to_end/time_sync:test",

  # Only for products in which Flutter is supported.
  "//src/tests/intl/timezone:tests-for-flutter",

  "//src/fonts:open-fonts",
]
