commit: ac2f4c06e766ac37d5c57b0e89dcf80cd8fd1ec9 Author: sin-ack <sin-ack <AT> protonmail <DOT> com> AuthorDate: Mon Apr 21 16:02:14 2025 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Tue Apr 22 01:15:24 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ac2f4c06
dev-cpp/fbthrift: add 2025.04.14.00 RDEPEND fixed via qa-vdb. One non-upstream patch added because of our force-disable of Folly's io_uring support. Ref: https://github.com/facebook/fbthrift/issues/649 Bug: https://bugs.gentoo.org/946922 Signed-off-by: sin-ack <sin-ack <AT> protonmail.com> Signed-off-by: Sam James <sam <AT> gentoo.org> dev-cpp/fbthrift/Manifest | 1 + dev-cpp/fbthrift/fbthrift-2025.04.14.00.ebuild | 60 ++++++++++++++++++++++ ...AS_LIBURING-to-check-for-liburing-support.patch | 27 ++++++++++ 3 files changed, 88 insertions(+) diff --git a/dev-cpp/fbthrift/Manifest b/dev-cpp/fbthrift/Manifest index 211037528008..01937fbbcad1 100644 --- a/dev-cpp/fbthrift/Manifest +++ b/dev-cpp/fbthrift/Manifest @@ -1 +1,2 @@ DIST fbthrift-2024.11.04.00.gh.tar.gz 15541383 BLAKE2B 447fdeba8b9f270e77066d7cf8dedd64ff0e74baf58b8848b0225e936c5d0815cae764f0b38c26c4ce17d9b0f2c0ba46df3a03b2512065b7bd5d685ac7dc99d6 SHA512 b2175eac20ef9b4f15b5d9002583db7339549f660d03a1ced34289009cd99a4308a9ce340b9a37b9771a32340e80b7877b7c5498619241819cf0664e1e395bf7 +DIST fbthrift-2025.04.14.00.gh.tar.gz 15021132 BLAKE2B aba075fc0c7bf915b3927135c63fd06d902bef8943e09c0984601ffd910838d7458fee109895851135c38d99f53cd6bdd462ae71f1d1d659ffff848752b631b2 SHA512 ee109564121c28472980ee0bad975918b81997a0b0d544030a7e5c0c717d8c2d7e8bdb29adef851802271ce8f97fd637a8fe993b9f1c0e176b3f24414a9f9af7 diff --git a/dev-cpp/fbthrift/fbthrift-2025.04.14.00.ebuild b/dev-cpp/fbthrift/fbthrift-2025.04.14.00.ebuild new file mode 100644 index 000000000000..d1fe71adac53 --- /dev/null +++ b/dev-cpp/fbthrift/fbthrift-2025.04.14.00.ebuild @@ -0,0 +1,60 @@ +# 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="Facebook's branch of Apache Thrift (C++ bindings)" +HOMEPAGE="https://github.com/facebook/fbthrift" +SRC_URI="https://github.com/facebook/fbthrift/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz" + +LICENSE="Apache-2.0" +SLOT="0/${PV}" +KEYWORDS="~amd64 ~arm64" +IUSE="test" + +# See https://github.com/facebook/fbthrift/issues/628 +RESTRICT="test" + +DEPEND=" + ~dev-cpp/fizz-${PV}:= + ~dev-cpp/folly-${PV}:= + ~dev-cpp/wangle-${PV}:= + dev-cpp/gflags:= + dev-cpp/glog:=[gflags] + dev-libs/boost:=[nls(+)] + dev-libs/double-conversion:= + dev-libs/libfmt:= + dev-libs/openssl:= + dev-libs/xxhash + sys-libs/zlib:= +" +RDEPEND=" + ${DEPEND} + test? ( dev-cpp/gtest ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-2025.04.14.00-Use-FOLLY_HAS_LIBURING-to-check-for-liburing-support.patch +) + +src_configure() { + local mycmakeargs=( + -DCMAKE_INSTALL_DIR="$(get_libdir)/cmake/${PN}" + -DLIB_INSTALL_DIR="$(get_libdir)" + -Denable_tests=$(usex test 'ON' 'OFF') + -Wno-dev + ) + cmake_src_configure +} diff --git a/dev-cpp/fbthrift/files/fbthrift-2025.04.14.00-Use-FOLLY_HAS_LIBURING-to-check-for-liburing-support.patch b/dev-cpp/fbthrift/files/fbthrift-2025.04.14.00-Use-FOLLY_HAS_LIBURING-to-check-for-liburing-support.patch new file mode 100644 index 000000000000..bcb039ad8e4d --- /dev/null +++ b/dev-cpp/fbthrift/files/fbthrift-2025.04.14.00-Use-FOLLY_HAS_LIBURING-to-check-for-liburing-support.patch @@ -0,0 +1,27 @@ +From 99f1ffbd2ff912d0407aa75f980ef918187c6525 Mon Sep 17 00:00:00 2001 +From: sin-ack <[email protected]> +Date: Mon, 21 Apr 2025 16:31:18 +0200 +Subject: [PATCH] Use FOLLY_HAS_LIBURING to check for liburing support in Folly + +Folly may not be compiled with liburing support enabled, in which case +the liburing classes must not be used. +--- + thrift/lib/cpp2/security/SSLUtil.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/thrift/lib/cpp2/security/SSLUtil.cpp b/thrift/lib/cpp2/security/SSLUtil.cpp +index 52a15b66de..dbc67dfd81 100644 +--- a/thrift/lib/cpp2/security/SSLUtil.cpp ++++ b/thrift/lib/cpp2/security/SSLUtil.cpp +@@ -133,7 +133,7 @@ folly::AsyncSocketTransport::UniquePtr moveToPlaintext(FizzSocket* fizzSock) { + + auto sock = fizzSock->template getUnderlyingTransport<folly::AsyncSocket>(); + folly::AsyncSocketTransport::UniquePtr plaintextTransport; +-#if defined(__linux__) && __has_include(<liburing.h>) ++#if FOLLY_HAS_LIBURING + if (!sock && + fizzSock->template getUnderlyingTransport<folly::AsyncIoUringSocket>()) { + // `AsyncFdSocket` currently lacks uring support, so hardcode `AsyncSocket` +-- +2.49.0 +
