[dpdk-dev] net/i40e: fix missing deps for avx2 code in meson

Message ID 20180131170905.130702-1-bruce.richardson@intel.com (mailing list archive)
State Accepted, archived
Delegated to: Bruce Richardson
Headers

Checks

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

Commit Message

Bruce Richardson Jan. 31, 2018, 5:09 p.m. UTC
  The AVX2 code path includes files from the ethdev, hash and kvargs libs.
These are not listed as dependencies in the case where AVX2 is not in
the default instruction set for the build e.g. machine=nehalem. This
leads to compiler errors as the header files needed cannot be found.

Fixes: e940646b20fa ("drivers/net: build Intel NIC PMDs with meson")

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
---
 drivers/net/i40e/meson.build | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
  

Comments

Bruce Richardson Feb. 1, 2018, 11:54 a.m. UTC | #1
On Wed, Jan 31, 2018 at 05:09:05PM +0000, Bruce Richardson wrote:
> The AVX2 code path includes files from the ethdev, hash and kvargs libs.
> These are not listed as dependencies in the case where AVX2 is not in
> the default instruction set for the build e.g. machine=nehalem. This
> leads to compiler errors as the header files needed cannot be found.
> 
> Fixes: e940646b20fa ("drivers/net: build Intel NIC PMDs with meson")
> 
> Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
> ---
Bug fix applied to dpdk-next-build

/Bruce
  

Patch

diff --git a/drivers/net/i40e/meson.build b/drivers/net/i40e/meson.build
index 504bfdd0c..8764b0e5b 100644
--- a/drivers/net/i40e/meson.build
+++ b/drivers/net/i40e/meson.build
@@ -34,7 +34,8 @@  if arch_subdir == 'x86'
 	elif cc.has_argument('-mavx2')
 		i40e_avx2_lib = static_library('i40e_avx2_lib',
 				'i40e_rxtx_vec_avx2.c',
-				dependencies: static_rte_eal,
+				dependencies: [static_rte_ethdev,
+					static_rte_kvargs, static_rte_hash],
 				c_args: '-mavx2')
 		objs += i40e_avx2_lib.extract_objects('i40e_rxtx_vec_avx2.c')
 	endif