Compare commits
18 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
30c8491338 | ||
|
|
fb39649d74 | ||
|
|
1f82334fa8 | ||
|
|
a727f7d828 | ||
|
|
2a9d5eb2df | ||
|
|
99d304634a | ||
|
|
5a6065456a | ||
|
|
029eb5b076 | ||
|
|
42d2167811 | ||
|
|
dcddbdde35 | ||
|
|
4ced255634 | ||
|
|
d89e43e7d6 | ||
|
|
acc001c47a | ||
|
|
7543be7106 | ||
|
|
f9e02420c8 | ||
|
|
2e71c67eee | ||
|
|
3c63baeede | ||
|
|
c5f5a28be9 |
7 changed files with 178 additions and 111 deletions
2
.gitignore
vendored
2
.gitignore
vendored
|
|
@ -2,3 +2,5 @@
|
|||
/thrift-0.10.0.tar.gz
|
||||
/thrift-0.13.0.tar.gz
|
||||
/thrift-0.14.0.tar.gz
|
||||
/thrift-0.15.0.tar.gz
|
||||
/thrift-0.20.0.tar.gz
|
||||
|
|
|
|||
47
gcc15.patch
Normal file
47
gcc15.patch
Normal file
|
|
@ -0,0 +1,47 @@
|
|||
From 1920f04398ca32e320f6cf942534ba9d8b3231fd 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>
|
||||
|
||||
|
|
@ -1,80 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<groupId>org.apache.thrift</groupId>
|
||||
<artifactId>libthrift</artifactId>
|
||||
<version>0.14.0</version>
|
||||
<name>Apache Thrift</name>
|
||||
<description>Thrift is a software framework for scalable cross-language services development.</description>
|
||||
<url>http://thrift.apache.org</url>
|
||||
<licenses>
|
||||
<license>
|
||||
<name>The Apache Software License, Version 2.0</name>
|
||||
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
|
||||
<distribution>repo</distribution>
|
||||
</license>
|
||||
</licenses>
|
||||
<developers>
|
||||
<developer>
|
||||
<id>dev</id>
|
||||
<name>Apache Thrift Developers</name>
|
||||
<email>dev@thrift.apache.org</email>
|
||||
</developer>
|
||||
</developers>
|
||||
<scm>
|
||||
<connection>scm:git:https://github.com/apache/thrift.git</connection>
|
||||
<developerConnection>scm:git:git@github.com:apache/thrift.git</developerConnection>
|
||||
<url>https://github.com/apache/thrift</url>
|
||||
</scm>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.slf4j</groupId>
|
||||
<artifactId>slf4j-api</artifactId>
|
||||
<version>1.7.25</version>
|
||||
<scope>compile</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.httpcomponents</groupId>
|
||||
<artifactId>httpclient</artifactId>
|
||||
<version>4.5.6</version>
|
||||
<scope>compile</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.httpcomponents</groupId>
|
||||
<artifactId>httpcore</artifactId>
|
||||
<version>4.4.1</version>
|
||||
<scope>compile</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>javax.servlet</groupId>
|
||||
<artifactId>servlet-api</artifactId>
|
||||
<version>2.5</version>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>javax.annotation</groupId>
|
||||
<artifactId>javax.annotation-api</artifactId>
|
||||
<version>1.3.2</version>
|
||||
<scope>compile</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>junit</groupId>
|
||||
<artifactId>junit</artifactId>
|
||||
<version>4.12</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.mockito</groupId>
|
||||
<artifactId>mockito-all</artifactId>
|
||||
<version>1.9.5</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.slf4j</groupId>
|
||||
<artifactId>slf4j-log4j12</artifactId>
|
||||
<version>1.7.25</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
</project>
|
||||
73
libthrift-0.20.0.pom
Normal file
73
libthrift-0.20.0.pom
Normal file
|
|
@ -0,0 +1,73 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
||||
<!-- This module was also published with a richer model, Gradle metadata, -->
|
||||
<!-- which should be used instead. Do not delete the following line which -->
|
||||
<!-- is to indicate to Gradle or any Gradle module metadata file consumer -->
|
||||
<!-- that they should prefer consuming it instead. -->
|
||||
<!-- do_not_remove: published-with-gradle-metadata -->
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<groupId>org.apache.thrift</groupId>
|
||||
<artifactId>libthrift</artifactId>
|
||||
<version>0.20.0</version>
|
||||
<name>Apache Thrift</name>
|
||||
<description>Thrift is a software framework for scalable cross-language services development.</description>
|
||||
<url>http://thrift.apache.org</url>
|
||||
<licenses>
|
||||
<license>
|
||||
<name>The Apache Software License, Version 2.0</name>
|
||||
<url>https://www.apache.org/licenses/LICENSE-2.0.txt</url>
|
||||
<distribution>repo</distribution>
|
||||
</license>
|
||||
</licenses>
|
||||
<developers>
|
||||
<developer>
|
||||
<id>dev</id>
|
||||
<name>Apache Thrift Developers</name>
|
||||
<email>dev@thrift.apache.org</email>
|
||||
</developer>
|
||||
</developers>
|
||||
<scm>
|
||||
<connection>scm:git:https://github.com/apache/thrift.git</connection>
|
||||
<developerConnection>scm:git:git@github.com:apache/thrift.git</developerConnection>
|
||||
<url>https://github.com/apache/thrift</url>
|
||||
</scm>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.slf4j</groupId>
|
||||
<artifactId>slf4j-api</artifactId>
|
||||
<version>1.7.36</version>
|
||||
<scope>runtime</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.httpcomponents.client5</groupId>
|
||||
<artifactId>httpclient5</artifactId>
|
||||
<version>5.2.1</version>
|
||||
<scope>runtime</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.httpcomponents.core5</groupId>
|
||||
<artifactId>httpcore5</artifactId>
|
||||
<version>5.2</version>
|
||||
<scope>runtime</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>jakarta.servlet</groupId>
|
||||
<artifactId>jakarta.servlet-api</artifactId>
|
||||
<version>5.0.0</version>
|
||||
<scope>runtime</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>jakarta.annotation</groupId>
|
||||
<artifactId>jakarta.annotation-api</artifactId>
|
||||
<version>2.1.1</version>
|
||||
<scope>runtime</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.commons</groupId>
|
||||
<artifactId>commons-lang3</artifactId>
|
||||
<version>3.12.0</version>
|
||||
<scope>runtime</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
</project>
|
||||
2
sources
2
sources
|
|
@ -1 +1 @@
|
|||
SHA512 (thrift-0.14.0.tar.gz) = 4bf1c9f8f7eeb75c5d70f14657d530a574002846266668c56c1153c6820e6ba199bb462893505cb8cfb7a4cc481b11a4fe84d0d26a3279424c5948f45fa8ce3f
|
||||
SHA512 (thrift-0.20.0.tar.gz) = 8dc77f666e60141a6b3cf7ee1407b08a0e80d176f8ccfee69317d7df89ab87aea2c7b3ba3e59d4561835edf1ce23762443ad5aeed0099bf075b010853d5eb1cd
|
||||
|
|
|
|||
|
|
@ -1,13 +0,0 @@
|
|||
diff --git a/compiler/cpp/src/thrift/generate/t_delphi_generator.cc b/compiler/cpp/src/thrift/generate/t_delphi_generator.cc
|
||||
index d3ad76a32..eac46a6c7 100644
|
||||
--- a/compiler/cpp/src/thrift/generate/t_delphi_generator.cc
|
||||
+++ b/compiler/cpp/src/thrift/generate/t_delphi_generator.cc
|
||||
@@ -1062,7 +1062,7 @@ std::string t_delphi_generator::make_pascal_string_literal(std::string value) {
|
||||
}
|
||||
|
||||
result << "'";
|
||||
- for (char const &c: value) {
|
||||
+ for (signed char const c: value) {
|
||||
if( (c >= 0) && (c < 32)) { // convert ctrl chars, but leave UTF-8 alone
|
||||
result << "#" << (int)c;
|
||||
} else if (c == '\'') {
|
||||
72
thrift.spec
72
thrift.spec
|
|
@ -3,11 +3,6 @@
|
|||
# 9223372036854775800] [-Werror=free-nonheap-object]
|
||||
# https://bugzilla.redhat.com/show_bug.cgi?id=2046213
|
||||
#
|
||||
# Fails to build with gcc 12
|
||||
# https://issues.apache.org/jira/browse/THRIFT-5498
|
||||
#
|
||||
# Work around this for now by disabling LTO:
|
||||
%global _lto_cflags %{nil}
|
||||
|
||||
%global php_extdir %(php-config --extension-dir 2>/dev/null || echo "undefined")
|
||||
|
||||
|
|
@ -75,8 +70,8 @@
|
|||
# NOTE: thrift versions their libraries by package version, so each version
|
||||
# change is a SONAME change and dependencies need to be rebuilt
|
||||
Name: thrift
|
||||
Version: 0.14.0
|
||||
Release: 11%{?dist}
|
||||
Version: 0.20.0
|
||||
Release: 8%{?dist}
|
||||
Summary: Software framework for cross-language services development
|
||||
|
||||
# Parts of the source are used under the BSD and zlib licenses, but
|
||||
|
|
@ -86,7 +81,7 @@ Summary: Software framework for cross-language services development
|
|||
# Here's the breakdown:
|
||||
# ./lib/py/compat/win32/stdint.h is 2-clause BSD
|
||||
# ./compiler/cpp/src/md5.[ch] are zlib
|
||||
License: ASL 2.0 and BSD and zlib
|
||||
License: Apache-2.0 AND BSD-3-Clause AND Zlib
|
||||
URL: https://thrift.apache.org/
|
||||
|
||||
Source0: https://archive.apache.org/dist/%{name}/%{version}/%{name}-%{version}.tar.gz
|
||||
|
|
@ -94,11 +89,10 @@ Source0: https://archive.apache.org/dist/%{name}/%{version}/%{name}-%{version}.t
|
|||
Source1: https://repo1.maven.org/maven2/org/apache/thrift/lib%{name}/%{version}/lib%{name}-%{version}.pom
|
||||
Source2: https://raw.github.com/apache/%{name}/%{version}/bootstrap.sh
|
||||
|
||||
# Fix char warning
|
||||
# https://issues.apache.org/jira/browse/THRIFT-5350
|
||||
Patch0: thrift-char.patch
|
||||
# fix configure.ac insistence on using /usr/local/lib for JAVA_PREFIX
|
||||
Patch2: configure-java-prefix.patch
|
||||
# fix build with GCC 15: https://github.com/apache/thrift/pull/3078
|
||||
Patch3: gcc15.patch
|
||||
|
||||
|
||||
# BuildRequires for language-specific bindings are listed under these
|
||||
|
|
@ -180,7 +174,6 @@ BuildRequires: perl(Bit::Vector)
|
|||
BuildRequires: perl(Class::Accessor)
|
||||
BuildRequires: perl(ExtUtils::MakeMaker)
|
||||
BuildRequires: perl-generators
|
||||
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
|
||||
Requires: perl(Bit::Vector)
|
||||
Requires: perl(Encode)
|
||||
Requires: perl(HTTP::Request)
|
||||
|
|
@ -342,8 +335,8 @@ sed -i 's|$(INSTALL) $$p|$(INSTALL) --mode 644 $$p|g' lib/erl/Makefile.am
|
|||
sh ./bootstrap.sh
|
||||
|
||||
# use unversioned doc dirs where appropriate (via _pkgdocdir macro)
|
||||
export PYTHON=%{_bindir}/python3
|
||||
%configure --disable-dependency-tracking --disable-static --with-boost=/usr \
|
||||
export PYTHON=%{__python3}
|
||||
%configure --disable-dependency-tracking --disable-static --with-boost=%{_prefix} \
|
||||
--docdir=%{?_pkgdocdir}%{!?_pkgdocdir:%{_docdir}/%{name}-%{version}} \
|
||||
%{java_configure} %{ruby_configure} %{erlang_configure} %{golang_configure} %{php_configure} %{lua_configure}
|
||||
|
||||
|
|
@ -374,16 +367,16 @@ find %{buildroot} -name \*.jar -a \! -name \*thrift\* -exec rm -f '{}' \;
|
|||
# Move perl files into appropriate places
|
||||
find %{buildroot} -name \*.pod -exec rm -f '{}' \;
|
||||
find %{buildroot} -name .packlist -exec rm -f '{}' \;
|
||||
find %{buildroot}/usr/lib/perl5 -type d -empty -delete
|
||||
find %{buildroot}%{_prefix}/lib/perl5 -type d -empty -delete
|
||||
mkdir -p %{buildroot}/%{perl_vendorlib}/
|
||||
mv %{buildroot}/usr/lib/perl5/* %{buildroot}/%{perl_vendorlib}
|
||||
mv %{buildroot}%{_prefix}/lib/perl5/* %{buildroot}/%{perl_vendorlib}
|
||||
|
||||
%if 0%{?want_php} != 0
|
||||
|
||||
# Move arch-independent php files into the appropriate place
|
||||
mkdir -p %{buildroot}/%{_datadir}/php/
|
||||
mv %{buildroot}/%{php_extdir}/Thrift %{buildroot}/%{_datadir}/php/
|
||||
%endif # want_php
|
||||
%endif
|
||||
|
||||
# Fix permissions on Thread.h
|
||||
find %{buildroot} -name Thread.h -exec chmod a-x '{}' \;
|
||||
|
|
@ -456,6 +449,51 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r
|
|||
|
||||
|
||||
%changelog
|
||||
* Fri Sep 19 2025 Python Maint <python-maint@redhat.com> - 0.20.0-8
|
||||
- Rebuilt for Python 3.14.0rc3 bytecode
|
||||
|
||||
* Fri Aug 15 2025 Python Maint <python-maint@redhat.com> - 0.20.0-7
|
||||
- Rebuilt for Python 3.14.0rc2 bytecode
|
||||
|
||||
* Fri Jul 25 2025 Fedora Release Engineering <releng@fedoraproject.org> - 0.20.0-6
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
|
||||
|
||||
* Tue Jun 03 2025 Python Maint <python-maint@redhat.com> - 0.20.0-5
|
||||
- Rebuilt for Python 3.14
|
||||
|
||||
* Sun Jan 19 2025 Fedora Release Engineering <releng@fedoraproject.org> - 0.20.0-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
|
||||
|
||||
* Sat Jul 20 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.20.0-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
|
||||
|
||||
* Sat Jun 08 2024 Python Maint <python-maint@redhat.com> - 0.20.0-2
|
||||
- Rebuilt for Python 3.13
|
||||
|
||||
* Fri May 17 2024 Orion Poplawski <orion@nwra.com> - 0.20.0-1
|
||||
- Update to 0.20.0
|
||||
|
||||
* Sat Jan 27 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.15.0-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||
|
||||
* Sat Jul 22 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.15.0-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
|
||||
|
||||
* Fri Jun 16 2023 Orion Poplawski <orion@nwra.com> - 0.15.0-2
|
||||
- Re-enable LTO, seems to be working again
|
||||
|
||||
* Thu Jun 15 2023 Orion Poplawski <orion@nwra.com> - 0.15.0-1
|
||||
- Update to 0.15.0
|
||||
|
||||
* Tue Jun 13 2023 Python Maint <python-maint@redhat.com> - 0.14.0-14
|
||||
- Rebuilt for Python 3.12
|
||||
|
||||
* Sat Jan 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.14.0-13
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
|
||||
|
||||
* Fri Nov 18 2022 Christopher Tubbs <ctubbsii@fedoraproject.org> - 0.14.0-12
|
||||
- Convert license tags to SPDX
|
||||
|
||||
* Sat Jul 23 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.14.0-11
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue