From 3740ffb59c89d8d879b1e0c1aed32c389dd82a35 Mon Sep 17 00:00:00 2001 From: Dylan Baker Date: Tue, 22 May 2018 10:54:12 -0700 Subject: [PATCH] meson: add switches for SWR with MSVC This makes two changes for SWR, The first is that it reorders the arguments to try to put the ICL ones first. This is required to support older versions of meson that don't add enough "error in this case" switches to ICL, which causes it to happy accept -mavx (for example) even though it doesn't support them, resulting in compilation failures. The second is to fix the names of the libraries, setting the soversion to '' will result in .dll, instead of -0.dll. Since these are not versioned dll's, but implement an internal API we should communicate that. It's also what scons does. Acked-by: Kristian H. Kristensen --- src/gallium/drivers/swr/meson.build | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/gallium/drivers/swr/meson.build b/src/gallium/drivers/swr/meson.build index 6587475..416ac6f 100644 --- a/src/gallium/drivers/swr/meson.build +++ b/src/gallium/drivers/swr/meson.build @@ -194,7 +194,8 @@ swr_arch_libs = [] swr_arch_defines = [] swr_avx_args = cpp.first_supported_argument( - '-mavx', '-target-cpu=sandybridge', '-march=core-avx', '-tp=sandybridge', + '-target-cpu=sandybridge', '-mavx', '-march=core-avx', '-tp=sandybridge', + '/arch:AVX', ) if swr_avx_args == [] error('Cannot find AVX support for swr. (these are required for SWR an all architectures.)') @@ -209,13 +210,14 @@ if with_swr_arches.contains('avx') include_directories : [swr_incs], dependencies : [dep_thread, dep_llvm], version : '0.0.0', + soversion : host_machine.system() == 'windows' ? '' : '0', install : true, ) endif if with_swr_arches.contains('avx2') swr_avx2_args = cpp.first_supported_argument( - '-march=core-avx2', '-target-cpu=haswell', '-tp=haswell', + '-target-cpu=haswell', '-march=core-avx2', '-tp=haswell', '/arch:AVX2', ) if swr_avx2_args == [] if cpp.has_argument(['-mavx2', '-mfma', '-mbmi2', '-mf16c']) @@ -234,6 +236,7 @@ if with_swr_arches.contains('avx2') include_directories : [swr_incs], dependencies : [dep_thread, dep_llvm], version : '0.0.0', + soversion : host_machine.system() == 'windows' ? '' : '0', install : true, ) endif @@ -258,6 +261,7 @@ if with_swr_arches.contains('knl') include_directories : [swr_incs], dependencies : [dep_thread, dep_llvm], version : '0.0.0', + soversion : host_machine.system() == 'windows' ? '' : '0', install : true, ) endif @@ -279,6 +283,7 @@ if with_swr_arches.contains('skx') include_directories : [swr_incs], dependencies : [dep_thread, dep_llvm], version : '0.0.0', + soversion : host_machine.system() == 'windows' ? '' : '0', install : true, ) endif -- 2.7.4