if user gives option -Ddrivers_install_subdir= or
-Ddrivers_install_subdir=. to install all the PMDs in
parent directory, The post installation script
"symlink-drivers-solibs.sh" can create invalid library file
named 'librte_*.so*' or meson installation errors:

ln: './librte_*' and './librte_*' are the same file
FAILED: install script '/bin/sh /home/nxa12342/upstream/dpdk/config/.
/buildtools/symlink-drivers-solibs.sh lib/x86_64-linux-gnu .' exit code 1,
stopped
FAILED: meson-install

This patch removes this post-install script execution to symlink
the PMDs libraries when no sub directory is given.

Signed-off-by: Gagandeep Singh <g.si...@nxp.com>
---
 config/meson.build | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/config/meson.build b/config/meson.build
index 8c8b019c25..4c1c6848ad 100644
--- a/config/meson.build
+++ b/config/meson.build
@@ -95,8 +95,11 @@ eal_pmd_path = join_paths(get_option('prefix'), 
driver_install_path)
 # e.g. ixgbe depends on librte_bus_pci. This means that the bus drivers need
 # to be in the library path, so symlink the drivers from the main lib 
directory.
 if not is_windows
-    meson.add_install_script('../buildtools/symlink-drivers-solibs.sh',
-            get_option('libdir'), pmd_subdir_opt)
+    # skip symlink-drivers-solibs.sh execution on no sub directory
+    if pmd_subdir_opt != '' and pmd_subdir_opt != '.'
+       meson.add_install_script('../buildtools/symlink-drivers-solibs.sh',
+               get_option('libdir'), pmd_subdir_opt)
+    endif
 elif meson.version().version_compare('>=0.55.0')
     # 0.55.0 is required to use external program with add_install_script
     meson.add_install_script(py3,
-- 
2.25.1

Reply via email to