[dpdk-dev] [PATCH v8 6/9] drivers: fix incorrect meson import folder for Windows

talshn at mellanox.com talshn at mellanox.com
Mon Jun 22 09:55:26 CEST 2020


From: Tal Shnaiderman <talshn at mellanox.com>

import library (/IMPLIB) in meson.build should use
the 'drivers' and not 'libs' folder.

The error is: fatal error LNK1149: output filename matches input filename.
The fix uses the correct folder.

Fixes: 5ed3766981 ("drivers: process shared link dependencies as for libs")

Signed-off-by: Tal Shnaiderman <talshn at mellanox.com>
---
 drivers/meson.build | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/drivers/meson.build b/drivers/meson.build
index f4b6cbf3a6..dea0ba2cca 100644
--- a/drivers/meson.build
+++ b/drivers/meson.build
@@ -153,7 +153,7 @@ foreach class:dpdk_driver_classes
 			version_map = '@0@/@1@/@2 at _version.map'.format(
 					meson.current_source_dir(),
 					drv_path, lib_name)
-			implib = dir_name + '.dll.a'
+			implib = 'lib' + lib_name + '.dll.a'
 
 			def_file = custom_target(lib_name + '_def',
 				command: [map_to_def_cmd, '@INPUT@', '@OUTPUT@'],
@@ -161,8 +161,12 @@ foreach class:dpdk_driver_classes
 				output: '@0 at _exports.def'.format(lib_name))
 			lk_deps = [version_map, def_file]
 			if is_windows
-				lk_args = ['-Wl,/def:' + def_file.full_path(),
-					'-Wl,/implib:lib\\' + implib]
+				if is_ms_linker
+					lk_args = ['-Wl,/def:' + def_file.full_path(),
+						'-Wl,/implib:drivers\\' + implib]
+				else
+					lk_args = []
+				endif
 			else
 				lk_args = ['-Wl,--version-script=' + version_map]
 				# on unix systems check the output of the
-- 
2.16.1.windows.4



More information about the dev mailing list