blob: 4587f077ac7b8c15acfba332dd26c66b9edf53e7 [file] [log] [blame]
# Copyright 2023 The Tint Authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
################################################################################
# File generated by 'tools/src/cmd/gen' using the template:
# tools/src/cmd/gen/build/BUILD.gn.tmpl
#
# To regenerate run: './tools/run gen'
#
# Do not modify this file directly
################################################################################
import("../../../../../scripts/tint_overrides_with_defaults.gni")
import("${tint_src_dir}/tint.gni")
if (tint_build_unittests || tint_build_benchmarks) {
import("//testing/test.gni")
}
if (tint_build_spv_writer) {
libtint_source_set("writer") {
sources = [
"output.h",
"writer.cc",
"writer.h",
]
deps = [
"${tint_src_dir}/api/common",
"${tint_src_dir}/api/options",
"${tint_src_dir}/lang/core",
"${tint_src_dir}/lang/core/constant",
"${tint_src_dir}/lang/core/intrinsic",
"${tint_src_dir}/lang/core/ir",
"${tint_src_dir}/lang/core/type",
"${tint_src_dir}/lang/spirv",
"${tint_src_dir}/lang/spirv/intrinsic",
"${tint_src_dir}/lang/spirv/ir",
"${tint_src_dir}/lang/wgsl",
"${tint_src_dir}/lang/wgsl/ast",
"${tint_src_dir}/lang/wgsl/program",
"${tint_src_dir}/lang/wgsl/reader/lower",
"${tint_src_dir}/lang/wgsl/sem",
"${tint_src_dir}/utils/containers",
"${tint_src_dir}/utils/diagnostic",
"${tint_src_dir}/utils/ice",
"${tint_src_dir}/utils/id",
"${tint_src_dir}/utils/macros",
"${tint_src_dir}/utils/math",
"${tint_src_dir}/utils/memory",
"${tint_src_dir}/utils/reflection",
"${tint_src_dir}/utils/result",
"${tint_src_dir}/utils/rtti",
"${tint_src_dir}/utils/symbol",
"${tint_src_dir}/utils/text",
"${tint_src_dir}/utils/traits",
]
if (tint_build_spv_reader || tint_build_spv_writer) {
deps += [ "${tint_spirv_headers_dir}:spv_headers" ]
}
if (tint_build_spv_writer) {
deps += [
"${tint_src_dir}/lang/spirv/writer/ast_printer",
"${tint_src_dir}/lang/spirv/writer/common",
"${tint_src_dir}/lang/spirv/writer/printer",
"${tint_src_dir}/lang/spirv/writer/raise",
]
}
if (tint_build_wgsl_reader) {
deps += [ "${tint_src_dir}/lang/wgsl/reader/program_to_ir" ]
}
}
}
if (tint_build_unittests) {
if (tint_build_spv_writer) {
tint_unittests_source_set("unittests") {
sources = [
"access_test.cc",
"atomic_builtin_test.cc",
"binary_test.cc",
"bitcast_test.cc",
"builtin_test.cc",
"constant_test.cc",
"construct_test.cc",
"convert_test.cc",
"discard_test.cc",
"function_test.cc",
"if_test.cc",
"let_test.cc",
"loop_test.cc",
"switch_test.cc",
"swizzle_test.cc",
"texture_builtin_test.cc",
"type_test.cc",
"unary_test.cc",
"var_test.cc",
"writer_test.cc",
]
deps = [
"${tint_src_dir}:gmock_and_gtest",
"${tint_src_dir}/api/common",
"${tint_src_dir}/lang/core",
"${tint_src_dir}/lang/core/constant",
"${tint_src_dir}/lang/core/intrinsic",
"${tint_src_dir}/lang/core/ir",
"${tint_src_dir}/lang/core/type",
"${tint_src_dir}/lang/spirv",
"${tint_src_dir}/lang/spirv/intrinsic",
"${tint_src_dir}/lang/spirv/ir",
"${tint_src_dir}/utils/containers",
"${tint_src_dir}/utils/diagnostic",
"${tint_src_dir}/utils/ice",
"${tint_src_dir}/utils/id",
"${tint_src_dir}/utils/macros",
"${tint_src_dir}/utils/math",
"${tint_src_dir}/utils/memory",
"${tint_src_dir}/utils/reflection",
"${tint_src_dir}/utils/result",
"${tint_src_dir}/utils/rtti",
"${tint_src_dir}/utils/symbol",
"${tint_src_dir}/utils/text",
"${tint_src_dir}/utils/traits",
]
if (tint_build_spv_reader || tint_build_spv_writer) {
deps += [
"${tint_spirv_headers_dir}:spv_headers",
"${tint_spirv_tools_dir}:spvtools_headers",
"${tint_spirv_tools_dir}:spvtools_val",
]
}
if (tint_build_spv_writer) {
deps += [
"${tint_src_dir}/lang/spirv/writer/common",
"${tint_src_dir}/lang/spirv/writer/common:unittests",
"${tint_src_dir}/lang/spirv/writer/printer",
"${tint_src_dir}/lang/spirv/writer/raise",
]
}
}
}
}
if (tint_build_benchmarks) {
if (tint_build_spv_writer) {
tint_unittests_source_set("bench") {
sources = [ "writer_bench.cc" ]
deps = [
"${tint_src_dir}:google_benchmark",
"${tint_src_dir}/api/common",
"${tint_src_dir}/cmd/bench:bench",
"${tint_src_dir}/lang/core",
"${tint_src_dir}/lang/core/constant",
"${tint_src_dir}/lang/core/type",
"${tint_src_dir}/lang/wgsl",
"${tint_src_dir}/lang/wgsl/ast",
"${tint_src_dir}/lang/wgsl/program",
"${tint_src_dir}/lang/wgsl/sem",
"${tint_src_dir}/utils/containers",
"${tint_src_dir}/utils/diagnostic",
"${tint_src_dir}/utils/ice",
"${tint_src_dir}/utils/id",
"${tint_src_dir}/utils/macros",
"${tint_src_dir}/utils/math",
"${tint_src_dir}/utils/memory",
"${tint_src_dir}/utils/reflection",
"${tint_src_dir}/utils/result",
"${tint_src_dir}/utils/rtti",
"${tint_src_dir}/utils/symbol",
"${tint_src_dir}/utils/text",
"${tint_src_dir}/utils/traits",
]
if (tint_build_spv_writer) {
deps += [
"${tint_src_dir}/lang/spirv/writer",
"${tint_src_dir}/lang/spirv/writer/common",
]
}
}
}
}