dpdk: fix cryptodev compile
Type: fix
VPP 20.09 used new cryptodev raw APIs in cryptodev_dp_api.c
provided by the DPDK 20.08 patch attached.
The APIs has been updated between now and then and will cause
Cryptodev engine compile failed when bumping DPDK to 20.11
due to the incompatible API formats.
As a temp solution to successfully bumping DPDK version this patch
makes the newer DPDK version using old cryptodev APIs by compiling
cryptodev.c instead.
Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com>
Change-Id: I3db607c8c1b2b028166a750c4d66dfc6ff18814c
diff --git a/src/plugins/dpdk/CMakeLists.txt b/src/plugins/dpdk/CMakeLists.txt
index 7982940..e662dc9 100644
--- a/src/plugins/dpdk/CMakeLists.txt
+++ b/src/plugins/dpdk/CMakeLists.txt
@@ -99,49 +99,12 @@
# DPDK plugin
##############################################################################
-if (${DPDK_VERSION} VERSION_LESS "20.8.0")
-add_vpp_plugin(dpdk
- SOURCES
- buffer.c
- main.c
- thread.c
- device/cli.c
- device/common.c
- device/device.c
- device/flow.c
- device/format.c
- device/init.c
- device/node.c
- ipsec/cli.c
- ipsec/crypto_node.c
- ipsec/esp_decrypt.c
- ipsec/esp_encrypt.c
- ipsec/ipsec.c
- cryptodev/cryptodev.c
-
- MULTIARCH_SOURCES
- buffer.c
- device/device.c
- device/node.c
- ipsec/crypto_node.c
- ipsec/esp_decrypt.c
- ipsec/esp_encrypt.c
-
- INSTALL_HEADERS
- device/dpdk.h
- ipsec/ipsec.h
-
- LINK_FLAGS
- "${DPDK_LINK_FLAGS}"
-
- LINK_LIBRARIES
- ${DPDK_LINK_LIBRARIES}
-
- COMPONENT
- vpp-plugin-dpdk
-)
-
+if (${DPDK_VERSION} VERSION_EQUAL "20.8.0")
+ set(DPDK_CRYPTODEV_SOURCE cryptodev_dp_api)
else ()
+ set(DPDK_CRYPTODEV_SOURCE cryptodev)
+endif ()
+
add_vpp_plugin(dpdk
SOURCES
buffer.c
@@ -159,7 +122,7 @@
ipsec/esp_decrypt.c
ipsec/esp_encrypt.c
ipsec/ipsec.c
- cryptodev/cryptodev_dp_api.c
+ cryptodev/${DPDK_CRYPTODEV_SOURCE}.c
MULTIARCH_SOURCES
buffer.c
@@ -182,5 +145,3 @@
COMPONENT
vpp-plugin-dpdk
)
-
-endif ()
\ No newline at end of file