| # Copyright 2016 The Chromium 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("//testing/test.gni") |
| |
| action("build_version_inc") { |
| script = "shaderc_build_version_wrapper.py" |
| |
| args = [ |
| rebase_path(target_gen_dir), |
| rebase_path("src/utils/update_build_version.py"), |
| rebase_path("src"), |
| rebase_path("//third_party/SPIRV-Tools/src"), |
| rebase_path("//third_party/glslang/src"), |
| ] |
| inputs = [ |
| "README.chromium", |
| "//third_party/SPIRV-Tools/README.chromium", |
| "//third_party/glslang/README.chromium", |
| ] |
| outputs = [ |
| "${target_gen_dir}/build-version.inc", |
| ] |
| } |
| |
| config("libshaderc_util_config") { |
| include_dirs = [ "src/libshaderc_util/include" ] |
| } |
| |
| static_library("libshaderc_util") { |
| sources = [ |
| "src/libshaderc_util/include/liblibshaderc_util/counting_includer.h", |
| "src/libshaderc_util/include/liblibshaderc_util/file_finder.h", |
| "src/libshaderc_util/include/liblibshaderc_util/format.h", |
| "src/libshaderc_util/include/liblibshaderc_util/io.h", |
| "src/libshaderc_util/include/liblibshaderc_util/message.h", |
| "src/libshaderc_util/include/liblibshaderc_util/mutex.h", |
| "src/libshaderc_util/include/liblibshaderc_util/resources.h", |
| "src/libshaderc_util/include/liblibshaderc_util/spirv_tools_wrapper.h", |
| "src/libshaderc_util/include/liblibshaderc_util/string_piece.h", |
| "src/libshaderc_util/include/liblibshaderc_util/universal_unistd.h", |
| "src/libshaderc_util/include/liblibshaderc_util/version_profile.h", |
| "src/libshaderc_util/src/compiler.cc", |
| "src/libshaderc_util/src/file_finder.cc", |
| "src/libshaderc_util/src/io.cc", |
| "src/libshaderc_util/src/message.cc", |
| "src/libshaderc_util/src/resources.cc", |
| "src/libshaderc_util/src/shader_stage.cc", |
| "src/libshaderc_util/src/spirv_tools_wrapper.cc", |
| "src/libshaderc_util/src/version_profile.cc", |
| ] |
| |
| all_dependent_configs = [ ":libshaderc_util_config" ] |
| |
| deps = [ |
| "//third_party/SPIRV-Tools:SPIRV-Tools", |
| "//third_party/glslang:HLSL", |
| "//third_party/glslang:OGLCompiler", |
| "//third_party/glslang:SPIRV", |
| "//third_party/glslang:glslang", |
| ] |
| } |
| |
| config("libshaderc_config") { |
| include_dirs = [ "src/libshaderc/include" ] |
| } |
| |
| static_library("libshaderc") { |
| sources = [ |
| "src/libshaderc/include/shaderc/shaderc.h", |
| "src/libshaderc/include/shaderc/shaderc.hpp", |
| "src/libshaderc/src/shaderc.cc", |
| "src/libshaderc/src/shaderc_private.h", |
| ] |
| |
| all_dependent_configs = [ ":libshaderc_config" ] |
| |
| deps = [ |
| ":libshaderc_util", |
| "//third_party/glslang:glslang", |
| ] |
| } |
| |
| static_library("glslc_lib") { |
| sources = [ |
| "src/glslc/src/dependency_info.cc", |
| "src/glslc/src/dependency_info.h", |
| "src/glslc/src/file.cc", |
| "src/glslc/src/file.h", |
| "src/glslc/src/file_compiler.cc", |
| "src/glslc/src/file_compiler.h", |
| "src/glslc/src/file_includer.cc", |
| "src/glslc/src/file_includer.h", |
| "src/glslc/src/shader_stage.cc", |
| "src/glslc/src/shader_stage.h", |
| ] |
| |
| deps = [ |
| ":libshaderc", |
| ":libshaderc_util", |
| ] |
| } |
| |
| executable("glslc") { |
| sources = [ |
| "src/glslc/src/main.cc", |
| ] |
| |
| include_dirs = [ target_gen_dir ] |
| |
| deps = [ |
| ":build_version_inc", |
| ":glslc_lib", |
| ] |
| } |