When compiling "drivers" directory with MSVC the errors below popped up:
1) LINK : warning LNK4044: unrecognized option '/Wl,/def:V:\github\dpdk\build\drivers\rte_bus_vdev_exports.def'; ignored 2) cl : Command line warning D9002 : ignoring unknown option '-fno-asynchronous-unwind-tables' The fix is to remove the unnecessary/invalid option when using MSVC. Signed-off-by: Andre Muezerie <andre...@linux.microsoft.com> --- drivers/meson.build | 6 +++++- drivers/net/intel/i40e/meson.build | 2 +- drivers/net/intel/iavf/meson.build | 2 +- drivers/net/intel/ice/meson.build | 2 +- drivers/net/intel/ixgbe/meson.build | 2 +- 5 files changed, 9 insertions(+), 5 deletions(-) diff --git a/drivers/meson.build b/drivers/meson.build index 05391a575d..fc7f7eed8c 100644 --- a/drivers/meson.build +++ b/drivers/meson.build @@ -289,7 +289,11 @@ foreach subpath:subdirs output: '@0@_exports.def'.format(lib_name)) lk_deps += [def_file] - lk_args = ['-Wl,/def:' + def_file.full_path()] + if is_ms_compiler + lk_args = ['/def:' + def_file.full_path()] + else + lk_args = ['-Wl,/def:' + def_file.full_path()] + endif else mingw_map = custom_target(lib_name + '_mingw', command: [map_to_win_cmd, '@INPUT@', '@OUTPUT@'], diff --git a/drivers/net/intel/i40e/meson.build b/drivers/net/intel/i40e/meson.build index 2973ed1a01..fce5d997ed 100644 --- a/drivers/net/intel/i40e/meson.build +++ b/drivers/net/intel/i40e/meson.build @@ -41,7 +41,7 @@ includes += include_directories('base') if arch_subdir == 'x86' sources += files('i40e_rxtx_vec_sse.c') - if is_windows and cc.get_id() != 'clang' + if is_windows and cc.get_id() == 'gcc' cflags += ['-fno-asynchronous-unwind-tables'] endif diff --git a/drivers/net/intel/iavf/meson.build b/drivers/net/intel/iavf/meson.build index f7eac7c57a..d801527ada 100644 --- a/drivers/net/intel/iavf/meson.build +++ b/drivers/net/intel/iavf/meson.build @@ -29,7 +29,7 @@ includes += include_directories('base') if arch_subdir == 'x86' sources += files('iavf_rxtx_vec_sse.c') - if is_windows and cc.get_id() != 'clang' + if is_windows and cc.get_id() == 'gcc' cflags += ['-fno-asynchronous-unwind-tables'] endif diff --git a/drivers/net/intel/ice/meson.build b/drivers/net/intel/ice/meson.build index cbdf38c1c4..a28d62173c 100644 --- a/drivers/net/intel/ice/meson.build +++ b/drivers/net/intel/ice/meson.build @@ -35,7 +35,7 @@ endif if arch_subdir == 'x86' sources += files('ice_rxtx_vec_sse.c') - if is_windows and cc.get_id() != 'clang' + if is_windows and cc.get_id() == 'gcc' cflags += ['-fno-asynchronous-unwind-tables'] endif diff --git a/drivers/net/intel/ixgbe/meson.build b/drivers/net/intel/ixgbe/meson.build index 0ae12dd5ff..3553b0ffe1 100644 --- a/drivers/net/intel/ixgbe/meson.build +++ b/drivers/net/intel/ixgbe/meson.build @@ -27,7 +27,7 @@ deps += ['hash', 'security'] if arch_subdir == 'x86' sources += files('ixgbe_rxtx_vec_sse.c') sources += files('ixgbe_recycle_mbufs_vec_common.c') - if is_windows and cc.get_id() != 'clang' + if is_windows and cc.get_id() == 'gcc' cflags += ['-fno-asynchronous-unwind-tables'] endif elif arch_subdir == 'arm' -- 2.48.1.vfs.0.1