aboutsummaryrefslogtreecommitdiffstats
path: root/build
diff options
context:
space:
mode:
Diffstat (limited to 'build')
-rw-r--r--build/external/Makefile14
-rw-r--r--build/external/mlx_rdma_dpdk_matrix.txt1
-rw-r--r--build/external/packages.mk6
-rw-r--r--build/external/packages/dpdk.mk6
-rw-r--r--build/external/packages/ipsec-mb.mk3
-rw-r--r--build/external/packages/quicly.mk4
-rw-r--r--build/external/packages/rdma-core.mk3
-rw-r--r--build/external/patches/quicly_0.1.5-vpp/0001-cmake-install.patch30
-rw-r--r--build/external/patches/quicly_0.1.5-vpp/0002-cmake-install-picotls.patch30
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")