> -----Original Message-----
> From: Thomas Monjalon <tho...@monjalon.net>
> Sent: Sunday, October 30, 2022 1:08 PM
> To: dev@dpdk.org
> Cc: Alex Vesker <va...@nvidia.com>; ferruh.yi...@amd.com;
> andrew.rybche...@oktetlabs.ru; Raslan Darawsheh <rasl...@nvidia.com>;
> david.march...@redhat.com; Matan Azrad <ma...@nvidia.com>; Slava
> Ovsiienko <viachesl...@nvidia.com>
> Subject: [PATCH v3 2/2] common/mlx5: move build config initialization and
> check
> 
> The variable mlx5_config may be used by other mlx5 drivers and should be
> always initialized.
> By moving its initialization (with configuration file generation), it is made
> consistent for Linux and Windows builds.
> 
> And the check of mlx5_config in net/mlx5 is moved at the top of
> net/mlx5/hws/meson.build so HWS requirements are in the right context.
> 
> Signed-off-by: Thomas Monjalon <tho...@monjalon.net>
> Tested-by: Andrew Rybchenko <andrew.rybche...@oktetlabs.ru>
> Reviewed-by: David Marchand <david.march...@redhat.com>
> Acked-by: Matan Azrad <ma...@nvidia.com>
> ---
>  drivers/common/mlx5/linux/meson.build   | 3 +--
>  drivers/common/mlx5/meson.build         | 2 ++
>  drivers/common/mlx5/windows/meson.build | 4 ----
>  drivers/net/mlx5/hws/meson.build        | 4 ++++
>  drivers/net/mlx5/meson.build            | 4 +---
>  5 files changed, 8 insertions(+), 9 deletions(-)
> 
> diff --git a/drivers/common/mlx5/linux/meson.build
> b/drivers/common/mlx5/linux/meson.build
> index 84e2a1ad8c..7e1575efc8 100644
> --- a/drivers/common/mlx5/linux/meson.build
> +++ b/drivers/common/mlx5/linux/meson.build
> @@ -8,7 +8,6 @@ dlopen_ibverbs = (get_option('ibverbs_link') == 'dlopen')
> LIB_GLUE_BASE = 'librte_common_mlx5_glue.so'
>  LIB_GLUE_VERSION = abi_version
>  LIB_GLUE = LIB_GLUE_BASE + '.' + LIB_GLUE_VERSION -mlx5_config =
> configuration_data()  if dlopen_ibverbs
>      dpdk_conf.set('RTE_IBVERBS_LINK_DLOPEN', 1)
>      cflags += [
> @@ -232,7 +231,6 @@ foreach arg:has_member_args
>      file_prefix = '#include <' + arg[1] + '>'
>      mlx5_config.set(arg[0], cc.has_member(arg[2], arg[3], prefix : 
> file_prefix,
> dependencies: libs))  endforeach -configure_file(output : 'mlx5_autoconf.h',
> configuration : mlx5_config)
> 
>  # Build Glue Library
>  if dlopen_ibverbs
> @@ -243,6 +241,7 @@ if dlopen_ibverbs
>      dlopen_install_dir = [ eal_pmd_path + '-glue' ]
>      dlopen_includes = [global_inc]
>      dlopen_includes += 
> include_directories('../../../../lib/eal/include/generic')
> +    dlopen_includes += include_directories('..')
>      shared_lib = shared_library(
>              dlopen_lib_name,
>              dlopen_sources,
> diff --git a/drivers/common/mlx5/meson.build
> b/drivers/common/mlx5/meson.build index 6ddbde7e8f..60ccd95cbc
> 100644
> --- a/drivers/common/mlx5/meson.build
> +++ b/drivers/common/mlx5/meson.build
> @@ -37,4 +37,6 @@ else
>      cflags += [ '-UPEDANTIC' ]
>  endif
> 
> +mlx5_config = configuration_data()
>  subdir(exec_env)
> +configure_file(output: 'mlx5_autoconf.h', configuration: mlx5_config)
> diff --git a/drivers/common/mlx5/windows/meson.build
> b/drivers/common/mlx5/windows/meson.build
> index edbbaa9ae1..cc486014a8 100644
> --- a/drivers/common/mlx5/windows/meson.build
> +++ b/drivers/common/mlx5/windows/meson.build
> @@ -39,7 +39,3 @@ if get_option('buildtype').contains('debug')
>  else
>      cflags += [ '-UPEDANTIC' ]
>  endif
> -
> -# Generate an empty mlx5_autoconf.h file for compatibility with Linux -
> config = configuration_data() -configure_file(output : 'mlx5_autoconf.h',
> configuration : config) diff --git a/drivers/net/mlx5/hws/meson.build
> b/drivers/net/mlx5/hws/meson.build
> index d2bb864fd2..38776d5163 100644
> --- a/drivers/net/mlx5/hws/meson.build
> +++ b/drivers/net/mlx5/hws/meson.build
> @@ -1,6 +1,10 @@
>  # SPDX-License-Identifier: BSD-3-Clause  # Copyright (c) 2022 NVIDIA
> Corporation & Affiliates
> 
> +if not (is_linux and mlx5_config.get('HAVE_IBV_FLOW_DV_SUPPORT', false))
> +    subdir_done()
> +endif
> +
>  includes += include_directories('.')
>  sources += files(
>          'mlx5dr_context.c',
> diff --git a/drivers/net/mlx5/meson.build b/drivers/net/mlx5/meson.build
> index fa15158039..f1aab18f82 100644
> --- a/drivers/net/mlx5/meson.build
> +++ b/drivers/net/mlx5/meson.build
> @@ -78,6 +78,4 @@ testpmd_sources += files('mlx5_testpmd.c')
> 
>  subdir(exec_env)
> 
> -if (is_linux and mlx5_config.get('HAVE_IBV_FLOW_DV_SUPPORT', false))
> -    subdir('hws')
> -endif
> +subdir('hws')
> --
> 2.36.1

Acked-by: Alex Vesker <va...@nvidia.com>

Reply via email to