summaryrefslogtreecommitdiffstats
path: root/VNFs/DPPD-PROX/meson.build
diff options
context:
space:
mode:
authorXavier Simonart <simonartxavier@gmail.com>2022-02-20 00:50:56 +0000
committerPatrice Buriez <patrice.buriez@chenapan.org>2022-12-26 09:40:40 +0000
commitb950110b2a8a23ac498deef1bebca643f80c38b1 (patch)
tree0df52515cbc3ff8f4af6b4b1bba9e98761bb8bc4 /VNFs/DPPD-PROX/meson.build
parentfb2d81d0e3d0d766f59511df7cf7a5d151674c3b (diff)
Add initial support for DPDK 21.11
Note that this patch simplistically removes some PROX features, because they are not directly supported anymore by DPDK, since rte_eth_devices is now private: - reading and writing NIC register through PROX command line - querying ixgbe HW statistics instead of getting them from DPDK Also adjusted to following DPDK changes: * struct rte_ether_hdr fields renamed: - d_addr -> dst_addr - s_addr -> src_addr * struct rte_eth_rxmode field renamed: - max_rx_pkt_len -> mtu * --master-lcore -> --main-lcore Signed-off-by: Xavier Simonart <simonartxavier@gmail.com> Signed-off-by: Patrice Buriez <patrice.buriez@chenapan.org> Change-Id: I08445b3dd0f7fe471d9bc7cfb557bd3aeb2f50be
Diffstat (limited to 'VNFs/DPPD-PROX/meson.build')
-rw-r--r--VNFs/DPPD-PROX/meson.build18
1 files changed, 13 insertions, 5 deletions
diff --git a/VNFs/DPPD-PROX/meson.build b/VNFs/DPPD-PROX/meson.build
index 564e5b56..4a37ad50 100644
--- a/VNFs/DPPD-PROX/meson.build
+++ b/VNFs/DPPD-PROX/meson.build
@@ -26,6 +26,10 @@ project('dppd-prox', 'C',
cc = meson.get_compiler('c')
# Configure options for prox
+# Grab the DPDK version here "manually" as it is not available in the dpdk_dep
+# object
+dpdk_version = run_command('pkg-config', '--modversion', 'libdpdk').stdout()
+
if get_option('bng_qinq').enabled()
add_project_arguments('-DUSE_QINQ', language: 'c')
endif
@@ -39,7 +43,11 @@ if get_option('prox_stats').enabled()
endif
if get_option('hw_direct_stats').enabled()
+if dpdk_version.version_compare('<21.11.0')
add_project_arguments('-DPROX_HW_DIRECT_STATS', language: 'c')
+else
+ warning('hw_direct_stats not supported on this dpdk version')
+endif
endif
if get_option('dbg')
@@ -132,10 +140,6 @@ deps = [dpdk_dep,
dl_dep,
lua_dep]
-# Grab the DPDK version here "manually" as it is not available in the dpdk_dep
-# object
-dpdk_version = run_command('pkg-config', '--modversion', 'libdpdk').stdout()
-
# Explicitly add these to the dependency list
deps += [cc.find_library('rte_bus_pci', required: true)]
deps += [cc.find_library('rte_bus_vdev', required: true)]
@@ -150,7 +154,7 @@ sources = files(
'task_init.c', 'handle_aggregator.c', 'handle_nop.c', 'handle_irq.c',
'handle_arp.c', 'handle_impair.c', 'handle_lat.c', 'handle_qos.c',
'handle_qinq_decap4.c', 'handle_routing.c', 'handle_untag.c',
- 'handle_mplstag.c', 'handle_qinq_decap6.c', 'rw_reg.c',
+ 'handle_mplstag.c', 'handle_qinq_decap6.c',
'handle_lb_qinq.c', 'handle_lb_pos.c', 'handle_lb_net.c',
'handle_qinq_encap4.c', 'handle_qinq_encap6.c', 'handle_classify.c',
'handle_l2fwd.c', 'handle_swap.c', 'handle_police.c', 'handle_acl.c',
@@ -175,6 +179,10 @@ sources = files(
'stats_cons_cli.c', 'stats_parser.c', 'hash_set.c', 'prox_lua.c',
'prox_malloc.c', 'prox_ipv6.c', 'prox_compat.c', 'handle_nsh.c')
+if dpdk_version.version_compare('<21.11.0')
+sources += files('rw_reg.c')
+endif
+
# Include a couple of source files depending on DPDK support
if cc.find_library('rte_pmd_aesni', required: false).found()
sources += files('handle_esp.c')