dev-cpp/mvfst: fix build w/ boost-1.89

Choose the hack approach and require >=1.71.

Closes: https://bugs.gentoo.org/962946
Signed-off-by: Sam James <sam@gentoo.org>
This commit is contained in:
Sam James 2025-09-17 04:08:31 +01:00
parent aaf4854aad
commit 96b387a0f8
No known key found for this signature in database
GPG Key ID: 738409F520DF9190
2 changed files with 90 additions and 0 deletions

View File

@ -0,0 +1,23 @@
https://bugs.gentoo.org/962946
https://github.com/facebook/folly/issues/2489
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -44,7 +44,6 @@ set(QUIC_FBCODE_ROOT ${CMAKE_CURRENT_SOURCE_DIR})
find_package(Boost 1.62
REQUIRED COMPONENTS
iostreams
- system
thread
filesystem
regex
--- a/cmake/mvfst-config.cmake.in
+++ b/cmake/mvfst-config.cmake.in
@@ -20,7 +20,7 @@ include(CMakeFindDependencyMacro)
find_dependency(folly)
find_dependency(Fizz)
find_dependency(Threads)
-find_dependency(Boost COMPONENTS iostreams system thread filesystem regex context)
+find_dependency(Boost COMPONENTS iostreams thread filesystem regex context)
if(NOT TARGET mvfst::mvfst_transport)
include("${CMAKE_CURRENT_LIST_DIR}/mvfst-targets.cmake")

View File

@ -0,0 +1,67 @@
# Copyright 2022-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
# These must be bumped together:
# dev-cpp/edencommon
# dev-cpp/fb303
# dev-cpp/fbthrift
# dev-cpp/fizz
# dev-cpp/folly
# dev-cpp/mvfst
# dev-cpp/wangle
# dev-util/watchman
inherit cmake
DESCRIPTION="An implementation of the QUIC transport protocol"
HOMEPAGE="https://github.com/facebook/mvfst"
SRC_URI="https://github.com/facebook/mvfst/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
LICENSE="MIT"
SLOT="0/${PV}"
KEYWORDS="~amd64 ~arm64"
IUSE="test"
RESTRICT="!test? ( test )"
RDEPEND="
~dev-cpp/fizz-${PV}:=
~dev-cpp/folly-${PV}:=
dev-cpp/gflags:=
dev-cpp/glog:=[gflags]
dev-libs/double-conversion:=
dev-libs/libfmt:=
dev-libs/openssl:=
"
DEPEND="
${RDEPEND}
test? ( dev-cpp/gtest )
"
PATCHES=(
"${FILESDIR}"/${PN}-2025.04.14.00-boost-1.89.patch
)
src_configure() {
local mycmakeargs=(
-DCMAKE_INSTALL_MODULE_DIR="$(get_libdir)/cmake/${PN}"
-DCMAKE_INSTALL_LIBDIR="$(get_libdir)"
-DBUILD_TESTS="$(usex test ON OFF)"
)
cmake_src_configure
}
src_test() {
if use arm64; then
# These tests segfault on arm64.
# https://github.com/facebook/mvfst/issues/363
CMAKE_SKIP_TESTS=(
QuicClientTransportIntegrationTest.ResetClient
QuicClientTransportIntegrationTest.TestStatelessResetToken
)
fi
cmake_src_test
}