diff options
Diffstat (limited to 'dev-libs/thrift')
-rw-r--r-- | dev-libs/thrift/Manifest | 3 | ||||
-rw-r--r-- | dev-libs/thrift/files/thrift-0.21.0-gcc15-cstdint.patch | 52 | ||||
-rw-r--r-- | dev-libs/thrift/thrift-0.21.0.ebuild | 73 |
3 files changed, 128 insertions, 0 deletions
diff --git a/dev-libs/thrift/Manifest b/dev-libs/thrift/Manifest index dcbba1019a5b..c971873d0f08 100644 --- a/dev-libs/thrift/Manifest +++ b/dev-libs/thrift/Manifest @@ -1,9 +1,12 @@ AUX thrift-0.16.0-network-tests.patch 1184 BLAKE2B fc1737e6169a480718edeff366734a01cee43626f84a0785b0f7fe2cdad4ef964da5ef9c685d8c8fee32d8f719e1f4eb7c260a6c6a960e8fea89898a59cd6f16 SHA512 248de672f603c94919bf67890715a037030d378c80ec7dc849ee3677392353d89903e35ed3c0144ab3e1ff371bfb6eba861d11332844fec99b87bcb3476a1a7e AUX thrift-0.18.1-tests.patch 1266 BLAKE2B 93937699f0b34d3dd273563f94fe5a55b0fc8d2fc349d446945756ec941ed1a9e4d84a7dd7deb3b5dd8237c999d28fbf3c901cb7af2c96782d7af229b4d99e88 SHA512 bdb9628c6db7e17e0ac7752e9bed600a040b1d9ec405e160ec127114ee7dece6b500e0cf768d3873986241e6d9607981cbafb15a6899e199870b63cf10c404d5 +AUX thrift-0.21.0-gcc15-cstdint.patch 3233 BLAKE2B fa8cc93c90962f48785441ba84d1103460bbeca665b3e4ae7563bdbcfcd42f3fc2876c5196abccf8a263f27f240a282f85b33b6296a1f6f17cc720e9aafd540e SHA512 c461ee597767bbd34868832d5630230a95a55775030a6ba838b0bb3219f3045c24993f85d48274f267d6975ef97e2ea12e83faa85dc2a672d4465f06d3bc0e37 DIST thrift-0.16.0.tar.gz 4085114 BLAKE2B 17c35096f6848fb0795e4cb125fed3068c8e1e53f67f404f4dcab67df7a42fc049a7d615591c861eb9e59e3333e21f185e8615663008bc7c846a03722ea8b834 SHA512 468fff6be2def85959fdf8adac92a0cfa7f786083b3bafb2c31427dfe5725f4d10962052d13ea960828f6a317778d35e66b602744a570212352bfc637ae586e0 DIST thrift-0.18.1.tar.gz 4310494 BLAKE2B 3e6c7e03059341e79d3f58e16b55761888b530b3d31dd22853026486a1303725ee5d5e6e5dd7a5e6bf8e57a2d3cf36ffc829cdb194d990cadedfc63f4f3e0874 SHA512 9c9a462aa8b6fddefd5bb9d2c950570eb2d3beaa7c9d37fceee677bdc1fdeb521b796f4eeee8a1fd9a7649f84449f6c0572305210e67402eb97682ca7f6e851b DIST thrift-0.20.0.tar.gz 4397667 BLAKE2B 23422fdcdf7e0dbce8bc0f8017f54b5848594e2da21de56834152c17c74da7d1c4df23c5b57cf3ba811bb03f1a8588ddf1c2a05222bb726aceda4292a15af21e SHA512 8dc77f666e60141a6b3cf7ee1407b08a0e80d176f8ccfee69317d7df89ab87aea2c7b3ba3e59d4561835edf1ce23762443ad5aeed0099bf075b010853d5eb1cd +DIST thrift-0.21.0.gh.tar.gz 3276565 BLAKE2B 806cda50086b592fa14723377ee0346ac77fff5c0002d0eea481a021c0d7ef4360a2ce347b1a1d969900fac10602534e25e9ac5df54a2d15d363bfc12d0cf055 SHA512 39566b7ecae7ae159822ee1c2c03a7af9ba6e228c3bbecea4079bdbd2332b42f03f79af08303a2685d04723f996d230cf95e5afc4d2a3880158a80429e21c190 EBUILD thrift-0.16.0-r2.ebuild 958 BLAKE2B 6003a01c59982fbecd4b75c01d77f0d59b89498888dabf39f3e9582760e7b456c236632b47dd085bbcd51489bed3eaece28c4eb71f11e02a66b1f02381ef063d SHA512 89fef989ab841a887b9a34fc0767ad61ea81b9dabe07c552ea6f8df1098348d2009f4f659a430d2d8163fcfeecb9c9c0d73c3fe2adf210d2adcd5f35e7478126 EBUILD thrift-0.18.1-r1.ebuild 1155 BLAKE2B 632d0ce721faea13b24bd94705416adc2843f8995347c11e21c6b7c496846874679f33dc052e814ab35984a0aab4d8f134d7ee2bfadcc98f028dea77d80fb1cd SHA512 b2d4de48a3a1df54c0f30b80a07601bb9dbfd5aca191736d1474b0b0610d4ebc8297339e01070b43fa7eb3519578ccd3ea42eb2835e38e24f51b9823d4221151 EBUILD thrift-0.20.0.ebuild 1162 BLAKE2B 43f9d03d4944f11777f1f68d9ca80d8669a6e9da5414907df20d499cda3a7a6253b9f46dbba39d84e92a040db40e639583c877f1d9e7436d2477a4be2d53361f SHA512 96b797ddcbb718db0bc5a350ef7aa2e7631c1502e89f3bc9f5c01612491507012a14b21d9099c8e1d69e4330bb31f943070e809f1657298fe123fd77d05c5cb5 +EBUILD thrift-0.21.0.ebuild 1505 BLAKE2B 86da0f5c2796583875a316e57798a977ed30dfbee82c8f0541b953eac9d83dfb33d54b7dc390a276ab30b2dac81fc5f8b5e26b5c5080e238cfd528dbcef8b915 SHA512 1c726bb93366a2999a9e86f4004e33d4415cce5565d0442e7e9923052597793193e88f7cbd32e9014c8b63723eb33bc0334d12606dd9aa7f002a8333626f9466 MISC metadata.xml 489 BLAKE2B 2b2c924951cd9c5dfa2a9d4f50f4a74b3f422d853fdf61248424500d792f87a9348335a80e54c2c110039274060ec8df87f3369c8ff81c3dc8d515cb7de58fa8 SHA512 f15102234cb9eb25272e4d1788b7cdd4274ef9c5ad0d2af3521533d86a4145b0f2789385ce9663f9d0aa9161c218d357cc76d56e5c47ed597c56f7ac35d8a373 diff --git a/dev-libs/thrift/files/thrift-0.21.0-gcc15-cstdint.patch b/dev-libs/thrift/files/thrift-0.21.0-gcc15-cstdint.patch new file mode 100644 index 000000000000..ab3453e2bd0f --- /dev/null +++ b/dev-libs/thrift/files/thrift-0.21.0-gcc15-cstdint.patch @@ -0,0 +1,52 @@ +https://bugs.gentoo.org/938100 +https://github.com/apache/thrift/commit/947ad66940cfbadd9b24ba31d892dfc1142dd330 +https://github.com/apache/thrift/pull/3078 +https://github.com/apache/arrow/issues/45096 + +From 947ad66940cfbadd9b24ba31d892dfc1142dd330 Mon Sep 17 00:00:00 2001 +From: Sutou Kouhei <kou@clear-code.com> +Date: Mon, 23 Dec 2024 12:33:22 +0900 +Subject: [PATCH] THRIFT-5842: Add missing cstdint include for int64_t in + Mutex.h + +Client: cpp + +GCC 15 (not released yet) requires `#include <cstdint>` for `int64_t` +but `lib/cpp/src/thrift/concurrency/Mutex.h` doesn't have it. So we +can't build Thrift with GCC 15: + + [80/359] Building CXX object lib/cpp/CMakeFiles/thrift.dir/src/thrift/transport/TSSLServerSocket.cpp.o + FAILED: lib/cpp/CMakeFiles/thrift.dir/src/thrift/transport/TSSLServerSocket.cpp.o + /bin/g++-15 -DBOOST_ALL_DYN_LINK -DBOOST_TEST_DYN_LINK -DTHRIFT_STATIC_DEFINE -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/kou/work/cpp/thrift.kou.build/lib/cpp -I/home/kou/work/cpp/thrift.kou/lib/cpp -I/home/kou/work/cpp/thrift.kou.build -I/home/kou/work/cpp/thrift.kou/lib/cpp/src -g -std=c++11 -MD -MT lib/cpp/CMakeFiles/thrift.dir/src/thrift/transport/TSSLServerSocket.cpp.o -MF lib/cpp/CMakeFiles/thrift.dir/src/thrift/transport/TSSLServerSocket.cpp.o.d -o lib/cpp/CMakeFiles/thrift.dir/src/thrift/transport/TSSLServerSocket.cpp.o -c /home/kou/work/cpp/thrift.kou/lib/cpp/src/thrift/transport/TSSLServerSocket.cpp + In file included from /home/kou/work/cpp/thrift.kou/lib/cpp/src/thrift/transport/TServerSocket.h:25, + from /home/kou/work/cpp/thrift.kou/lib/cpp/src/thrift/transport/TSSLServerSocket.h:23, + from /home/kou/work/cpp/thrift.kou/lib/cpp/src/thrift/transport/TSSLServerSocket.cpp:21: + /home/kou/work/cpp/thrift.kou/lib/cpp/src/thrift/concurrency/Mutex.h:47:26: error: 'int64_t' has not been declared + 47 | virtual bool timedlock(int64_t milliseconds) const; + | ^~~~~~~ + /home/kou/work/cpp/thrift.kou/lib/cpp/src/thrift/concurrency/Mutex.h:25:1: note: 'int64_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>' + 24 | #include <thrift/TNonCopyable.h> + +++ |+#include <cstdint> + 25 | + /home/kou/work/cpp/thrift.kou/lib/cpp/src/thrift/concurrency/Mutex.h:60:29: error: 'int64_t' has not been declared + 60 | Guard(const Mutex& value, int64_t timeout = 0) : mutex_(&value) { + | ^~~~~~~ + /home/kou/work/cpp/thrift.kou/lib/cpp/src/thrift/concurrency/Mutex.h:60:29: note: 'int64_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>' + +See also: https://github.com/apache/arrow/issues/45096 +--- + lib/cpp/src/thrift/concurrency/Mutex.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/lib/cpp/src/thrift/concurrency/Mutex.h b/lib/cpp/src/thrift/concurrency/Mutex.h +index 1e5c3fba37c..12f1729d6bf 100644 +--- a/lib/cpp/src/thrift/concurrency/Mutex.h ++++ b/lib/cpp/src/thrift/concurrency/Mutex.h +@@ -20,6 +20,7 @@ + #ifndef _THRIFT_CONCURRENCY_MUTEX_H_ + #define _THRIFT_CONCURRENCY_MUTEX_H_ 1 + ++#include <cstdint> + #include <memory> + #include <thrift/TNonCopyable.h> + diff --git a/dev-libs/thrift/thrift-0.21.0.ebuild b/dev-libs/thrift/thrift-0.21.0.ebuild new file mode 100644 index 000000000000..885d01c25f6c --- /dev/null +++ b/dev-libs/thrift/thrift-0.21.0.ebuild @@ -0,0 +1,73 @@ +# Copyright 2022-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +DESCRIPTION="C++ bindings for Apache Thrift" +HOMEPAGE="https://thrift.apache.org/lib/cpp.html" +# Misses testing files +# SRC_URI="mirror://apache/thrift/${PV}/${P}.tar.gz" +SRC_URI=" + https://github.com/apache/thrift/archive/refs/tags/v${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="Apache-2.0" +SLOT="0/${PV}" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc64 ~riscv ~s390 ~x86" + +IUSE="libevent lua +ssl test" +REQUIRED_USE="test? ( ssl libevent )" +RESTRICT="!test? ( test )" + +DEPEND=" + dev-libs/boost:=[nls(+)] + dev-libs/openssl:= + sys-libs/zlib:= + libevent? ( dev-libs/libevent:= ) +" +RDEPEND="${DEPEND}" +BDEPEND=" + app-alternatives/lex + app-alternatives/yacc +" + +PATCHES=( + "${FILESDIR}/thrift-0.21.0-gcc15-cstdint.patch" +) + +src_configure() { + local mycmakeargs=( + # follow order in build/cmake/DefineOptions.cmake + # Prefer WITH_OPTION over BUILD_OPTION for bug #943012 + -DBUILD_COMPILER=ON + -DBUILD_TESTING=$(usex test) + -DBUILD_TUTORIALS=OFF + -DBUILD_LIBRARIES=ON + -DWITH_AS3=ON + -DWITH_CPP=ON + -DWITH_ZLIB=ON + -DWITH_LIBEVENT=$(usex libevent) + -DWITH_QT5=OFF + -DWITH_C_GLIB=OFF + -DWITH_OPENSSL=$(usex ssl) + -DWITH_JAVA=OFF + -DWITH_JAVASCRIPT=OFF + -DWITH_NODEJS=OFF + -DWITH_PYTHON=OFF + -Wno-dev + ) + cmake_src_configure +} + +src_test() { + local CMAKE_SKIP_TESTS=( + # network sandbox + StressTestConcurrent + StressTestNonBlocking + UnitTests + ) + cmake_src_test +} |