blob: 8778272e20efbcc755081e4afd5676721e3b47f1 [file] [log] [blame]
# Copyright 2016 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")
import("//build/packages/sdk_fuchsia_package.gni")
import("//build/test.gni")
import("//build/testing/environments.gni")
import("//src/graphics/lib/magma/gnbuild/magma.gni")
import("//src/lib/vulkan/vulkan.gni")
# Used by other Vulkan tests.
source_set("helper") {
sources = [
"vkreadback.cc",
"vkreadback.h",
]
deps = [
"//src/graphics/tests/common",
"//zircon/system/ulib/zx",
]
public_deps = [
"//src/lib/vulkan",
"//third_party/googletest:gtest_no_testonly",
"//zircon/system/ulib/zx",
]
}
# Built both on Fuchsia and on the host.
executable("vkreadback_test") {
sources = [ "vkreadback_test.cc" ]
deps = [
":helper",
"//src/lib/fxl/test:gtest_main_no_testonly",
]
if (is_fuchsia) {
deps += [ "//src/graphics/tests/common:config_query" ]
}
# TODO(https://fxbug.dev/42053185): Add macOS support to VulkanContext and remove this.
if (is_host) {
environments = [ linux_env ]
}
}
fuchsia_component_manifest("vkreadback-manifest") {
component_name = "vkreadback_child"
manifest = "meta/vkreadback_child.cml"
}
fuchsia_component("vkreadback_test_child_component") {
component_name = "vkreadback_child"
deps = [
":vkreadback_test",
"//src/lib/vulkan/validation_layers",
]
cm_label = ":vkreadback-manifest"
}
fuchsia_structured_config_values("default_config") {
cm_label = ":vkreadback-manifest"
values = {
gpu_vendor_id = ""
}
}
fuchsia_package("vkreadback_test_child_package") {
package_name = "vkreadback-test"
deps = [ ":vkreadback_test_child_component" ]
deps += [ ":default_config" ]
validate_structured_config = false
}
sdk_fuchsia_package("vkreadback_test_sdk") {
distribution_name = "vkreadback_test"
category = "partner"
package_label = ":vkreadback_test_child_package"
expected_files_exact = [ "meta/vkreadback_child.cm" ]
api_level_added = 19
}
fuchsia_test_component("vkreadback_test_component") {
component_name = "vkreadback_test"
manifest = "meta/vkreadback.cml"
test_type = "vulkan"
}
fuchsia_test_package("vkreadback_test_package") {
package_name = "vkreadback_test"
test_components = [ ":vkreadback_test_component" ]
subpackages = [ ":vkreadback_test_child_package" ]
test_specs = {
# TODO(https://fxbug.dev/42124112): Restore astro_env when https://fxbug.dev/42120999 is fixed.
environments = vulkan_envs + [ astro_env ] - [ astro_env ]
}
}
group("vkreadback") {
testonly = true
deps = [ ":vkreadback_test_package" ]
if (is_host && !is_mac) {
# TODO(https://fxbug.dev/42053185): Add macOS support to VulkanContext and run this everywhere
deps += [ ":vkreadback_test($host_toolchain)" ]
}
}