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

@@ -1,14 +0,0 @@
project('libshaderc', 'cpp')
fs = import('fs')
cxxc = meson.get_compiler('cpp')
shaderc_inc = include_directories('install/include')
shaderc_dep = declare_dependency(
dependencies: cxxc.find_library('shaderc_combined', dirs: meson.current_source_dir()/'install/lib'),
include_directories: shaderc_inc,
)
meson.override_dependency('shaderc_msvc', shaderc_dep)
meson.override_dependency('shaderc_clang', shaderc_dep)

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

12
subprojects/shaderc.wrap Normal file
View File

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

View File

@@ -1,12 +0,0 @@
[wrap-file]
directory = libshaderc
source_url = https://storage.googleapis.com/shaderc/artifacts/prod/graphics_shader_compiler/shaderc/linux/continuous_clang_release/364/20210607-072233/install.tgz
source_filename = libshaderc-upstream-clang.tgz
source_hash = f46dd35f6904af2b3330201ffb0f2f1ef5f8b8ede44491fad1a37b4a791772ef
lead_directory_missing = libshaderc
patch_directory = libshaderc
[provide]
dependency_names = shaderc_clang

View File

@@ -1,12 +0,0 @@
[wrap-file]
directory = libshaderc
source_url = https://storage.googleapis.com/shaderc/artifacts/prod/graphics_shader_compiler/shaderc/windows/continuous_release_2017/368/20210607-072143/install.zip
source_filename = libshaderc-upstream-msvc.zip
source_hash = 5256f02a11dceb3390edaabd452a23ee48c4fe7b43bca754de87738adea96255
lead_directory_missing = libshaderc
patch_directory = libshaderc
[provide]
dependency_names = shaderc_msvc