build: Use a different SONAME for the glfw WSI

Selecting the GLFW WSI gives DXVK an incompatible ABI: for example,
CreateDevice takes a `SDL_Window *` parameter in the default SDL WSI,
but takes a `GLFWwindow *` instead in the GLFW WSI. This means it
should get a different name, so that binaries expecting one WSI don't
unexpectedly load the other.

Resolves: https://github.com/doitsujin/dxvk/issues/3321
Signed-off-by: Simon McVittie <smcv@collabora.com>
This commit is contained in:
Simon McVittie 2023-03-31 14:21:29 +01:00
parent 306919047b
commit 04113bdea0
1 changed files with 6 additions and 2 deletions

View File

@ -121,8 +121,12 @@ else
lib_glfw = cpp.find_library('glfw')
compiler_args += ['-DDXVK_WSI_GLFW']
endif
dxvk_name_prefix = 'libdxvk_'
if dxvk_wsi == 'sdl2'
dxvk_name_prefix = 'libdxvk_'
else
dxvk_name_prefix = 'libdxvk_@0@_'.format(dxvk_wsi)
endif
link_args += [
'-static-libgcc',