build: fix essential drivers in disable list
The PCI and vdev bus drivers cannot be disabled for DPDK builds and special logic is put in place to not skip them when they are specified in the disable list. This logic is broken though, as the inclusion of the driver-specific meson.build file is only included in the "else" leg of the condition check. This means that when they are specified as disabled the PCI and vdev buses are not disabled, but neither are their source files compiled. Fix this by moving the "subdir()" call into the next "if build" block, ensuring that if not disabled the sources are always included. To take account of the fact that the subdir call could itself disable the driver, we add a break call into the following loop to ensure we quickly fall through to the following block which stops processing appropriately if the driver is disabled. Fixes: 2e33309ebe03 ("config: enable/disable drivers in Arm builds") Cc: stable@dpdk.org Signed-off-by: Bruce Richardson <bruce.richardson@intel.com> Tested-by: Radu Nicolau <radu.nicolau@intel.com> Acked-by: Radu Nicolau <radu.nicolau@intel.com>
This commit is contained in:
parent
1c91ed5cdd
commit
0e837e584e
@ -109,16 +109,19 @@ foreach subpath:subdirs
|
||||
build = false
|
||||
reason = 'explicitly disabled via build config'
|
||||
endif
|
||||
else
|
||||
# pull in driver directory which should update all the local variables
|
||||
subdir(drv_path)
|
||||
endif
|
||||
|
||||
if build
|
||||
# pull in driver directory which should update all the local variables
|
||||
subdir(drv_path)
|
||||
|
||||
# get dependency objs from strings
|
||||
shared_deps = ext_deps
|
||||
static_deps = ext_deps
|
||||
foreach d:deps
|
||||
if not build
|
||||
break
|
||||
endif
|
||||
if not is_variable('shared_rte_' + d)
|
||||
build = false
|
||||
reason = 'missing internal dependency, "@0@"'.format(d)
|
||||
|
Loading…
x
Reference in New Issue
Block a user