build: change default driver installation directory
authorLuca Boccassi <bluca@debian.org>
Tue, 2 Oct 2018 16:20:45 +0000 (17:20 +0100)
committerThomas Monjalon <thomas@monjalon.net>
Sat, 27 Oct 2018 21:22:12 +0000 (23:22 +0200)
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@debian.org>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Timothy Redaelli <tredaelli@redhat.com>
drivers/meson.build
lib/meson.build
meson.build

index 567f4a1..c3c66bb 100644 (file)
@@ -102,10 +102,8 @@ foreach class:driver_classes
                                lib_version = '@0@.1'.format(version)
                                so_version = '@0@'.format(version)
                        else
-                               pver = meson.project_version().split('.')
-                               lib_version = '@0@.@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
index c0cc2d8..bb7f443 100644 (file)
@@ -93,10 +93,8 @@ foreach l:libraries
                                lib_version = '@0@.1'.format(version)
                                so_version = '@0@'.format(version)
                        else
-                               prj_ver = meson.project_version().split('.')
-                               lib_version = '@0@.@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
index b1e6eab..356b497 100644 (file)
@@ -17,7 +17,13 @@ dpdk_drivers = []
 dpdk_extra_ldflags = []
 dpdk_app_link_libraries = []
 
-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@.@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