# Install DPDK Library, Modules, Scripts etc. # to MR_INSTALL # find dpdk location find_package(DPDK REQUIRED) # locate and install kernel module exec_program(uname ARGS -r OUTPUT_VARIABLE KERNEL_VERSION) set(KMOD_FROM_PATH ${DPDK_LIBRARY_DIR}/modules/${KERNEL_VERSION}/extra/dpdk) set(KMOD_INSTALL_PATH lib/modules/${KERNEL_VERSION}/extra/mrzcpd) install(DIRECTORY ${DPDK_LIBRARY_DIR}/modules/ DESTINATION lib/modules/ COMPONENT Program) set(TOOLS_INSTALL_PATH bin) if(EXISTS ${DPDK_ROOT_DIR}/share/dpdk/tools/dpdk_nic_bind.py) set(MR_BIND_TOOLS_FROM ${DPDK_ROOT_DIR}/share/dpdk/tools/dpdk_nic_bind.py) endif() if(EXISTS ${DPDK_ROOT_DIR}/share/dpdk/tools/dpdk-devbind.py) set(MR_BIND_TOOLS_FROM ${DPDK_ROOT_DIR}/share/dpdk/tools/dpdk-devbind.py) endif() if(EXISTS ${DPDK_ROOT_DIR}/share/dpdk/usertools/dpdk_nic_bind.py) set(MR_BIND_TOOLS_FROM ${DPDK_ROOT_DIR}/share/dpdk/usertools/dpdk_nic_bind.py) endif() if(EXISTS ${DPDK_ROOT_DIR}/share/dpdk/usertools/dpdk-devbind.py) set(MR_BIND_TOOLS_FROM ${DPDK_ROOT_DIR}/share/dpdk/usertools/dpdk-devbind.py) endif() install(PROGRAMS ${MR_BIND_TOOLS_FROM} DESTINATION ${TOOLS_INSTALL_PATH} RENAME mrtools-devinfo COMPONENT Program) # DPDK binary tools set(DPDK_BINARY_TOOLS_PATH ${DPDK_ROOT_DIR}/bin/) install(PROGRAMS ${DPDK_BINARY_TOOLS_PATH}/dpdk-pdump DESTINATION ${TOOLS_INSTALL_PATH} RENAME mrtools-pdump COMPONENT Program) install(PROGRAMS ${DPDK_BINARY_TOOLS_PATH}/dpdk-procinfo DESTINATION ${TOOLS_INSTALL_PATH} RENAME mrtools-pinfo COMPONENT Program)