meson: Vendor glslang

This commit is contained in:
Matt Borgerson
2024-07-26 17:21:01 -07:00
committed by mborgerson
parent cd130f85d0
commit ff5f2768b6
3 changed files with 23 additions and 12 deletions

2
debian/rules vendored
View File

@ -63,7 +63,7 @@ override_dh_auto_configure:
override_dh_auto_build: override_dh_auto_build:
./build.sh ${XEMU_BUILD_OPTIONS} ${common_configure_opts} || \ ./build.sh ${XEMU_BUILD_OPTIONS} ${common_configure_opts} || \
{ echo ===== BUILD FAILED ===; tail -n 50 config.log; exit 1; } { echo ===== BUILD FAILED ===; cat build/meson-logs/meson-log.txt; exit 1; }
cp debian/copyright debian/qemu.deb.copyright cp debian/copyright debian/qemu.deb.copyright
cp dist/LICENSE.txt debian/copyright cp dist/LICENSE.txt debian/copyright

View File

@ -1181,10 +1181,10 @@ if not get_option('opengl').auto() or have_system or have_vhost_user_gpu
endif endif
vulkan = not_found vulkan = not_found
libglslang = not_found
if targetos == 'windows' if targetos == 'windows'
vulkan = declare_dependency( vulkan = declare_dependency(compile_args: ['-DVK_USE_PLATFORM_WIN32_KHR'])
compile_args: ['-DVK_USE_PLATFORM_WIN32_KHR', '-DVK_NO_PROTOTYPES'],
)
libglslang = declare_dependency(link_args: [ libglslang = declare_dependency(link_args: [
'-lglslang', '-lglslang',
'-lMachineIndependent', '-lMachineIndependent',
@ -1195,14 +1195,21 @@ if targetos == 'windows'
]) ])
elif targetos == 'linux' elif targetos == 'linux'
vulkan = dependency('vulkan') vulkan = dependency('vulkan')
libglslang = declare_dependency(link_args: [ endif
'-lglslang',
'-lMachineIndependent', if vulkan.found() and not libglslang.found()
'-lGenericCodeGen', cmake = import('cmake')
'-lSPIRV', # FIXME: Get spirv-tools to enable opt.
'-lSPIRV-Tools', glslang_opts = cmake.subproject_options()
'-lSPIRV-Tools-opt' glslang_opts.add_cmake_defines({'ENABLE_OPT': false})
]) glslang_subpro = cmake.subproject('glslang', options: glslang_opts)
libglslang = declare_dependency(link_with: [
glslang_subpro.target('glslang'),
glslang_subpro.target('MachineIndependent'),
glslang_subpro.target('GenericCodeGen'),
glslang_subpro.target('SPIRV'),
], include_directories: ['subprojects' / 'glslang']
)
endif endif
subdir('thirdparty') subdir('thirdparty')

4
subprojects/glslang.wrap Normal file
View File

@ -0,0 +1,4 @@
[wrap-git]
url=https://github.com/KhronosGroup/glslang
revision=vulkan-sdk-1.3.283.0
depth=1