summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDylan Baker <dylan@pnwbakers.com>2018-05-22 10:54:12 -0700
committerDylan Baker <dylan@pnwbakers.com>2019-10-10 16:33:04 -0700
commit3740ffb59c89d8d879b1e0c1aed32c389dd82a35 (patch)
tree77b1f6d43d52ee123f62a8fc74f544726f47550c
parentd2cb0a59cedbc9f7b54b68c36e025f0c948ad846 (diff)
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 <lib>.dll, instead of <lib>-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 <hoegsberg@google.com>
-rw-r--r--src/gallium/drivers/swr/meson.build9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/gallium/drivers/swr/meson.build b/src/gallium/drivers/swr/meson.build
index 65874756374..416ac6fdd23 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