diff options
Diffstat (limited to 'build')
-rw-r--r-- | build/external/Makefile | 14 | ||||
-rw-r--r-- | build/external/mlx_rdma_dpdk_matrix.txt | 1 | ||||
-rw-r--r-- | build/external/packages.mk | 6 | ||||
-rw-r--r-- | build/external/packages/dpdk.mk | 6 | ||||
-rw-r--r-- | build/external/packages/ipsec-mb.mk | 3 | ||||
-rw-r--r-- | build/external/packages/quicly.mk | 4 | ||||
-rw-r--r-- | build/external/packages/rdma-core.mk | 3 | ||||
-rw-r--r-- | build/external/patches/quicly_0.1.5-vpp/0001-cmake-install.patch | 30 | ||||
-rw-r--r-- | build/external/patches/quicly_0.1.5-vpp/0002-cmake-install-picotls.patch | 30 |
9 files changed, 85 insertions, 12 deletions
diff --git a/build/external/Makefile b/build/external/Makefile index 6b5f9058dda..b4a099c57e1 100644 --- a/build/external/Makefile +++ b/build/external/Makefile @@ -30,6 +30,12 @@ endif # FreeBSD B := $(BUILD_DIR) I := $(INSTALL_DIR) +ifeq ($(WORKSPACE),) +L := $(B) +else +L := $(WORKSPACE)/archives/vpp-ext-deps +$(shell rm -rf $(L) && mkdir -p $(L)) +endif ifneq ($(shell which cmake3),) CMAKE?=cmake3 @@ -45,10 +51,10 @@ include packages/ipsec-mb.mk include packages/quicly.mk ifneq ($(shell uname), FreeBSD) include packages/rdma-core.mk -include packages/dpdk.mk include packages/xdp-tools.mk include packages/octeon-roc.mk -endif # FreeBSD +endif # ! FreeBSD +include packages/dpdk.mk .PHONY: clean clean: @@ -56,14 +62,14 @@ clean: .PHONY: install ifeq ($(shell uname), FreeBSD) -install: $(if $(ARCH_X86_64), ipsec-mb-install) quicly-install +install: $(if $(ARCH_X86_64), ipsec-mb-install) dpdk-install quicly-install else install: $(if $(ARCH_X86_64), ipsec-mb-install) dpdk-install rdma-core-install quicly-install xdp-tools-install $(if $(AARCH64), octeon-roc-install) endif # FreeBSD .PHONY: config ifeq ($(shell uname), FreeBSD) -config: $(if $(ARCH_X86_64), ipsec-mb-config) quicly-build +config: $(if $(ARCH_X86_64), ipsec-mb-config) dpdk-config quicly-build else config: $(if $(ARCH_X86_64), ipsec-mb-config) dpdk-config rdma-core-config quicly-build endif # FreeBSD diff --git a/build/external/mlx_rdma_dpdk_matrix.txt b/build/external/mlx_rdma_dpdk_matrix.txt index b2245cc49a0..17cf1aaa5e5 100644 --- a/build/external/mlx_rdma_dpdk_matrix.txt +++ b/build/external/mlx_rdma_dpdk_matrix.txt @@ -1,2 +1,3 @@ rdma=49.0 dpdk=23.11 rdma=51.0 dpdk=24.03 +rdma=52.0 dpdk=24.07 diff --git a/build/external/packages.mk b/build/external/packages.mk index eba702222de..e8cbe271d9b 100644 --- a/build/external/packages.mk +++ b/build/external/packages.mk @@ -21,9 +21,9 @@ $1_src_dir ?= $(B)/src-$1 $1_patch_dir ?= $(CURDIR)/patches/$1_$($1_version) $1_build_dir ?= $(B)/build-$1 $1_install_dir ?= $(I) -$1_config_log ?= $(B)/$1.config.log -$1_build_log ?= $(B)/$1.build.log -$1_install_log ?= $(B)/$1.install.log +$1_config_log ?= $(L)/$1.config.log +$1_build_log ?= $(L)/$1.build.log +$1_install_log ?= $(L)/$1.install.log ############################################################################## # Download diff --git a/build/external/packages/dpdk.mk b/build/external/packages/dpdk.mk index 8ee65faac8c..7512ad83846 100644 --- a/build/external/packages/dpdk.mk +++ b/build/external/packages/dpdk.mk @@ -19,9 +19,10 @@ DPDK_FAILSAFE_PMD ?= n DPDK_MACHINE ?= default DPDK_MLX_IBV_LINK ?= static -dpdk_version ?= 24.03 +dpdk_version ?= 24.07 dpdk_base_url ?= http://fast.dpdk.org/rel dpdk_tarball := dpdk-$(dpdk_version).tar.xz +dpdk_tarball_md5sum_24.07 := 48151b1bd545cd95447979fa033199bb dpdk_tarball_md5sum_24.03 := a98da848d6ba09808ef00f9a26aaa49a dpdk_tarball_md5sum_23.11 := 896c09f5b45b452bd77287994650b916 dpdk_tarball_md5sum_23.07 := 2b6d57f077585cb15b885482362fd47f @@ -38,6 +39,9 @@ dpdk_depends := $(if $(ARCH_X86_64), ipsec-mb) else dpdk_depends := rdma-core $(if $(ARCH_X86_64), ipsec-mb) endif +ifeq ($(rdma-core_version),) +$(error Missing rdma-core_version) +endif DPDK_MLX_DEFAULT := $(shell if grep -q "rdma=$(rdma-core_version) dpdk=$(dpdk_version)" mlx_rdma_dpdk_matrix.txt; then echo 'y'; else echo 'n'; fi) DPDK_MLX4_PMD ?= $(DPDK_MLX_DEFAULT) DPDK_MLX5_PMD ?= $(DPDK_MLX_DEFAULT) diff --git a/build/external/packages/ipsec-mb.mk b/build/external/packages/ipsec-mb.mk index ffdbcd23fb2..5c990823ecf 100644 --- a/build/external/packages/ipsec-mb.mk +++ b/build/external/packages/ipsec-mb.mk @@ -11,7 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -ipsec-mb_version := 1.5 +ipsec-mb_version := 2.0 ipsec-mb_patch_version := 0 ipsec-mb_version_str := $(ipsec-mb_version).$(ipsec-mb_patch_version) ipsec-mb_tarball := v$(ipsec-mb_version).tar.gz @@ -21,6 +21,7 @@ ipsec-mb_tarball_md5sum_1.2 := f551d9c208893a436c1f5c146a615bd6 ipsec-mb_tarball_md5sum_1.3 := d8692db9efe32a263b61f12ac0dca950 ipsec-mb_tarball_md5sum_1.4 := fddba2611f822296ddd82d1c31d22b24 ipsec-mb_tarball_md5sum_1.5 := f18680f8dd43208a15a19a494423bdb9 +ipsec-mb_tarball_md5sum_2.0 := c0207b0a2136920461cc56aad06072a8 ipsec-mb_tarball_md5sum := $(ipsec-mb_tarball_md5sum_$(ipsec-mb_version)) ipsec-mb_tarball_strip_dirs := 1 diff --git a/build/external/packages/quicly.mk b/build/external/packages/quicly.mk index e8c1b42f1b7..23fbd58ee1a 100644 --- a/build/external/packages/quicly.mk +++ b/build/external/packages/quicly.mk @@ -11,9 +11,9 @@ # See the License for the specific language governing permissions and # limitations under the License. -quicly_version := 0.1.4-vpp +quicly_version := 0.1.5-vpp quicly_tarball := quicly_$(quicly_version).tar.gz -quicly_tarball_md5sum := 5419a0f340c5572bcf682c08acc84c77 +quicly_tarball_md5sum := fc388ccde2f7d677b92ff3cb3fd387e4 quicly_tarball_strip_dirs := 1 quicly_url := https://github.com/vpp-quic/quicly/releases/download/v$(quicly_version)/quicly_$(quicly_version).tar.gz diff --git a/build/external/packages/rdma-core.mk b/build/external/packages/rdma-core.mk index f015322775f..791a52c6ae3 100644 --- a/build/external/packages/rdma-core.mk +++ b/build/external/packages/rdma-core.mk @@ -23,10 +23,11 @@ RDMA_CORE_DEBUG?=n # 2. Verify that the file build/external/dpdk_mlx_default.sh was generated # and contains 'DPDK_MLX_DEFAULT=y' # -rdma-core_version := 51.0 +rdma-core_version := 52.0 rdma-core_tarball := rdma-core-$(rdma-core_version).tar.gz rdma-core_tarball_md5sum_49.0 := 9fe3909f19c7e0276c9e546411bbb49c rdma-core_tarball_md5sum_51.0 := ed95d79f782ea00bd7233d453abd60b3 +rdma-core_tarball_md5sum_52.0 := c78dba484aac72eb8586d88f7b399b0f rdma-core_tarball_md5sum := $(rdma-core_tarball_md5sum_$(rdma-core_version)) rdma-core_tarball_strip_dirs := 1 rdma-core_url := http://github.com/linux-rdma/rdma-core/releases/download/v$(rdma-core_version)/$(rdma-core_tarball) diff --git a/build/external/patches/quicly_0.1.5-vpp/0001-cmake-install.patch b/build/external/patches/quicly_0.1.5-vpp/0001-cmake-install.patch new file mode 100644 index 00000000000..35befd9b88d --- /dev/null +++ b/build/external/patches/quicly_0.1.5-vpp/0001-cmake-install.patch @@ -0,0 +1,30 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 5142bac..7b95f74 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -33,6 +33,8 @@ ENDIF(NOT CMAKE_BUILD_TYPE) + SET(CMAKE_C_FLAGS "-std=c99 -Wall -g ${CC_WARNING_FLAGS} ${CMAKE_C_FLAGS}") + SET(CMAKE_C_FLAGS_DEBUG "-O0") + SET(CMAKE_C_FLAGS_RELEASE "-O2") ++SET(CMAKE_POSITION_INDEPENDENT_CODE ON) ++SET(CMAKE_SKIP_INSTALL_ALL_DEPENDENCY true) + + INCLUDE_DIRECTORIES( + ${OPENSSL_INCLUDE_DIR} +@@ -118,6 +120,16 @@ TARGET_LINK_LIBRARIES(examples-echo quicly ${OPENSSL_LIBRARIES} ${CMAKE_DL_LIBS} + + ADD_EXECUTABLE(udpfw t/udpfw.c) + ++INSTALL ( ++ DIRECTORY ${CMAKE_SOURCE_DIR}/include/ ++ DESTINATION include ++ FILES_MATCHING PATTERN "*.h") ++ ++INSTALL(TARGETS quicly ++ RUNTIME DESTINATION bin ++ LIBRARY DESTINATION lib ++ ARCHIVE DESTINATION lib) ++ + ADD_CUSTOM_TARGET(check env BINARY_DIR=${CMAKE_CURRENT_BINARY_DIR} WITH_DTRACE=${WITH_DTRACE} prove --exec "sh -c" -v ${CMAKE_CURRENT_BINARY_DIR}/*.t t/*.t + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} + DEPENDS cli test.t) diff --git a/build/external/patches/quicly_0.1.5-vpp/0002-cmake-install-picotls.patch b/build/external/patches/quicly_0.1.5-vpp/0002-cmake-install-picotls.patch new file mode 100644 index 00000000000..56897e8a5d4 --- /dev/null +++ b/build/external/patches/quicly_0.1.5-vpp/0002-cmake-install-picotls.patch @@ -0,0 +1,30 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index d1d6c09..90d7221 100644 +--- a/deps/picotls/CMakeLists.txt ++++ b/deps/picotls/CMakeLists.txt +@@ -13,6 +13,9 @@ IF (WITH_DTRACE) + ENDIF () + + SET(CMAKE_C_FLAGS "-std=c99 -Wall -O2 -g ${CC_WARNING_FLAGS} ${CMAKE_C_FLAGS}") ++SET(CMAKE_POSITION_INDEPENDENT_CODE ON) ++SET(CMAKE_SKIP_INSTALL_ALL_DEPENDENCY true) ++ + INCLUDE_DIRECTORIES( + deps/cifra/src/ext + deps/cifra/src +@@ -161,6 +164,15 @@ TARGET_LINK_LIBRARIES(ptlsbench ${PTLSBENCH_LIBS}) + + ADD_CUSTOM_TARGET(check env BINARY_DIR=${CMAKE_CURRENT_BINARY_DIR} prove --exec '' -v ${CMAKE_CURRENT_BINARY_DIR}/*.t t/*.t WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} DEPENDS ${TEST_EXES} cli) + ++INSTALL (DIRECTORY ${CMAKE_SOURCE_DIR}/include/ ++ DESTINATION include ++ FILES_MATCHING PATTERN "*.h") ++ ++INSTALL(TARGETS picotls-core picotls-openssl ++ RUNTIME DESTINATION bin ++ LIBRARY DESTINATION lib ++ ARCHIVE DESTINATION lib) ++ + IF (CMAKE_SYSTEM_NAME STREQUAL "Linux") + SET(CMAKE_C_FLAGS "-D_GNU_SOURCE -pthread ${CMAKE_C_FLAGS}") + ELSEIF ("${CMAKE_SYSTEM_NAME}" MATCHES "SunOS") |