| # Copyright 2017 The Chromium Authors |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import("//build/config/cast.gni") |
| import("//build/config/chrome_build.gni") |
| |
| declare_args() { |
| # Should ANGLE be linked statically? |
| use_static_angle = is_android || is_ios |
| |
| # Should Dawn support be compiled to back the WebGPU implementation? |
| # Also controls linking Dawn dependencies in such as SPIRV-Tools/SPIRV-Cross. |
| use_dawn = is_apple || is_win || is_chromeos || (is_linux && !is_castos) || |
| (is_android && target_cpu != "x86" && target_cpu != "x64") || |
| is_desktop_android |
| |
| # Should Dawn test binaries (unittests, end2end_tests, perf_tests) be built? |
| # Independent of use_dawn, which controls whether Dawn is used in Chromium. |
| build_dawn_tests = is_mac || is_win || is_linux || is_chromeos || is_android |
| |
| # desktop android devices exclusively use angle and thus should not use |
| # the validating command decoder |
| enable_validating_command_decoder = is_android && !is_desktop_android |
| } |
| |
| declare_args() { |
| enable_swiftshader = |
| (is_win || is_linux || is_chromeos || is_mac || is_fuchsia) && |
| (target_cpu == "x86" || target_cpu == "x64" || target_cpu == "arm" || |
| target_cpu == "arm64" || target_cpu == "mipsel" || |
| target_cpu == "mips64el" || target_cpu == "riscv64") |
| } |