shaderc building changes

This commit is contained in:
2026-03-26 13:50:04 +02:00
parent eb5f44e298
commit 080b6742bb
11 changed files with 100 additions and 45 deletions

View File

@@ -0,0 +1,17 @@
diff --git a/third_party/CMakeLists.txt b/third_party/CMakeLists.txt
index d44f62a..16bad95 100644
--- a/third_party/CMakeLists.txt
+++ b/third_party/CMakeLists.txt
@@ -87,7 +87,11 @@ if (NOT TARGET glslang)
# Glslang tests are off by default. Turn them on if testing Shaderc.
set(GLSLANG_TESTS ON)
endif()
- set(GLSLANG_ENABLE_INSTALL $<NOT:${SKIP_GLSLANG_INSTALL}>)
+ if (${SKIP_GLSLANG_INSTALL})
+ set(GLSLANG_ENABLE_INSTALL OFF)
+ else()
+ set(GLSLANG_ENABLE_INSTALL ON)
+ endif()
add_subdirectory(${SHADERC_GLSLANG_DIR} glslang)
endif()
if (NOT TARGET glslang)

View File

@@ -0,0 +1,27 @@
project('libshaderc', 'cpp')
python = find_program('python3')
run_command(python, './utils/git-sync-deps', check: true)
cmake = import('cmake')
opts = cmake.subproject_options()
opts.add_cmake_defines({
'CMAKE_MSVC_RUNTIME_LIBRARY': 'MultiThreaded',
'CMAKE_POLICY_DEFAULT_CMP0091': 'NEW',
'SHADERC_SKIP_INSTALL': 'ON',
'SHADERC_SKIP_TESTS': 'ON',
'SHADERC_SKIP_EXAMPLES': 'ON',
'SHADERC_SKIP_COPYRIGHT_CHECK': 'ON'
})
shaderc_proj = cmake.subproject('shaderc_cmake', options: opts)
shaderc_dep = declare_dependency(dependencies: [
shaderc_proj.dependency('shaderc'),
shaderc_proj.dependency('shaderc_util'),
shaderc_proj.dependency('SPIRV'),
shaderc_proj.dependency('SPIRV-Tools-static'),
shaderc_proj.dependency('SPIRV-Tools-opt'),
shaderc_proj.dependency('glslang'),
shaderc_proj.dependency('GenericCodeGen'),
shaderc_proj.dependency('MachineIndependent'),
])
meson.override_dependency('shaderc', shaderc_dep)

View File

@@ -0,0 +1,10 @@
[wrap-git]
directory = shaderc
url = https://github.com/google/shaderc
revision = v2024.4
depth=1
; patch_directory = shaderc_cmake
;
; [provide]
; dependency_names = shaderc_cmake

View File

@@ -0,0 +1,10 @@
[wrap-git]
directory = shaderc
url = https://github.com/google/shaderc
revision = v2024.4
depth=1
; patch_directory = shaderc_cmake
;
; [provide]
; dependency_names = shaderc_cmake