[v4,2/2] build: add drivers_install_subdir meson option

Message ID 20181002162046.13668-2-bluca@debian.org (mailing list archive)
State Accepted, archived
Delegated to: Thomas Monjalon
Headers
Series [v4,1/2] build: change default PMD installation subdir to dpdk/pmds-XX.YY |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK

Commit Message

Luca Boccassi Oct. 2, 2018, 4:20 p.m. UTC
  Allow users and packagers to override the default dpdk/drivers
subdirectory where the PMDs get installed under $lib.

Signed-off-by: Luca Boccassi <bluca@debian.org>
---
v3: changed default value to <VERSION> and use string.contains rather
    than exact equivalence
v4: further optimisations suggested by review

 meson.build       | 7 +++++--
 meson_options.txt | 2 ++
 2 files changed, 7 insertions(+), 2 deletions(-)
  

Comments

Bruce Richardson Oct. 2, 2018, 4:30 p.m. UTC | #1
On Tue, Oct 02, 2018 at 05:20:46PM +0100, Luca Boccassi wrote:
> Allow users and packagers to override the default dpdk/drivers
> subdirectory where the PMDs get installed under $lib.
> 
> Signed-off-by: Luca Boccassi <bluca@debian.org>
> ---
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
  
Timothy Redaelli Oct. 5, 2018, 4 p.m. UTC | #2
On Tue,  2 Oct 2018 17:20:46 +0100
Luca Boccassi <bluca@debian.org> wrote:

> Allow users and packagers to override the default dpdk/drivers
> subdirectory where the PMDs get installed under $lib.
> 
> Signed-off-by: Luca Boccassi <bluca@debian.org>
> ---

Acked-by: Timothy Redaelli <tredaelli@redhat.com>
  

Patch

diff --git a/meson.build b/meson.build
index 4bd04b9de3..11697861c4 100644
--- a/meson.build
+++ b/meson.build
@@ -20,8 +20,11 @@  dpdk_extra_ldflags = []
 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)
+pmd_subdir_opt = get_option('drivers_install_subdir')
+if pmd_subdir_opt.contains('<VERSION>')
+	pmd_subdir_opt = major_version.join(pmd_subdir_opt.split('<VERSION>'))
+endif
+driver_install_path = join_paths(get_option('libdir'), pmd_subdir_opt)
 eal_pmd_path = join_paths(get_option('prefix'), driver_install_path)
 
 # configure the build, and make sure configs here and in config folder are
diff --git a/meson_options.txt b/meson_options.txt
index d14bde892d..10b5416151 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -1,5 +1,7 @@ 
 option('allow_invalid_socket_id', type: 'boolean', value: false,
 	description: 'allow out-of-range NUMA socket id\'s for platforms that don\'t report the value correctly')
+option('drivers_install_subdir', type: 'string', value: 'dpdk/pmds-<VERSION>',
+	description: 'Subdirectory of libdir where to install PMDs. Defaults to using a versioned subdirectory.')
 option('enable_driver_mlx_glue', type: 'boolean', value: false,
 	description: 'Enable glue library for Mellanox PMDs')
 option('enable_kmods', type: 'boolean', value: true,