summaryrefslogtreecommitdiff
path: root/cmake
diff options
context:
space:
mode:
authorsongyanchao <[email protected]>2022-02-27 21:43:12 -0500
committersongyanchao <[email protected]>2022-02-27 21:43:12 -0500
commitfca76b2a4c51b21f811b146950b0afc701acb644 (patch)
tree3e79dc877a6320a138cca497adfa716c990cf80e /cmake
parent281c6b2733ca94ed4419b00a778906ac4d4bc02d (diff)
✨ feat(TSG-9777): 删除动态库打包流程
删除动态库打包流程 https://jira.geedge.net/browse/TSG-9777?filter=-1
Diffstat (limited to 'cmake')
-rw-r--r--cmake/InstallDPDK.cmake65
1 files changed, 1 insertions, 64 deletions
diff --git a/cmake/InstallDPDK.cmake b/cmake/InstallDPDK.cmake
index 77ef397..4e7b15e 100644
--- a/cmake/InstallDPDK.cmake
+++ b/cmake/InstallDPDK.cmake
@@ -33,67 +33,4 @@ install(PROGRAMS ${DPDK_BINARY_TOOLS_PATH}/dpdk-pdump DESTINATION ${TOOLS_INSTAL
RENAME mrtools-pdump COMPONENT Program)
install(PROGRAMS ${DPDK_BINARY_TOOLS_PATH}/dpdk-proc-info DESTINATION ${TOOLS_INSTALL_PATH}
- RENAME mrtools-pinfo COMPONENT Program)
-
-### 打包dpdk动态库的操作流程
-# 1. 添加dpdk的基础动态库
-## 1.1 遍历排除pmd后的所有动态库名称 DPDK_LIBRARY_NAME_LIST
-## 1.2 通过动态库名查找所有相关的库文件并将其添加到rpm中
-foreach(DPDK_LIBRARY_ITEM ${DPDK_LIBRARY_NAME_LIST})
- file(GLOB DPDK_LIBRARY_GEN_LIST "${DPDK_LIBRARY_DIR}/${DPDK_LIBRARY_ITEM}*")
- foreach(DPDK_LIBRARY_GEN_ITEM ${DPDK_LIBRARY_GEN_LIST})
- install(FILES ${DPDK_LIBRARY_GEN_ITEM} DESTINATION lib PERMISSIONS OWNER_WRITE OWNER_READ OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE COMPONENT Program)
- endforeach(DPDK_LIBRARY_GEN_ITEM)
-endforeach(DPDK_LIBRARY_ITEM)
-
-## 1.3 PMD的多个动态库需要软链这两个动态库,因此将这两个动态库放在lib目录下
-file(GLOB PMD_LIBRARY_BUS_PCI_LIST "${DPDK_LIBRARY_DIR}/dpdk/pmds-*/librte_bus_pci.*")
-foreach(PMD_LIBRARY_BUS_PCI_ITEM ${PMD_LIBRARY_BUS_PCI_LIST})
-install(FILES ${PMD_LIBRARY_BUS_PCI_ITEM} DESTINATION lib PERMISSIONS OWNER_WRITE OWNER_READ OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE COMPONENT Program)
-endforeach(PMD_LIBRARY_BUS_PCI_ITEM)
-
-file(GLOB PMD_LIBRARY_BUS_VDEV_LIST "${DPDK_LIBRARY_DIR}/dpdk/pmds-*/librte_bus_vdev.*")
-foreach(PMD_LIBRARY_BUS_VDEV_ITEM ${PMD_LIBRARY_BUS_VDEV_LIST})
-install(FILES ${PMD_LIBRARY_BUS_VDEV_ITEM} DESTINATION lib PERMISSIONS OWNER_WRITE OWNER_READ OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE COMPONENT Program)
-endforeach(PMD_LIBRARY_BUS_VDEV_ITEM)
-
-# 2. 获取PMD所有动态库的名称
-file(GLOB PMD_LIBRARY_ALL "${DPDK_LIBRARY_DIR}/dpdk/pmds-*/librte*.so")
-foreach(PMD_LIBRARY_ITEM ${PMD_LIBRARY_ALL})
- string(REGEX REPLACE ".+/(.+)" "\\1" PMD_LIBTATY_NAME_ITEM ${PMD_LIBRARY_ITEM})
- list(APPEND PMD_LIBRARY_NAME_LIST ${PMD_LIBTATY_NAME_ITEM})
-endforeach(PMD_LIBRARY_ITEM)
-
-# 3. 获取PMD中相关MLX5的动态库名称
-file(GLOB MLX5_LIBRARY "${DPDK_LIBRARY_DIR}/dpdk/pmds-*/librte*mlx*.so")
-foreach(MLX5_LIBRARY_ITEM ${MLX5_LIBRARY})
- string(REGEX REPLACE ".+/(.+)" "\\1" MLX5_LIBRARY_NAME_ITEM ${MLX5_LIBRARY_ITEM})
- list(APPEND MLX5_LIBRARY_NAME_LIST ${MLX5_LIBRARY_NAME_ITEM})
-endforeach(MLX5_LIBRARY_ITEM)
-
-# 4. 将MLX5动态库从PMD所有动态库列表中删除,并将所有MLX5的动态库打包到指定目录
-## 4.1 遍历MLX5动态库名称的List
-## 4.2 将MLX5动态库的名称从PMD动态库的List中删除
-## 4.3 根据MLX5动态库名称查找所有相关的库文件
-## 4.4 设置MLX5相关的库文件的安装目录为 lib/pmds/mlx5
-foreach(PMD_MLX5_LIBRARY_NAME_ITEM ${MLX5_LIBRARY_NAME_LIST})
- list(REMOVE_ITEM PMD_LIBRARY_NAME_LIST "${PMD_MLX5_LIBRARY_NAME_ITEM}")
- file(GLOB MLX5_LIBRARY_GEN_LIST "${DPDK_LIBRARY_DIR}/dpdk/pmds-*/${PMD_MLX5_LIBRARY_NAME_ITEM}*")
- foreach(MLX5_LIBRARY_GEN_ITEM ${MLX5_LIBRARY_GEN_LIST})
- install(FILES ${MLX5_LIBRARY_GEN_ITEM} DESTINATION lib/pmds/mlx5 PERMISSIONS OWNER_WRITE OWNER_READ OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE COMPONENT Program)
- endforeach(MLX5_LIBRARY_GEN_ITEM)
-endforeach(PMD_MLX5_LIBRARY_NAME_ITEM)
-## 4.5 因为librte_bus_pci以及librte_bus_vdev动态库已经放置在lib目录下,因此PMDS目录不再重复添加
-list(REMOVE_ITEM PMD_LIBRARY_NAME_LIST "librte_bus_pci.so")
-list(REMOVE_ITEM PMD_LIBRARY_NAME_LIST "librte_bus_vdev.so")
-
-# 5. 为移除MLX5后的PMD动态库设置安装路径
-## 5.1 遍历移除MLX5后的PMD动态库的list
-## 5.2 根据动态库的名称查找所有相关的库文件
-## 5.3 设置PMD相关的库文件的安装目录为lib/pmds
-foreach(PMD_LIBRARY_NAME_ITEM ${PMD_LIBRARY_NAME_LIST})
- file(GLOB PMD_LIBRARY_GEN_LIST "${DPDK_LIBRARY_DIR}/dpdk/pmds-*/${PMD_LIBRARY_NAME_ITEM}*")
- foreach(PMD_LIBRARY_GEN_ITEM ${PMD_LIBRARY_GEN_LIST})
- install(FILES ${PMD_LIBRARY_GEN_ITEM} DESTINATION lib/pmds PERMISSIONS OWNER_WRITE OWNER_READ OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE COMPONENT Program)
- endforeach(PMD_LIBRARY_GEN_ITEM)
-endforeach(PMD_LIBRARY_NAME_ITEM) \ No newline at end of file
+ RENAME mrtools-pinfo COMPONENT Program) \ No newline at end of file