diff --git a/meson.build b/meson.build index 6a0043e2d..8fe44ccfa 100644 --- a/meson.build +++ b/meson.build @@ -29,7 +29,8 @@ if meson.get_cross_property('winelib', false) lib_vulkan = declare_dependency(link_args: [ '-lvulkan-1' ]) lib_d3d11 = declare_dependency(link_args: [ '-ld3d11' ]) lib_dxgi = declare_dependency(link_args: [ '-ldxgi' ]) - lib_d3dcompiler = declare_dependency(link_args: [ '-L'+dxvk_library_path, '-ld3dcompiler_43' ]) + lib_d3dcompiler_43 = declare_dependency(link_args: [ '-L'+dxvk_library_path, '-ld3dcompiler_43' ]) + lib_d3dcompiler_47 = declare_dependency(link_args: [ '-ld3dcompiler_47' ]) exe_ext = '.exe.so' dll_ext = '.dll' def_spec_ext = '.spec' @@ -37,7 +38,13 @@ else lib_vulkan = dxvk_compiler.find_library('vulkan-1', dirs : dxvk_library_path) lib_d3d11 = dxvk_compiler.find_library('d3d11') lib_dxgi = dxvk_compiler.find_library('dxgi') - lib_d3dcompiler = dxvk_compiler.find_library('d3dcompiler_43', dirs : dxvk_library_path) + lib_d3dcompiler_43 = dxvk_compiler.find_library('d3dcompiler_43', dirs : dxvk_library_path) + + if dxvk_compiler.get_id() == 'msvc' + lib_d3dcompiler_47 = dxvk_compiler.find_library('d3dcompiler') + else + lib_d3dcompiler_47 = dxvk_compiler.find_library('d3dcompiler_47') + endif exe_ext = '' dll_ext = '' def_spec_ext = '.def' diff --git a/src/d3d10/meson.build b/src/d3d10/meson.build index a6b7fbed8..4218bee03 100644 --- a/src/d3d10/meson.build +++ b/src/d3d10/meson.build @@ -6,7 +6,7 @@ d3d10_main_src = [ d3d10_core_dll = shared_library('d3d10core'+dll_ext, d3d10_main_src, name_prefix : '', link_with : [ util_lib ], - dependencies : [ lib_d3dcompiler, lib_dxgi, d3d11_dep, dxbc_dep, dxvk_dep ], + dependencies : [ lib_d3dcompiler_43, lib_dxgi, d3d11_dep, dxbc_dep, dxvk_dep ], include_directories : dxvk_include_path, install : true, objects : not dxvk_msvc ? 'd3d10core'+def_spec_ext : [], @@ -16,7 +16,7 @@ d3d10_core_dll = shared_library('d3d10core'+dll_ext, d3d10_main_src, d3d10_dll = shared_library('d3d10'+dll_ext, d3d10_main_src, name_prefix : '', link_with : [ util_lib ], - dependencies : [ lib_d3dcompiler, lib_dxgi, d3d11_dep, dxbc_dep, dxvk_dep ], + dependencies : [ lib_d3dcompiler_43, lib_dxgi, d3d11_dep, dxbc_dep, dxvk_dep ], include_directories : dxvk_include_path, install : true, objects : not dxvk_msvc ? 'd3d10'+def_spec_ext : [], @@ -26,7 +26,7 @@ d3d10_dll = shared_library('d3d10'+dll_ext, d3d10_main_src, d3d10_1_dll = shared_library('d3d10_1'+dll_ext, d3d10_main_src, name_prefix : '', link_with : [ util_lib ], - dependencies : [ lib_d3dcompiler, lib_dxgi, d3d11_dep, dxbc_dep, dxvk_dep ], + dependencies : [ lib_d3dcompiler_43, lib_dxgi, d3d11_dep, dxbc_dep, dxvk_dep ], include_directories : dxvk_include_path, install : true, objects : not dxvk_msvc ? 'd3d10_1'+def_spec_ext : [], diff --git a/tests/d3d11/meson.build b/tests/d3d11/meson.build index b0475d167..ac3cf0ff4 100644 --- a/tests/d3d11/meson.build +++ b/tests/d3d11/meson.build @@ -1,4 +1,4 @@ -test_d3d11_deps = [ util_dep, lib_dxgi, lib_d3d11, lib_d3dcompiler ] +test_d3d11_deps = [ util_dep, lib_dxgi, lib_d3d11, lib_d3dcompiler_47 ] executable('d3d11-compute'+exe_ext, files('test_d3d11_compute.cpp'), dependencies : test_d3d11_deps, install : true, override_options: ['cpp_std='+dxvk_cpp_std]) executable('d3d11-formats'+exe_ext, files('test_d3d11_formats.cpp'), dependencies : test_d3d11_deps, install : true, override_options: ['cpp_std='+dxvk_cpp_std]) diff --git a/tests/dxbc/meson.build b/tests/dxbc/meson.build index 86d667d82..237822274 100644 --- a/tests/dxbc/meson.build +++ b/tests/dxbc/meson.build @@ -1,6 +1,6 @@ test_dxbc_deps = [ dxbc_dep, dxvk_dep ] executable('dxbc-compiler'+exe_ext, files('test_dxbc_compiler.cpp'), dependencies : test_dxbc_deps, install : true, override_options: ['cpp_std='+dxvk_cpp_std]) -#executable('dxbc-disasm'+exe_ext, files('test_dxbc_disasm.cpp'), dependencies : [ test_dxbc_deps, lib_d3dcompiler ], install : true, override_options: ['cpp_std='+dxvk_cpp_std]) -executable('hlsl-compiler'+exe_ext, files('test_hlsl_compiler.cpp'), dependencies : [ test_dxbc_deps, lib_d3dcompiler ], install : true, override_options: ['cpp_std='+dxvk_cpp_std]) +executable('dxbc-disasm'+exe_ext, files('test_dxbc_disasm.cpp'), dependencies : [ test_dxbc_deps, lib_d3dcompiler_47 ], install : true, override_options: ['cpp_std='+dxvk_cpp_std]) +executable('hlsl-compiler'+exe_ext, files('test_hlsl_compiler.cpp'), dependencies : [ test_dxbc_deps, lib_d3dcompiler_47 ], install : true, override_options: ['cpp_std='+dxvk_cpp_std])