[dpdk-dev] [PATCH] build: don't parse build configs of explicitly disabled drivers
Bruce Richardson
bruce.richardson at intel.com
Mon Mar 30 15:52:38 CEST 2020
On Thu, Mar 26, 2020 at 10:22:59AM +0100, Darek Stojaczyk wrote:
> Even when a PMD was disabled with meson's disable_drivers option
> its config file was still being parsed. Some of the PMD configs
> attempt to find a library they depend on and parse its header files
> with certain assumptions. If the library is found, but it's simply
> too old to contain the necessary header files, the meson build
> fails and it can only be fixed by either updating that library, or
> expanding the meson script for the faulty PMD.
>
> While the latter should be still done for the sake of DPDK quality,
> an intermediate solution would be to skip building the faulty PMD
> - there's a chance we don't need it. That's what this patch allows.
>
> Signed-off-by: Darek Stojaczyk <dariusz.stojaczyk at intel.com>
> ---
> drivers/meson.build | 9 ++++++---
> 1 file changed, 6 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/meson.build b/drivers/meson.build
> index 5502bf9924..a13c62a3b0 100644
> --- a/drivers/meson.build
> +++ b/drivers/meson.build
> @@ -60,9 +60,6 @@ foreach class:dpdk_driver_classes
> ext_deps = []
> pkgconfig_extra_libs = []
>
> - # pull in driver directory which should assign to each of the above
> - subdir(drv_path)
> -
> # skip disabled drivers. For meson 0.49 change this to use
> # "in" keyword
> foreach disable_path: disabled_drivers
> @@ -71,6 +68,12 @@ foreach class:dpdk_driver_classes
> reason = 'Explicitly disabled via build config'
> endif
> endforeach
> +
> + if build
> + # pull in driver directory which should update all the local variables
> + subdir(drv_path)
> + endif
> +
Looking at this code and the meson docs again, I think this block and
previous can be simplified by using the array "contains()" method to avoid
the loop.
if disabled_drivers.contains(drv_path)
build = false
reson = '....'
else
# pull in driver ...
subdir(drv_path)
endif
Regards,
/Bruce
More information about the dev
mailing list