diff options
Diffstat (limited to 'support/CMakeLists.txt')
| -rw-r--r-- | support/CMakeLists.txt | 44 |
1 files changed, 24 insertions, 20 deletions
diff --git a/support/CMakeLists.txt b/support/CMakeLists.txt index 82da9d9..7da7ce8 100644 --- a/support/CMakeLists.txt +++ b/support/CMakeLists.txt @@ -104,25 +104,28 @@ set_property(TARGET libcmocka PROPERTY IMPORTED_LOCATION ${INSTALL_DIR}/lib64/li set_property(TARGET libcmocka PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${INSTALL_DIR}/include) # Merge multiple patches into one patch file -set(DPDK_PATCH_DIR ${CMAKE_CURRENT_SOURCE_DIR}/dpdk) +set(DPDK_VERSION 23.11.1) +set(DPDK_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/dpdk) +set(DPDK_PATCH_DIR ${DPDK_SOURCE_DIR}) set(MERGED_PATCH_FILE "${CMAKE_BINARY_DIR}/merged_patches.patch") -set(DPDP_PATCH_FILES ${DPDK_PATCH_DIR}/dpdk-21.11.4-memzone-namesize.patch - ${DPDK_PATCH_DIR}/dpdk-21.11.4-fm10k-rxtx-vec.patch - ${DPDK_PATCH_DIR}/dpdk-21.11.4-mempool-ops-get-count.patch - ${DPDK_PATCH_DIR}/dpdk-21.11.4-bypass-flow-err-func.patch - ${DPDK_PATCH_DIR}/dpdk-21.11.4-fix-dup-msl-name-sec-process.patch - ${DPDK_PATCH_DIR}/dpdk-21.11.4-fix-af-packet-run-as-slave-of-bond.patch - ${DPDK_PATCH_DIR}/dpdk-21.11.4-mp-max-fds.patch - ${DPDK_PATCH_DIR}/dpdk-21.11.4-dpdk-devbind-dump.patch - ${DPDK_PATCH_DIR}/dpdk-21.11.4-dpdk-hugepages-path.patch - ${DPDK_PATCH_DIR}/dpdk-21.11.4-dpdk-pcapng-path.patch - ${DPDK_PATCH_DIR}/dpdk-21.11.4-extend-max-virtqueue-pairs.patch - ${DPDK_PATCH_DIR}/dpdk-21.11.4-dpdk-pdum-offset-c.patch - ${DPDK_PATCH_DIR}/dpdk-21.11.4-dpdk-pdum-offset-h.patch - ${DPDK_PATCH_DIR}/dpdk-21.11.4-dpdk-pdum-offset-app.patch - ${DPDK_PATCH_DIR}/dpdk-21.11.4-macro-adjust.patch +set(DPDK_PATCH_FILES ${DPDK_PATCH_DIR}/dpdk-${DPDK_VERSION}-memzone-namesize.patch + ${DPDK_PATCH_DIR}/dpdk-${DPDK_VERSION}-fm10k-rxtx-vec.patch + ${DPDK_PATCH_DIR}/dpdk-${DPDK_VERSION}-mempool-ops-get-count.patch + ${DPDK_PATCH_DIR}/dpdk-${DPDK_VERSION}-bypass-flow-err-func.patch + ${DPDK_PATCH_DIR}/dpdk-${DPDK_VERSION}-fix-dup-msl-name-sec-process.patch + ${DPDK_PATCH_DIR}/dpdk-${DPDK_VERSION}-fix-af-packet-run-as-slave-of-bond.patch + ${DPDK_PATCH_DIR}/dpdk-${DPDK_VERSION}-mp-max-fds.patch + ${DPDK_PATCH_DIR}/dpdk-${DPDK_VERSION}-dpdk-devbind-dump.patch + ${DPDK_PATCH_DIR}/dpdk-${DPDK_VERSION}-dpdk-hugepages-path.patch + ${DPDK_PATCH_DIR}/dpdk-${DPDK_VERSION}-dpdk-pcapng-path.patch + ${DPDK_PATCH_DIR}/dpdk-${DPDK_VERSION}-dpdk-pdum-offset-c.patch + ${DPDK_PATCH_DIR}/dpdk-${DPDK_VERSION}-dpdk-pdum-offset-h.patch + ${DPDK_PATCH_DIR}/dpdk-${DPDK_VERSION}-dpdk-pdum-offset-app.patch + ${DPDK_PATCH_DIR}/dpdk-${DPDK_VERSION}-mlx5_glue_dlopen_info.patch + ${DPDK_PATCH_DIR}/dpdk-${DPDK_VERSION}-revert-fix-devargs-in-secondary-process.patch + ${DPDK_PATCH_DIR}/dpdk-${DPDK_VERSION}-fix-legacy_mem_init.patch ) -execute_process(COMMAND cat ${DPDP_PATCH_FILES} OUTPUT_FILE ${MERGED_PATCH_FILE}) +execute_process(COMMAND cat ${DPDK_PATCH_FILES} OUTPUT_FILE ${MERGED_PATCH_FILE}) if(CMAKE_BUILD_TYPE STREQUAL "Debug") set(DPDK_BUILD_TYPE debug) @@ -140,10 +143,11 @@ crypto/bcmfs,crypto/ccp,crypto/nitrox,crypto/null,crypto/openssl,crypto/schedule # Although default_library=static has been set, both dynamic and static libraries are compiled. a little strange ExternalProject_Add(dpdk PREFIX dpdk - URL ${CMAKE_CURRENT_SOURCE_DIR}/dpdk/dpdk-21.11.4.tar.xz - URL_MD5 b24201da07d3fd87cacc2aa03586aed3 + URL ${DPDK_SOURCE_DIR}/dpdk-${DPDK_VERSION}.tar.xz + URL_MD5 382d5fdd8ecb1d8e0be6d70dfc5eec96 PATCH_COMMAND COMMAND patch -Ns -p1 -i ${MERGED_PATCH_FILE} + COMMAND ${CMAKE_COMMAND} -E chdir <SOURCE_DIR> bash ${DPDK_SOURCE_DIR}/dpdk-config-set.sh CONFIGURE_COMMAND COMMAND meson -Dmax_lcores=256 -Dc_args=-DRTE_ETHDEV_PROFILE_WITH_VTUNE -Ddisable_drivers=${DPDK_MESON_DISABLED_DRIVERS} -Dprefix=<INSTALL_DIR> -Dcpu_instruction_set=${MACHINE} -Dibverbs_link=dlopen -Dbuildtype=${DPDK_BUILD_TYPE} build BUILD_COMMAND ${CMAKE_COMMAND} -E chdir <SOURCE_DIR>/build ninja @@ -166,5 +170,5 @@ set_target_properties(libdpdk PROPERTIES IMPORTED_LOCATION ${M_LIB} INTERFACE_LINK_DIRECTORIES ${INSTALL_DIR}/lib64 INTERFACE_INCLUDE_DIRECTORIES ${INSTALL_DIR}/include - INTERFACE_LINK_LIBRARIES "-Wl,--whole-archive;${INSTALL_DIR}/lib64/libdpdk.a;-Wl,--no-whole-archive;rt;m;dl;pcap;numa;ibverbs;mlx5" + INTERFACE_LINK_LIBRARIES "-Wl,--whole-archive;${INSTALL_DIR}/lib64/libdpdk.a;-Wl,--no-whole-archive;rt;m;dl;pcap;numa;ibverbs;mlx5;mtcr_ul" ) |
