[dpdk-dev] [PATCH v3 1/2] build: change default PMD installation subdir to dpdk/pmds-XX.YY

Luca Boccassi bluca at debian.org
Tue Oct 2 17:25:55 CEST 2018


As part of the effort of consolidating the DPDK installation bits and
pieces across distros, set the default directory of lib/ where PMDs get
installed to dpdk/pmds-XX.YY. It's necessary to have a versioned
subdirectory as multiple ABI revisions might be installed at the same
time, so having a fixed name will cause trouble with the autoload
feature.
Small refactor with parsing and saving the major version to a variable,
since it's now used in 3 different places.

Signed-off-by: Luca Boccassi <bluca at debian.org>
---
 drivers/meson.build | 6 ++----
 lib/meson.build     | 6 ++----
 meson.build         | 8 +++++++-
 3 files changed, 11 insertions(+), 9 deletions(-)

diff --git a/drivers/meson.build b/drivers/meson.build
index 47b4215a30..3a6c4bf656 100644
--- a/drivers/meson.build
+++ b/drivers/meson.build
@@ -98,10 +98,8 @@ foreach class:driver_classes
 				lib_version = '@0 at .1'.format(version)
 				so_version = '@0@'.format(version)
 			else
-				pver = meson.project_version().split('.')
-				lib_version = '@0 at .@1@'.format(pver.get(0),
-						pver.get(1))
-				so_version = lib_version
+				lib_version = major_version
+				so_version = major_version
 			endif
 
 			# now build the static driver
diff --git a/lib/meson.build b/lib/meson.build
index 3acc67e6ed..bed492a4ec 100644
--- a/lib/meson.build
+++ b/lib/meson.build
@@ -88,10 +88,8 @@ foreach l:libraries
 				lib_version = '@0 at .1'.format(version)
 				so_version = '@0@'.format(version)
 			else
-				prj_ver = meson.project_version().split('.')
-				lib_version = '@0 at .@1@'.format(
-						prj_ver.get(0), prj_ver.get(1))
-				so_version = lib_version
+				lib_version = major_version
+				so_version = major_version
 			endif
 
 			# first build static lib
diff --git a/meson.build b/meson.build
index c9af33532d..4bd04b9de3 100644
--- a/meson.build
+++ b/meson.build
@@ -15,7 +15,13 @@ dpdk_libraries = []
 dpdk_drivers = []
 dpdk_extra_ldflags = []
 
-driver_install_path = join_paths(get_option('libdir'), 'dpdk/drivers')
+# set the major version, which might be used by drivers and libraries
+# depending on the configuration options
+pver = meson.project_version().split('.')
+major_version = '@0 at .@1@'.format(pver.get(0), pver.get(1))
+
+driver_install_path = join_paths(get_option('libdir'), 'dpdk',
+	'pmds-' + major_version)
 eal_pmd_path = join_paths(get_option('prefix'), driver_install_path)
 
 # configure the build, and make sure configs here and in config folder are
-- 
2.19.0



More information about the dev mailing list