shaderc building changes
This commit is contained in:
11
build_options/meson-clang-linux
Normal file
11
build_options/meson-clang-linux
Normal file
@@ -0,0 +1,11 @@
|
||||
[binaries]
|
||||
c = 'clang-19'
|
||||
c_ld = 'lld-19'
|
||||
cpp = 'clang++-19'
|
||||
cpp_ld = 'lld-19'
|
||||
|
||||
[properties]
|
||||
c_args = ['-DEV_CC_CLANG=1','-fcolor-diagnostics', '-fansi-escape-codes', '-fms-extensions']
|
||||
|
||||
[cmake]
|
||||
CMAKE_C_COMPILER = 'clang-19'
|
||||
11
build_options/meson-clang-win
Normal file
11
build_options/meson-clang-win
Normal file
@@ -0,0 +1,11 @@
|
||||
[binaries]
|
||||
c = 'clang.exe'
|
||||
c_ld = 'lld'
|
||||
cpp = 'clang++.exe'
|
||||
cpp_ld = 'lld'
|
||||
|
||||
[properties]
|
||||
c_args = ['-DEV_CC_CLANG=1','-fcolor-diagnostics', '-fansi-escape-codes']
|
||||
|
||||
[cmake]
|
||||
CMAKE_C_COMPILER = 'clang.exe'
|
||||
@@ -1,6 +1,6 @@
|
||||
project('evol-mod-assetmanager', ['c', 'cpp'],
|
||||
version : '0.1',
|
||||
default_options : ['warning_level=3', 'c_std=c11', 'default_library=shared'])
|
||||
default_options : ['warning_level=1', 'c_std=gnu23', 'default_library=shared'])
|
||||
|
||||
src = subproject('evol').get_variable('evolmod_subdir') + '/meson.build'
|
||||
dst = meson.current_source_dir() + '/import/'
|
||||
@@ -35,14 +35,9 @@ mod_deps = [
|
||||
dependency('cute_filewatch'),
|
||||
|
||||
dependency('evmod_ecs'),
|
||||
dependency('shaderc'),
|
||||
]
|
||||
|
||||
if cc_id == 'msvc'
|
||||
mod_deps += dependency('shaderc_msvc')
|
||||
else
|
||||
mod_deps += dependency('shaderc_clang')
|
||||
endif
|
||||
|
||||
module = shared_module(
|
||||
'assetmanager', mod_src,
|
||||
include_directories: mod_incdir,
|
||||
|
||||
@@ -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)
|
||||
17
subprojects/packagefiles/shaderc/cmake_fix.diff
Normal file
17
subprojects/packagefiles/shaderc/cmake_fix.diff
Normal 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)
|
||||
27
subprojects/packagefiles/shaderc/meson.build
Normal file
27
subprojects/packagefiles/shaderc/meson.build
Normal 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)
|
||||
10
subprojects/packagefiles/shaderc/shaderc_cmake.wrap
Normal file
10
subprojects/packagefiles/shaderc/shaderc_cmake.wrap
Normal 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
|
||||
@@ -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
12
subprojects/shaderc.wrap
Normal 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
|
||||
@@ -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
|
||||
@@ -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
|
||||
Reference in New Issue
Block a user