From 6f3133f4c7aa5488376113780be11cbe46c6e560 Mon Sep 17 00:00:00 2001 From: William Benton Date: Mon, 14 Oct 2013 12:02:09 -0500 Subject: [PATCH 01/97] initial import of 0.9.1-7 --- .gitignore | 1 + bootstrap.sh | 46 +++ fb303-0.9.1-buildxml.patch | 167 ++++++++++ libfb303-0.9.1.pom | 104 +++++++ libthrift-0.9.1.pom | 125 ++++++++ manpage.1.ex | 60 ++++ sources | 1 + thrift-0.9.1-buildxml.patch | 246 +++++++++++++++ thrift-0.9.1-rebar.patch | 9 + thrift.spec | 588 ++++++++++++++++++++++++++++++++++++ 10 files changed, 1347 insertions(+) create mode 100644 bootstrap.sh create mode 100644 fb303-0.9.1-buildxml.patch create mode 100644 libfb303-0.9.1.pom create mode 100644 libthrift-0.9.1.pom create mode 100644 manpage.1.ex create mode 100644 thrift-0.9.1-buildxml.patch create mode 100644 thrift-0.9.1-rebar.patch create mode 100644 thrift.spec diff --git a/.gitignore b/.gitignore index e69de29..8f68e6a 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1 @@ +/0.9.1.tar.gz diff --git a/bootstrap.sh b/bootstrap.sh new file mode 100644 index 0000000..0c2b886 --- /dev/null +++ b/bootstrap.sh @@ -0,0 +1,46 @@ +#!/bin/sh + +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# + +./cleanup.sh +if test -d lib/php/src/ext/thrift_protocol ; then + if phpize -v >/dev/null 2>/dev/null ; then + (cd lib/php/src/ext/thrift_protocol && phpize) + fi +fi + +set -e + +# libtoolize is called "glibtoolize" on OSX. +if libtoolize --version 1 >/dev/null 2>/dev/null; then + LIBTOOLIZE=libtoolize +elif glibtoolize --version 1 >/dev/null 2>/dev/null; then + LIBTOOLIZE=glibtoolize +else + echo >&2 "Couldn't find libtoolize!" + exit 1 +fi + +autoscan +$LIBTOOLIZE --copy --automake +aclocal -I ./aclocal +autoheader +autoconf +automake --copy --add-missing --foreign diff --git a/fb303-0.9.1-buildxml.patch b/fb303-0.9.1-buildxml.patch new file mode 100644 index 0000000..ec51503 --- /dev/null +++ b/fb303-0.9.1-buildxml.patch @@ -0,0 +1,167 @@ +diff --git a/contrib/fb303/java/build.xml b/contrib/fb303/java/build.xml +index 8f2fa51..d89f05e 100755 +--- a/contrib/fb303/java/build.xml ++++ b/contrib/fb303/java/build.xml +@@ -17,8 +17,7 @@ + specific language governing permissions and limitations + under the License. + --> +- ++ + + + +@@ -26,7 +25,7 @@ + + + +- ++ + + + +@@ -38,8 +37,8 @@ + + + +- +- ++ ++ + + + +@@ -50,7 +49,7 @@ + + + +- ++ + + + +@@ -72,13 +71,21 @@ + + + +- ++ + + +- +- +- ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ + ++ + + + +@@ -99,97 +106,4 @@ + + + +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- + diff --git a/libfb303-0.9.1.pom b/libfb303-0.9.1.pom new file mode 100644 index 0000000..29d0dff --- /dev/null +++ b/libfb303-0.9.1.pom @@ -0,0 +1,104 @@ + + + 4.0.0 + org.apache.thrift + libfb303 + 0.9.1 + pom + Apache Thrift + Thrift is a software framework for scalable cross-language services development. + http://thrift.apache.org + + + The Apache Software License, Version 2.0 + http://www.apache.org/licenses/LICENSE-2.0.txt + + + + + mcslee + Mark Slee + + + dreiss + David Reiss + + + aditya + Aditya Agarwal + + + marck + Marc Kwiatkowski + + + jwang + James Wang + + + cpiro + Chris Piro + + + bmaurer + Ben Maurer + + + kclark + Kevin Clark + + + jake + Jake Luciani + + + bryanduxbury + Bryan Duxbury + + + esteve + Esteve Fernandez + + + todd + Todd Lipcon + + + geechorama + Andrew McGeachie + + + molinaro + Anthony Molinaro + + + roger + Roger Meier + + + jfarrell + Jake Farrell + + + jensg + Jens Geyer + + + carl + Carl Yeksigian + + + + scm:git:https://git-wip-us.apache.org/repos/asf/thrift.git + scm:git:https://git-wip-us.apache.org/repos/asf/thrift.git + https://git-wip-us.apache.org/repos/asf?p=thrift.git + + + + org.apache.thrift + libthrift + 0.9.1 + + + diff --git a/libthrift-0.9.1.pom b/libthrift-0.9.1.pom new file mode 100644 index 0000000..9a146f0 --- /dev/null +++ b/libthrift-0.9.1.pom @@ -0,0 +1,125 @@ + + + 4.0.0 + org.apache.thrift + libthrift + 0.9.1 + pom + Apache Thrift + Thrift is a software framework for scalable cross-language services development. + http://thrift.apache.org + + + The Apache Software License, Version 2.0 + http://www.apache.org/licenses/LICENSE-2.0.txt + + + + + mcslee + Mark Slee + + + dreiss + David Reiss + + + aditya + Aditya Agarwal + + + marck + Marc Kwiatkowski + + + jwang + James Wang + + + cpiro + Chris Piro + + + bmaurer + Ben Maurer + + + kclark + Kevin Clark + + + jake + Jake Luciani + + + bryanduxbury + Bryan Duxbury + + + esteve + Esteve Fernandez + + + todd + Todd Lipcon + + + geechorama + Andrew McGeachie + + + molinaro + Anthony Molinaro + + + roger + Roger Meier + + + jfarrell + Jake Farrell + + + jensg + Jens Geyer + + + carl + Carl Yeksigian + + + + scm:git:https://git-wip-us.apache.org/repos/asf/thrift.git + scm:git:https://git-wip-us.apache.org/repos/asf/thrift.git + https://git-wip-us.apache.org/repos/asf?p=thrift.git + + + + org.slf4j + slf4j-api + 1.5.8 + + + org.apache.commons + commons-lang3 + 3.1 + + + javax.servlet + servlet-api + 2.5 + provided + + + org.apache.httpcomponents + httpclient + 4.2.5 + + + org.apache.httpcomponents + httpcore + 4.2.4 + + + diff --git a/manpage.1.ex b/manpage.1.ex new file mode 100644 index 0000000..160f57b --- /dev/null +++ b/manpage.1.ex @@ -0,0 +1,60 @@ +.\" Hey, EMACS: -*- nroff -*- +.\" First parameter, NAME, should be all caps +.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection +.\" other parameters are allowed: see man(7), man(1) +.TH THRIFT SECTION "June 27, 2010" +.\" Please adjust this date whenever revising the manpage. +.\" +.\" Some roff macros, for reference: +.\" .nh disable hyphenation +.\" .hy enable hyphenation +.\" .ad l left justify +.\" .ad b justify to both left and right margins +.\" .nf disable filling +.\" .fi enable filling +.\" .br insert line break +.\" .sp insert n+1 empty lines +.\" for manpage-specific macros, see man(7) +.SH NAME +thrift \- program to do something +.SH SYNOPSIS +.B thrift +.RI [ options ] " files" ... +.br +.B bar +.RI [ options ] " files" ... +.SH DESCRIPTION +This manual page documents briefly the +.B thrift +and +.B bar +commands. +.PP +.\" TeX users may be more comfortable with the \fB\fP and +.\" \fI\fP escape sequences to invode bold face and italics, +.\" respectively. +\fBthrift\fP is a program that... +.SH OPTIONS +These programs follow the usual GNU command line syntax, with long +options starting with two dashes (`-'). +A summary of options is included below. +For a complete description, see the Info files. +.TP +.B \-h, \-\-help +Show summary of options. +.TP +.B \-v, \-\-version +Show version of program. +.SH SEE ALSO +.BR bar (1), +.BR baz (1). +.br +The programs are documented fully by +.IR "The Rise and Fall of a Fooish Bar" , +available via the Info system. +.SH AUTHOR +thrift was written by . +.PP +This manual page was written by Krzysztof Krzyżaniak (eloy) , +for the Debian project (and may be used by others). + diff --git a/sources b/sources index e69de29..d078a98 100644 --- a/sources +++ b/sources @@ -0,0 +1 @@ +147e8f2d3e48a272559aea554afdaf81 0.9.1.tar.gz diff --git a/thrift-0.9.1-buildxml.patch b/thrift-0.9.1-buildxml.patch new file mode 100644 index 0000000..444c6ec --- /dev/null +++ b/thrift-0.9.1-buildxml.patch @@ -0,0 +1,246 @@ +diff --git a/lib/java/build.xml b/lib/java/build.xml +index c2bfd9c..69525e7 100755 +--- a/lib/java/build.xml ++++ b/lib/java/build.xml +@@ -17,8 +17,7 @@ + specific language governing permissions and limitations + under the License. + --> +- ++ + + Thrift Build File + +@@ -64,8 +63,15 @@ + + + +- +- ++ ++ ++ ++ ++ ++ ++ ++ ++ + + + +@@ -75,10 +81,14 @@ + + + ++ ++ ++ ++ + + + +- ++ + + + +@@ -262,121 +272,12 @@ + + + +- + + + +- +- +- + + +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ++ + + +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- + +diff --git a/tutorial/java/build.xml b/tutorial/java/build.xml +index eceeca7..bc6a837 100644 +--- a/tutorial/java/build.xml ++++ b/tutorial/java/build.xml +@@ -29,13 +29,33 @@ + + + +- +- ++ ++ ++ ++ ++ ++ ++ ++ ++ + + + +- + ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ + + + +@@ -50,8 +70,8 @@ + + + +- +- ++ ++ + + + +diff --git a/tutorial/js/build.xml b/tutorial/js/build.xml +index 73d535d..e3ee1e2 100644 +--- a/tutorial/js/build.xml ++++ b/tutorial/js/build.xml +@@ -35,8 +35,16 @@ + + + +- +- ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ + + + diff --git a/thrift-0.9.1-rebar.patch b/thrift-0.9.1-rebar.patch new file mode 100644 index 0000000..6207c13 --- /dev/null +++ b/thrift-0.9.1-rebar.patch @@ -0,0 +1,9 @@ +--- a/lib/erl/rebar.config 2013-08-21 15:39:39.121081905 -0500 ++++ b/lib/erl/rebar.config 2013-08-21 15:43:19.351633734 -0500 +@@ -1,5 +1,4 @@ + {erl_opts, [debug_info]}. + {lib_dirs, ["deps"]}. + {deps, [ +- { jsx, "1.2.1", {git, "git://github.com/talentdeficit/jsx.git", {tag, "v1.2.1"}}} +- ]}. ++]}. diff --git a/thrift.spec b/thrift.spec new file mode 100644 index 0000000..b3da7cb --- /dev/null +++ b/thrift.spec @@ -0,0 +1,588 @@ +%global pkg_version 0.9.1 +%global fb303_version 1.0.0_dev +%global pkg_rel 7 + +%global py_version 2.7 + +%global php_extdir %(php-config --extension-dir 2>/dev/null || echo "undefined") + +%{?perl_default_filter} +%global __provides_exclude_from ^(%{python_sitearch}/.*\\.so|%{php_extdir}/.*\\.so)$ + +%global have_mongrel 0 + +%if 0%{?fedora} >= 19 +# erlang-jsx is available in F19 +%global have_jsx 1 +%else +%global have_jsx 0 +%endif + +# We should be able to enable this in the future +%global want_d 0 + +# Thrift's Ruby support depends on Mongrel. Since Mongrel is +# deprecated in Fedora, we can't support Ruby bindings for Thrift +# unless and until Thrift is patched to use a different HTTP server. +%if 0%{?have_mongrel} == 0 +%global ruby_configure --without-ruby +%global with_ruby 0 +%else +%global ruby_configure --with-ruby +%global want_ruby 1 +%endif + +# Thrift's Erlang support depends on the JSX library, which is not +# currently available in Fedora. + +%if 0%{?have_jsx} == 0 +%global erlang_configure --without-erlang +%global want_erlang 0 +%else +%global erlang_configure --with-erlang +%global want_erlang 1 +%endif + +# PHP appears broken in Thrift 0.9.1 +%global want_php 0 + +%if 0%{?want_php} == 0 +%global php_langname %{nil} +%global php_configure --without-php +%else +%global php_langname PHP,\ +%global php_configure --with-php +%endif + +# Thrift's GO support doesn't build under Fedora +%global want_golang 0 +%global golang_configure --without-go + +Name: thrift +Version: %{pkg_version} +Release: %{pkg_rel}%{?dist} +Summary: Software framework for cross-language services development + +# Parts of the source are used under the BSD and zlib licenses, but +# these are OK for inclusion in an Apache 2.0-licensed whole: +# http://www.apache.org/legal/3party.html + +# Here's the breakdown: +# thrift-0.9.1/lib/py/compat/win32/stdint.h is 2-clause BSD +# thrift-0.9.1/compiler/cpp/src/md5.[ch] are zlib +License: ASL 2.0 and BSD and zlib +URL: http://thrift.apache.org/ + +%if "%{version}" != "0.9.1" +Source0: http://archive.apache.org/dist/%{name}/%{version}/%{name}-%{version}.tar.gz +%else +# Unfortunately, the distribution tarball for thrift-0.9.1 is broken, so we're +# using an exported tarball from git. This will change in the future. + +Source0: https://github.com/apache/thrift/archive/0.9.1.tar.gz +%endif + +Source1: http://repo1.maven.org/maven2/org/apache/thrift/lib%{name}/%{version}/lib%{name}-%{version}.pom +Source2: https://raw.github.com/apache/%{name}/%{version}/bootstrap.sh + +Source3: https://gitorious.org/pkg-scribe/thrift-deb-pkg/raw/master:debian/manpage.1.ex +Source4: http://repo1.maven.org/maven2/org/apache/thrift/libfb303/%{version}/libfb303-%{version}.pom + +# this patch is adapted from Gil Cattaneo's thrift-0.7.0 package +Patch0: thrift-0.9.1-buildxml.patch +# don't use bundled rebar executable +Patch1: thrift-0.9.1-rebar.patch +# for fb303, excise maven ant tasks; build against system libraries; etc. +Patch2: fb303-0.9.1-buildxml.patch + +Group: Development/Libraries + +# BuildRequires for language-specific bindings are listed under these +# subpackages, to facilitate enabling or disabling individual language +# bindings in the future + +BuildRequires: libstdc++-devel +BuildRequires: boost-devel +BuildRequires: automake +BuildRequires: autoconf +BuildRequires: openssl-devel +BuildRequires: zlib-devel +BuildRequires: bison-devel +BuildRequires: flex-devel +BuildRequires: mono-devel +BuildRequires: glib2-devel +BuildRequires: texlive +BuildRequires: qt-devel + +BuildRequires: libtool +BuildRequires: autoconf +BuildRequires: automake + +BuildRequires: bison +BuildRequires: flex +BuildRequires: bison-devel +BuildRequires: flex-devel + +BuildRequires: ant + +Requires: openssl +Requires: boost +Requires: bison +Requires: flex +Requires: mono-core + +Requires: qt4 + +%if 0%{?want_golang} > 0 +BuildRequires: golang +Requires: golang +%endif + +%description + +The Apache Thrift software framework for cross-language services +development combines a software stack with a code generation engine to +build services that work efficiently and seamlessly between C++, Java, +Python, %{?php_langname}and other languages. + +%package devel +Summary: Development files for %{name} +Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: pkgconfig + +%description devel +The %{name}-devel package contains libraries and header files for +developing applications that use %{name}. + +%package -n python-%{name} +Summary: Python support for %{name} +BuildRequires: python2-devel +Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: python2 + +%description -n python-%{name} +The python-%{name} package contains Python bindings for %{name}. + +%package -n perl-%{name} +Summary: Perl support for %{name} +Provides: perl(Thrift) = %{version}-%{release} +BuildRequires: perl(Bit::Vector) +BuildRequires: perl(ExtUtils::MakeMaker) +Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version)) +Requires: perl(Bit::Vector) +Requires: perl(Encode) +Requires: perl(HTTP::Request) +Requires: perl(IO::Select) +Requires: perl(IO::Socket::INET) +Requires: perl(IO::String) +Requires: perl(LWP::UserAgent) +Requires: perl(POSIX) +Requires: perl(base) +Requires: perl(constant) +Requires: perl(strict) +Requires: perl(utf8) +Requires: perl(warnings) +BuildArch: noarch + +%description -n perl-%{name} +The perl-%{name} package contains Perl bindings for %{name}. + +%if %{?want_d} +%package -n d-%{name} +Summary: D support for %{name} +BuildRequires: ldc + +%description -n d-%{name} +The d-%{name} package contains D bindings for %{name}. +%endif + +%if 0%{?want_php} != 0 +%package -n php-%{name} +Summary: PHP support for %{name} +Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: php(zend-abi) = %{php_zend_api} +Requires: php(api) = %{php_core_api} +Requires: php(language) >= 5.3.0 +Requires: php-date +Requires: php-json +BuildRequires: php-devel + +%description -n php-%{name} +The php-%{name} package contains PHP bindings for %{name}. +%endif + +%package -n lib%{name}-javadoc +Summary: API documentation for java-%{name} +Requires: lib%{name}-java = %{version}-%{release} +BuildArch: noarch + +%description -n lib%{name}-javadoc +The lib%{name}-javadoc package contains API documentation for the +Java bindings for %{name}. + +%package -n lib%{name}-java +Summary: Java support for %{name} + +BuildRequires: java-devel +BuildRequires: javapackages-tools +BuildRequires: apache-commons-codec +BuildRequires: apache-commons-lang +BuildRequires: apache-commons-logging +BuildRequires: httpcomponents-client +BuildRequires: httpcomponents-core +BuildRequires: junit +BuildRequires: log4j +BuildRequires: slf4j +BuildRequires: tomcat-servlet-3.0-api + +Requires: java >= 1:1.6.0 +Requires: javapackages-tools +Requires: mvn(org.slf4j:slf4j-api) +Requires: mvn(commons-lang:commons-lang) +Requires: mvn(org.apache.httpcomponents:httpclient) +Requires: mvn(org.apache.httpcomponents:httpcore) +BuildArch: noarch + + +%description -n lib%{name}-java +The lib%{name}-java package contains Java bindings for %{name}. + +%if 0%{?want_ruby} > 0 +%package -n ruby-%{name} +Summary: Ruby support for %{name} +Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: ruby(release) +BuildRequires: ruby-devel + +%description -n ruby-%{name} +The ruby-%{name} package contains Ruby bindings for %{name}. +%endif + +%if 0%{?want_erlang} > 0 +%package -n erlang-%{name} +Summary: Erlang support for %{name} +Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: erlang +Requires: erlang-jsx +BuildRequires: erlang +BuildRequires: erlang-rebar + +%description -n erlang-%{name} +The erlang-%{name} package contains Erlang bindings for %{name}. +%endif + +%package -n fb303 +Summary: Basic interface for Thrift services +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description -n fb303 +fb303 is the shared root of all Thrift services; it provides a +standard interface to monitoring, dynamic options and configuration, +uptime reports, activity, etc. + +%package -n fb303-devel +Summary: Development files for fb303 +Requires: fb303%{?_isa} = %{version}-%{release} + +%description -n fb303-devel +The fb303-devel package contains header files for fb303 + +%package -n python-fb303 +Summary: Python bindings for fb303 +Requires: fb303%{?_isa} = %{version}-%{release} +BuildRequires: python2-devel + +%description -n python-fb303 +The python-fb303 package contains Python bindings for fb303. + +%package -n fb303-java +Summary: Java bindings for fb303 +Requires: java >= 1:1.6.0 +Requires: javapackages-tools +Requires: mvn(org.slf4j:slf4j-api) +Requires: mvn(commons-lang:commons-lang) +Requires: mvn(org.apache.httpcomponents:httpclient) +Requires: mvn(org.apache.httpcomponents:httpcore) +BuildArch: noarch + +%description -n fb303-java +The fb303-java package contains Java bindings for fb303. + +%global _default_patch_fuzz 2 +%prep +%setup -q +%patch0 -p1 +%patch1 -p1 +%patch2 -p1 + +%{?!el5:sed -i -e 's/^AC_PROG_LIBTOOL/LT_INIT/g' configure.ac} + +# avoid spurious executable permissions in debuginfo package +find . -name \*.cpp -or -name \*.cc -or -name \*.h | xargs -r chmod 644 + +cp -p %{SOURCE2} bootstrap.sh + +# work around linking issues +echo 'libthrift_c_glib_la_LIBADD = $(GLIB_LIBS) $(GOBJECT_LIBS) -L../cpp/.libs ' >> lib/c_glib/Makefile.am +echo 'libthriftqt_la_LIBADD = $(QT_LIBS) -lthrift -L.libs' >> lib/cpp/Makefile.am +echo 'libthriftz_la_LIBADD = $(ZLIB_LIBS) -lthrift -L.libs' >> lib/cpp/Makefile.am +echo 'EXTRA_libthriftqt_la_DEPENDENCIES = libthrift.la' >> lib/cpp/Makefile.am +echo 'EXTRA_libthriftz_la_DEPENDENCIES = libthrift.la' >> lib/cpp/Makefile.am + +# echo 'libfb303_so_LIBADD = -lthrift -L../../../lib/cpp/.libs' >> contrib/fb303/cpp/Makefile.am + +sed -i 's|libfb303_so_LDFLAGS = $(SHARED_LDFLAGS)|libfb303_so_LDFLAGS = $(SHARED_LDFLAGS) -lthrift -L../../../lib/cpp/.libs -Wl,--as-needed|g' contrib/fb303/cpp/Makefile.am + +%build +export PY_PREFIX=%{_prefix} +export PERL_PREFIX=%{_prefix} +export PHP_PREFIX=%{php_extdir} +export JAVA_PREFIX=%{_javadir} +export RUBY_PREFIX=%{_prefix} +export GLIB_LIBS=$(pkg-config --libs glib-2.0) +export GLIB_CFLAGS=$(pkg-config --cflags glib-2.0) +export GOBJECT_LIBS=$(pkg-config --libs gobject-2.0) +export GOBJECT_CFLAGS=$(pkg-config --cflags gobject-2.0) + +find %{_builddir} -name rebar -exec rm -f '{}' \; +find . -name Makefile\* -exec sed -i -e 's/[.][/]rebar/rebar/g' {} \; + +# install javadocs in proper places +sed -i 's|-Dinstall.javadoc.path=$(DESTDIR)$(docdir)/java|-Dinstall.javadoc.path=$(DESTDIR)%{_javadocdir}/%{name}|' lib/java/Makefile.* + +# build a jar without a version number +sed -i 's|${thrift.artifactid}-${version}|${thrift.artifactid}|' lib/java/build.xml + +# Proper permissions for Erlang files +sed -i 's|$(INSTALL) $$p|$(INSTALL) --mode 644 $$p|g' lib/erl/Makefile.am + +# Build fb303 jars against the in-situ copy of thrift +sed -i 's|$(thrift_home)/bin/thrift|../../../compiler/cpp/thrift|g' \ + contrib/fb303/cpp/Makefile.am \ + contrib/fb303/py/Makefile.am + +sed -i 's|$(prefix)/lib$|%{_libdir}|g' contrib/fb303/cpp/Makefile.am + +sed -i 's|$(thrift_home)/include/thrift|../../../lib/cpp/src|g' \ + contrib/fb303/cpp/Makefile.am + +# Create a straightforward makefile for Java fb303 +echo "all: + ant +install: build/libfb303.jar + mkdir -p %{buildroot}%{_javadir} + /usr/bin/install -c -m 644 build/libfb303.jar %{buildroot}%{_javadir} +" > contrib/fb303/java/Makefile + +sh ./bootstrap.sh + +# use unversioned doc dirs where appropriate (via _pkgdocdir macro) +%configure --disable-dependency-tracking --disable-static --without-libevent --with-boost=/usr %{ruby_configure} %{erlang_configure} %{golang_configure} %{php_configure} --docdir=%{?_pkgdocdir}%{!?_pkgdocdir:%{_docdir}/%{name}-%{version}} + +# eliminate unused direct shlib dependencies +sed -i -e 's/ -shared / -Wl,--as-needed\0/g' libtool + +make %{?_smp_mflags} + +# build fb303 +( + cd contrib/fb303 + chmod 755 bootstrap.sh + sh bootstrap.sh + %configure --disable-static --with-java --without-php --libdir=%{_libdir} + make %{?_smp_mflags} + ( + cd java + ant dist + ) +) + +%install +%make_install +find %{buildroot} -name '*.la' -exec rm -f {} ';' +find %{buildroot} -name fastbinary.so | xargs -r chmod 755 +find %{buildroot} -name \*.erl -or -name \*.hrl -or -name \*.app | xargs -r chmod 644 + +# install man page +mkdir -p %{buildroot}%{_mandir}/man1 +cp %{SOURCE3} %{buildroot}%{_mandir}/man1/thrift.1 +gzip -9v %{buildroot}%{_mandir}/man1/thrift.1 + +# Remove javadocs jar +find %{buildroot}/%{_javadir} -name lib%{name}-javadoc.jar -exec rm -f '{}' \; + +# Add POM file and depmap +mkdir -p %{buildroot}%{_mavenpomdir} + +install -pm 644 %{SOURCE1} %{buildroot}%{_mavenpomdir}/JPP-libthrift.pom + +%add_maven_depmap JPP-libthrift.pom libthrift.jar + +# Remove bundled jar files +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 +mkdir -p %{buildroot}/%{perl_vendorlib}/ +mv %{buildroot}/usr/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 + +# Fix permissions on Thread.h +find %{buildroot} -name Thread.h -exec chmod a-x '{}' \; + +# install fb303 +( + cd contrib/fb303 + make DESTDIR=%{buildroot} install + ( + cd java + ant -Dinstall.path=%{buildroot}%{_javadir} -Dinstall.javadoc.path=%{buildroot}%{_javadocdir}/fb303 install + ) +) + +# install maven pom and depmaps for fb303 +install -pm 644 %{SOURCE4} %{buildroot}%{_mavenpomdir}/JPP-libfb303.pom +%add_maven_depmap JPP-libfb303.pom libfb303.jar -f "fb303" + +# Ensure all python scripts are executable +find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r chmod 755 + + +%post -p /sbin/ldconfig + +%postun -p /sbin/ldconfig + + +%files +%doc LICENSE NOTICE +%{_bindir}/thrift +%{_libdir}/*.so.* +%{_mandir}/man1/thrift.1.gz + +%files devel +%{_includedir}/thrift +%exclude %{_includedir}/thrift/fb303 +%{_libdir}/*.so +%exclude %{_libdir}/libfb303.so +%{_libdir}/pkgconfig/thrift-z.pc +%{_libdir}/pkgconfig/thrift-qt.pc +%{_libdir}/pkgconfig/thrift.pc +%{_libdir}/pkgconfig/thrift_c_glib.pc +%doc LICENSE NOTICE + +%files -n perl-%{name} +%{perl_vendorlib}/Thrift +%{perl_vendorlib}/Thrift.pm +%doc LICENSE NOTICE + +%if 0%{?want_php} != 0 +%files -n php-%{name} +%config(noreplace) /etc/php.d/thrift_protocol.ini +%{_datadir}/php/Thrift/ +%{php_extdir}/thrift_protocol.so +%doc LICENSE NOTICE +%endif + +%if %{?want_erlang} > 0 +%files -n erlang-%{name} +%{_libdir}/erlang/lib/%{name}-%{version}/ +%doc LICENSE NOTICE +%endif + +%files -n python-%{name} +%{python_sitearch}/%{name} +%{python_sitearch}/%{name}-%{version}-py%{py_version}.egg-info +%doc LICENSE NOTICE + +%files -n lib%{name}-javadoc +%{_javadocdir}/%{name} +%doc LICENSE NOTICE + +%files -n lib%{name}-java +%{_javadir}/lib%{name}.jar +%{_mavenpomdir}/JPP-lib%{name}.pom +%{_mavendepmapfragdir}/%{name} +%doc LICENSE NOTICE + +%files -n fb303 +%{_datarootdir}/fb303 +%doc LICENSE NOTICE + +%files -n fb303-devel +%{_libdir}/libfb303.so +%{_includedir}/thrift/fb303 +%doc LICENSE NOTICE + +%files -n python-fb303 +%{python_sitelib}/fb303 +%{python_sitelib}/fb303_scripts +%{python_sitelib}/%{name}_fb303-%{fb303_version}-py%{py_version}.egg-info +%doc LICENSE NOTICE + +%files -n fb303-java +%{_javadir}/libfb303.jar +%{_mavenpomdir}/JPP-libfb303.pom +%{_mavendepmapfragdir}/thrift-fb303 +%doc LICENSE NOTICE + + + +%changelog + +* Sun Oct 13 2013 willb - 0.9.1-7 +- minor specfile cleanups + +* Fri Oct 11 2013 willb - 0.9.1-6 +- added thrift man page +- integrated fb303 +- fixed many fb303 library dependency problems + +* Tue Oct 1 2013 willb - 0.9.1-5 +- fixed extension library linking when an older thrift package is not + already installed +- fixed extension library dependencies in Makefile + +* Tue Oct 1 2013 willb - 0.9.1-4 +- addresses rpmlint warnings and errors +- properly links glib, qt, and z extension libraries + +* Mon Sep 30 2013 willb - 0.9.1-3 +- adds QT support +- clarified multiple licensing +- uses parallel make +- removes obsolete M4 macros +- specifies canonical location for source archive + +* Tue Sep 24 2013 willb - 0.9.1-2 +- fixes for i686 +- fixes bogus requires for Java package + +* Fri Sep 20 2013 willb - 0.9.1-1 +- updated to upstream version 0.9.1 +- disables PHP support, which FTBFS in this version + +* Fri Sep 20 2013 willb - 0.9.0-5 +- patch build xml to generate unversioned jars instead of moving after the fact +- unversioned doc dirs on Fedora versions where this is appropriate +- replaced some stray hardcoded paths with macros +- thanks to Gil for the above observations and suggestions for fixes + +* Thu Aug 22 2013 willb - 0.9.0-4 +- removed version number from jar name (obs pmackinn) + +* Thu Aug 22 2013 willb - 0.9.0-3 +- Fixes for F19 and Erlang support + +* Thu Aug 15 2013 willb - 0.9.0-2 +- Incorporates feedback from comments on review request + +* Mon Jul 1 2013 willb - 0.9.0-1 +- Initial package From a429a0696aa087c7cd0fd365fd363bbd847734fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dan=20Hor=C3=A1k?= Date: Wed, 16 Oct 2013 12:07:17 +0200 Subject: [PATCH 02/97] - Mono available only on selected arches --- thrift.spec | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index b3da7cb..c6c147f 100644 --- a/thrift.spec +++ b/thrift.spec @@ -1,6 +1,6 @@ %global pkg_version 0.9.1 %global fb303_version 1.0.0_dev -%global pkg_rel 7 +%global pkg_rel 8 %global py_version 2.7 @@ -109,7 +109,9 @@ BuildRequires: openssl-devel BuildRequires: zlib-devel BuildRequires: bison-devel BuildRequires: flex-devel +%ifarch %{mono_arches} BuildRequires: mono-devel +%endif BuildRequires: glib2-devel BuildRequires: texlive BuildRequires: qt-devel @@ -129,7 +131,9 @@ Requires: openssl Requires: boost Requires: bison Requires: flex +%ifarch %{mono_arches} Requires: mono-core +%endif Requires: qt4 @@ -536,6 +540,8 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Wed Oct 16 2013 Dan Horák - 0.9.1-8 +- Mono available only on selected arches * Sun Oct 13 2013 willb - 0.9.1-7 - minor specfile cleanups From 80f1fe9443f59c60da731c308ca496cc642094a9 Mon Sep 17 00:00:00 2001 From: William Benton Date: Wed, 16 Oct 2013 14:16:08 -0500 Subject: [PATCH 03/97] fixed spurious deps and misfiled versioned shlibs --- thrift.spec | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/thrift.spec b/thrift.spec index c6c147f..5ebea3a 100644 --- a/thrift.spec +++ b/thrift.spec @@ -1,6 +1,6 @@ %global pkg_version 0.9.1 %global fb303_version 1.0.0_dev -%global pkg_rel 8 +%global pkg_rel 9 %global py_version 2.7 @@ -127,16 +127,10 @@ BuildRequires: flex-devel BuildRequires: ant -Requires: openssl -Requires: boost -Requires: bison -Requires: flex %ifarch %{mono_arches} Requires: mono-core %endif -Requires: qt4 - %if 0%{?want_golang} > 0 BuildRequires: golang Requires: golang @@ -469,12 +463,14 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %{_bindir}/thrift %{_libdir}/*.so.* +%{_libdir}/lib*-%{version}.so %{_mandir}/man1/thrift.1.gz %files devel %{_includedir}/thrift %exclude %{_includedir}/thrift/fb303 %{_libdir}/*.so +%exclude %{_libdir}/lib*-%{version}.so %exclude %{_libdir}/libfb303.so %{_libdir}/pkgconfig/thrift-z.pc %{_libdir}/pkgconfig/thrift-qt.pc @@ -540,6 +536,10 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Wed Oct 16 2013 willb - 0.9.1-9 +- Remove spurious dependencies +- Move some versioned shared libraries from -devel + * Wed Oct 16 2013 Dan Horák - 0.9.1-8 - Mono available only on selected arches From 2f2f8ddbf177135cc43d1994ba42968d4995ced1 Mon Sep 17 00:00:00 2001 From: William Benton Date: Fri, 20 Dec 2013 12:07:32 -0600 Subject: [PATCH 04/97] fixes BZ 1045544 --- thrift.spec | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 5ebea3a..ff191e9 100644 --- a/thrift.spec +++ b/thrift.spec @@ -1,6 +1,6 @@ %global pkg_version 0.9.1 %global fb303_version 1.0.0_dev -%global pkg_rel 9 +%global pkg_rel 10 %global py_version 2.7 @@ -147,6 +147,7 @@ Python, %{?php_langname}and other languages. Summary: Development files for %{name} Requires: %{name}%{?_isa} = %{version}-%{release} Requires: pkgconfig +Requires: boost-devel %description devel The %{name}-devel package contains libraries and header files for @@ -536,6 +537,10 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog + +* Fri Dec 20 2013 willb - 0.9.1-10 +- fix BZ 1045544 + * Wed Oct 16 2013 willb - 0.9.1-9 - Remove spurious dependencies - Move some versioned shared libraries from -devel From dc1dbff43e70f293ddd7bc26eef30911a9bf5d1a Mon Sep 17 00:00:00 2001 From: William Benton Date: Fri, 21 Feb 2014 08:53:32 -0600 Subject: [PATCH 05/97] fix bz 1068561 --- thrift.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/thrift.spec b/thrift.spec index ff191e9..bb82fd5 100644 --- a/thrift.spec +++ b/thrift.spec @@ -1,6 +1,6 @@ %global pkg_version 0.9.1 %global fb303_version 1.0.0_dev -%global pkg_rel 10 +%global pkg_rel 11 %global py_version 2.7 @@ -234,7 +234,7 @@ BuildRequires: log4j BuildRequires: slf4j BuildRequires: tomcat-servlet-3.0-api -Requires: java >= 1:1.6.0 +Requires: java-headless >= 1:1.6.0 Requires: javapackages-tools Requires: mvn(org.slf4j:slf4j-api) Requires: mvn(commons-lang:commons-lang) @@ -538,6 +538,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Fri Feb 21 2014 willb - 0.9.1-11 +- fix BZ 1068561 + * Fri Dec 20 2013 willb - 0.9.1-10 - fix BZ 1045544 From c4ec814e7156c433fb988ff1714754588f1be9c2 Mon Sep 17 00:00:00 2001 From: Lubomir Rintel Date: Mon, 5 May 2014 11:39:14 +0200 Subject: [PATCH 06/97] Fix EPEL build --- thrift.spec | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/thrift.spec b/thrift.spec index bb82fd5..a1dbc0a 100644 --- a/thrift.spec +++ b/thrift.spec @@ -1,6 +1,6 @@ %global pkg_version 0.9.1 %global fb303_version 1.0.0_dev -%global pkg_rel 11 +%global pkg_rel 12 %global py_version 2.7 @@ -54,6 +54,16 @@ %global php_configure --with-php %endif +%if 0%{?rhel} +%global want_mono 0 +%else +%ifarch %{mono_arches} +%global want_mono 1 +%else +%global want_mono 0 +%endif +%endif + # Thrift's GO support doesn't build under Fedora %global want_golang 0 %global golang_configure --without-go @@ -109,7 +119,7 @@ BuildRequires: openssl-devel BuildRequires: zlib-devel BuildRequires: bison-devel BuildRequires: flex-devel -%ifarch %{mono_arches} +%if %{want_mono} BuildRequires: mono-devel %endif BuildRequires: glib2-devel @@ -127,7 +137,7 @@ BuildRequires: flex-devel BuildRequires: ant -%ifarch %{mono_arches} +%if %{want_mono} Requires: mono-core %endif @@ -537,6 +547,8 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Mon May 05 2014 Lubomir Rintel - 0.9.1-12 +- Fix EPEL build * Fri Feb 21 2014 willb - 0.9.1-11 - fix BZ 1068561 From a2e6a685cce44b47fac1ebad4747e3b78fc888b0 Mon Sep 17 00:00:00 2001 From: Petr Machata Date: Fri, 23 May 2014 04:42:07 +0200 Subject: [PATCH 07/97] Rebuild for boost 1.55.0 --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index a1dbc0a..0f4909c 100644 --- a/thrift.spec +++ b/thrift.spec @@ -70,7 +70,7 @@ Name: thrift Version: %{pkg_version} -Release: %{pkg_rel}%{?dist} +Release: %{pkg_rel}%{?dist}.1 Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -547,6 +547,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Fri May 23 2014 Petr Machata - 0.9.1-12.1 +- Rebuild for boost 1.55.0 + * Mon May 05 2014 Lubomir Rintel - 0.9.1-12 - Fix EPEL build From 7004fa594ac857d03d24757beb2e1997b3f2067d Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Sun, 8 Jun 2014 03:29:36 -0500 Subject: [PATCH 08/97] - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 0f4909c..64fc83f 100644 --- a/thrift.spec +++ b/thrift.spec @@ -70,7 +70,7 @@ Name: thrift Version: %{pkg_version} -Release: %{pkg_rel}%{?dist}.1 +Release: %{pkg_rel}%{?dist}.2 Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -547,6 +547,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Sun Jun 08 2014 Fedora Release Engineering - 0.9.1-12.2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + * Fri May 23 2014 Petr Machata - 0.9.1-12.1 - Rebuild for boost 1.55.0 From 1514020567e1ec415c682ce41ddf241341128047 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= Date: Fri, 27 Jun 2014 15:18:25 +0200 Subject: [PATCH 09/97] Use add_maven_depmap-generated file lists --- thrift.spec | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/thrift.spec b/thrift.spec index 64fc83f..28a2ad7 100644 --- a/thrift.spec +++ b/thrift.spec @@ -1,6 +1,6 @@ %global pkg_version 0.9.1 %global fb303_version 1.0.0_dev -%global pkg_rel 12 +%global pkg_rel 13 %global py_version 2.7 @@ -70,7 +70,7 @@ Name: thrift Version: %{pkg_version} -Release: %{pkg_rel}%{?dist}.2 +Release: %{pkg_rel}%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -517,10 +517,7 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %{_javadocdir}/%{name} %doc LICENSE NOTICE -%files -n lib%{name}-java -%{_javadir}/lib%{name}.jar -%{_mavenpomdir}/JPP-lib%{name}.pom -%{_mavendepmapfragdir}/%{name} +%files -n lib%{name}-java -f .mfiles %doc LICENSE NOTICE %files -n fb303 @@ -538,15 +535,15 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %{python_sitelib}/%{name}_fb303-%{fb303_version}-py%{py_version}.egg-info %doc LICENSE NOTICE -%files -n fb303-java -%{_javadir}/libfb303.jar -%{_mavenpomdir}/JPP-libfb303.pom -%{_mavendepmapfragdir}/thrift-fb303 +%files -n fb303-java -f .mfiles-fb303 %doc LICENSE NOTICE %changelog +* Fri Jun 27 2014 Petr Pisar - 0.9.1-13 +- Use add_maven_depmap-generated file lists (bug #1107448) + * Sun Jun 08 2014 Fedora Release Engineering - 0.9.1-12.2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild From 4151a5dbc6afc8bc9c30dd9dd3e2c0a75a0f8c35 Mon Sep 17 00:00:00 2001 From: Peter Robinson Date: Mon, 18 Aug 2014 05:39:14 +0000 Subject: [PATCH 10/97] - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 28a2ad7..2bcd414 100644 --- a/thrift.spec +++ b/thrift.spec @@ -70,7 +70,7 @@ Name: thrift Version: %{pkg_version} -Release: %{pkg_rel}%{?dist} +Release: %{pkg_rel}%{?dist}.1 Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -541,6 +541,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Mon Aug 18 2014 Fedora Release Engineering - 0.9.1-13.1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + * Fri Jun 27 2014 Petr Pisar - 0.9.1-13 - Use add_maven_depmap-generated file lists (bug #1107448) From c1872678fc94a7933b77a812f01f3f71ecb54d47 Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Thu, 28 Aug 2014 21:24:22 +0200 Subject: [PATCH 11/97] Perl 5.20 rebuild --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 2bcd414..822efd1 100644 --- a/thrift.spec +++ b/thrift.spec @@ -70,7 +70,7 @@ Name: thrift Version: %{pkg_version} -Release: %{pkg_rel}%{?dist}.1 +Release: %{pkg_rel}%{?dist}.2 Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -541,6 +541,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Thu Aug 28 2014 Jitka Plesnikova - 0.9.1-13.2 +- Perl 5.20 rebuild + * Mon Aug 18 2014 Fedora Release Engineering - 0.9.1-13.1 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild From f965f68070084578abad66d7272ac6e54d849d44 Mon Sep 17 00:00:00 2001 From: Petr Machata Date: Mon, 26 Jan 2015 22:02:12 +0100 Subject: [PATCH 12/97] Rebuild for boost 1.57.0 --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 822efd1..9a3aeed 100644 --- a/thrift.spec +++ b/thrift.spec @@ -70,7 +70,7 @@ Name: thrift Version: %{pkg_version} -Release: %{pkg_rel}%{?dist}.2 +Release: %{pkg_rel}%{?dist}.3 Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -541,6 +541,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Mon Jan 26 2015 Petr Machata - 0.9.1-13.3 +- Rebuild for boost 1.57.0 + * Thu Aug 28 2014 Jitka Plesnikova - 0.9.1-13.2 - Perl 5.20 rebuild From 339818f39ff999cb61e961075c1e5bfd45735ac1 Mon Sep 17 00:00:00 2001 From: Haikel Guemar Date: Wed, 8 Apr 2015 16:37:46 +0200 Subject: [PATCH 13/97] Split Qt4/GLib runtimes into separate subpackages - Drop mono support, it's broken and not even shipped (and it pulls mono-core) --- thrift.spec | 54 ++++++++++++++++++++++++++++++----------------------- 1 file changed, 31 insertions(+), 23 deletions(-) diff --git a/thrift.spec b/thrift.spec index 9a3aeed..ea3665a 100644 --- a/thrift.spec +++ b/thrift.spec @@ -1,6 +1,6 @@ %global pkg_version 0.9.1 %global fb303_version 1.0.0_dev -%global pkg_rel 13 +%global pkg_rel 14 %global py_version 2.7 @@ -54,23 +54,13 @@ %global php_configure --with-php %endif -%if 0%{?rhel} -%global want_mono 0 -%else -%ifarch %{mono_arches} -%global want_mono 1 -%else -%global want_mono 0 -%endif -%endif - # Thrift's GO support doesn't build under Fedora %global want_golang 0 %global golang_configure --without-go Name: thrift Version: %{pkg_version} -Release: %{pkg_rel}%{?dist}.3 +Release: %{pkg_rel}%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -119,9 +109,6 @@ BuildRequires: openssl-devel BuildRequires: zlib-devel BuildRequires: bison-devel BuildRequires: flex-devel -%if %{want_mono} -BuildRequires: mono-devel -%endif BuildRequires: glib2-devel BuildRequires: texlive BuildRequires: qt-devel @@ -137,9 +124,6 @@ BuildRequires: flex-devel BuildRequires: ant -%if %{want_mono} -Requires: mono-core -%endif %if 0%{?want_golang} > 0 BuildRequires: golang @@ -153,7 +137,7 @@ development combines a software stack with a code generation engine to build services that work efficiently and seamlessly between C++, Java, Python, %{?php_langname}and other languages. -%package devel +%package devel Summary: Development files for %{name} Requires: %{name}%{?_isa} = %{version}-%{release} Requires: pkgconfig @@ -163,6 +147,20 @@ Requires: boost-devel The %{name}-devel package contains libraries and header files for developing applications that use %{name}. +%package qt +Summary: Qt support for %{name} +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description qt +The %{name}-qt package contains Qt bindings for %{name}. + +%package glib +Summary: GLib support for %{name} +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description glib +The %{name}-qt package contains GLib bindings for %{name}. + %package -n python-%{name} Summary: Python support for %{name} BuildRequires: python2-devel @@ -473,10 +471,18 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %files %doc LICENSE NOTICE %{_bindir}/thrift -%{_libdir}/*.so.* -%{_libdir}/lib*-%{version}.so +%{_libdir}/libthrift-%{version}.so +%{_libdir}/libthriftz-%{version}.so %{_mandir}/man1/thrift.1.gz +%files glib +%{_libdir}/libthrift_c_glib.so +%{_libdir}/libthrift_c_glib.so.* + +%files qt +%{_libdir}/libthriftqt.so +%{_libdir}/libthriftqt-%{version}.so + %files devel %{_includedir}/thrift %exclude %{_includedir}/thrift/fb303 @@ -538,9 +544,11 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %files -n fb303-java -f .mfiles-fb303 %doc LICENSE NOTICE - - %changelog +* Wed Apr 8 2015 Haïkel Guémar - 0.9.1-14 +- Split Qt4/GLib runtimes into separate subpackages +- Drop mono support, it's broken and not even shipped (and it pulls mono-core) + * Mon Jan 26 2015 Petr Machata - 0.9.1-13.3 - Rebuild for boost 1.57.0 From fb9fad9c30cbec0d83db781b9d79f75f40264314 Mon Sep 17 00:00:00 2001 From: William Benton Date: Mon, 20 Apr 2015 20:49:30 -0500 Subject: [PATCH 14/97] removed erlang-jsx dep on F22 --- thrift.spec | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/thrift.spec b/thrift.spec index ea3665a..5736078 100644 --- a/thrift.spec +++ b/thrift.spec @@ -1,6 +1,6 @@ %global pkg_version 0.9.1 %global fb303_version 1.0.0_dev -%global pkg_rel 14 +%global pkg_rel 15 %global py_version 2.7 @@ -11,8 +11,8 @@ %global have_mongrel 0 -%if 0%{?fedora} >= 19 -# erlang-jsx is available in F19 +%if 0%{?fedora} >= 19 && 0%{?fedora} < 21 +# erlang-jsx is available in F19 but orphaned in F22 %global have_jsx 1 %else %global have_jsx 0 @@ -545,6 +545,10 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %changelog + +* Mon Apr 20 2015 Will Benton - 0.9.1-15 +- Dropped Erlang support for F22 and above, since erlang-jsx is orphaned + * Wed Apr 8 2015 Haïkel Guémar - 0.9.1-14 - Split Qt4/GLib runtimes into separate subpackages - Drop mono support, it's broken and not even shipped (and it pulls mono-core) From 676ea30560dd6d8039f70d3466212eac85f1acfc Mon Sep 17 00:00:00 2001 From: Michal Srb Date: Fri, 24 Apr 2015 17:11:20 +0200 Subject: [PATCH 15/97] Fix FTBFS (Resolves: rhbz#1195364) --- thrift-0.9.1-buildxml.patch | 8 ++++---- thrift.spec | 8 +++++--- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/thrift-0.9.1-buildxml.patch b/thrift-0.9.1-buildxml.patch index 444c6ec..d0f8f58 100644 --- a/thrift-0.9.1-buildxml.patch +++ b/thrift-0.9.1-buildxml.patch @@ -26,7 +26,7 @@ index c2bfd9c..69525e7 100755 + + + -+ ++ @@ -187,7 +187,7 @@ index eceeca7..bc6a837 100644 + + + -+ ++ @@ -205,7 +205,7 @@ index eceeca7..bc6a837 100644 + + + -+ ++ + @@ -240,7 +240,7 @@ index 73d535d..e3ee1e2 100644 + + + -+ ++ diff --git a/thrift.spec b/thrift.spec index 5736078..754c8be 100644 --- a/thrift.spec +++ b/thrift.spec @@ -1,6 +1,6 @@ %global pkg_version 0.9.1 -%global fb303_version 1.0.0_dev -%global pkg_rel 15 +%global fb303_version 1.0.0.dev0 +%global pkg_rel 16 %global py_version 2.7 @@ -240,7 +240,7 @@ BuildRequires: httpcomponents-core BuildRequires: junit BuildRequires: log4j BuildRequires: slf4j -BuildRequires: tomcat-servlet-3.0-api +BuildRequires: tomcat-servlet-3.1-api Requires: java-headless >= 1:1.6.0 Requires: javapackages-tools @@ -545,6 +545,8 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %changelog +* Fri Apr 24 2015 Michal Srb - 0.9.1-16 +- Fix FTBFS (Resolves: rhbz#1195364) * Mon Apr 20 2015 Will Benton - 0.9.1-15 - Dropped Erlang support for F22 and above, since erlang-jsx is orphaned From bd7af67741b581d22e9e306406dd0de6e410102a Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Sat, 6 Jun 2015 18:11:50 +0200 Subject: [PATCH 16/97] Perl 5.22 rebuild --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 754c8be..2032a6f 100644 --- a/thrift.spec +++ b/thrift.spec @@ -60,7 +60,7 @@ Name: thrift Version: %{pkg_version} -Release: %{pkg_rel}%{?dist} +Release: %{pkg_rel}%{?dist}.1 Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -545,6 +545,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %changelog +* Sat Jun 06 2015 Jitka Plesnikova - 0.9.1-16.1 +- Perl 5.22 rebuild + * Fri Apr 24 2015 Michal Srb - 0.9.1-16 - Fix FTBFS (Resolves: rhbz#1195364) From 55e32b4311b66ed79e1b0d319c020b722205ae3d Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Fri, 19 Jun 2015 02:51:39 +0000 Subject: [PATCH 17/97] - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 2032a6f..4df9162 100644 --- a/thrift.spec +++ b/thrift.spec @@ -60,7 +60,7 @@ Name: thrift Version: %{pkg_version} -Release: %{pkg_rel}%{?dist}.1 +Release: %{pkg_rel}%{?dist}.2 Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -545,6 +545,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %changelog +* Fri Jun 19 2015 Fedora Release Engineering - 0.9.1-16.2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + * Sat Jun 06 2015 Jitka Plesnikova - 0.9.1-16.1 - Perl 5.22 rebuild From cf6430a84b29a2c066d7e6be23fe46c738a38292 Mon Sep 17 00:00:00 2001 From: David Tardon Date: Wed, 22 Jul 2015 19:40:08 +0200 Subject: [PATCH 18/97] rebuild for Boost 1.58 --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 4df9162..e40745b 100644 --- a/thrift.spec +++ b/thrift.spec @@ -60,7 +60,7 @@ Name: thrift Version: %{pkg_version} -Release: %{pkg_rel}%{?dist}.2 +Release: %{pkg_rel}%{?dist}.3 Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -545,6 +545,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %changelog +* Wed Jul 22 2015 David Tardon - 0.9.1-16.3 +- rebuild for Boost 1.58 + * Fri Jun 19 2015 Fedora Release Engineering - 0.9.1-16.2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild From cad633395bcde3b1fdd0e37c063511f20eb51378 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Wed, 29 Jul 2015 13:26:45 -0500 Subject: [PATCH 19/97] - Rebuilt for https://fedoraproject.org/wiki/Changes/F23Boost159 --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index e40745b..99ac630 100644 --- a/thrift.spec +++ b/thrift.spec @@ -60,7 +60,7 @@ Name: thrift Version: %{pkg_version} -Release: %{pkg_rel}%{?dist}.3 +Release: %{pkg_rel}%{?dist}.4 Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -545,6 +545,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %changelog +* Wed Jul 29 2015 Fedora Release Engineering - 0.9.1-16.4 +- Rebuilt for https://fedoraproject.org/wiki/Changes/F23Boost159 + * Wed Jul 22 2015 David Tardon - 0.9.1-16.3 - rebuild for Boost 1.58 From 36c8431993350216298e3667a58655e89b0f0e20 Mon Sep 17 00:00:00 2001 From: Jonathan Wakely Date: Thu, 27 Aug 2015 19:39:54 +0100 Subject: [PATCH 20/97] Rebuilt for Boost 1.59 --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 99ac630..3ad30d2 100644 --- a/thrift.spec +++ b/thrift.spec @@ -60,7 +60,7 @@ Name: thrift Version: %{pkg_version} -Release: %{pkg_rel}%{?dist}.4 +Release: %{pkg_rel}%{?dist}.5 Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -545,6 +545,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %changelog +* Thu Aug 27 2015 Jonathan Wakely - 0.9.1-16.5 +- Rebuilt for Boost 1.59 + * Wed Jul 29 2015 Fedora Release Engineering - 0.9.1-16.4 - Rebuilt for https://fedoraproject.org/wiki/Changes/F23Boost159 From 781b311da51f4398a4cb270c7f063fecd03e3c18 Mon Sep 17 00:00:00 2001 From: Marcin Juszkiewicz Date: Wed, 21 Oct 2015 12:41:16 +0200 Subject: [PATCH 21/97] Backport THRIFT-2214 fix to get package built on aarch64. Signed-off-by: Marcin Juszkiewicz --- ...em-header-sys-param.h-is-included-in.patch | 39 +++++++++++++++++++ thrift.spec | 8 +++- 2 files changed, 46 insertions(+), 1 deletion(-) create mode 100644 thrift-0.9.1-THRIFT-2214-System-header-sys-param.h-is-included-in.patch diff --git a/thrift-0.9.1-THRIFT-2214-System-header-sys-param.h-is-included-in.patch b/thrift-0.9.1-THRIFT-2214-System-header-sys-param.h-is-included-in.patch new file mode 100644 index 0000000..4a7671f --- /dev/null +++ b/thrift-0.9.1-THRIFT-2214-System-header-sys-param.h-is-included-in.patch @@ -0,0 +1,39 @@ +From f4e6e62ea091b94322ecc99756269dbee1c06380 Mon Sep 17 00:00:00 2001 +From: Ben Craig +Date: Tue, 5 Nov 2013 19:49:12 -0600 +Subject: [PATCH 081/223] THRIFT-2214: System header sys/param.h is included + inside the Thrift namespace Client: cpp Patch: Vladimir Strisovsky + +--- + lib/cpp/src/thrift/protocol/TProtocol.h | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/lib/cpp/src/thrift/protocol/TProtocol.h b/lib/cpp/src/thrift/protocol/TProtocol.h +index d6ecc0f..e72033a 100644 +--- a/lib/cpp/src/thrift/protocol/TProtocol.h ++++ b/lib/cpp/src/thrift/protocol/TProtocol.h +@@ -75,10 +75,6 @@ static inline To bitwise_cast(From from) { + } + + +-namespace apache { namespace thrift { namespace protocol { +- +-using apache::thrift::transport::TTransport; +- + #ifdef HAVE_SYS_PARAM_H + #include + #endif +@@ -140,6 +136,10 @@ using apache::thrift::transport::TTransport; + # error "Can't define htonll or ntohll!" + #endif + ++namespace apache { namespace thrift { namespace protocol { ++ ++using apache::thrift::transport::TTransport; ++ + /** + * Enumerated definition of the types that the Thrift protocol supports. + * Take special note of the T_END type which is used specifically to mark +-- +2.6.1 + diff --git a/thrift.spec b/thrift.spec index 3ad30d2..bb0c276 100644 --- a/thrift.spec +++ b/thrift.spec @@ -60,7 +60,7 @@ Name: thrift Version: %{pkg_version} -Release: %{pkg_rel}%{?dist}.5 +Release: %{pkg_rel}%{?dist}.6 Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -94,6 +94,8 @@ Patch0: thrift-0.9.1-buildxml.patch Patch1: thrift-0.9.1-rebar.patch # for fb303, excise maven ant tasks; build against system libraries; etc. Patch2: fb303-0.9.1-buildxml.patch +# required to get it build on aarch64 +Patch3: thrift-0.9.1-THRIFT-2214-System-header-sys-param.h-is-included-in.patch Group: Development/Libraries @@ -321,6 +323,7 @@ The fb303-java package contains Java bindings for fb303. %patch0 -p1 %patch1 -p1 %patch2 -p1 +%patch3 -p1 %{?!el5:sed -i -e 's/^AC_PROG_LIBTOOL/LT_INIT/g' configure.ac} @@ -545,6 +548,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %changelog +* Wed Oct 21 2015 Marcin Juszkiewicz - 0.9.1-16.6 +- Backport THRIFT-2214 fix to get package built on aarch64. + * Thu Aug 27 2015 Jonathan Wakely - 0.9.1-16.5 - Rebuilt for Boost 1.59 From 137c8a440a367f7558685c20bd11588eee9feca3 Mon Sep 17 00:00:00 2001 From: Peter Robinson Date: Mon, 23 Nov 2015 13:08:21 +0000 Subject: [PATCH 22/97] fix release --- thrift.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/thrift.spec b/thrift.spec index bb0c276..39c8b93 100644 --- a/thrift.spec +++ b/thrift.spec @@ -1,6 +1,6 @@ %global pkg_version 0.9.1 %global fb303_version 1.0.0.dev0 -%global pkg_rel 16 +%global pkg_rel 17 %global py_version 2.7 @@ -60,7 +60,7 @@ Name: thrift Version: %{pkg_version} -Release: %{pkg_rel}%{?dist}.6 +Release: %{pkg_rel}%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -548,6 +548,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %changelog +* Mon Nov 23 2015 Peter Robinson 0.9.1-17 +- Fix release + * Wed Oct 21 2015 Marcin Juszkiewicz - 0.9.1-16.6 - Backport THRIFT-2214 fix to get package built on aarch64. From 23bd68014b5858de8f4aca57fb30911866b75e3d Mon Sep 17 00:00:00 2001 From: Jonathan Wakely Date: Sat, 16 Jan 2016 00:37:14 +0000 Subject: [PATCH 23/97] Rebuilt for Boost 1.60 --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 39c8b93..1c74440 100644 --- a/thrift.spec +++ b/thrift.spec @@ -60,7 +60,7 @@ Name: thrift Version: %{pkg_version} -Release: %{pkg_rel}%{?dist} +Release: %{pkg_rel}%{?dist}.1 Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -548,6 +548,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %changelog +* Sat Jan 16 2016 Jonathan Wakely - 0.9.1-17.1 +- Rebuilt for Boost 1.60 + * Mon Nov 23 2015 Peter Robinson 0.9.1-17 - Fix release From f8fd41eccb9f4ca1129e3b8834ac0cd668226873 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 5 Feb 2016 01:34:38 +0000 Subject: [PATCH 24/97] - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 1c74440..5c057d4 100644 --- a/thrift.spec +++ b/thrift.spec @@ -60,7 +60,7 @@ Name: thrift Version: %{pkg_version} -Release: %{pkg_rel}%{?dist}.1 +Release: %{pkg_rel}%{?dist}.2 Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -548,6 +548,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %changelog +* Fri Feb 05 2016 Fedora Release Engineering - 0.9.1-17.2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + * Sat Jan 16 2016 Jonathan Wakely - 0.9.1-17.1 - Rebuilt for Boost 1.60 From 1a66707c3953d9877bdfcc057323e3137015ab19 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= Date: Wed, 30 Mar 2016 14:53:32 +0200 Subject: [PATCH 25/97] Adapt to GCC 6 (bug #1306671) --- thrift-0.9.1-Adapt-to-GCC-6.patch | 147 ++++++++++++++++++++++++++++++ thrift.spec | 8 +- 2 files changed, 154 insertions(+), 1 deletion(-) create mode 100644 thrift-0.9.1-Adapt-to-GCC-6.patch diff --git a/thrift-0.9.1-Adapt-to-GCC-6.patch b/thrift-0.9.1-Adapt-to-GCC-6.patch new file mode 100644 index 0000000..1ee09b9 --- /dev/null +++ b/thrift-0.9.1-Adapt-to-GCC-6.patch @@ -0,0 +1,147 @@ +From 049d078b605900efec98c6a9caceb17cdc10c5e5 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= +Date: Wed, 30 Mar 2016 14:47:26 +0200 +Subject: [PATCH] Adapt to GCC 6 +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +GCC 6 produces this error: + +src/generate/t_java_generator.cc: In member function 'void t_java_generator::generate_process_async_function(t_service*, t_function*)': +src/generate/t_java_generator.cc:2830:14: error: operands to ?: have different types 'bool' and 'std::basic_ostream' + first ? first = false : indent(f_service_) << "else "; + ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +This patch ports relevant part of upstream commit: + +t 16a23a6618754a5a87aeb8df99a72516b0272fb3 +Author: Konrad Grochowski +Date: Thu Nov 13 15:33:38 2014 +0100 + + THRIFT-2729: C++ - .clang-format created and applied + + Client: C++ + Patch: Konrad Grochowski + + make style command added + +and: + +commit 5f2d34e5ab33651059a085525b3adbab6a877e6f +Author: Roger Meier +Date: Sat Nov 16 16:43:41 2013 +0100 + + THRIFT-2229 thrift failed to build on OSX 10.9 GM + +that are part of 0.9.3 release. + + + +Signed-off-by: Petr Písař +--- + compiler/cpp/src/generate/t_java_generator.cc | 3 ++- + compiler/cpp/src/generate/t_rb_generator.cc | 8 ++++---- + tutorial/cpp/CppClient.cpp | 6 +++--- + tutorial/cpp/CppServer.cpp | 16 ++++++++-------- + 4 files changed, 17 insertions(+), 16 deletions(-) + +diff --git a/compiler/cpp/src/generate/t_java_generator.cc b/compiler/cpp/src/generate/t_java_generator.cc +index e443dc0..0f8740e 100644 +--- a/compiler/cpp/src/generate/t_java_generator.cc ++++ b/compiler/cpp/src/generate/t_java_generator.cc +@@ -2827,7 +2827,8 @@ void t_java_generator::generate_process_async_function(t_service* tservice, + bool first = true; + if (xceptions.size() > 0) { + for (x_iter = xceptions.begin(); x_iter != xceptions.end(); ++x_iter) { +- first ? first = false : indent(f_service_) << "else "; ++ if (x_iter != xceptions.begin()) ++ indent(f_service_) << "else "; + indent(f_service_) << "if (e instanceof " << type_name((*x_iter)->get_type(), false, false)<<") {" << endl; + indent(f_service_) << indent() << "result." << (*x_iter)->get_name() << " = (" << type_name((*x_iter)->get_type(), false, false) << ") e;" << endl; + indent(f_service_) << indent() << "result.set" << get_cap_name((*x_iter)->get_name()) << get_cap_name("isSet") << "(true);" << endl; +diff --git a/compiler/cpp/src/generate/t_rb_generator.cc b/compiler/cpp/src/generate/t_rb_generator.cc +index 082f316..fc679a1 100644 +--- a/compiler/cpp/src/generate/t_rb_generator.cc ++++ b/compiler/cpp/src/generate/t_rb_generator.cc +@@ -359,21 +359,21 @@ void t_rb_generator::generate_enum(t_enum* tenum) { + + // Create a hash mapping values back to their names (as strings) since ruby has no native enum type + f_types_.indent() << "VALUE_MAP = {"; +- bool first = true; + for(c_iter = constants.begin(); c_iter != constants.end(); ++c_iter) { + // Populate the hash + int value = (*c_iter)->get_value(); +- first ? first = false : f_types_ << ", "; ++ if (c_iter != constants.begin()) ++ f_types_ << ", "; + f_types_ << value << " => \"" << capitalize((*c_iter)->get_name()) << "\""; + } + f_types_ << "}" << endl; + + // Create a set with valid values for this enum + f_types_.indent() << "VALID_VALUES = Set.new(["; +- first = true; + for (c_iter = constants.begin(); c_iter != constants.end(); ++c_iter) { + // Populate the set +- first ? first = false : f_types_ << ", "; ++ if (c_iter != constants.begin()) ++ f_types_ << ", "; + f_types_ << capitalize((*c_iter)->get_name()); + } + f_types_ << "]).freeze" << endl; +diff --git a/tutorial/cpp/CppClient.cpp b/tutorial/cpp/CppClient.cpp +index ba71caa..b91df2e 100644 +--- a/tutorial/cpp/CppClient.cpp ++++ b/tutorial/cpp/CppClient.cpp +@@ -38,9 +38,9 @@ using namespace shared; + using namespace boost; + + int main(int argc, char** argv) { +- shared_ptr socket(new TSocket("localhost", 9090)); +- shared_ptr transport(new TBufferedTransport(socket)); +- shared_ptr protocol(new TBinaryProtocol(transport)); ++ boost::shared_ptr socket(new TSocket("localhost", 9090)); ++ boost::shared_ptr transport(new TBufferedTransport(socket)); ++ boost::shared_ptr protocol(new TBinaryProtocol(transport)); + CalculatorClient client(protocol); + + try { +diff --git a/tutorial/cpp/CppServer.cpp b/tutorial/cpp/CppServer.cpp +index d0dbad9..f19258c 100644 +--- a/tutorial/cpp/CppServer.cpp ++++ b/tutorial/cpp/CppServer.cpp +@@ -113,11 +113,11 @@ protected: + + int main(int argc, char **argv) { + +- shared_ptr protocolFactory(new TBinaryProtocolFactory()); +- shared_ptr handler(new CalculatorHandler()); +- shared_ptr processor(new CalculatorProcessor(handler)); +- shared_ptr serverTransport(new TServerSocket(9090)); +- shared_ptr transportFactory(new TBufferedTransportFactory()); ++ boost::shared_ptr protocolFactory(new TBinaryProtocolFactory()); ++ boost::shared_ptr handler(new CalculatorHandler()); ++ boost::shared_ptr processor(new CalculatorProcessor(handler)); ++ boost::shared_ptr serverTransport(new TServerSocket(9090)); ++ boost::shared_ptr transportFactory(new TBufferedTransportFactory()); + + TSimpleServer server(processor, + serverTransport, +@@ -128,10 +128,10 @@ int main(int argc, char **argv) { + /** + * Or you could do one of these + +- shared_ptr threadManager = ++ boost::shared_ptr threadManager = + ThreadManager::newSimpleThreadManager(workerCount); +- shared_ptr threadFactory = +- shared_ptr(new PosixThreadFactory()); ++ boost::shared_ptr threadFactory = ++ boost::shared_ptr(new PosixThreadFactory()); + threadManager->threadFactory(threadFactory); + threadManager->start(); + TThreadPoolServer server(processor, +-- +2.5.5 + diff --git a/thrift.spec b/thrift.spec index 5c057d4..eb0966d 100644 --- a/thrift.spec +++ b/thrift.spec @@ -60,7 +60,7 @@ Name: thrift Version: %{pkg_version} -Release: %{pkg_rel}%{?dist}.2 +Release: %{pkg_rel}%{?dist}.3 Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -96,6 +96,8 @@ Patch1: thrift-0.9.1-rebar.patch Patch2: fb303-0.9.1-buildxml.patch # required to get it build on aarch64 Patch3: thrift-0.9.1-THRIFT-2214-System-header-sys-param.h-is-included-in.patch +# Adapt to GCC 6, bug #1306671, in 0.9.3 +Patch4: thrift-0.9.1-Adapt-to-GCC-6.patch Group: Development/Libraries @@ -324,6 +326,7 @@ The fb303-java package contains Java bindings for fb303. %patch1 -p1 %patch2 -p1 %patch3 -p1 +%patch4 -p1 %{?!el5:sed -i -e 's/^AC_PROG_LIBTOOL/LT_INIT/g' configure.ac} @@ -548,6 +551,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %changelog +* Wed Mar 30 2016 Petr Pisar - 0.9.1-17.3 +- Adapt to GCC 6 (bug #1306671) + * Fri Feb 05 2016 Fedora Release Engineering - 0.9.1-17.2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild From d7f0c11da16af494d1b1dd0068fe6c084b7ea6e5 Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Tue, 17 May 2016 04:49:36 +0200 Subject: [PATCH 26/97] Perl 5.24 rebuild --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index eb0966d..e9e7962 100644 --- a/thrift.spec +++ b/thrift.spec @@ -60,7 +60,7 @@ Name: thrift Version: %{pkg_version} -Release: %{pkg_rel}%{?dist}.3 +Release: %{pkg_rel}%{?dist}.4 Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -551,6 +551,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %changelog +* Tue May 17 2016 Jitka Plesnikova - 0.9.1-17.4 +- Perl 5.24 rebuild + * Wed Mar 30 2016 Petr Pisar - 0.9.1-17.3 - Adapt to GCC 6 (bug #1306671) From dac3d535388942eae9bc79b9829c1d7e47c55b12 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= Date: Fri, 24 Jun 2016 09:41:17 +0200 Subject: [PATCH 27/97] Mandatory Perl build-requires added --- thrift.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/thrift.spec b/thrift.spec index e9e7962..911cce9 100644 --- a/thrift.spec +++ b/thrift.spec @@ -177,6 +177,7 @@ The python-%{name} package contains Python bindings for %{name}. %package -n perl-%{name} Summary: Perl support for %{name} Provides: perl(Thrift) = %{version}-%{release} +BuildRequires: perl-generators BuildRequires: perl(Bit::Vector) BuildRequires: perl(ExtUtils::MakeMaker) Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version)) From 914411b1b14c99d2626cbb45494ee9bca721764b Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Tue, 19 Jul 2016 12:51:12 +0000 Subject: [PATCH 28/97] - https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 911cce9..8dd7160 100644 --- a/thrift.spec +++ b/thrift.spec @@ -60,7 +60,7 @@ Name: thrift Version: %{pkg_version} -Release: %{pkg_rel}%{?dist}.4 +Release: %{pkg_rel}%{?dist}.5 Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -552,6 +552,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %changelog +* Tue Jul 19 2016 Fedora Release Engineering - 0.9.1-17.5 +- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages + * Tue May 17 2016 Jitka Plesnikova - 0.9.1-17.4 - Perl 5.24 rebuild From 3a041d9d4de34443f84c55b4321a4ab58f86b5a5 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 11 Feb 2017 15:54:29 +0000 Subject: [PATCH 29/97] - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 8dd7160..173aaa1 100644 --- a/thrift.spec +++ b/thrift.spec @@ -60,7 +60,7 @@ Name: thrift Version: %{pkg_version} -Release: %{pkg_rel}%{?dist}.5 +Release: %{pkg_rel}%{?dist}.6 Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -552,6 +552,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %changelog +* Sat Feb 11 2017 Fedora Release Engineering - 0.9.1-17.6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + * Tue Jul 19 2016 Fedora Release Engineering - 0.9.1-17.5 - https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages From 3632b2acecabf21eb686d4105edf7be2e2c7efb5 Mon Sep 17 00:00:00 2001 From: Christopher Tubbs Date: Tue, 7 Mar 2017 17:20:17 -0500 Subject: [PATCH 30/97] Update to thrift 0.10.0 --- .gitignore | 1 + bootstrap.sh | 8 + configure-java-prefix.patch | 16 + ...ldxml.patch => fb303-0.10.0-buildxml.patch | 9 - libfb303-0.9.1.pom => libfb303-0.10.0.pom | 4 +- libthrift-0.9.1.pom => libthrift-0.10.0.pom | 13 +- sources | 2 +- ...dxml.patch => thrift-0.10.0-buildxml.patch | 61 ++-- thrift-0.9.1-Adapt-to-GCC-6.patch | 147 -------- ...em-header-sys-param.h-is-included-in.patch | 39 -- thrift-0.9.1-rebar.patch | 9 - thrift.spec | 341 ++++++++---------- 12 files changed, 214 insertions(+), 436 deletions(-) create mode 100644 configure-java-prefix.patch rename fb303-0.9.1-buildxml.patch => fb303-0.10.0-buildxml.patch (92%) rename libfb303-0.9.1.pom => libfb303-0.10.0.pom (97%) rename libthrift-0.9.1.pom => libthrift-0.10.0.pom (92%) rename thrift-0.9.1-buildxml.patch => thrift-0.10.0-buildxml.patch (85%) delete mode 100644 thrift-0.9.1-Adapt-to-GCC-6.patch delete mode 100644 thrift-0.9.1-THRIFT-2214-System-header-sys-param.h-is-included-in.patch delete mode 100644 thrift-0.9.1-rebar.patch diff --git a/.gitignore b/.gitignore index 8f68e6a..f5a770c 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ /0.9.1.tar.gz +/thrift-0.10.0.tar.gz diff --git a/bootstrap.sh b/bootstrap.sh index 0c2b886..52ecda4 100644 --- a/bootstrap.sh +++ b/bootstrap.sh @@ -38,6 +38,14 @@ else exit 1 fi +# we require automake 1.13 or later +# check must happen externally due to use of newer macro +AUTOMAKE_VERSION=`automake --version | grep automake | egrep -o '([0-9]{1,}\.)+[0-9]{1,}'` +if [ "$AUTOMAKE_VERSION" \< "1.13" ]; then + echo >&2 "automake version $AUTOMAKE_VERSION is too old (need 1.13 or later)" + exit 1 +fi + autoscan $LIBTOOLIZE --copy --automake aclocal -I ./aclocal diff --git a/configure-java-prefix.patch b/configure-java-prefix.patch new file mode 100644 index 0000000..ebd542f --- /dev/null +++ b/configure-java-prefix.patch @@ -0,0 +1,16 @@ +diff --git a/configure.ac b/configure.ac +index 0972abf..77107fc 100755 +--- a/configure.ac ++++ b/configure.ac +@@ -34,10 +34,7 @@ AC_ARG_VAR([PY_PREFIX], [Prefix for installing Python modules. + AS_IF([test "x$PY_PREFIX" = x], [PY_PREFIX="/usr"]) + + AC_ARG_VAR([JAVA_PREFIX], [Prefix for installing the Java lib jar. +- Default = "/usr/local/lib"]) +-AS_IF([test "x$JAVA_PREFIX" != x], [JAVA_PREFIX="$JAVA_PREFIX/usr/local/lib"], +- [test "x$PREFIX" != x], [JAVA_PREFIX="$PREFIX/usr/local/lib"], +- [JAVA_PREFIX="/usr/local/lib"]) ++ Default = "/usr/share/java"]) + + AC_ARG_VAR([RUBY_PREFIX], [Prefix for installing Ruby modules. + (Normal --prefix is ignored for Ruby because diff --git a/fb303-0.9.1-buildxml.patch b/fb303-0.10.0-buildxml.patch similarity index 92% rename from fb303-0.9.1-buildxml.patch rename to fb303-0.10.0-buildxml.patch index ec51503..bbff5ec 100644 --- a/fb303-0.9.1-buildxml.patch +++ b/fb303-0.10.0-buildxml.patch @@ -12,15 +12,6 @@ index 8f2fa51..d89f05e 100755 -@@ -26,7 +25,7 @@ - - - -- -+ - - - @@ -38,8 +37,8 @@ diff --git a/libfb303-0.9.1.pom b/libfb303-0.10.0.pom similarity index 97% rename from libfb303-0.9.1.pom rename to libfb303-0.10.0.pom index 29d0dff..c3fddde 100644 --- a/libfb303-0.9.1.pom +++ b/libfb303-0.10.0.pom @@ -4,7 +4,7 @@ 4.0.0 org.apache.thrift libfb303 - 0.9.1 + 0.10.0 pom Apache Thrift Thrift is a software framework for scalable cross-language services development. @@ -98,7 +98,7 @@ org.apache.thrift libthrift - 0.9.1 + 0.10.0 diff --git a/libthrift-0.9.1.pom b/libthrift-0.10.0.pom similarity index 92% rename from libthrift-0.9.1.pom rename to libthrift-0.10.0.pom index 9a146f0..7c5f61d 100644 --- a/libthrift-0.9.1.pom +++ b/libthrift-0.10.0.pom @@ -4,7 +4,7 @@ 4.0.0 org.apache.thrift libthrift - 0.9.1 + 0.10.0 pom Apache Thrift Thrift is a software framework for scalable cross-language services development. @@ -98,12 +98,7 @@ org.slf4j slf4j-api - 1.5.8 - - - org.apache.commons - commons-lang3 - 3.1 + 1.7.12 javax.servlet @@ -114,12 +109,12 @@ org.apache.httpcomponents httpclient - 4.2.5 + 4.4.1 org.apache.httpcomponents httpcore - 4.2.4 + 4.4.1 diff --git a/sources b/sources index d078a98..f7d47e8 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -147e8f2d3e48a272559aea554afdaf81 0.9.1.tar.gz +SHA512 (thrift-0.10.0.tar.gz) = 3695cf0fb0e4080b02446ab694fb61476997d8b181942dd6fe1e3e7cf0dcf990b4184ea33f9d0bc290b96200f702cf1ac1579e36b6b5bfe9ba8914b2d2938ddc diff --git a/thrift-0.9.1-buildxml.patch b/thrift-0.10.0-buildxml.patch similarity index 85% rename from thrift-0.9.1-buildxml.patch rename to thrift-0.10.0-buildxml.patch index d0f8f58..db4b497 100644 --- a/thrift-0.9.1-buildxml.patch +++ b/thrift-0.10.0-buildxml.patch @@ -1,5 +1,5 @@ diff --git a/lib/java/build.xml b/lib/java/build.xml -index c2bfd9c..69525e7 100755 +index 40e5284..db1ce54 100644 --- a/lib/java/build.xml +++ b/lib/java/build.xml @@ -17,8 +17,7 @@ @@ -9,16 +9,16 @@ index c2bfd9c..69525e7 100755 - + - + Thrift Build File -@@ -64,8 +63,15 @@ +@@ -67,8 +66,15 @@ -- +- - -+ ++ + + + @@ -30,23 +30,24 @@ index c2bfd9c..69525e7 100755 -@@ -75,10 +81,14 @@ +@@ -78,11 +84,14 @@ -+ +- ++ + + + - + - + -@@ -262,121 +272,12 @@ +@@ -295,120 +304,12 @@ @@ -57,7 +58,7 @@ index c2bfd9c..69525e7 100755 - - - - + - - @@ -68,10 +69,10 @@ index c2bfd9c..69525e7 100755 - - - -- - - -- @@ -106,7 +107,6 @@ index c2bfd9c..69525e7 100755 - - - -- - - - @@ -126,7 +126,7 @@ index c2bfd9c..69525e7 100755 - - - -- +- - - - @@ -148,7 +148,7 @@ index c2bfd9c..69525e7 100755 - - - -- +- - - - @@ -164,13 +164,13 @@ index c2bfd9c..69525e7 100755 - - - -- -- -- +- +- +- - diff --git a/tutorial/java/build.xml b/tutorial/java/build.xml -index eceeca7..bc6a837 100644 +index 7638d5b..c5ca703 100644 --- a/tutorial/java/build.xml +++ b/tutorial/java/build.xml @@ -29,13 +29,33 @@ @@ -179,7 +179,7 @@ index eceeca7..bc6a837 100644 - - -+ ++ + + + @@ -197,7 +197,7 @@ index eceeca7..bc6a837 100644 + + + -+ ++ + + + @@ -210,19 +210,8 @@ index eceeca7..bc6a837 100644 -@@ -50,8 +70,8 @@ - - - -- -- -+ -+ - - - diff --git a/tutorial/js/build.xml b/tutorial/js/build.xml -index 73d535d..e3ee1e2 100644 +index a9a9ad4..2fddf0c 100644 --- a/tutorial/js/build.xml +++ b/tutorial/js/build.xml @@ -35,8 +35,16 @@ @@ -232,7 +221,7 @@ index 73d535d..e3ee1e2 100644 - - + -+ ++ + + + diff --git a/thrift-0.9.1-Adapt-to-GCC-6.patch b/thrift-0.9.1-Adapt-to-GCC-6.patch deleted file mode 100644 index 1ee09b9..0000000 --- a/thrift-0.9.1-Adapt-to-GCC-6.patch +++ /dev/null @@ -1,147 +0,0 @@ -From 049d078b605900efec98c6a9caceb17cdc10c5e5 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= -Date: Wed, 30 Mar 2016 14:47:26 +0200 -Subject: [PATCH] Adapt to GCC 6 -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -GCC 6 produces this error: - -src/generate/t_java_generator.cc: In member function 'void t_java_generator::generate_process_async_function(t_service*, t_function*)': -src/generate/t_java_generator.cc:2830:14: error: operands to ?: have different types 'bool' and 'std::basic_ostream' - first ? first = false : indent(f_service_) << "else "; - ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -This patch ports relevant part of upstream commit: - -t 16a23a6618754a5a87aeb8df99a72516b0272fb3 -Author: Konrad Grochowski -Date: Thu Nov 13 15:33:38 2014 +0100 - - THRIFT-2729: C++ - .clang-format created and applied - - Client: C++ - Patch: Konrad Grochowski - - make style command added - -and: - -commit 5f2d34e5ab33651059a085525b3adbab6a877e6f -Author: Roger Meier -Date: Sat Nov 16 16:43:41 2013 +0100 - - THRIFT-2229 thrift failed to build on OSX 10.9 GM - -that are part of 0.9.3 release. - - - -Signed-off-by: Petr Písař ---- - compiler/cpp/src/generate/t_java_generator.cc | 3 ++- - compiler/cpp/src/generate/t_rb_generator.cc | 8 ++++---- - tutorial/cpp/CppClient.cpp | 6 +++--- - tutorial/cpp/CppServer.cpp | 16 ++++++++-------- - 4 files changed, 17 insertions(+), 16 deletions(-) - -diff --git a/compiler/cpp/src/generate/t_java_generator.cc b/compiler/cpp/src/generate/t_java_generator.cc -index e443dc0..0f8740e 100644 ---- a/compiler/cpp/src/generate/t_java_generator.cc -+++ b/compiler/cpp/src/generate/t_java_generator.cc -@@ -2827,7 +2827,8 @@ void t_java_generator::generate_process_async_function(t_service* tservice, - bool first = true; - if (xceptions.size() > 0) { - for (x_iter = xceptions.begin(); x_iter != xceptions.end(); ++x_iter) { -- first ? first = false : indent(f_service_) << "else "; -+ if (x_iter != xceptions.begin()) -+ indent(f_service_) << "else "; - indent(f_service_) << "if (e instanceof " << type_name((*x_iter)->get_type(), false, false)<<") {" << endl; - indent(f_service_) << indent() << "result." << (*x_iter)->get_name() << " = (" << type_name((*x_iter)->get_type(), false, false) << ") e;" << endl; - indent(f_service_) << indent() << "result.set" << get_cap_name((*x_iter)->get_name()) << get_cap_name("isSet") << "(true);" << endl; -diff --git a/compiler/cpp/src/generate/t_rb_generator.cc b/compiler/cpp/src/generate/t_rb_generator.cc -index 082f316..fc679a1 100644 ---- a/compiler/cpp/src/generate/t_rb_generator.cc -+++ b/compiler/cpp/src/generate/t_rb_generator.cc -@@ -359,21 +359,21 @@ void t_rb_generator::generate_enum(t_enum* tenum) { - - // Create a hash mapping values back to their names (as strings) since ruby has no native enum type - f_types_.indent() << "VALUE_MAP = {"; -- bool first = true; - for(c_iter = constants.begin(); c_iter != constants.end(); ++c_iter) { - // Populate the hash - int value = (*c_iter)->get_value(); -- first ? first = false : f_types_ << ", "; -+ if (c_iter != constants.begin()) -+ f_types_ << ", "; - f_types_ << value << " => \"" << capitalize((*c_iter)->get_name()) << "\""; - } - f_types_ << "}" << endl; - - // Create a set with valid values for this enum - f_types_.indent() << "VALID_VALUES = Set.new(["; -- first = true; - for (c_iter = constants.begin(); c_iter != constants.end(); ++c_iter) { - // Populate the set -- first ? first = false : f_types_ << ", "; -+ if (c_iter != constants.begin()) -+ f_types_ << ", "; - f_types_ << capitalize((*c_iter)->get_name()); - } - f_types_ << "]).freeze" << endl; -diff --git a/tutorial/cpp/CppClient.cpp b/tutorial/cpp/CppClient.cpp -index ba71caa..b91df2e 100644 ---- a/tutorial/cpp/CppClient.cpp -+++ b/tutorial/cpp/CppClient.cpp -@@ -38,9 +38,9 @@ using namespace shared; - using namespace boost; - - int main(int argc, char** argv) { -- shared_ptr socket(new TSocket("localhost", 9090)); -- shared_ptr transport(new TBufferedTransport(socket)); -- shared_ptr protocol(new TBinaryProtocol(transport)); -+ boost::shared_ptr socket(new TSocket("localhost", 9090)); -+ boost::shared_ptr transport(new TBufferedTransport(socket)); -+ boost::shared_ptr protocol(new TBinaryProtocol(transport)); - CalculatorClient client(protocol); - - try { -diff --git a/tutorial/cpp/CppServer.cpp b/tutorial/cpp/CppServer.cpp -index d0dbad9..f19258c 100644 ---- a/tutorial/cpp/CppServer.cpp -+++ b/tutorial/cpp/CppServer.cpp -@@ -113,11 +113,11 @@ protected: - - int main(int argc, char **argv) { - -- shared_ptr protocolFactory(new TBinaryProtocolFactory()); -- shared_ptr handler(new CalculatorHandler()); -- shared_ptr processor(new CalculatorProcessor(handler)); -- shared_ptr serverTransport(new TServerSocket(9090)); -- shared_ptr transportFactory(new TBufferedTransportFactory()); -+ boost::shared_ptr protocolFactory(new TBinaryProtocolFactory()); -+ boost::shared_ptr handler(new CalculatorHandler()); -+ boost::shared_ptr processor(new CalculatorProcessor(handler)); -+ boost::shared_ptr serverTransport(new TServerSocket(9090)); -+ boost::shared_ptr transportFactory(new TBufferedTransportFactory()); - - TSimpleServer server(processor, - serverTransport, -@@ -128,10 +128,10 @@ int main(int argc, char **argv) { - /** - * Or you could do one of these - -- shared_ptr threadManager = -+ boost::shared_ptr threadManager = - ThreadManager::newSimpleThreadManager(workerCount); -- shared_ptr threadFactory = -- shared_ptr(new PosixThreadFactory()); -+ boost::shared_ptr threadFactory = -+ boost::shared_ptr(new PosixThreadFactory()); - threadManager->threadFactory(threadFactory); - threadManager->start(); - TThreadPoolServer server(processor, --- -2.5.5 - diff --git a/thrift-0.9.1-THRIFT-2214-System-header-sys-param.h-is-included-in.patch b/thrift-0.9.1-THRIFT-2214-System-header-sys-param.h-is-included-in.patch deleted file mode 100644 index 4a7671f..0000000 --- a/thrift-0.9.1-THRIFT-2214-System-header-sys-param.h-is-included-in.patch +++ /dev/null @@ -1,39 +0,0 @@ -From f4e6e62ea091b94322ecc99756269dbee1c06380 Mon Sep 17 00:00:00 2001 -From: Ben Craig -Date: Tue, 5 Nov 2013 19:49:12 -0600 -Subject: [PATCH 081/223] THRIFT-2214: System header sys/param.h is included - inside the Thrift namespace Client: cpp Patch: Vladimir Strisovsky - ---- - lib/cpp/src/thrift/protocol/TProtocol.h | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - -diff --git a/lib/cpp/src/thrift/protocol/TProtocol.h b/lib/cpp/src/thrift/protocol/TProtocol.h -index d6ecc0f..e72033a 100644 ---- a/lib/cpp/src/thrift/protocol/TProtocol.h -+++ b/lib/cpp/src/thrift/protocol/TProtocol.h -@@ -75,10 +75,6 @@ static inline To bitwise_cast(From from) { - } - - --namespace apache { namespace thrift { namespace protocol { -- --using apache::thrift::transport::TTransport; -- - #ifdef HAVE_SYS_PARAM_H - #include - #endif -@@ -140,6 +136,10 @@ using apache::thrift::transport::TTransport; - # error "Can't define htonll or ntohll!" - #endif - -+namespace apache { namespace thrift { namespace protocol { -+ -+using apache::thrift::transport::TTransport; -+ - /** - * Enumerated definition of the types that the Thrift protocol supports. - * Take special note of the T_END type which is used specifically to mark --- -2.6.1 - diff --git a/thrift-0.9.1-rebar.patch b/thrift-0.9.1-rebar.patch deleted file mode 100644 index 6207c13..0000000 --- a/thrift-0.9.1-rebar.patch +++ /dev/null @@ -1,9 +0,0 @@ ---- a/lib/erl/rebar.config 2013-08-21 15:39:39.121081905 -0500 -+++ b/lib/erl/rebar.config 2013-08-21 15:43:19.351633734 -0500 -@@ -1,5 +1,4 @@ - {erl_opts, [debug_info]}. - {lib_dirs, ["deps"]}. - {deps, [ -- { jsx, "1.2.1", {git, "git://github.com/talentdeficit/jsx.git", {tag, "v1.2.1"}}} -- ]}. -+]}. diff --git a/thrift.spec b/thrift.spec index 173aaa1..9eee937 100644 --- a/thrift.spec +++ b/thrift.spec @@ -1,22 +1,12 @@ -%global pkg_version 0.9.1 -%global fb303_version 1.0.0.dev0 -%global pkg_rel 17 - -%global py_version 2.7 - %global php_extdir %(php-config --extension-dir 2>/dev/null || echo "undefined") %{?perl_default_filter} -%global __provides_exclude_from ^(%{python_sitearch}/.*\\.so|%{php_extdir}/.*\\.so)$ +%global __provides_exclude_from ^(%{python2_sitearch}/.*\\.so|%{php_extdir}/.*\\.so)$ %global have_mongrel 0 -%if 0%{?fedora} >= 19 && 0%{?fedora} < 21 # erlang-jsx is available in F19 but orphaned in F22 -%global have_jsx 1 -%else %global have_jsx 0 -%endif # We should be able to enable this in the future %global want_d 0 @@ -58,80 +48,60 @@ %global want_golang 0 %global golang_configure --without-go -Name: thrift -Version: %{pkg_version} -Release: %{pkg_rel}%{?dist}.6 -Summary: Software framework for cross-language services development +Name: thrift +Version: 0.10.0 +Release: 1%{?dist} +Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but # these are OK for inclusion in an Apache 2.0-licensed whole: -# http://www.apache.org/legal/3party.html +# https://www.apache.org/legal/3party.html # Here's the breakdown: -# thrift-0.9.1/lib/py/compat/win32/stdint.h is 2-clause BSD -# thrift-0.9.1/compiler/cpp/src/md5.[ch] are zlib -License: ASL 2.0 and BSD and zlib -URL: http://thrift.apache.org/ +# ./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 +URL: https://thrift.apache.org/ -%if "%{version}" != "0.9.1" -Source0: http://archive.apache.org/dist/%{name}/%{version}/%{name}-%{version}.tar.gz -%else -# Unfortunately, the distribution tarball for thrift-0.9.1 is broken, so we're -# using an exported tarball from git. This will change in the future. +Source0: https://archive.apache.org/dist/%{name}/%{version}/%{name}-%{version}.tar.gz -Source0: https://github.com/apache/thrift/archive/0.9.1.tar.gz -%endif +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 -Source1: http://repo1.maven.org/maven2/org/apache/thrift/lib%{name}/%{version}/lib%{name}-%{version}.pom -Source2: https://raw.github.com/apache/%{name}/%{version}/bootstrap.sh - -Source3: https://gitorious.org/pkg-scribe/thrift-deb-pkg/raw/master:debian/manpage.1.ex -Source4: http://repo1.maven.org/maven2/org/apache/thrift/libfb303/%{version}/libfb303-%{version}.pom +Source3: https://gitorious.org/pkg-scribe/thrift-deb-pkg/raw/master:debian/manpage.1.ex +Source4: https://repo1.maven.org/maven2/org/apache/thrift/libfb303/%{version}/libfb303-%{version}.pom # this patch is adapted from Gil Cattaneo's thrift-0.7.0 package -Patch0: thrift-0.9.1-buildxml.patch -# don't use bundled rebar executable -Patch1: thrift-0.9.1-rebar.patch +Patch0: %{name}-%{version}-buildxml.patch # for fb303, excise maven ant tasks; build against system libraries; etc. -Patch2: fb303-0.9.1-buildxml.patch -# required to get it build on aarch64 -Patch3: thrift-0.9.1-THRIFT-2214-System-header-sys-param.h-is-included-in.patch -# Adapt to GCC 6, bug #1306671, in 0.9.3 -Patch4: thrift-0.9.1-Adapt-to-GCC-6.patch +Patch1: fb303-%{version}-buildxml.patch +# fix configure.ac insistence on using /usr/local/lib for JAVA_PREFIX +Patch2: configure-java-prefix.patch -Group: Development/Libraries +Group: Development/Libraries # BuildRequires for language-specific bindings are listed under these # subpackages, to facilitate enabling or disabling individual language # bindings in the future -BuildRequires: libstdc++-devel -BuildRequires: boost-devel -BuildRequires: automake -BuildRequires: autoconf -BuildRequires: openssl-devel -BuildRequires: zlib-devel -BuildRequires: bison-devel -BuildRequires: flex-devel -BuildRequires: glib2-devel -BuildRequires: texlive -BuildRequires: qt-devel - -BuildRequires: libtool -BuildRequires: autoconf -BuildRequires: automake - -BuildRequires: bison -BuildRequires: flex -BuildRequires: bison-devel -BuildRequires: flex-devel - -BuildRequires: ant - +BuildRequires: ant >= 1.7 +BuildRequires: autoconf +BuildRequires: automake +BuildRequires: bison +BuildRequires: boost-devel +BuildRequires: flex +BuildRequires: flex-devel +BuildRequires: glib2-devel +BuildRequires: libstdc++-devel +BuildRequires: libtool +BuildRequires: openssl-devel +BuildRequires: qt-devel +BuildRequires: texlive +BuildRequires: zlib-devel %if 0%{?want_golang} > 0 -BuildRequires: golang -Requires: golang +BuildRequires: golang +Requires: golang %endif %description @@ -141,13 +111,13 @@ development combines a software stack with a code generation engine to build services that work efficiently and seamlessly between C++, Java, Python, %{?php_langname}and other languages. -%package devel -Summary: Development files for %{name} -Requires: %{name}%{?_isa} = %{version}-%{release} -Requires: pkgconfig -Requires: boost-devel +%package devel +Summary: Development files for %{name} +Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: pkgconfig +Requires: boost-devel -%description devel +%description devel The %{name}-devel package contains libraries and header files for developing applications that use %{name}. @@ -165,127 +135,128 @@ Requires: %{name}%{?_isa} = %{version}-%{release} %description glib The %{name}-qt package contains GLib bindings for %{name}. -%package -n python-%{name} -Summary: Python support for %{name} -BuildRequires: python2-devel -Requires: %{name}%{?_isa} = %{version}-%{release} -Requires: python2 +%package -n python2-%{name} +Summary: Python 2 support for %{name} +BuildRequires: python2-devel +Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: python2 +Obsoletes: python-%{name} < 0.10.0-1%{?dist} -%description -n python-%{name} -The python-%{name} package contains Python bindings for %{name}. +%description -n python2-%{name} +The python2-%{name} package contains Python bindings for %{name}. -%package -n perl-%{name} -Summary: Perl support for %{name} -Provides: perl(Thrift) = %{version}-%{release} -BuildRequires: perl-generators -BuildRequires: perl(Bit::Vector) -BuildRequires: perl(ExtUtils::MakeMaker) -Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version)) -Requires: perl(Bit::Vector) -Requires: perl(Encode) -Requires: perl(HTTP::Request) -Requires: perl(IO::Select) -Requires: perl(IO::Socket::INET) -Requires: perl(IO::String) -Requires: perl(LWP::UserAgent) -Requires: perl(POSIX) -Requires: perl(base) -Requires: perl(constant) -Requires: perl(strict) -Requires: perl(utf8) -Requires: perl(warnings) -BuildArch: noarch +%package -n perl-%{name} +Summary: Perl support for %{name} +Provides: perl(Thrift) = %{version}-%{release} +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) +Requires: perl(IO::Select) +Requires: perl(IO::Socket::INET) +Requires: perl(IO::String) +Requires: perl(LWP::UserAgent) +Requires: perl(POSIX) +Requires: perl(base) +Requires: perl(constant) +Requires: perl(strict) +Requires: perl(utf8) +Requires: perl(warnings) +BuildArch: noarch %description -n perl-%{name} The perl-%{name} package contains Perl bindings for %{name}. %if %{?want_d} -%package -n d-%{name} -Summary: D support for %{name} -BuildRequires: ldc +%package -n d-%{name} +Summary: D support for %{name} +BuildRequires: ldc %description -n d-%{name} The d-%{name} package contains D bindings for %{name}. %endif %if 0%{?want_php} != 0 -%package -n php-%{name} -Summary: PHP support for %{name} -Requires: %{name}%{?_isa} = %{version}-%{release} -Requires: php(zend-abi) = %{php_zend_api} -Requires: php(api) = %{php_core_api} -Requires: php(language) >= 5.3.0 -Requires: php-date -Requires: php-json -BuildRequires: php-devel +%package -n php-%{name} +Summary: PHP support for %{name} +Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: php(zend-abi) = %{php_zend_api} +Requires: php(api) = %{php_core_api} +Requires: php(language) >= 5.3.0 +Requires: php-date +Requires: php-json +BuildRequires: php-devel %description -n php-%{name} The php-%{name} package contains PHP bindings for %{name}. %endif -%package -n lib%{name}-javadoc -Summary: API documentation for java-%{name} -Requires: lib%{name}-java = %{version}-%{release} -BuildArch: noarch +%package -n lib%{name}-javadoc +Summary: API documentation for java-%{name} +Requires: lib%{name}-java = %{version}-%{release} +BuildArch: noarch %description -n lib%{name}-javadoc The lib%{name}-javadoc package contains API documentation for the Java bindings for %{name}. -%package -n lib%{name}-java -Summary: Java support for %{name} +%package -n lib%{name}-java +Summary: Java support for %{name} -BuildRequires: java-devel -BuildRequires: javapackages-tools -BuildRequires: apache-commons-codec -BuildRequires: apache-commons-lang -BuildRequires: apache-commons-logging -BuildRequires: httpcomponents-client -BuildRequires: httpcomponents-core -BuildRequires: junit -BuildRequires: log4j -BuildRequires: slf4j -BuildRequires: tomcat-servlet-3.1-api - -Requires: java-headless >= 1:1.6.0 -Requires: javapackages-tools -Requires: mvn(org.slf4j:slf4j-api) -Requires: mvn(commons-lang:commons-lang) -Requires: mvn(org.apache.httpcomponents:httpclient) -Requires: mvn(org.apache.httpcomponents:httpcore) -BuildArch: noarch +BuildRequires: apache-commons-codec +BuildRequires: apache-commons-lang +BuildRequires: apache-commons-logging +BuildRequires: httpcomponents-client +BuildRequires: httpcomponents-core +BuildRequires: java-devel +BuildRequires: javapackages-tools +BuildRequires: junit +BuildRequires: log4j +BuildRequires: slf4j +BuildRequires: tomcat-servlet-3.1-api +Requires: java-headless >= 1:1.6.0 +Requires: javapackages-tools +Requires: mvn(org.slf4j:slf4j-api) +Requires: mvn(commons-lang:commons-lang) +Requires: mvn(org.apache.httpcomponents:httpclient) +Requires: mvn(org.apache.httpcomponents:httpcore) +BuildArch: noarch %description -n lib%{name}-java The lib%{name}-java package contains Java bindings for %{name}. %if 0%{?want_ruby} > 0 -%package -n ruby-%{name} -Summary: Ruby support for %{name} -Requires: %{name}%{?_isa} = %{version}-%{release} -Requires: ruby(release) -BuildRequires: ruby-devel +%package -n ruby-%{name} +Summary: Ruby support for %{name} +Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: ruby(release) +BuildRequires: ruby-devel %description -n ruby-%{name} The ruby-%{name} package contains Ruby bindings for %{name}. %endif %if 0%{?want_erlang} > 0 -%package -n erlang-%{name} -Summary: Erlang support for %{name} -Requires: %{name}%{?_isa} = %{version}-%{release} -Requires: erlang -Requires: erlang-jsx -BuildRequires: erlang -BuildRequires: erlang-rebar +%package -n erlang-%{name} +Summary: Erlang support for %{name} +Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: erlang +Requires: erlang-jsx +BuildRequires: erlang +BuildRequires: erlang-rebar %description -n erlang-%{name} The erlang-%{name} package contains Erlang bindings for %{name}. %endif %package -n fb303 -Summary: Basic interface for Thrift services -Requires: %{name}%{?_isa} = %{version}-%{release} +Summary: Basic interface for Thrift services +Requires: %{name}%{?_isa} = %{version}-%{release} %description -n fb303 fb303 is the shared root of all Thrift services; it provides a @@ -293,41 +264,37 @@ standard interface to monitoring, dynamic options and configuration, uptime reports, activity, etc. %package -n fb303-devel -Summary: Development files for fb303 -Requires: fb303%{?_isa} = %{version}-%{release} +Summary: Development files for fb303 +Requires: fb303%{?_isa} = %{version}-%{release} %description -n fb303-devel The fb303-devel package contains header files for fb303 -%package -n python-fb303 -Summary: Python bindings for fb303 -Requires: fb303%{?_isa} = %{version}-%{release} -BuildRequires: python2-devel +%package -n python2-fb303 +Summary: Python 2 bindings for fb303 +Requires: fb303%{?_isa} = %{version}-%{release} +BuildRequires: python2-devel +Obsoletes: python-fb303 < 0.10.0-1%{?dist} -%description -n python-fb303 -The python-fb303 package contains Python bindings for fb303. +%description -n python2-fb303 +The python2-fb303 package contains Python bindings for fb303. %package -n fb303-java -Summary: Java bindings for fb303 -Requires: java >= 1:1.6.0 -Requires: javapackages-tools -Requires: mvn(org.slf4j:slf4j-api) -Requires: mvn(commons-lang:commons-lang) -Requires: mvn(org.apache.httpcomponents:httpclient) -Requires: mvn(org.apache.httpcomponents:httpcore) -BuildArch: noarch +Summary: Java bindings for fb303 +Requires: java >= 1:1.6.0 +Requires: javapackages-tools +Requires: mvn(org.slf4j:slf4j-api) +Requires: mvn(commons-lang:commons-lang) +Requires: mvn(org.apache.httpcomponents:httpclient) +Requires: mvn(org.apache.httpcomponents:httpcore) +BuildArch: noarch %description -n fb303-java The fb303-java package contains Java bindings for fb303. %global _default_patch_fuzz 2 %prep -%setup -q -%patch0 -p1 -%patch1 -p1 -%patch2 -p1 -%patch3 -p1 -%patch4 -p1 +%autosetup -p1 %{?!el5:sed -i -e 's/^AC_PROG_LIBTOOL/LT_INIT/g' configure.ac} @@ -347,6 +314,10 @@ echo 'EXTRA_libthriftz_la_DEPENDENCIES = libthrift.la' >> lib/cpp/Makefile.am sed -i 's|libfb303_so_LDFLAGS = $(SHARED_LDFLAGS)|libfb303_so_LDFLAGS = $(SHARED_LDFLAGS) -lthrift -L../../../lib/cpp/.libs -Wl,--as-needed|g' contrib/fb303/cpp/Makefile.am +# fix broken upstream check for ant version; we enforce this with BuildRequires, so no need to check here +sed -i 's|ANT_VALID=.*|ANT_VALID=1|' aclocal/ax_javac_and_java.m4 +sed -i 's|ANT_VALID=.*|ANT_VALID=1|' contrib/fb303/aclocal/ax_javac_and_java.m4 + %build export PY_PREFIX=%{_prefix} export PERL_PREFIX=%{_prefix} @@ -401,7 +372,7 @@ make %{?_smp_mflags} # build fb303 ( cd contrib/fb303 - chmod 755 bootstrap.sh + sed -i '/^[.][/]configure.*/d' bootstrap.sh sh bootstrap.sh %configure --disable-static --with-java --without-php --libdir=%{_libdir} make %{?_smp_mflags} @@ -469,12 +440,10 @@ install -pm 644 %{SOURCE4} %{buildroot}%{_mavenpomdir}/JPP-libfb303.pom # Ensure all python scripts are executable find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r chmod 755 - %post -p /sbin/ldconfig %postun -p /sbin/ldconfig - %files %doc LICENSE NOTICE %{_bindir}/thrift @@ -494,6 +463,8 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %{_includedir}/thrift %exclude %{_includedir}/thrift/fb303 %{_libdir}/*.so +%{_libdir}/*.so.0 +%{_libdir}/*.so.0.0.0 %exclude %{_libdir}/lib*-%{version}.so %exclude %{_libdir}/libfb303.so %{_libdir}/pkgconfig/thrift-z.pc @@ -521,9 +492,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %endif -%files -n python-%{name} -%{python_sitearch}/%{name} -%{python_sitearch}/%{name}-%{version}-py%{py_version}.egg-info +%files -n python2-%{name} +%{python2_sitearch}/%{name} +%{python2_sitearch}/%{name}-%{version}-py%{python2_version}.egg-info %doc LICENSE NOTICE %files -n lib%{name}-javadoc @@ -542,16 +513,19 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %{_includedir}/thrift/fb303 %doc LICENSE NOTICE -%files -n python-fb303 -%{python_sitelib}/fb303 -%{python_sitelib}/fb303_scripts -%{python_sitelib}/%{name}_fb303-%{fb303_version}-py%{py_version}.egg-info +%files -n python2-fb303 +%{python2_sitelib}/fb303 +%{python2_sitelib}/fb303_scripts +%{python2_sitelib}/%{name}_fb303-%{version}-py%{python2_version}.egg-info %doc LICENSE NOTICE %files -n fb303-java -f .mfiles-fb303 %doc LICENSE NOTICE %changelog +* Tue Mar 07 2017 Christopher Tubbs - 0.10.0-1 +- Update to thrift 0.10.0 + * Sat Feb 11 2017 Fedora Release Engineering - 0.9.1-17.6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild @@ -603,7 +577,6 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r * Mon Jan 26 2015 Petr Machata - 0.9.1-13.3 - Rebuild for boost 1.57.0 - * Thu Aug 28 2014 Jitka Plesnikova - 0.9.1-13.2 - Perl 5.20 rebuild From 9cb9bef0ac753d27b507e552fd9475a5e576ba95 Mon Sep 17 00:00:00 2001 From: Christopher Tubbs Date: Mon, 13 Mar 2017 19:58:01 -0400 Subject: [PATCH 31/97] Build TNonblockingServer, remove useless man page, and use java-headless --- manpage.1.ex | 60 ---------------------------------------------------- thrift.spec | 25 +++++++++++----------- 2 files changed, 12 insertions(+), 73 deletions(-) delete mode 100644 manpage.1.ex diff --git a/manpage.1.ex b/manpage.1.ex deleted file mode 100644 index 160f57b..0000000 --- a/manpage.1.ex +++ /dev/null @@ -1,60 +0,0 @@ -.\" Hey, EMACS: -*- nroff -*- -.\" First parameter, NAME, should be all caps -.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection -.\" other parameters are allowed: see man(7), man(1) -.TH THRIFT SECTION "June 27, 2010" -.\" Please adjust this date whenever revising the manpage. -.\" -.\" Some roff macros, for reference: -.\" .nh disable hyphenation -.\" .hy enable hyphenation -.\" .ad l left justify -.\" .ad b justify to both left and right margins -.\" .nf disable filling -.\" .fi enable filling -.\" .br insert line break -.\" .sp insert n+1 empty lines -.\" for manpage-specific macros, see man(7) -.SH NAME -thrift \- program to do something -.SH SYNOPSIS -.B thrift -.RI [ options ] " files" ... -.br -.B bar -.RI [ options ] " files" ... -.SH DESCRIPTION -This manual page documents briefly the -.B thrift -and -.B bar -commands. -.PP -.\" TeX users may be more comfortable with the \fB\fP and -.\" \fI\fP escape sequences to invode bold face and italics, -.\" respectively. -\fBthrift\fP is a program that... -.SH OPTIONS -These programs follow the usual GNU command line syntax, with long -options starting with two dashes (`-'). -A summary of options is included below. -For a complete description, see the Info files. -.TP -.B \-h, \-\-help -Show summary of options. -.TP -.B \-v, \-\-version -Show version of program. -.SH SEE ALSO -.BR bar (1), -.BR baz (1). -.br -The programs are documented fully by -.IR "The Rise and Fall of a Fooish Bar" , -available via the Info system. -.SH AUTHOR -thrift was written by . -.PP -This manual page was written by Krzysztof Krzyżaniak (eloy) , -for the Debian project (and may be used by others). - diff --git a/thrift.spec b/thrift.spec index 9eee937..6b6181e 100644 --- a/thrift.spec +++ b/thrift.spec @@ -50,7 +50,7 @@ Name: thrift Version: 0.10.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -68,8 +68,7 @@ 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 -Source3: https://gitorious.org/pkg-scribe/thrift-deb-pkg/raw/master:debian/manpage.1.ex -Source4: https://repo1.maven.org/maven2/org/apache/thrift/libfb303/%{version}/libfb303-%{version}.pom +Source3: https://repo1.maven.org/maven2/org/apache/thrift/libfb303/%{version}/libfb303-%{version}.pom # this patch is adapted from Gil Cattaneo's thrift-0.7.0 package Patch0: %{name}-%{version}-buildxml.patch @@ -89,9 +88,11 @@ BuildRequires: autoconf BuildRequires: automake BuildRequires: bison BuildRequires: boost-devel +BuildRequires: boost-static BuildRequires: flex BuildRequires: flex-devel BuildRequires: glib2-devel +BuildRequires: libevent-devel BuildRequires: libstdc++-devel BuildRequires: libtool BuildRequires: openssl-devel @@ -281,7 +282,7 @@ The python2-fb303 package contains Python bindings for fb303. %package -n fb303-java Summary: Java bindings for fb303 -Requires: java >= 1:1.6.0 +Requires: java-headless >= 1:1.6.0 Requires: javapackages-tools Requires: mvn(org.slf4j:slf4j-api) Requires: mvn(commons-lang:commons-lang) @@ -292,7 +293,6 @@ BuildArch: noarch %description -n fb303-java The fb303-java package contains Java bindings for fb303. -%global _default_patch_fuzz 2 %prep %autosetup -p1 @@ -362,7 +362,7 @@ install: build/libfb303.jar sh ./bootstrap.sh # use unversioned doc dirs where appropriate (via _pkgdocdir macro) -%configure --disable-dependency-tracking --disable-static --without-libevent --with-boost=/usr %{ruby_configure} %{erlang_configure} %{golang_configure} %{php_configure} --docdir=%{?_pkgdocdir}%{!?_pkgdocdir:%{_docdir}/%{name}-%{version}} +%configure --disable-dependency-tracking --disable-static --with-boost=/usr %{ruby_configure} %{erlang_configure} %{golang_configure} %{php_configure} --docdir=%{?_pkgdocdir}%{!?_pkgdocdir:%{_docdir}/%{name}-%{version}} # eliminate unused direct shlib dependencies sed -i -e 's/ -shared / -Wl,--as-needed\0/g' libtool @@ -388,11 +388,6 @@ find %{buildroot} -name '*.la' -exec rm -f {} ';' find %{buildroot} -name fastbinary.so | xargs -r chmod 755 find %{buildroot} -name \*.erl -or -name \*.hrl -or -name \*.app | xargs -r chmod 644 -# install man page -mkdir -p %{buildroot}%{_mandir}/man1 -cp %{SOURCE3} %{buildroot}%{_mandir}/man1/thrift.1 -gzip -9v %{buildroot}%{_mandir}/man1/thrift.1 - # Remove javadocs jar find %{buildroot}/%{_javadir} -name lib%{name}-javadoc.jar -exec rm -f '{}' \; @@ -434,7 +429,7 @@ find %{buildroot} -name Thread.h -exec chmod a-x '{}' \; ) # install maven pom and depmaps for fb303 -install -pm 644 %{SOURCE4} %{buildroot}%{_mavenpomdir}/JPP-libfb303.pom +install -pm 644 %{SOURCE3} %{buildroot}%{_mavenpomdir}/JPP-libfb303.pom %add_maven_depmap JPP-libfb303.pom libfb303.jar -f "fb303" # Ensure all python scripts are executable @@ -449,7 +444,7 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %{_bindir}/thrift %{_libdir}/libthrift-%{version}.so %{_libdir}/libthriftz-%{version}.so -%{_mandir}/man1/thrift.1.gz +%{_libdir}/libthriftnb-%{version}.so %files glib %{_libdir}/libthrift_c_glib.so @@ -469,6 +464,7 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %exclude %{_libdir}/libfb303.so %{_libdir}/pkgconfig/thrift-z.pc %{_libdir}/pkgconfig/thrift-qt.pc +%{_libdir}/pkgconfig/thrift-nb.pc %{_libdir}/pkgconfig/thrift.pc %{_libdir}/pkgconfig/thrift_c_glib.pc %doc LICENSE NOTICE @@ -523,6 +519,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %changelog +* Mon Mar 13 2017 Christopher Tubbs - 0.10.0-2 +- Build TNonblockingServer, remove useless man page, and use java-headless + * Tue Mar 07 2017 Christopher Tubbs - 0.10.0-1 - Update to thrift 0.10.0 From bf1db3ac977dffbd43c0a533b9c0fbfe259653d8 Mon Sep 17 00:00:00 2001 From: Christopher Tubbs Date: Tue, 14 Mar 2017 05:22:22 -0400 Subject: [PATCH 32/97] Fix ppc64le builds --- fix-ppc64le-builds.patch | 13 +++++++++++++ thrift.spec | 2 ++ 2 files changed, 15 insertions(+) create mode 100644 fix-ppc64le-builds.patch diff --git a/fix-ppc64le-builds.patch b/fix-ppc64le-builds.patch new file mode 100644 index 0000000..f56ad86 --- /dev/null +++ b/fix-ppc64le-builds.patch @@ -0,0 +1,13 @@ +diff --git a/aclocal/ax_boost_base.m4 b/aclocal/ax_boost_base.m4 +index b496020..30ee0df 100644 +--- a/aclocal/ax_boost_base.m4 ++++ b/aclocal/ax_boost_base.m4 +@@ -92,7 +92,7 @@ if test "x$want_boost" = "xyes"; then + libsubdirs="lib" + ax_arch=`uname -m` + case $ax_arch in +- x86_64|ppc64|s390x|sparc64|aarch64) ++ x86_64|ppc64|ppc64le|s390x|sparc64|aarch64) + libsubdirs="lib64 lib lib64" + ;; + esac diff --git a/thrift.spec b/thrift.spec index 6b6181e..115c611 100644 --- a/thrift.spec +++ b/thrift.spec @@ -76,6 +76,8 @@ Patch0: %{name}-%{version}-buildxml.patch Patch1: fb303-%{version}-buildxml.patch # fix configure.ac insistence on using /usr/local/lib for JAVA_PREFIX Patch2: configure-java-prefix.patch +# fix for ppc64le builds not linking to /usr/lib64 directory +Patch3: fix-ppc64le-builds.patch Group: Development/Libraries From 8948eb896e08f639000f6a154ab73b2126f4232a Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Mon, 15 May 2017 20:29:34 +0000 Subject: [PATCH 33/97] - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_27_Mass_Rebuild --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 115c611..0a6a20a 100644 --- a/thrift.spec +++ b/thrift.spec @@ -50,7 +50,7 @@ Name: thrift Version: 0.10.0 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -521,6 +521,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %changelog +* Mon May 15 2017 Fedora Release Engineering - 0.10.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_27_Mass_Rebuild + * Mon Mar 13 2017 Christopher Tubbs - 0.10.0-2 - Build TNonblockingServer, remove useless man page, and use java-headless From 708e41e0995a9752294e35533cdfca38167ec144 Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Mon, 5 Jun 2017 01:34:25 +0200 Subject: [PATCH 34/97] Perl 5.26 rebuild --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 0a6a20a..383540a 100644 --- a/thrift.spec +++ b/thrift.spec @@ -50,7 +50,7 @@ Name: thrift Version: 0.10.0 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -521,6 +521,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %changelog +* Sun Jun 04 2017 Jitka Plesnikova - 0.10.0-4 +- Perl 5.26 rebuild + * Mon May 15 2017 Fedora Release Engineering - 0.10.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_27_Mass_Rebuild From 16021f27d1b6bbf4902caf4300474a7c298a617e Mon Sep 17 00:00:00 2001 From: Christopher Tubbs Date: Thu, 6 Jul 2017 15:46:47 -0400 Subject: [PATCH 35/97] Fix FTBFS in rawhide: add BR javapackages-local --- thrift.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 383540a..b36f813 100644 --- a/thrift.spec +++ b/thrift.spec @@ -50,7 +50,7 @@ Name: thrift Version: 0.10.0 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -217,6 +217,7 @@ BuildRequires: httpcomponents-client BuildRequires: httpcomponents-core BuildRequires: java-devel BuildRequires: javapackages-tools +BuildRequires: javapackages-local BuildRequires: junit BuildRequires: log4j BuildRequires: slf4j @@ -521,6 +522,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %changelog +* Thu Jul 06 2017 Christopher Tubbs - 0.10.0-5 +- Fix FTBFS in rawhide: add BR javapackages-local + * Sun Jun 04 2017 Jitka Plesnikova - 0.10.0-4 - Perl 5.26 rebuild From d7dd118cbf37ae2ecd9ad99d4bded5591c9da4da Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 27 Jul 2017 20:15:05 +0000 Subject: [PATCH 36/97] - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index b36f813..eabb738 100644 --- a/thrift.spec +++ b/thrift.spec @@ -50,7 +50,7 @@ Name: thrift Version: 0.10.0 -Release: 5%{?dist} +Release: 6%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -522,6 +522,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %changelog +* Thu Jul 27 2017 Fedora Release Engineering - 0.10.0-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + * Thu Jul 06 2017 Christopher Tubbs - 0.10.0-5 - Fix FTBFS in rawhide: add BR javapackages-local From bf1bea70d24d2d58e96c1481bf99b28e3e182954 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 3 Aug 2017 09:23:30 +0000 Subject: [PATCH 37/97] - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index eabb738..254fc63 100644 --- a/thrift.spec +++ b/thrift.spec @@ -50,7 +50,7 @@ Name: thrift Version: 0.10.0 -Release: 6%{?dist} +Release: 7%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -522,6 +522,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %changelog +* Thu Aug 03 2017 Fedora Release Engineering - 0.10.0-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + * Thu Jul 27 2017 Fedora Release Engineering - 0.10.0-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild From 123a89d00cab36f9b3de46c8397af09f97e69dbc Mon Sep 17 00:00:00 2001 From: Christopher Tubbs Date: Thu, 21 Dec 2017 23:46:44 -0500 Subject: [PATCH 38/97] Fix for rhbz#1507518 --- THRIFT-4177.patch | 27 +++++++++++++++++++++++++++ thrift.spec | 7 ++++++- 2 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 THRIFT-4177.patch diff --git a/THRIFT-4177.patch b/THRIFT-4177.patch new file mode 100644 index 0000000..c0c331b --- /dev/null +++ b/THRIFT-4177.patch @@ -0,0 +1,27 @@ +diff --git a/compiler/cpp/src/thrift/generate/t_java_generator.cc b/compiler/cpp/src/thrift/generate/t_java_generator.cc +index fb581e4..90dfa06 100644 +--- a/compiler/cpp/src/thrift/generate/t_java_generator.cc ++++ b/compiler/cpp/src/thrift/generate/t_java_generator.cc +@@ -4657,8 +4657,9 @@ void t_java_generator::generate_deep_copy_non_container(ofstream& out, + std::string dest_name, + t_type* type) { + (void)dest_name; ++ type = get_true_type(type); + if (type->is_base_type() || type->is_enum() || type->is_typedef()) { +- if (((t_base_type*)type)->is_binary()) { ++ if (type->is_binary()) { + out << "org.apache.thrift.TBaseHelper.copyBinary(" << source_name << ")"; + } else { + // everything else can be copied directly +diff --git a/compiler/cpp/src/thrift/parse/t_type.h b/compiler/cpp/src/thrift/parse/t_type.h +index 30f8c1f7..3a6d1e04 100644 +--- a/compiler/cpp/src/thrift/parse/t_type.h ++++ b/compiler/cpp/src/thrift/parse/t_type.h +@@ -47,6 +47,7 @@ public: + virtual bool is_void() const { return false; } + virtual bool is_base_type() const { return false; } + virtual bool is_string() const { return false; } ++ virtual bool is_binary() const { return false; } + virtual bool is_bool() const { return false; } + virtual bool is_typedef() const { return false; } + virtual bool is_enum() const { return false; } diff --git a/thrift.spec b/thrift.spec index 0a6a20a..1e17eb6 100644 --- a/thrift.spec +++ b/thrift.spec @@ -50,7 +50,7 @@ Name: thrift Version: 0.10.0 -Release: 3%{?dist} +Release: 8%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -78,6 +78,8 @@ Patch1: fb303-%{version}-buildxml.patch Patch2: configure-java-prefix.patch # fix for ppc64le builds not linking to /usr/lib64 directory Patch3: fix-ppc64le-builds.patch +# fix for s390x build; incorporates fix for THRIFT-4177 with some code from THRIFT-4136 +Patch4: THRIFT-4177.patch Group: Development/Libraries @@ -521,6 +523,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %changelog +* Fri Dec 22 2017 Christopher Tubbs - 0.10.0-8 +- Fix for rhbz#1507518 + * Mon May 15 2017 Fedora Release Engineering - 0.10.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_27_Mass_Rebuild From 047ca65adf45476d2eb831d3170918a6f36e3ebc Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 9 Feb 2018 18:54:58 +0000 Subject: [PATCH 39/97] - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index d55b290..c1ac0b2 100644 --- a/thrift.spec +++ b/thrift.spec @@ -50,7 +50,7 @@ Name: thrift Version: 0.10.0 -Release: 8%{?dist} +Release: 9%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -524,6 +524,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %changelog +* Fri Feb 09 2018 Fedora Release Engineering - 0.10.0-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + * Fri Dec 22 2017 Christopher Tubbs - 0.10.0-8 - Fix for rhbz#1507518 From f02e4292b522aba1cd33ee2a2fbc5351867fab4f Mon Sep 17 00:00:00 2001 From: Christopher Tubbs Date: Wed, 7 Mar 2018 20:20:31 -0500 Subject: [PATCH 40/97] Add gcc-c++ BuildRequires --- thrift.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index c1ac0b2..8a61075 100644 --- a/thrift.spec +++ b/thrift.spec @@ -50,7 +50,7 @@ Name: thrift Version: 0.10.0 -Release: 9%{?dist} +Release: 10%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -95,6 +95,7 @@ BuildRequires: boost-devel BuildRequires: boost-static BuildRequires: flex BuildRequires: flex-devel +BuildRequires: gcc-c++ BuildRequires: glib2-devel BuildRequires: libevent-devel BuildRequires: libstdc++-devel @@ -524,6 +525,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %changelog +* Thu Mar 08 2018 Christopher Tubbs - 0.10.0-10 +- Add gcc-c++ BuildRequires + * Fri Feb 09 2018 Fedora Release Engineering - 0.10.0-9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild From 0e241cd08ab3fdbd25806a3560a8448b8665a13c Mon Sep 17 00:00:00 2001 From: Christopher Tubbs Date: Wed, 30 May 2018 19:41:09 -0400 Subject: [PATCH 41/97] Fix FTBFS; update servlet-api dependency (rhbz#1581175) --- fb303-0.10.0-buildxml.patch | 2 +- thrift-0.10.0-buildxml.patch | 8 ++++---- thrift.spec | 8 ++++++-- 3 files changed, 11 insertions(+), 7 deletions(-) diff --git a/fb303-0.10.0-buildxml.patch b/fb303-0.10.0-buildxml.patch index bbff5ec..eb3825a 100644 --- a/fb303-0.10.0-buildxml.patch +++ b/fb303-0.10.0-buildxml.patch @@ -51,7 +51,7 @@ index 8f2fa51..d89f05e 100755 + + + -+ ++ + + diff --git a/thrift-0.10.0-buildxml.patch b/thrift-0.10.0-buildxml.patch index db4b497..8931c03 100644 --- a/thrift-0.10.0-buildxml.patch +++ b/thrift-0.10.0-buildxml.patch @@ -26,7 +26,7 @@ index 40e5284..db1ce54 100644 + + + -+ ++ @@ -187,7 +187,7 @@ index 7638d5b..c5ca703 100644 + + + -+ ++ @@ -205,7 +205,7 @@ index 7638d5b..c5ca703 100644 + + + -+ ++ + @@ -229,7 +229,7 @@ index a9a9ad4..2fddf0c 100644 + + + -+ ++ diff --git a/thrift.spec b/thrift.spec index 8a61075..79bcf18 100644 --- a/thrift.spec +++ b/thrift.spec @@ -50,7 +50,7 @@ Name: thrift Version: 0.10.0 -Release: 10%{?dist} +Release: 11%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -224,7 +224,8 @@ BuildRequires: javapackages-local BuildRequires: junit BuildRequires: log4j BuildRequires: slf4j -BuildRequires: tomcat-servlet-3.1-api +# javax.servlet-api 3.1.0 is provided by glassfish-servlet-api +BuildRequires: mvn(javax.servlet:javax.servlet-api) = 3.1.0 Requires: java-headless >= 1:1.6.0 Requires: javapackages-tools @@ -525,6 +526,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %changelog +* Wed May 30 2018 Christopher Tubbs - 0.10.0-11 +- Fix FTBFS; update servlet-api dependency (rhbz#1581175) + * Thu Mar 08 2018 Christopher Tubbs - 0.10.0-10 - Add gcc-c++ BuildRequires From d348efa593ca1782e4b95411e0282e8b8776e87c Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Fri, 29 Jun 2018 22:09:31 +0200 Subject: [PATCH 42/97] Perl 5.28 rebuild --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 79bcf18..27042a4 100644 --- a/thrift.spec +++ b/thrift.spec @@ -50,7 +50,7 @@ Name: thrift Version: 0.10.0 -Release: 11%{?dist} +Release: 12%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -526,6 +526,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %changelog +* Fri Jun 29 2018 Jitka Plesnikova - 0.10.0-12 +- Perl 5.28 rebuild + * Wed May 30 2018 Christopher Tubbs - 0.10.0-11 - Fix FTBFS; update servlet-api dependency (rhbz#1581175) From dc4d73bb498edbdaaef5b5b71eb19e42fe97f35b Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 14 Jul 2018 07:32:35 +0000 Subject: [PATCH 43/97] - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 27042a4..f25dff9 100644 --- a/thrift.spec +++ b/thrift.spec @@ -50,7 +50,7 @@ Name: thrift Version: 0.10.0 -Release: 12%{?dist} +Release: 13%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -526,6 +526,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %changelog +* Sat Jul 14 2018 Fedora Release Engineering - 0.10.0-13 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + * Fri Jun 29 2018 Jitka Plesnikova - 0.10.0-12 - Perl 5.28 rebuild From 4cdd59c42d142ed2b7b0088b3569d93c486a0855 Mon Sep 17 00:00:00 2001 From: Christopher Tubbs Date: Wed, 18 Jul 2018 01:59:18 -0400 Subject: [PATCH 44/97] Migrate to python3; rhbz#1533306 --- python3.patch | 72 +++++++++++++++++++++++++++++++++++++++++++++++++++ thrift.spec | 53 +++++++++++++++++++++---------------- 2 files changed, 103 insertions(+), 22 deletions(-) create mode 100644 python3.patch diff --git a/python3.patch b/python3.patch new file mode 100644 index 0000000..c2908fd --- /dev/null +++ b/python3.patch @@ -0,0 +1,72 @@ +diff --git a/contrib/fb303/py/fb303_scripts/fb303_simple_mgmt.py b/contrib/fb303/py/fb303_scripts/fb303_simple_mgmt.py +index 4b1c257..df1c8cc 100644 +--- a/contrib/fb303/py/fb303_scripts/fb303_simple_mgmt.py ++++ b/contrib/fb303/py/fb303_scripts/fb303_simple_mgmt.py +@@ -57,24 +57,24 @@ def service_ctrl( + msg = fb_status_string(status) + if (len(status_details)): + msg += " - %s" % status_details +- print msg ++ print(msg) + + if (status == fb_status.ALIVE): + return 2 + else: + return 3 + except: +- print "Failed to get status" ++ print("Failed to get status") + return 3 + + # scalar commands + if command in ["version", "alive", "name"]: + try: + result = fb303_wrapper(command, port, trans_factory, prot_factory) +- print result ++ print(result) + return 0 + except: +- print "failed to get ", command ++ print("failed to get ", command) + return 3 + + # counters +@@ -82,10 +82,10 @@ def service_ctrl( + try: + counters = fb303_wrapper('counters', port, trans_factory, prot_factory) + for counter in counters: +- print "%s: %d" % (counter, counters[counter]) ++ print("%s: %d" % (counter, counters[counter])) + return 0 + except: +- print "failed to get counters" ++ print("failed to get counters") + return 3 + + # Only root should be able to run the following commands +@@ -96,19 +96,19 @@ def service_ctrl( + fb303_wrapper(command, port, trans_factory, prot_factory) + return 0 + except: +- print "failed to tell the service to ", command ++ print("failed to tell the service to ", command) + return 3 + else: + if command in ["stop", "reload"]: +- print "root privileges are required to stop or reload the service." ++ print("root privileges are required to stop or reload the service.") + return 4 + +- print "The following commands are available:" ++ print("The following commands are available:") + for command in ["counters", "name", "version", "alive", "status"]: +- print "\t%s" % command +- print "The following commands are available for users with root privileges:" ++ print("\t%s" % command) ++ print("The following commands are available for users with root privileges:") + for command in ["stop", "reload"]: +- print "\t%s" % command ++ print("\t%s" % command) + + return 0 + diff --git a/thrift.spec b/thrift.spec index f25dff9..3c7e5ad 100644 --- a/thrift.spec +++ b/thrift.spec @@ -1,7 +1,7 @@ %global php_extdir %(php-config --extension-dir 2>/dev/null || echo "undefined") %{?perl_default_filter} -%global __provides_exclude_from ^(%{python2_sitearch}/.*\\.so|%{php_extdir}/.*\\.so)$ +%global __provides_exclude_from ^(%{python3_sitearch}/.*\\.so|%{php_extdir}/.*\\.so)$ %global have_mongrel 0 @@ -50,7 +50,7 @@ Name: thrift Version: 0.10.0 -Release: 13%{?dist} +Release: 14%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -81,6 +81,9 @@ Patch3: fix-ppc64le-builds.patch # fix for s390x build; incorporates fix for THRIFT-4177 with some code from THRIFT-4136 Patch4: THRIFT-4177.patch +# Update fb303 for python3 +Patch5: python3.patch + Group: Development/Libraries # BuildRequires for language-specific bindings are listed under these @@ -141,15 +144,16 @@ Requires: %{name}%{?_isa} = %{version}-%{release} %description glib The %{name}-qt package contains GLib bindings for %{name}. -%package -n python2-%{name} -Summary: Python 2 support for %{name} -BuildRequires: python2-devel +%package -n python3-%{name} +Summary: Python 3 support for %{name} +BuildRequires: python3-devel Requires: %{name}%{?_isa} = %{version}-%{release} -Requires: python2 +Requires: python3 Obsoletes: python-%{name} < 0.10.0-1%{?dist} +Obsoletes: python2-%{name} < 0.10.0-14%{?dist} -%description -n python2-%{name} -The python2-%{name} package contains Python bindings for %{name}. +%description -n python3-%{name} +The python3-%{name} package contains Python bindings for %{name}. %package -n perl-%{name} Summary: Perl support for %{name} @@ -278,14 +282,15 @@ Requires: fb303%{?_isa} = %{version}-%{release} %description -n fb303-devel The fb303-devel package contains header files for fb303 -%package -n python2-fb303 -Summary: Python 2 bindings for fb303 +%package -n python3-fb303 +Summary: Python 3 bindings for fb303 Requires: fb303%{?_isa} = %{version}-%{release} -BuildRequires: python2-devel +BuildRequires: python3-devel Obsoletes: python-fb303 < 0.10.0-1%{?dist} +Obsoletes: python2-fb303 < 0.10.0-14%{?dist} -%description -n python2-fb303 -The python2-fb303 package contains Python bindings for fb303. +%description -n python3-fb303 +The python3-fb303 package contains Python bindings for fb303. %package -n fb303-java Summary: Java bindings for fb303 @@ -369,7 +374,8 @@ install: build/libfb303.jar sh ./bootstrap.sh # use unversioned doc dirs where appropriate (via _pkgdocdir macro) -%configure --disable-dependency-tracking --disable-static --with-boost=/usr %{ruby_configure} %{erlang_configure} %{golang_configure} %{php_configure} --docdir=%{?_pkgdocdir}%{!?_pkgdocdir:%{_docdir}/%{name}-%{version}} +export PYTHON=%{_bindir}/python3 +%configure --disable-dependency-tracking --disable-static --with-boost=/usr %{ruby_configure} %{erlang_configure} %{golang_configure} %{php_configure} --with-py3 --docdir=%{?_pkgdocdir}%{!?_pkgdocdir:%{_docdir}/%{name}-%{version}} # eliminate unused direct shlib dependencies sed -i -e 's/ -shared / -Wl,--as-needed\0/g' libtool @@ -381,7 +387,7 @@ make %{?_smp_mflags} cd contrib/fb303 sed -i '/^[.][/]configure.*/d' bootstrap.sh sh bootstrap.sh - %configure --disable-static --with-java --without-php --libdir=%{_libdir} + %configure --disable-static --with-java --without-php --with-py3 --libdir=%{_libdir} make %{?_smp_mflags} ( cd java @@ -495,9 +501,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %endif -%files -n python2-%{name} -%{python2_sitearch}/%{name} -%{python2_sitearch}/%{name}-%{version}-py%{python2_version}.egg-info +%files -n python3-%{name} +%{python3_sitearch}/%{name} +%{python3_sitearch}/%{name}-%{version}-py%{python3_version}.egg-info %doc LICENSE NOTICE %files -n lib%{name}-javadoc @@ -516,16 +522,19 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %{_includedir}/thrift/fb303 %doc LICENSE NOTICE -%files -n python2-fb303 -%{python2_sitelib}/fb303 -%{python2_sitelib}/fb303_scripts -%{python2_sitelib}/%{name}_fb303-%{version}-py%{python2_version}.egg-info +%files -n python3-fb303 +%{python3_sitelib}/fb303 +%{python3_sitelib}/fb303_scripts +%{python3_sitelib}/%{name}_fb303-%{version}-py%{python3_version}.egg-info %doc LICENSE NOTICE %files -n fb303-java -f .mfiles-fb303 %doc LICENSE NOTICE %changelog +* Wed Jul 18 2018 Christopher Tubbs - 0.10.0-14 +- Migrate to python3; rhbz#1533306 + * Sat Jul 14 2018 Fedora Release Engineering - 0.10.0-13 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild From 8e3a938d6bebfdda8df5f9734b19875f333413dc Mon Sep 17 00:00:00 2001 From: Christopher Tubbs Date: Wed, 18 Jul 2018 02:33:10 -0400 Subject: [PATCH 45/97] Rebuild to address transient error --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 3c7e5ad..3d0dc8a 100644 --- a/thrift.spec +++ b/thrift.spec @@ -50,7 +50,7 @@ Name: thrift Version: 0.10.0 -Release: 14%{?dist} +Release: 15%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -532,6 +532,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %changelog +* Wed Jul 18 2018 Christopher Tubbs - 0.10.0-15 +- Rebuild to address transient error + * Wed Jul 18 2018 Christopher Tubbs - 0.10.0-14 - Migrate to python3; rhbz#1533306 From c168bd9f744717ded0127e886806ea80aaa94cec Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Tue, 22 Jan 2019 18:41:09 +0100 Subject: [PATCH 46/97] Remove obsolete ldconfig scriptlets References: https://fedoraproject.org/wiki/Changes/RemoveObsoleteScriptlets Signed-off-by: Igor Gnatenko --- thrift.spec | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/thrift.spec b/thrift.spec index 3d0dc8a..58da4d9 100644 --- a/thrift.spec +++ b/thrift.spec @@ -448,9 +448,7 @@ install -pm 644 %{SOURCE3} %{buildroot}%{_mavenpomdir}/JPP-libfb303.pom # Ensure all python scripts are executable find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r chmod 755 -%post -p /sbin/ldconfig - -%postun -p /sbin/ldconfig +%ldconfig_scriptlets %files %doc LICENSE NOTICE From 45572459a334a494f48586fa11d42829f78d05d9 Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Mon, 28 Jan 2019 20:18:27 +0100 Subject: [PATCH 47/97] Remove obsolete Group tag References: https://fedoraproject.org/wiki/Changes/Remove_Group_Tag --- thrift.spec | 1 - 1 file changed, 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 58da4d9..065538b 100644 --- a/thrift.spec +++ b/thrift.spec @@ -84,7 +84,6 @@ Patch4: THRIFT-4177.patch # Update fb303 for python3 Patch5: python3.patch -Group: Development/Libraries # BuildRequires for language-specific bindings are listed under these # subpackages, to facilitate enabling or disabling individual language From 945537dbf9e66e8ab26849a77d7bf4da69dffb9d Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sun, 3 Feb 2019 09:47:29 +0000 Subject: [PATCH 48/97] - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 065538b..3e5a7b1 100644 --- a/thrift.spec +++ b/thrift.spec @@ -50,7 +50,7 @@ Name: thrift Version: 0.10.0 -Release: 15%{?dist} +Release: 16%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -529,6 +529,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %changelog +* Sun Feb 03 2019 Fedora Release Engineering - 0.10.0-16 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + * Wed Jul 18 2018 Christopher Tubbs - 0.10.0-15 - Rebuild to address transient error From 23934e6948fe2e4b94cede4c3ac7e797726a6708 Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Sat, 1 Jun 2019 20:22:28 +0200 Subject: [PATCH 49/97] Perl 5.30 rebuild --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 3e5a7b1..29979be 100644 --- a/thrift.spec +++ b/thrift.spec @@ -50,7 +50,7 @@ Name: thrift Version: 0.10.0 -Release: 16%{?dist} +Release: 17%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -529,6 +529,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %changelog +* Sat Jun 01 2019 Jitka Plesnikova - 0.10.0-17 +- Perl 5.30 rebuild + * Sun Feb 03 2019 Fedora Release Engineering - 0.10.0-16 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild From e014bd753de86cecd6af7c3f9cc27c1af964a8b9 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 27 Jul 2019 01:23:10 +0000 Subject: [PATCH 50/97] - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 29979be..2787d7f 100644 --- a/thrift.spec +++ b/thrift.spec @@ -50,7 +50,7 @@ Name: thrift Version: 0.10.0 -Release: 17%{?dist} +Release: 18%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -529,6 +529,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %changelog +* Sat Jul 27 2019 Fedora Release Engineering - 0.10.0-18 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + * Sat Jun 01 2019 Jitka Plesnikova - 0.10.0-17 - Perl 5.30 rebuild From 3f15a694dbea566c94faff611bfcb8c87572c552 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 8 Aug 2019 16:44:55 +0000 Subject: [PATCH 51/97] thrift fails to build from source: https://bugzilla.redhat.com/show_bug.cgi?id=1676140 --- .gitignore | 2 - THRIFT-4177.patch | 27 -- bootstrap.sh | 54 --- configure-java-prefix.patch | 16 - dead.package | 1 + fb303-0.10.0-buildxml.patch | 158 -------- fix-ppc64le-builds.patch | 13 - libfb303-0.10.0.pom | 104 ----- libthrift-0.10.0.pom | 120 ------ python3.patch | 72 ---- sources | 1 - thrift-0.10.0-buildxml.patch | 235 ------------ thrift.spec | 716 ----------------------------------- 13 files changed, 1 insertion(+), 1518 deletions(-) delete mode 100644 .gitignore delete mode 100644 THRIFT-4177.patch delete mode 100644 bootstrap.sh delete mode 100644 configure-java-prefix.patch create mode 100644 dead.package delete mode 100644 fb303-0.10.0-buildxml.patch delete mode 100644 fix-ppc64le-builds.patch delete mode 100644 libfb303-0.10.0.pom delete mode 100644 libthrift-0.10.0.pom delete mode 100644 python3.patch delete mode 100644 sources delete mode 100644 thrift-0.10.0-buildxml.patch delete mode 100644 thrift.spec diff --git a/.gitignore b/.gitignore deleted file mode 100644 index f5a770c..0000000 --- a/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -/0.9.1.tar.gz -/thrift-0.10.0.tar.gz diff --git a/THRIFT-4177.patch b/THRIFT-4177.patch deleted file mode 100644 index c0c331b..0000000 --- a/THRIFT-4177.patch +++ /dev/null @@ -1,27 +0,0 @@ -diff --git a/compiler/cpp/src/thrift/generate/t_java_generator.cc b/compiler/cpp/src/thrift/generate/t_java_generator.cc -index fb581e4..90dfa06 100644 ---- a/compiler/cpp/src/thrift/generate/t_java_generator.cc -+++ b/compiler/cpp/src/thrift/generate/t_java_generator.cc -@@ -4657,8 +4657,9 @@ void t_java_generator::generate_deep_copy_non_container(ofstream& out, - std::string dest_name, - t_type* type) { - (void)dest_name; -+ type = get_true_type(type); - if (type->is_base_type() || type->is_enum() || type->is_typedef()) { -- if (((t_base_type*)type)->is_binary()) { -+ if (type->is_binary()) { - out << "org.apache.thrift.TBaseHelper.copyBinary(" << source_name << ")"; - } else { - // everything else can be copied directly -diff --git a/compiler/cpp/src/thrift/parse/t_type.h b/compiler/cpp/src/thrift/parse/t_type.h -index 30f8c1f7..3a6d1e04 100644 ---- a/compiler/cpp/src/thrift/parse/t_type.h -+++ b/compiler/cpp/src/thrift/parse/t_type.h -@@ -47,6 +47,7 @@ public: - virtual bool is_void() const { return false; } - virtual bool is_base_type() const { return false; } - virtual bool is_string() const { return false; } -+ virtual bool is_binary() const { return false; } - virtual bool is_bool() const { return false; } - virtual bool is_typedef() const { return false; } - virtual bool is_enum() const { return false; } diff --git a/bootstrap.sh b/bootstrap.sh deleted file mode 100644 index 52ecda4..0000000 --- a/bootstrap.sh +++ /dev/null @@ -1,54 +0,0 @@ -#!/bin/sh - -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -./cleanup.sh -if test -d lib/php/src/ext/thrift_protocol ; then - if phpize -v >/dev/null 2>/dev/null ; then - (cd lib/php/src/ext/thrift_protocol && phpize) - fi -fi - -set -e - -# libtoolize is called "glibtoolize" on OSX. -if libtoolize --version 1 >/dev/null 2>/dev/null; then - LIBTOOLIZE=libtoolize -elif glibtoolize --version 1 >/dev/null 2>/dev/null; then - LIBTOOLIZE=glibtoolize -else - echo >&2 "Couldn't find libtoolize!" - exit 1 -fi - -# we require automake 1.13 or later -# check must happen externally due to use of newer macro -AUTOMAKE_VERSION=`automake --version | grep automake | egrep -o '([0-9]{1,}\.)+[0-9]{1,}'` -if [ "$AUTOMAKE_VERSION" \< "1.13" ]; then - echo >&2 "automake version $AUTOMAKE_VERSION is too old (need 1.13 or later)" - exit 1 -fi - -autoscan -$LIBTOOLIZE --copy --automake -aclocal -I ./aclocal -autoheader -autoconf -automake --copy --add-missing --foreign diff --git a/configure-java-prefix.patch b/configure-java-prefix.patch deleted file mode 100644 index ebd542f..0000000 --- a/configure-java-prefix.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff --git a/configure.ac b/configure.ac -index 0972abf..77107fc 100755 ---- a/configure.ac -+++ b/configure.ac -@@ -34,10 +34,7 @@ AC_ARG_VAR([PY_PREFIX], [Prefix for installing Python modules. - AS_IF([test "x$PY_PREFIX" = x], [PY_PREFIX="/usr"]) - - AC_ARG_VAR([JAVA_PREFIX], [Prefix for installing the Java lib jar. -- Default = "/usr/local/lib"]) --AS_IF([test "x$JAVA_PREFIX" != x], [JAVA_PREFIX="$JAVA_PREFIX/usr/local/lib"], -- [test "x$PREFIX" != x], [JAVA_PREFIX="$PREFIX/usr/local/lib"], -- [JAVA_PREFIX="/usr/local/lib"]) -+ Default = "/usr/share/java"]) - - AC_ARG_VAR([RUBY_PREFIX], [Prefix for installing Ruby modules. - (Normal --prefix is ignored for Ruby because diff --git a/dead.package b/dead.package new file mode 100644 index 0000000..3838ac0 --- /dev/null +++ b/dead.package @@ -0,0 +1 @@ +thrift fails to build from source: https://bugzilla.redhat.com/show_bug.cgi?id=1676140 diff --git a/fb303-0.10.0-buildxml.patch b/fb303-0.10.0-buildxml.patch deleted file mode 100644 index eb3825a..0000000 --- a/fb303-0.10.0-buildxml.patch +++ /dev/null @@ -1,158 +0,0 @@ -diff --git a/contrib/fb303/java/build.xml b/contrib/fb303/java/build.xml -index 8f2fa51..d89f05e 100755 ---- a/contrib/fb303/java/build.xml -+++ b/contrib/fb303/java/build.xml -@@ -17,8 +17,7 @@ - specific language governing permissions and limitations - under the License. - --> -- -+ - - - -@@ -38,8 +37,8 @@ - - - -- -- -+ -+ - - - -@@ -50,7 +49,7 @@ - - - -- -+ - - - -@@ -72,13 +71,21 @@ - - - -- -+ - - -- -- -- -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ - -+ - - - -@@ -99,97 +106,4 @@ - - - -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- - diff --git a/fix-ppc64le-builds.patch b/fix-ppc64le-builds.patch deleted file mode 100644 index f56ad86..0000000 --- a/fix-ppc64le-builds.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/aclocal/ax_boost_base.m4 b/aclocal/ax_boost_base.m4 -index b496020..30ee0df 100644 ---- a/aclocal/ax_boost_base.m4 -+++ b/aclocal/ax_boost_base.m4 -@@ -92,7 +92,7 @@ if test "x$want_boost" = "xyes"; then - libsubdirs="lib" - ax_arch=`uname -m` - case $ax_arch in -- x86_64|ppc64|s390x|sparc64|aarch64) -+ x86_64|ppc64|ppc64le|s390x|sparc64|aarch64) - libsubdirs="lib64 lib lib64" - ;; - esac diff --git a/libfb303-0.10.0.pom b/libfb303-0.10.0.pom deleted file mode 100644 index c3fddde..0000000 --- a/libfb303-0.10.0.pom +++ /dev/null @@ -1,104 +0,0 @@ - - - 4.0.0 - org.apache.thrift - libfb303 - 0.10.0 - pom - Apache Thrift - Thrift is a software framework for scalable cross-language services development. - http://thrift.apache.org - - - The Apache Software License, Version 2.0 - http://www.apache.org/licenses/LICENSE-2.0.txt - - - - - mcslee - Mark Slee - - - dreiss - David Reiss - - - aditya - Aditya Agarwal - - - marck - Marc Kwiatkowski - - - jwang - James Wang - - - cpiro - Chris Piro - - - bmaurer - Ben Maurer - - - kclark - Kevin Clark - - - jake - Jake Luciani - - - bryanduxbury - Bryan Duxbury - - - esteve - Esteve Fernandez - - - todd - Todd Lipcon - - - geechorama - Andrew McGeachie - - - molinaro - Anthony Molinaro - - - roger - Roger Meier - - - jfarrell - Jake Farrell - - - jensg - Jens Geyer - - - carl - Carl Yeksigian - - - - scm:git:https://git-wip-us.apache.org/repos/asf/thrift.git - scm:git:https://git-wip-us.apache.org/repos/asf/thrift.git - https://git-wip-us.apache.org/repos/asf?p=thrift.git - - - - org.apache.thrift - libthrift - 0.10.0 - - - diff --git a/libthrift-0.10.0.pom b/libthrift-0.10.0.pom deleted file mode 100644 index 7c5f61d..0000000 --- a/libthrift-0.10.0.pom +++ /dev/null @@ -1,120 +0,0 @@ - - - 4.0.0 - org.apache.thrift - libthrift - 0.10.0 - pom - Apache Thrift - Thrift is a software framework for scalable cross-language services development. - http://thrift.apache.org - - - The Apache Software License, Version 2.0 - http://www.apache.org/licenses/LICENSE-2.0.txt - - - - - mcslee - Mark Slee - - - dreiss - David Reiss - - - aditya - Aditya Agarwal - - - marck - Marc Kwiatkowski - - - jwang - James Wang - - - cpiro - Chris Piro - - - bmaurer - Ben Maurer - - - kclark - Kevin Clark - - - jake - Jake Luciani - - - bryanduxbury - Bryan Duxbury - - - esteve - Esteve Fernandez - - - todd - Todd Lipcon - - - geechorama - Andrew McGeachie - - - molinaro - Anthony Molinaro - - - roger - Roger Meier - - - jfarrell - Jake Farrell - - - jensg - Jens Geyer - - - carl - Carl Yeksigian - - - - scm:git:https://git-wip-us.apache.org/repos/asf/thrift.git - scm:git:https://git-wip-us.apache.org/repos/asf/thrift.git - https://git-wip-us.apache.org/repos/asf?p=thrift.git - - - - org.slf4j - slf4j-api - 1.7.12 - - - javax.servlet - servlet-api - 2.5 - provided - - - org.apache.httpcomponents - httpclient - 4.4.1 - - - org.apache.httpcomponents - httpcore - 4.4.1 - - - diff --git a/python3.patch b/python3.patch deleted file mode 100644 index c2908fd..0000000 --- a/python3.patch +++ /dev/null @@ -1,72 +0,0 @@ -diff --git a/contrib/fb303/py/fb303_scripts/fb303_simple_mgmt.py b/contrib/fb303/py/fb303_scripts/fb303_simple_mgmt.py -index 4b1c257..df1c8cc 100644 ---- a/contrib/fb303/py/fb303_scripts/fb303_simple_mgmt.py -+++ b/contrib/fb303/py/fb303_scripts/fb303_simple_mgmt.py -@@ -57,24 +57,24 @@ def service_ctrl( - msg = fb_status_string(status) - if (len(status_details)): - msg += " - %s" % status_details -- print msg -+ print(msg) - - if (status == fb_status.ALIVE): - return 2 - else: - return 3 - except: -- print "Failed to get status" -+ print("Failed to get status") - return 3 - - # scalar commands - if command in ["version", "alive", "name"]: - try: - result = fb303_wrapper(command, port, trans_factory, prot_factory) -- print result -+ print(result) - return 0 - except: -- print "failed to get ", command -+ print("failed to get ", command) - return 3 - - # counters -@@ -82,10 +82,10 @@ def service_ctrl( - try: - counters = fb303_wrapper('counters', port, trans_factory, prot_factory) - for counter in counters: -- print "%s: %d" % (counter, counters[counter]) -+ print("%s: %d" % (counter, counters[counter])) - return 0 - except: -- print "failed to get counters" -+ print("failed to get counters") - return 3 - - # Only root should be able to run the following commands -@@ -96,19 +96,19 @@ def service_ctrl( - fb303_wrapper(command, port, trans_factory, prot_factory) - return 0 - except: -- print "failed to tell the service to ", command -+ print("failed to tell the service to ", command) - return 3 - else: - if command in ["stop", "reload"]: -- print "root privileges are required to stop or reload the service." -+ print("root privileges are required to stop or reload the service.") - return 4 - -- print "The following commands are available:" -+ print("The following commands are available:") - for command in ["counters", "name", "version", "alive", "status"]: -- print "\t%s" % command -- print "The following commands are available for users with root privileges:" -+ print("\t%s" % command) -+ print("The following commands are available for users with root privileges:") - for command in ["stop", "reload"]: -- print "\t%s" % command -+ print("\t%s" % command) - - return 0 - diff --git a/sources b/sources deleted file mode 100644 index f7d47e8..0000000 --- a/sources +++ /dev/null @@ -1 +0,0 @@ -SHA512 (thrift-0.10.0.tar.gz) = 3695cf0fb0e4080b02446ab694fb61476997d8b181942dd6fe1e3e7cf0dcf990b4184ea33f9d0bc290b96200f702cf1ac1579e36b6b5bfe9ba8914b2d2938ddc diff --git a/thrift-0.10.0-buildxml.patch b/thrift-0.10.0-buildxml.patch deleted file mode 100644 index 8931c03..0000000 --- a/thrift-0.10.0-buildxml.patch +++ /dev/null @@ -1,235 +0,0 @@ -diff --git a/lib/java/build.xml b/lib/java/build.xml -index 40e5284..db1ce54 100644 ---- a/lib/java/build.xml -+++ b/lib/java/build.xml -@@ -17,8 +17,7 @@ - specific language governing permissions and limitations - under the License. - --> -- -+ - - Thrift Build File - -@@ -67,8 +66,15 @@ - - - -- -- -+ -+ -+ -+ -+ -+ -+ -+ -+ - - - -@@ -78,11 +84,14 @@ - - - -- -+ -+ -+ -+ - - - -- -+ - - - -@@ -295,120 +304,12 @@ - - - -- - - - -- -- -- - - -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -+ - - -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- - -diff --git a/tutorial/java/build.xml b/tutorial/java/build.xml -index 7638d5b..c5ca703 100644 ---- a/tutorial/java/build.xml -+++ b/tutorial/java/build.xml -@@ -29,13 +29,33 @@ - - - -- -- -+ -+ -+ -+ -+ -+ -+ -+ -+ - - - -- - -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ - - - -diff --git a/tutorial/js/build.xml b/tutorial/js/build.xml -index a9a9ad4..2fddf0c 100644 ---- a/tutorial/js/build.xml -+++ b/tutorial/js/build.xml -@@ -35,8 +35,16 @@ - - - -- -- -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ - - - diff --git a/thrift.spec b/thrift.spec deleted file mode 100644 index 2787d7f..0000000 --- a/thrift.spec +++ /dev/null @@ -1,716 +0,0 @@ -%global php_extdir %(php-config --extension-dir 2>/dev/null || echo "undefined") - -%{?perl_default_filter} -%global __provides_exclude_from ^(%{python3_sitearch}/.*\\.so|%{php_extdir}/.*\\.so)$ - -%global have_mongrel 0 - -# erlang-jsx is available in F19 but orphaned in F22 -%global have_jsx 0 - -# We should be able to enable this in the future -%global want_d 0 - -# Thrift's Ruby support depends on Mongrel. Since Mongrel is -# deprecated in Fedora, we can't support Ruby bindings for Thrift -# unless and until Thrift is patched to use a different HTTP server. -%if 0%{?have_mongrel} == 0 -%global ruby_configure --without-ruby -%global with_ruby 0 -%else -%global ruby_configure --with-ruby -%global want_ruby 1 -%endif - -# Thrift's Erlang support depends on the JSX library, which is not -# currently available in Fedora. - -%if 0%{?have_jsx} == 0 -%global erlang_configure --without-erlang -%global want_erlang 0 -%else -%global erlang_configure --with-erlang -%global want_erlang 1 -%endif - -# PHP appears broken in Thrift 0.9.1 -%global want_php 0 - -%if 0%{?want_php} == 0 -%global php_langname %{nil} -%global php_configure --without-php -%else -%global php_langname PHP,\ -%global php_configure --with-php -%endif - -# Thrift's GO support doesn't build under Fedora -%global want_golang 0 -%global golang_configure --without-go - -Name: thrift -Version: 0.10.0 -Release: 18%{?dist} -Summary: Software framework for cross-language services development - -# Parts of the source are used under the BSD and zlib licenses, but -# these are OK for inclusion in an Apache 2.0-licensed whole: -# https://www.apache.org/legal/3party.html - -# 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 -URL: https://thrift.apache.org/ - -Source0: https://archive.apache.org/dist/%{name}/%{version}/%{name}-%{version}.tar.gz - -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 - -Source3: https://repo1.maven.org/maven2/org/apache/thrift/libfb303/%{version}/libfb303-%{version}.pom - -# this patch is adapted from Gil Cattaneo's thrift-0.7.0 package -Patch0: %{name}-%{version}-buildxml.patch -# for fb303, excise maven ant tasks; build against system libraries; etc. -Patch1: fb303-%{version}-buildxml.patch -# fix configure.ac insistence on using /usr/local/lib for JAVA_PREFIX -Patch2: configure-java-prefix.patch -# fix for ppc64le builds not linking to /usr/lib64 directory -Patch3: fix-ppc64le-builds.patch -# fix for s390x build; incorporates fix for THRIFT-4177 with some code from THRIFT-4136 -Patch4: THRIFT-4177.patch - -# Update fb303 for python3 -Patch5: python3.patch - - -# BuildRequires for language-specific bindings are listed under these -# subpackages, to facilitate enabling or disabling individual language -# bindings in the future - -BuildRequires: ant >= 1.7 -BuildRequires: autoconf -BuildRequires: automake -BuildRequires: bison -BuildRequires: boost-devel -BuildRequires: boost-static -BuildRequires: flex -BuildRequires: flex-devel -BuildRequires: gcc-c++ -BuildRequires: glib2-devel -BuildRequires: libevent-devel -BuildRequires: libstdc++-devel -BuildRequires: libtool -BuildRequires: openssl-devel -BuildRequires: qt-devel -BuildRequires: texlive -BuildRequires: zlib-devel - -%if 0%{?want_golang} > 0 -BuildRequires: golang -Requires: golang -%endif - -%description - -The Apache Thrift software framework for cross-language services -development combines a software stack with a code generation engine to -build services that work efficiently and seamlessly between C++, Java, -Python, %{?php_langname}and other languages. - -%package devel -Summary: Development files for %{name} -Requires: %{name}%{?_isa} = %{version}-%{release} -Requires: pkgconfig -Requires: boost-devel - -%description devel -The %{name}-devel package contains libraries and header files for -developing applications that use %{name}. - -%package qt -Summary: Qt support for %{name} -Requires: %{name}%{?_isa} = %{version}-%{release} - -%description qt -The %{name}-qt package contains Qt bindings for %{name}. - -%package glib -Summary: GLib support for %{name} -Requires: %{name}%{?_isa} = %{version}-%{release} - -%description glib -The %{name}-qt package contains GLib bindings for %{name}. - -%package -n python3-%{name} -Summary: Python 3 support for %{name} -BuildRequires: python3-devel -Requires: %{name}%{?_isa} = %{version}-%{release} -Requires: python3 -Obsoletes: python-%{name} < 0.10.0-1%{?dist} -Obsoletes: python2-%{name} < 0.10.0-14%{?dist} - -%description -n python3-%{name} -The python3-%{name} package contains Python bindings for %{name}. - -%package -n perl-%{name} -Summary: Perl support for %{name} -Provides: perl(Thrift) = %{version}-%{release} -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) -Requires: perl(IO::Select) -Requires: perl(IO::Socket::INET) -Requires: perl(IO::String) -Requires: perl(LWP::UserAgent) -Requires: perl(POSIX) -Requires: perl(base) -Requires: perl(constant) -Requires: perl(strict) -Requires: perl(utf8) -Requires: perl(warnings) -BuildArch: noarch - -%description -n perl-%{name} -The perl-%{name} package contains Perl bindings for %{name}. - -%if %{?want_d} -%package -n d-%{name} -Summary: D support for %{name} -BuildRequires: ldc - -%description -n d-%{name} -The d-%{name} package contains D bindings for %{name}. -%endif - -%if 0%{?want_php} != 0 -%package -n php-%{name} -Summary: PHP support for %{name} -Requires: %{name}%{?_isa} = %{version}-%{release} -Requires: php(zend-abi) = %{php_zend_api} -Requires: php(api) = %{php_core_api} -Requires: php(language) >= 5.3.0 -Requires: php-date -Requires: php-json -BuildRequires: php-devel - -%description -n php-%{name} -The php-%{name} package contains PHP bindings for %{name}. -%endif - -%package -n lib%{name}-javadoc -Summary: API documentation for java-%{name} -Requires: lib%{name}-java = %{version}-%{release} -BuildArch: noarch - -%description -n lib%{name}-javadoc -The lib%{name}-javadoc package contains API documentation for the -Java bindings for %{name}. - -%package -n lib%{name}-java -Summary: Java support for %{name} - -BuildRequires: apache-commons-codec -BuildRequires: apache-commons-lang -BuildRequires: apache-commons-logging -BuildRequires: httpcomponents-client -BuildRequires: httpcomponents-core -BuildRequires: java-devel -BuildRequires: javapackages-tools -BuildRequires: javapackages-local -BuildRequires: junit -BuildRequires: log4j -BuildRequires: slf4j -# javax.servlet-api 3.1.0 is provided by glassfish-servlet-api -BuildRequires: mvn(javax.servlet:javax.servlet-api) = 3.1.0 - -Requires: java-headless >= 1:1.6.0 -Requires: javapackages-tools -Requires: mvn(org.slf4j:slf4j-api) -Requires: mvn(commons-lang:commons-lang) -Requires: mvn(org.apache.httpcomponents:httpclient) -Requires: mvn(org.apache.httpcomponents:httpcore) -BuildArch: noarch - -%description -n lib%{name}-java -The lib%{name}-java package contains Java bindings for %{name}. - -%if 0%{?want_ruby} > 0 -%package -n ruby-%{name} -Summary: Ruby support for %{name} -Requires: %{name}%{?_isa} = %{version}-%{release} -Requires: ruby(release) -BuildRequires: ruby-devel - -%description -n ruby-%{name} -The ruby-%{name} package contains Ruby bindings for %{name}. -%endif - -%if 0%{?want_erlang} > 0 -%package -n erlang-%{name} -Summary: Erlang support for %{name} -Requires: %{name}%{?_isa} = %{version}-%{release} -Requires: erlang -Requires: erlang-jsx -BuildRequires: erlang -BuildRequires: erlang-rebar - -%description -n erlang-%{name} -The erlang-%{name} package contains Erlang bindings for %{name}. -%endif - -%package -n fb303 -Summary: Basic interface for Thrift services -Requires: %{name}%{?_isa} = %{version}-%{release} - -%description -n fb303 -fb303 is the shared root of all Thrift services; it provides a -standard interface to monitoring, dynamic options and configuration, -uptime reports, activity, etc. - -%package -n fb303-devel -Summary: Development files for fb303 -Requires: fb303%{?_isa} = %{version}-%{release} - -%description -n fb303-devel -The fb303-devel package contains header files for fb303 - -%package -n python3-fb303 -Summary: Python 3 bindings for fb303 -Requires: fb303%{?_isa} = %{version}-%{release} -BuildRequires: python3-devel -Obsoletes: python-fb303 < 0.10.0-1%{?dist} -Obsoletes: python2-fb303 < 0.10.0-14%{?dist} - -%description -n python3-fb303 -The python3-fb303 package contains Python bindings for fb303. - -%package -n fb303-java -Summary: Java bindings for fb303 -Requires: java-headless >= 1:1.6.0 -Requires: javapackages-tools -Requires: mvn(org.slf4j:slf4j-api) -Requires: mvn(commons-lang:commons-lang) -Requires: mvn(org.apache.httpcomponents:httpclient) -Requires: mvn(org.apache.httpcomponents:httpcore) -BuildArch: noarch - -%description -n fb303-java -The fb303-java package contains Java bindings for fb303. - -%prep -%autosetup -p1 - -%{?!el5:sed -i -e 's/^AC_PROG_LIBTOOL/LT_INIT/g' configure.ac} - -# avoid spurious executable permissions in debuginfo package -find . -name \*.cpp -or -name \*.cc -or -name \*.h | xargs -r chmod 644 - -cp -p %{SOURCE2} bootstrap.sh - -# work around linking issues -echo 'libthrift_c_glib_la_LIBADD = $(GLIB_LIBS) $(GOBJECT_LIBS) -L../cpp/.libs ' >> lib/c_glib/Makefile.am -echo 'libthriftqt_la_LIBADD = $(QT_LIBS) -lthrift -L.libs' >> lib/cpp/Makefile.am -echo 'libthriftz_la_LIBADD = $(ZLIB_LIBS) -lthrift -L.libs' >> lib/cpp/Makefile.am -echo 'EXTRA_libthriftqt_la_DEPENDENCIES = libthrift.la' >> lib/cpp/Makefile.am -echo 'EXTRA_libthriftz_la_DEPENDENCIES = libthrift.la' >> lib/cpp/Makefile.am - -# echo 'libfb303_so_LIBADD = -lthrift -L../../../lib/cpp/.libs' >> contrib/fb303/cpp/Makefile.am - -sed -i 's|libfb303_so_LDFLAGS = $(SHARED_LDFLAGS)|libfb303_so_LDFLAGS = $(SHARED_LDFLAGS) -lthrift -L../../../lib/cpp/.libs -Wl,--as-needed|g' contrib/fb303/cpp/Makefile.am - -# fix broken upstream check for ant version; we enforce this with BuildRequires, so no need to check here -sed -i 's|ANT_VALID=.*|ANT_VALID=1|' aclocal/ax_javac_and_java.m4 -sed -i 's|ANT_VALID=.*|ANT_VALID=1|' contrib/fb303/aclocal/ax_javac_and_java.m4 - -%build -export PY_PREFIX=%{_prefix} -export PERL_PREFIX=%{_prefix} -export PHP_PREFIX=%{php_extdir} -export JAVA_PREFIX=%{_javadir} -export RUBY_PREFIX=%{_prefix} -export GLIB_LIBS=$(pkg-config --libs glib-2.0) -export GLIB_CFLAGS=$(pkg-config --cflags glib-2.0) -export GOBJECT_LIBS=$(pkg-config --libs gobject-2.0) -export GOBJECT_CFLAGS=$(pkg-config --cflags gobject-2.0) - -find %{_builddir} -name rebar -exec rm -f '{}' \; -find . -name Makefile\* -exec sed -i -e 's/[.][/]rebar/rebar/g' {} \; - -# install javadocs in proper places -sed -i 's|-Dinstall.javadoc.path=$(DESTDIR)$(docdir)/java|-Dinstall.javadoc.path=$(DESTDIR)%{_javadocdir}/%{name}|' lib/java/Makefile.* - -# build a jar without a version number -sed -i 's|${thrift.artifactid}-${version}|${thrift.artifactid}|' lib/java/build.xml - -# Proper permissions for Erlang files -sed -i 's|$(INSTALL) $$p|$(INSTALL) --mode 644 $$p|g' lib/erl/Makefile.am - -# Build fb303 jars against the in-situ copy of thrift -sed -i 's|$(thrift_home)/bin/thrift|../../../compiler/cpp/thrift|g' \ - contrib/fb303/cpp/Makefile.am \ - contrib/fb303/py/Makefile.am - -sed -i 's|$(prefix)/lib$|%{_libdir}|g' contrib/fb303/cpp/Makefile.am - -sed -i 's|$(thrift_home)/include/thrift|../../../lib/cpp/src|g' \ - contrib/fb303/cpp/Makefile.am - -# Create a straightforward makefile for Java fb303 -echo "all: - ant -install: build/libfb303.jar - mkdir -p %{buildroot}%{_javadir} - /usr/bin/install -c -m 644 build/libfb303.jar %{buildroot}%{_javadir} -" > contrib/fb303/java/Makefile - -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 %{ruby_configure} %{erlang_configure} %{golang_configure} %{php_configure} --with-py3 --docdir=%{?_pkgdocdir}%{!?_pkgdocdir:%{_docdir}/%{name}-%{version}} - -# eliminate unused direct shlib dependencies -sed -i -e 's/ -shared / -Wl,--as-needed\0/g' libtool - -make %{?_smp_mflags} - -# build fb303 -( - cd contrib/fb303 - sed -i '/^[.][/]configure.*/d' bootstrap.sh - sh bootstrap.sh - %configure --disable-static --with-java --without-php --with-py3 --libdir=%{_libdir} - make %{?_smp_mflags} - ( - cd java - ant dist - ) -) - -%install -%make_install -find %{buildroot} -name '*.la' -exec rm -f {} ';' -find %{buildroot} -name fastbinary.so | xargs -r chmod 755 -find %{buildroot} -name \*.erl -or -name \*.hrl -or -name \*.app | xargs -r chmod 644 - -# Remove javadocs jar -find %{buildroot}/%{_javadir} -name lib%{name}-javadoc.jar -exec rm -f '{}' \; - -# Add POM file and depmap -mkdir -p %{buildroot}%{_mavenpomdir} - -install -pm 644 %{SOURCE1} %{buildroot}%{_mavenpomdir}/JPP-libthrift.pom - -%add_maven_depmap JPP-libthrift.pom libthrift.jar - -# Remove bundled jar files -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 -mkdir -p %{buildroot}/%{perl_vendorlib}/ -mv %{buildroot}/usr/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 - -# Fix permissions on Thread.h -find %{buildroot} -name Thread.h -exec chmod a-x '{}' \; - -# install fb303 -( - cd contrib/fb303 - make DESTDIR=%{buildroot} install - ( - cd java - ant -Dinstall.path=%{buildroot}%{_javadir} -Dinstall.javadoc.path=%{buildroot}%{_javadocdir}/fb303 install - ) -) - -# install maven pom and depmaps for fb303 -install -pm 644 %{SOURCE3} %{buildroot}%{_mavenpomdir}/JPP-libfb303.pom -%add_maven_depmap JPP-libfb303.pom libfb303.jar -f "fb303" - -# Ensure all python scripts are executable -find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r chmod 755 - -%ldconfig_scriptlets - -%files -%doc LICENSE NOTICE -%{_bindir}/thrift -%{_libdir}/libthrift-%{version}.so -%{_libdir}/libthriftz-%{version}.so -%{_libdir}/libthriftnb-%{version}.so - -%files glib -%{_libdir}/libthrift_c_glib.so -%{_libdir}/libthrift_c_glib.so.* - -%files qt -%{_libdir}/libthriftqt.so -%{_libdir}/libthriftqt-%{version}.so - -%files devel -%{_includedir}/thrift -%exclude %{_includedir}/thrift/fb303 -%{_libdir}/*.so -%{_libdir}/*.so.0 -%{_libdir}/*.so.0.0.0 -%exclude %{_libdir}/lib*-%{version}.so -%exclude %{_libdir}/libfb303.so -%{_libdir}/pkgconfig/thrift-z.pc -%{_libdir}/pkgconfig/thrift-qt.pc -%{_libdir}/pkgconfig/thrift-nb.pc -%{_libdir}/pkgconfig/thrift.pc -%{_libdir}/pkgconfig/thrift_c_glib.pc -%doc LICENSE NOTICE - -%files -n perl-%{name} -%{perl_vendorlib}/Thrift -%{perl_vendorlib}/Thrift.pm -%doc LICENSE NOTICE - -%if 0%{?want_php} != 0 -%files -n php-%{name} -%config(noreplace) /etc/php.d/thrift_protocol.ini -%{_datadir}/php/Thrift/ -%{php_extdir}/thrift_protocol.so -%doc LICENSE NOTICE -%endif - -%if %{?want_erlang} > 0 -%files -n erlang-%{name} -%{_libdir}/erlang/lib/%{name}-%{version}/ -%doc LICENSE NOTICE -%endif - -%files -n python3-%{name} -%{python3_sitearch}/%{name} -%{python3_sitearch}/%{name}-%{version}-py%{python3_version}.egg-info -%doc LICENSE NOTICE - -%files -n lib%{name}-javadoc -%{_javadocdir}/%{name} -%doc LICENSE NOTICE - -%files -n lib%{name}-java -f .mfiles -%doc LICENSE NOTICE - -%files -n fb303 -%{_datarootdir}/fb303 -%doc LICENSE NOTICE - -%files -n fb303-devel -%{_libdir}/libfb303.so -%{_includedir}/thrift/fb303 -%doc LICENSE NOTICE - -%files -n python3-fb303 -%{python3_sitelib}/fb303 -%{python3_sitelib}/fb303_scripts -%{python3_sitelib}/%{name}_fb303-%{version}-py%{python3_version}.egg-info -%doc LICENSE NOTICE - -%files -n fb303-java -f .mfiles-fb303 -%doc LICENSE NOTICE - -%changelog -* Sat Jul 27 2019 Fedora Release Engineering - 0.10.0-18 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Sat Jun 01 2019 Jitka Plesnikova - 0.10.0-17 -- Perl 5.30 rebuild - -* Sun Feb 03 2019 Fedora Release Engineering - 0.10.0-16 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Wed Jul 18 2018 Christopher Tubbs - 0.10.0-15 -- Rebuild to address transient error - -* Wed Jul 18 2018 Christopher Tubbs - 0.10.0-14 -- Migrate to python3; rhbz#1533306 - -* Sat Jul 14 2018 Fedora Release Engineering - 0.10.0-13 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Fri Jun 29 2018 Jitka Plesnikova - 0.10.0-12 -- Perl 5.28 rebuild - -* Wed May 30 2018 Christopher Tubbs - 0.10.0-11 -- Fix FTBFS; update servlet-api dependency (rhbz#1581175) - -* Thu Mar 08 2018 Christopher Tubbs - 0.10.0-10 -- Add gcc-c++ BuildRequires - -* Fri Feb 09 2018 Fedora Release Engineering - 0.10.0-9 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Fri Dec 22 2017 Christopher Tubbs - 0.10.0-8 -- Fix for rhbz#1507518 - -* Thu Aug 03 2017 Fedora Release Engineering - 0.10.0-7 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild - -* Thu Jul 27 2017 Fedora Release Engineering - 0.10.0-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Thu Jul 06 2017 Christopher Tubbs - 0.10.0-5 -- Fix FTBFS in rawhide: add BR javapackages-local - -* Sun Jun 04 2017 Jitka Plesnikova - 0.10.0-4 -- Perl 5.26 rebuild - -* Mon May 15 2017 Fedora Release Engineering - 0.10.0-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_27_Mass_Rebuild - -* Mon Mar 13 2017 Christopher Tubbs - 0.10.0-2 -- Build TNonblockingServer, remove useless man page, and use java-headless - -* Tue Mar 07 2017 Christopher Tubbs - 0.10.0-1 -- Update to thrift 0.10.0 - -* Sat Feb 11 2017 Fedora Release Engineering - 0.9.1-17.6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Tue Jul 19 2016 Fedora Release Engineering - 0.9.1-17.5 -- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages - -* Tue May 17 2016 Jitka Plesnikova - 0.9.1-17.4 -- Perl 5.24 rebuild - -* Wed Mar 30 2016 Petr Pisar - 0.9.1-17.3 -- Adapt to GCC 6 (bug #1306671) - -* Fri Feb 05 2016 Fedora Release Engineering - 0.9.1-17.2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Sat Jan 16 2016 Jonathan Wakely - 0.9.1-17.1 -- Rebuilt for Boost 1.60 - -* Mon Nov 23 2015 Peter Robinson 0.9.1-17 -- Fix release - -* Wed Oct 21 2015 Marcin Juszkiewicz - 0.9.1-16.6 -- Backport THRIFT-2214 fix to get package built on aarch64. - -* Thu Aug 27 2015 Jonathan Wakely - 0.9.1-16.5 -- Rebuilt for Boost 1.59 - -* Wed Jul 29 2015 Fedora Release Engineering - 0.9.1-16.4 -- Rebuilt for https://fedoraproject.org/wiki/Changes/F23Boost159 - -* Wed Jul 22 2015 David Tardon - 0.9.1-16.3 -- rebuild for Boost 1.58 - -* Fri Jun 19 2015 Fedora Release Engineering - 0.9.1-16.2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild - -* Sat Jun 06 2015 Jitka Plesnikova - 0.9.1-16.1 -- Perl 5.22 rebuild - -* Fri Apr 24 2015 Michal Srb - 0.9.1-16 -- Fix FTBFS (Resolves: rhbz#1195364) - -* Mon Apr 20 2015 Will Benton - 0.9.1-15 -- Dropped Erlang support for F22 and above, since erlang-jsx is orphaned - -* Wed Apr 8 2015 Haïkel Guémar - 0.9.1-14 -- Split Qt4/GLib runtimes into separate subpackages -- Drop mono support, it's broken and not even shipped (and it pulls mono-core) - -* Mon Jan 26 2015 Petr Machata - 0.9.1-13.3 -- Rebuild for boost 1.57.0 -* Thu Aug 28 2014 Jitka Plesnikova - 0.9.1-13.2 -- Perl 5.20 rebuild - -* Mon Aug 18 2014 Fedora Release Engineering - 0.9.1-13.1 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild - -* Fri Jun 27 2014 Petr Pisar - 0.9.1-13 -- Use add_maven_depmap-generated file lists (bug #1107448) - -* Sun Jun 08 2014 Fedora Release Engineering - 0.9.1-12.2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild - -* Fri May 23 2014 Petr Machata - 0.9.1-12.1 -- Rebuild for boost 1.55.0 - -* Mon May 05 2014 Lubomir Rintel - 0.9.1-12 -- Fix EPEL build - -* Fri Feb 21 2014 willb - 0.9.1-11 -- fix BZ 1068561 - -* Fri Dec 20 2013 willb - 0.9.1-10 -- fix BZ 1045544 - -* Wed Oct 16 2013 willb - 0.9.1-9 -- Remove spurious dependencies -- Move some versioned shared libraries from -devel - -* Wed Oct 16 2013 Dan Horák - 0.9.1-8 -- Mono available only on selected arches - -* Sun Oct 13 2013 willb - 0.9.1-7 -- minor specfile cleanups - -* Fri Oct 11 2013 willb - 0.9.1-6 -- added thrift man page -- integrated fb303 -- fixed many fb303 library dependency problems - -* Tue Oct 1 2013 willb - 0.9.1-5 -- fixed extension library linking when an older thrift package is not - already installed -- fixed extension library dependencies in Makefile - -* Tue Oct 1 2013 willb - 0.9.1-4 -- addresses rpmlint warnings and errors -- properly links glib, qt, and z extension libraries - -* Mon Sep 30 2013 willb - 0.9.1-3 -- adds QT support -- clarified multiple licensing -- uses parallel make -- removes obsolete M4 macros -- specifies canonical location for source archive - -* Tue Sep 24 2013 willb - 0.9.1-2 -- fixes for i686 -- fixes bogus requires for Java package - -* Fri Sep 20 2013 willb - 0.9.1-1 -- updated to upstream version 0.9.1 -- disables PHP support, which FTBFS in this version - -* Fri Sep 20 2013 willb - 0.9.0-5 -- patch build xml to generate unversioned jars instead of moving after the fact -- unversioned doc dirs on Fedora versions where this is appropriate -- replaced some stray hardcoded paths with macros -- thanks to Gil for the above observations and suggestions for fixes - -* Thu Aug 22 2013 willb - 0.9.0-4 -- removed version number from jar name (obs pmackinn) - -* Thu Aug 22 2013 willb - 0.9.0-3 -- Fixes for F19 and Erlang support - -* Thu Aug 15 2013 willb - 0.9.0-2 -- Incorporates feedback from comments on review request - -* Mon Jul 1 2013 willb - 0.9.0-1 -- Initial package From 8d3e48896b4d259588e2e6943b9a35f0c504b34f Mon Sep 17 00:00:00 2001 From: Tomas Hrcka Date: Tue, 20 Aug 2019 08:48:25 +0200 Subject: [PATCH 52/97] Revert "thrift fails to build from source: https://bugzilla.redhat.com/show_bug.cgi?id=1676140" This reverts commit 3f15a694dbea566c94faff611bfcb8c87572c552. Unretirement request: https://pagure.io/releng/issue/8634 --- .gitignore | 2 + THRIFT-4177.patch | 27 ++ bootstrap.sh | 54 +++ configure-java-prefix.patch | 16 + dead.package | 1 - fb303-0.10.0-buildxml.patch | 158 ++++++++ fix-ppc64le-builds.patch | 13 + libfb303-0.10.0.pom | 104 +++++ libthrift-0.10.0.pom | 120 ++++++ python3.patch | 72 ++++ sources | 1 + thrift-0.10.0-buildxml.patch | 235 ++++++++++++ thrift.spec | 716 +++++++++++++++++++++++++++++++++++ 13 files changed, 1518 insertions(+), 1 deletion(-) create mode 100644 .gitignore create mode 100644 THRIFT-4177.patch create mode 100644 bootstrap.sh create mode 100644 configure-java-prefix.patch delete mode 100644 dead.package create mode 100644 fb303-0.10.0-buildxml.patch create mode 100644 fix-ppc64le-builds.patch create mode 100644 libfb303-0.10.0.pom create mode 100644 libthrift-0.10.0.pom create mode 100644 python3.patch create mode 100644 sources create mode 100644 thrift-0.10.0-buildxml.patch create mode 100644 thrift.spec diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..f5a770c --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +/0.9.1.tar.gz +/thrift-0.10.0.tar.gz diff --git a/THRIFT-4177.patch b/THRIFT-4177.patch new file mode 100644 index 0000000..c0c331b --- /dev/null +++ b/THRIFT-4177.patch @@ -0,0 +1,27 @@ +diff --git a/compiler/cpp/src/thrift/generate/t_java_generator.cc b/compiler/cpp/src/thrift/generate/t_java_generator.cc +index fb581e4..90dfa06 100644 +--- a/compiler/cpp/src/thrift/generate/t_java_generator.cc ++++ b/compiler/cpp/src/thrift/generate/t_java_generator.cc +@@ -4657,8 +4657,9 @@ void t_java_generator::generate_deep_copy_non_container(ofstream& out, + std::string dest_name, + t_type* type) { + (void)dest_name; ++ type = get_true_type(type); + if (type->is_base_type() || type->is_enum() || type->is_typedef()) { +- if (((t_base_type*)type)->is_binary()) { ++ if (type->is_binary()) { + out << "org.apache.thrift.TBaseHelper.copyBinary(" << source_name << ")"; + } else { + // everything else can be copied directly +diff --git a/compiler/cpp/src/thrift/parse/t_type.h b/compiler/cpp/src/thrift/parse/t_type.h +index 30f8c1f7..3a6d1e04 100644 +--- a/compiler/cpp/src/thrift/parse/t_type.h ++++ b/compiler/cpp/src/thrift/parse/t_type.h +@@ -47,6 +47,7 @@ public: + virtual bool is_void() const { return false; } + virtual bool is_base_type() const { return false; } + virtual bool is_string() const { return false; } ++ virtual bool is_binary() const { return false; } + virtual bool is_bool() const { return false; } + virtual bool is_typedef() const { return false; } + virtual bool is_enum() const { return false; } diff --git a/bootstrap.sh b/bootstrap.sh new file mode 100644 index 0000000..52ecda4 --- /dev/null +++ b/bootstrap.sh @@ -0,0 +1,54 @@ +#!/bin/sh + +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# + +./cleanup.sh +if test -d lib/php/src/ext/thrift_protocol ; then + if phpize -v >/dev/null 2>/dev/null ; then + (cd lib/php/src/ext/thrift_protocol && phpize) + fi +fi + +set -e + +# libtoolize is called "glibtoolize" on OSX. +if libtoolize --version 1 >/dev/null 2>/dev/null; then + LIBTOOLIZE=libtoolize +elif glibtoolize --version 1 >/dev/null 2>/dev/null; then + LIBTOOLIZE=glibtoolize +else + echo >&2 "Couldn't find libtoolize!" + exit 1 +fi + +# we require automake 1.13 or later +# check must happen externally due to use of newer macro +AUTOMAKE_VERSION=`automake --version | grep automake | egrep -o '([0-9]{1,}\.)+[0-9]{1,}'` +if [ "$AUTOMAKE_VERSION" \< "1.13" ]; then + echo >&2 "automake version $AUTOMAKE_VERSION is too old (need 1.13 or later)" + exit 1 +fi + +autoscan +$LIBTOOLIZE --copy --automake +aclocal -I ./aclocal +autoheader +autoconf +automake --copy --add-missing --foreign diff --git a/configure-java-prefix.patch b/configure-java-prefix.patch new file mode 100644 index 0000000..ebd542f --- /dev/null +++ b/configure-java-prefix.patch @@ -0,0 +1,16 @@ +diff --git a/configure.ac b/configure.ac +index 0972abf..77107fc 100755 +--- a/configure.ac ++++ b/configure.ac +@@ -34,10 +34,7 @@ AC_ARG_VAR([PY_PREFIX], [Prefix for installing Python modules. + AS_IF([test "x$PY_PREFIX" = x], [PY_PREFIX="/usr"]) + + AC_ARG_VAR([JAVA_PREFIX], [Prefix for installing the Java lib jar. +- Default = "/usr/local/lib"]) +-AS_IF([test "x$JAVA_PREFIX" != x], [JAVA_PREFIX="$JAVA_PREFIX/usr/local/lib"], +- [test "x$PREFIX" != x], [JAVA_PREFIX="$PREFIX/usr/local/lib"], +- [JAVA_PREFIX="/usr/local/lib"]) ++ Default = "/usr/share/java"]) + + AC_ARG_VAR([RUBY_PREFIX], [Prefix for installing Ruby modules. + (Normal --prefix is ignored for Ruby because diff --git a/dead.package b/dead.package deleted file mode 100644 index 3838ac0..0000000 --- a/dead.package +++ /dev/null @@ -1 +0,0 @@ -thrift fails to build from source: https://bugzilla.redhat.com/show_bug.cgi?id=1676140 diff --git a/fb303-0.10.0-buildxml.patch b/fb303-0.10.0-buildxml.patch new file mode 100644 index 0000000..eb3825a --- /dev/null +++ b/fb303-0.10.0-buildxml.patch @@ -0,0 +1,158 @@ +diff --git a/contrib/fb303/java/build.xml b/contrib/fb303/java/build.xml +index 8f2fa51..d89f05e 100755 +--- a/contrib/fb303/java/build.xml ++++ b/contrib/fb303/java/build.xml +@@ -17,8 +17,7 @@ + specific language governing permissions and limitations + under the License. + --> +- ++ + + + +@@ -38,8 +37,8 @@ + + + +- +- ++ ++ + + + +@@ -50,7 +49,7 @@ + + + +- ++ + + + +@@ -72,13 +71,21 @@ + + + +- ++ + + +- +- +- ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ + ++ + + + +@@ -99,97 +106,4 @@ + + + +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- + diff --git a/fix-ppc64le-builds.patch b/fix-ppc64le-builds.patch new file mode 100644 index 0000000..f56ad86 --- /dev/null +++ b/fix-ppc64le-builds.patch @@ -0,0 +1,13 @@ +diff --git a/aclocal/ax_boost_base.m4 b/aclocal/ax_boost_base.m4 +index b496020..30ee0df 100644 +--- a/aclocal/ax_boost_base.m4 ++++ b/aclocal/ax_boost_base.m4 +@@ -92,7 +92,7 @@ if test "x$want_boost" = "xyes"; then + libsubdirs="lib" + ax_arch=`uname -m` + case $ax_arch in +- x86_64|ppc64|s390x|sparc64|aarch64) ++ x86_64|ppc64|ppc64le|s390x|sparc64|aarch64) + libsubdirs="lib64 lib lib64" + ;; + esac diff --git a/libfb303-0.10.0.pom b/libfb303-0.10.0.pom new file mode 100644 index 0000000..c3fddde --- /dev/null +++ b/libfb303-0.10.0.pom @@ -0,0 +1,104 @@ + + + 4.0.0 + org.apache.thrift + libfb303 + 0.10.0 + pom + Apache Thrift + Thrift is a software framework for scalable cross-language services development. + http://thrift.apache.org + + + The Apache Software License, Version 2.0 + http://www.apache.org/licenses/LICENSE-2.0.txt + + + + + mcslee + Mark Slee + + + dreiss + David Reiss + + + aditya + Aditya Agarwal + + + marck + Marc Kwiatkowski + + + jwang + James Wang + + + cpiro + Chris Piro + + + bmaurer + Ben Maurer + + + kclark + Kevin Clark + + + jake + Jake Luciani + + + bryanduxbury + Bryan Duxbury + + + esteve + Esteve Fernandez + + + todd + Todd Lipcon + + + geechorama + Andrew McGeachie + + + molinaro + Anthony Molinaro + + + roger + Roger Meier + + + jfarrell + Jake Farrell + + + jensg + Jens Geyer + + + carl + Carl Yeksigian + + + + scm:git:https://git-wip-us.apache.org/repos/asf/thrift.git + scm:git:https://git-wip-us.apache.org/repos/asf/thrift.git + https://git-wip-us.apache.org/repos/asf?p=thrift.git + + + + org.apache.thrift + libthrift + 0.10.0 + + + diff --git a/libthrift-0.10.0.pom b/libthrift-0.10.0.pom new file mode 100644 index 0000000..7c5f61d --- /dev/null +++ b/libthrift-0.10.0.pom @@ -0,0 +1,120 @@ + + + 4.0.0 + org.apache.thrift + libthrift + 0.10.0 + pom + Apache Thrift + Thrift is a software framework for scalable cross-language services development. + http://thrift.apache.org + + + The Apache Software License, Version 2.0 + http://www.apache.org/licenses/LICENSE-2.0.txt + + + + + mcslee + Mark Slee + + + dreiss + David Reiss + + + aditya + Aditya Agarwal + + + marck + Marc Kwiatkowski + + + jwang + James Wang + + + cpiro + Chris Piro + + + bmaurer + Ben Maurer + + + kclark + Kevin Clark + + + jake + Jake Luciani + + + bryanduxbury + Bryan Duxbury + + + esteve + Esteve Fernandez + + + todd + Todd Lipcon + + + geechorama + Andrew McGeachie + + + molinaro + Anthony Molinaro + + + roger + Roger Meier + + + jfarrell + Jake Farrell + + + jensg + Jens Geyer + + + carl + Carl Yeksigian + + + + scm:git:https://git-wip-us.apache.org/repos/asf/thrift.git + scm:git:https://git-wip-us.apache.org/repos/asf/thrift.git + https://git-wip-us.apache.org/repos/asf?p=thrift.git + + + + org.slf4j + slf4j-api + 1.7.12 + + + javax.servlet + servlet-api + 2.5 + provided + + + org.apache.httpcomponents + httpclient + 4.4.1 + + + org.apache.httpcomponents + httpcore + 4.4.1 + + + diff --git a/python3.patch b/python3.patch new file mode 100644 index 0000000..c2908fd --- /dev/null +++ b/python3.patch @@ -0,0 +1,72 @@ +diff --git a/contrib/fb303/py/fb303_scripts/fb303_simple_mgmt.py b/contrib/fb303/py/fb303_scripts/fb303_simple_mgmt.py +index 4b1c257..df1c8cc 100644 +--- a/contrib/fb303/py/fb303_scripts/fb303_simple_mgmt.py ++++ b/contrib/fb303/py/fb303_scripts/fb303_simple_mgmt.py +@@ -57,24 +57,24 @@ def service_ctrl( + msg = fb_status_string(status) + if (len(status_details)): + msg += " - %s" % status_details +- print msg ++ print(msg) + + if (status == fb_status.ALIVE): + return 2 + else: + return 3 + except: +- print "Failed to get status" ++ print("Failed to get status") + return 3 + + # scalar commands + if command in ["version", "alive", "name"]: + try: + result = fb303_wrapper(command, port, trans_factory, prot_factory) +- print result ++ print(result) + return 0 + except: +- print "failed to get ", command ++ print("failed to get ", command) + return 3 + + # counters +@@ -82,10 +82,10 @@ def service_ctrl( + try: + counters = fb303_wrapper('counters', port, trans_factory, prot_factory) + for counter in counters: +- print "%s: %d" % (counter, counters[counter]) ++ print("%s: %d" % (counter, counters[counter])) + return 0 + except: +- print "failed to get counters" ++ print("failed to get counters") + return 3 + + # Only root should be able to run the following commands +@@ -96,19 +96,19 @@ def service_ctrl( + fb303_wrapper(command, port, trans_factory, prot_factory) + return 0 + except: +- print "failed to tell the service to ", command ++ print("failed to tell the service to ", command) + return 3 + else: + if command in ["stop", "reload"]: +- print "root privileges are required to stop or reload the service." ++ print("root privileges are required to stop or reload the service.") + return 4 + +- print "The following commands are available:" ++ print("The following commands are available:") + for command in ["counters", "name", "version", "alive", "status"]: +- print "\t%s" % command +- print "The following commands are available for users with root privileges:" ++ print("\t%s" % command) ++ print("The following commands are available for users with root privileges:") + for command in ["stop", "reload"]: +- print "\t%s" % command ++ print("\t%s" % command) + + return 0 + diff --git a/sources b/sources new file mode 100644 index 0000000..f7d47e8 --- /dev/null +++ b/sources @@ -0,0 +1 @@ +SHA512 (thrift-0.10.0.tar.gz) = 3695cf0fb0e4080b02446ab694fb61476997d8b181942dd6fe1e3e7cf0dcf990b4184ea33f9d0bc290b96200f702cf1ac1579e36b6b5bfe9ba8914b2d2938ddc diff --git a/thrift-0.10.0-buildxml.patch b/thrift-0.10.0-buildxml.patch new file mode 100644 index 0000000..8931c03 --- /dev/null +++ b/thrift-0.10.0-buildxml.patch @@ -0,0 +1,235 @@ +diff --git a/lib/java/build.xml b/lib/java/build.xml +index 40e5284..db1ce54 100644 +--- a/lib/java/build.xml ++++ b/lib/java/build.xml +@@ -17,8 +17,7 @@ + specific language governing permissions and limitations + under the License. + --> +- ++ + + Thrift Build File + +@@ -67,8 +66,15 @@ + + + +- +- ++ ++ ++ ++ ++ ++ ++ ++ ++ + + + +@@ -78,11 +84,14 @@ + + + +- ++ ++ ++ ++ + + + +- ++ + + + +@@ -295,120 +304,12 @@ + + + +- + + + +- +- +- + + +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- ++ + + +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- + +diff --git a/tutorial/java/build.xml b/tutorial/java/build.xml +index 7638d5b..c5ca703 100644 +--- a/tutorial/java/build.xml ++++ b/tutorial/java/build.xml +@@ -29,13 +29,33 @@ + + + +- +- ++ ++ ++ ++ ++ ++ ++ ++ ++ + + + +- + ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ + + + +diff --git a/tutorial/js/build.xml b/tutorial/js/build.xml +index a9a9ad4..2fddf0c 100644 +--- a/tutorial/js/build.xml ++++ b/tutorial/js/build.xml +@@ -35,8 +35,16 @@ + + + +- +- ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ + + + diff --git a/thrift.spec b/thrift.spec new file mode 100644 index 0000000..2787d7f --- /dev/null +++ b/thrift.spec @@ -0,0 +1,716 @@ +%global php_extdir %(php-config --extension-dir 2>/dev/null || echo "undefined") + +%{?perl_default_filter} +%global __provides_exclude_from ^(%{python3_sitearch}/.*\\.so|%{php_extdir}/.*\\.so)$ + +%global have_mongrel 0 + +# erlang-jsx is available in F19 but orphaned in F22 +%global have_jsx 0 + +# We should be able to enable this in the future +%global want_d 0 + +# Thrift's Ruby support depends on Mongrel. Since Mongrel is +# deprecated in Fedora, we can't support Ruby bindings for Thrift +# unless and until Thrift is patched to use a different HTTP server. +%if 0%{?have_mongrel} == 0 +%global ruby_configure --without-ruby +%global with_ruby 0 +%else +%global ruby_configure --with-ruby +%global want_ruby 1 +%endif + +# Thrift's Erlang support depends on the JSX library, which is not +# currently available in Fedora. + +%if 0%{?have_jsx} == 0 +%global erlang_configure --without-erlang +%global want_erlang 0 +%else +%global erlang_configure --with-erlang +%global want_erlang 1 +%endif + +# PHP appears broken in Thrift 0.9.1 +%global want_php 0 + +%if 0%{?want_php} == 0 +%global php_langname %{nil} +%global php_configure --without-php +%else +%global php_langname PHP,\ +%global php_configure --with-php +%endif + +# Thrift's GO support doesn't build under Fedora +%global want_golang 0 +%global golang_configure --without-go + +Name: thrift +Version: 0.10.0 +Release: 18%{?dist} +Summary: Software framework for cross-language services development + +# Parts of the source are used under the BSD and zlib licenses, but +# these are OK for inclusion in an Apache 2.0-licensed whole: +# https://www.apache.org/legal/3party.html + +# 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 +URL: https://thrift.apache.org/ + +Source0: https://archive.apache.org/dist/%{name}/%{version}/%{name}-%{version}.tar.gz + +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 + +Source3: https://repo1.maven.org/maven2/org/apache/thrift/libfb303/%{version}/libfb303-%{version}.pom + +# this patch is adapted from Gil Cattaneo's thrift-0.7.0 package +Patch0: %{name}-%{version}-buildxml.patch +# for fb303, excise maven ant tasks; build against system libraries; etc. +Patch1: fb303-%{version}-buildxml.patch +# fix configure.ac insistence on using /usr/local/lib for JAVA_PREFIX +Patch2: configure-java-prefix.patch +# fix for ppc64le builds not linking to /usr/lib64 directory +Patch3: fix-ppc64le-builds.patch +# fix for s390x build; incorporates fix for THRIFT-4177 with some code from THRIFT-4136 +Patch4: THRIFT-4177.patch + +# Update fb303 for python3 +Patch5: python3.patch + + +# BuildRequires for language-specific bindings are listed under these +# subpackages, to facilitate enabling or disabling individual language +# bindings in the future + +BuildRequires: ant >= 1.7 +BuildRequires: autoconf +BuildRequires: automake +BuildRequires: bison +BuildRequires: boost-devel +BuildRequires: boost-static +BuildRequires: flex +BuildRequires: flex-devel +BuildRequires: gcc-c++ +BuildRequires: glib2-devel +BuildRequires: libevent-devel +BuildRequires: libstdc++-devel +BuildRequires: libtool +BuildRequires: openssl-devel +BuildRequires: qt-devel +BuildRequires: texlive +BuildRequires: zlib-devel + +%if 0%{?want_golang} > 0 +BuildRequires: golang +Requires: golang +%endif + +%description + +The Apache Thrift software framework for cross-language services +development combines a software stack with a code generation engine to +build services that work efficiently and seamlessly between C++, Java, +Python, %{?php_langname}and other languages. + +%package devel +Summary: Development files for %{name} +Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: pkgconfig +Requires: boost-devel + +%description devel +The %{name}-devel package contains libraries and header files for +developing applications that use %{name}. + +%package qt +Summary: Qt support for %{name} +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description qt +The %{name}-qt package contains Qt bindings for %{name}. + +%package glib +Summary: GLib support for %{name} +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description glib +The %{name}-qt package contains GLib bindings for %{name}. + +%package -n python3-%{name} +Summary: Python 3 support for %{name} +BuildRequires: python3-devel +Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: python3 +Obsoletes: python-%{name} < 0.10.0-1%{?dist} +Obsoletes: python2-%{name} < 0.10.0-14%{?dist} + +%description -n python3-%{name} +The python3-%{name} package contains Python bindings for %{name}. + +%package -n perl-%{name} +Summary: Perl support for %{name} +Provides: perl(Thrift) = %{version}-%{release} +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) +Requires: perl(IO::Select) +Requires: perl(IO::Socket::INET) +Requires: perl(IO::String) +Requires: perl(LWP::UserAgent) +Requires: perl(POSIX) +Requires: perl(base) +Requires: perl(constant) +Requires: perl(strict) +Requires: perl(utf8) +Requires: perl(warnings) +BuildArch: noarch + +%description -n perl-%{name} +The perl-%{name} package contains Perl bindings for %{name}. + +%if %{?want_d} +%package -n d-%{name} +Summary: D support for %{name} +BuildRequires: ldc + +%description -n d-%{name} +The d-%{name} package contains D bindings for %{name}. +%endif + +%if 0%{?want_php} != 0 +%package -n php-%{name} +Summary: PHP support for %{name} +Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: php(zend-abi) = %{php_zend_api} +Requires: php(api) = %{php_core_api} +Requires: php(language) >= 5.3.0 +Requires: php-date +Requires: php-json +BuildRequires: php-devel + +%description -n php-%{name} +The php-%{name} package contains PHP bindings for %{name}. +%endif + +%package -n lib%{name}-javadoc +Summary: API documentation for java-%{name} +Requires: lib%{name}-java = %{version}-%{release} +BuildArch: noarch + +%description -n lib%{name}-javadoc +The lib%{name}-javadoc package contains API documentation for the +Java bindings for %{name}. + +%package -n lib%{name}-java +Summary: Java support for %{name} + +BuildRequires: apache-commons-codec +BuildRequires: apache-commons-lang +BuildRequires: apache-commons-logging +BuildRequires: httpcomponents-client +BuildRequires: httpcomponents-core +BuildRequires: java-devel +BuildRequires: javapackages-tools +BuildRequires: javapackages-local +BuildRequires: junit +BuildRequires: log4j +BuildRequires: slf4j +# javax.servlet-api 3.1.0 is provided by glassfish-servlet-api +BuildRequires: mvn(javax.servlet:javax.servlet-api) = 3.1.0 + +Requires: java-headless >= 1:1.6.0 +Requires: javapackages-tools +Requires: mvn(org.slf4j:slf4j-api) +Requires: mvn(commons-lang:commons-lang) +Requires: mvn(org.apache.httpcomponents:httpclient) +Requires: mvn(org.apache.httpcomponents:httpcore) +BuildArch: noarch + +%description -n lib%{name}-java +The lib%{name}-java package contains Java bindings for %{name}. + +%if 0%{?want_ruby} > 0 +%package -n ruby-%{name} +Summary: Ruby support for %{name} +Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: ruby(release) +BuildRequires: ruby-devel + +%description -n ruby-%{name} +The ruby-%{name} package contains Ruby bindings for %{name}. +%endif + +%if 0%{?want_erlang} > 0 +%package -n erlang-%{name} +Summary: Erlang support for %{name} +Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: erlang +Requires: erlang-jsx +BuildRequires: erlang +BuildRequires: erlang-rebar + +%description -n erlang-%{name} +The erlang-%{name} package contains Erlang bindings for %{name}. +%endif + +%package -n fb303 +Summary: Basic interface for Thrift services +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description -n fb303 +fb303 is the shared root of all Thrift services; it provides a +standard interface to monitoring, dynamic options and configuration, +uptime reports, activity, etc. + +%package -n fb303-devel +Summary: Development files for fb303 +Requires: fb303%{?_isa} = %{version}-%{release} + +%description -n fb303-devel +The fb303-devel package contains header files for fb303 + +%package -n python3-fb303 +Summary: Python 3 bindings for fb303 +Requires: fb303%{?_isa} = %{version}-%{release} +BuildRequires: python3-devel +Obsoletes: python-fb303 < 0.10.0-1%{?dist} +Obsoletes: python2-fb303 < 0.10.0-14%{?dist} + +%description -n python3-fb303 +The python3-fb303 package contains Python bindings for fb303. + +%package -n fb303-java +Summary: Java bindings for fb303 +Requires: java-headless >= 1:1.6.0 +Requires: javapackages-tools +Requires: mvn(org.slf4j:slf4j-api) +Requires: mvn(commons-lang:commons-lang) +Requires: mvn(org.apache.httpcomponents:httpclient) +Requires: mvn(org.apache.httpcomponents:httpcore) +BuildArch: noarch + +%description -n fb303-java +The fb303-java package contains Java bindings for fb303. + +%prep +%autosetup -p1 + +%{?!el5:sed -i -e 's/^AC_PROG_LIBTOOL/LT_INIT/g' configure.ac} + +# avoid spurious executable permissions in debuginfo package +find . -name \*.cpp -or -name \*.cc -or -name \*.h | xargs -r chmod 644 + +cp -p %{SOURCE2} bootstrap.sh + +# work around linking issues +echo 'libthrift_c_glib_la_LIBADD = $(GLIB_LIBS) $(GOBJECT_LIBS) -L../cpp/.libs ' >> lib/c_glib/Makefile.am +echo 'libthriftqt_la_LIBADD = $(QT_LIBS) -lthrift -L.libs' >> lib/cpp/Makefile.am +echo 'libthriftz_la_LIBADD = $(ZLIB_LIBS) -lthrift -L.libs' >> lib/cpp/Makefile.am +echo 'EXTRA_libthriftqt_la_DEPENDENCIES = libthrift.la' >> lib/cpp/Makefile.am +echo 'EXTRA_libthriftz_la_DEPENDENCIES = libthrift.la' >> lib/cpp/Makefile.am + +# echo 'libfb303_so_LIBADD = -lthrift -L../../../lib/cpp/.libs' >> contrib/fb303/cpp/Makefile.am + +sed -i 's|libfb303_so_LDFLAGS = $(SHARED_LDFLAGS)|libfb303_so_LDFLAGS = $(SHARED_LDFLAGS) -lthrift -L../../../lib/cpp/.libs -Wl,--as-needed|g' contrib/fb303/cpp/Makefile.am + +# fix broken upstream check for ant version; we enforce this with BuildRequires, so no need to check here +sed -i 's|ANT_VALID=.*|ANT_VALID=1|' aclocal/ax_javac_and_java.m4 +sed -i 's|ANT_VALID=.*|ANT_VALID=1|' contrib/fb303/aclocal/ax_javac_and_java.m4 + +%build +export PY_PREFIX=%{_prefix} +export PERL_PREFIX=%{_prefix} +export PHP_PREFIX=%{php_extdir} +export JAVA_PREFIX=%{_javadir} +export RUBY_PREFIX=%{_prefix} +export GLIB_LIBS=$(pkg-config --libs glib-2.0) +export GLIB_CFLAGS=$(pkg-config --cflags glib-2.0) +export GOBJECT_LIBS=$(pkg-config --libs gobject-2.0) +export GOBJECT_CFLAGS=$(pkg-config --cflags gobject-2.0) + +find %{_builddir} -name rebar -exec rm -f '{}' \; +find . -name Makefile\* -exec sed -i -e 's/[.][/]rebar/rebar/g' {} \; + +# install javadocs in proper places +sed -i 's|-Dinstall.javadoc.path=$(DESTDIR)$(docdir)/java|-Dinstall.javadoc.path=$(DESTDIR)%{_javadocdir}/%{name}|' lib/java/Makefile.* + +# build a jar without a version number +sed -i 's|${thrift.artifactid}-${version}|${thrift.artifactid}|' lib/java/build.xml + +# Proper permissions for Erlang files +sed -i 's|$(INSTALL) $$p|$(INSTALL) --mode 644 $$p|g' lib/erl/Makefile.am + +# Build fb303 jars against the in-situ copy of thrift +sed -i 's|$(thrift_home)/bin/thrift|../../../compiler/cpp/thrift|g' \ + contrib/fb303/cpp/Makefile.am \ + contrib/fb303/py/Makefile.am + +sed -i 's|$(prefix)/lib$|%{_libdir}|g' contrib/fb303/cpp/Makefile.am + +sed -i 's|$(thrift_home)/include/thrift|../../../lib/cpp/src|g' \ + contrib/fb303/cpp/Makefile.am + +# Create a straightforward makefile for Java fb303 +echo "all: + ant +install: build/libfb303.jar + mkdir -p %{buildroot}%{_javadir} + /usr/bin/install -c -m 644 build/libfb303.jar %{buildroot}%{_javadir} +" > contrib/fb303/java/Makefile + +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 %{ruby_configure} %{erlang_configure} %{golang_configure} %{php_configure} --with-py3 --docdir=%{?_pkgdocdir}%{!?_pkgdocdir:%{_docdir}/%{name}-%{version}} + +# eliminate unused direct shlib dependencies +sed -i -e 's/ -shared / -Wl,--as-needed\0/g' libtool + +make %{?_smp_mflags} + +# build fb303 +( + cd contrib/fb303 + sed -i '/^[.][/]configure.*/d' bootstrap.sh + sh bootstrap.sh + %configure --disable-static --with-java --without-php --with-py3 --libdir=%{_libdir} + make %{?_smp_mflags} + ( + cd java + ant dist + ) +) + +%install +%make_install +find %{buildroot} -name '*.la' -exec rm -f {} ';' +find %{buildroot} -name fastbinary.so | xargs -r chmod 755 +find %{buildroot} -name \*.erl -or -name \*.hrl -or -name \*.app | xargs -r chmod 644 + +# Remove javadocs jar +find %{buildroot}/%{_javadir} -name lib%{name}-javadoc.jar -exec rm -f '{}' \; + +# Add POM file and depmap +mkdir -p %{buildroot}%{_mavenpomdir} + +install -pm 644 %{SOURCE1} %{buildroot}%{_mavenpomdir}/JPP-libthrift.pom + +%add_maven_depmap JPP-libthrift.pom libthrift.jar + +# Remove bundled jar files +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 +mkdir -p %{buildroot}/%{perl_vendorlib}/ +mv %{buildroot}/usr/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 + +# Fix permissions on Thread.h +find %{buildroot} -name Thread.h -exec chmod a-x '{}' \; + +# install fb303 +( + cd contrib/fb303 + make DESTDIR=%{buildroot} install + ( + cd java + ant -Dinstall.path=%{buildroot}%{_javadir} -Dinstall.javadoc.path=%{buildroot}%{_javadocdir}/fb303 install + ) +) + +# install maven pom and depmaps for fb303 +install -pm 644 %{SOURCE3} %{buildroot}%{_mavenpomdir}/JPP-libfb303.pom +%add_maven_depmap JPP-libfb303.pom libfb303.jar -f "fb303" + +# Ensure all python scripts are executable +find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r chmod 755 + +%ldconfig_scriptlets + +%files +%doc LICENSE NOTICE +%{_bindir}/thrift +%{_libdir}/libthrift-%{version}.so +%{_libdir}/libthriftz-%{version}.so +%{_libdir}/libthriftnb-%{version}.so + +%files glib +%{_libdir}/libthrift_c_glib.so +%{_libdir}/libthrift_c_glib.so.* + +%files qt +%{_libdir}/libthriftqt.so +%{_libdir}/libthriftqt-%{version}.so + +%files devel +%{_includedir}/thrift +%exclude %{_includedir}/thrift/fb303 +%{_libdir}/*.so +%{_libdir}/*.so.0 +%{_libdir}/*.so.0.0.0 +%exclude %{_libdir}/lib*-%{version}.so +%exclude %{_libdir}/libfb303.so +%{_libdir}/pkgconfig/thrift-z.pc +%{_libdir}/pkgconfig/thrift-qt.pc +%{_libdir}/pkgconfig/thrift-nb.pc +%{_libdir}/pkgconfig/thrift.pc +%{_libdir}/pkgconfig/thrift_c_glib.pc +%doc LICENSE NOTICE + +%files -n perl-%{name} +%{perl_vendorlib}/Thrift +%{perl_vendorlib}/Thrift.pm +%doc LICENSE NOTICE + +%if 0%{?want_php} != 0 +%files -n php-%{name} +%config(noreplace) /etc/php.d/thrift_protocol.ini +%{_datadir}/php/Thrift/ +%{php_extdir}/thrift_protocol.so +%doc LICENSE NOTICE +%endif + +%if %{?want_erlang} > 0 +%files -n erlang-%{name} +%{_libdir}/erlang/lib/%{name}-%{version}/ +%doc LICENSE NOTICE +%endif + +%files -n python3-%{name} +%{python3_sitearch}/%{name} +%{python3_sitearch}/%{name}-%{version}-py%{python3_version}.egg-info +%doc LICENSE NOTICE + +%files -n lib%{name}-javadoc +%{_javadocdir}/%{name} +%doc LICENSE NOTICE + +%files -n lib%{name}-java -f .mfiles +%doc LICENSE NOTICE + +%files -n fb303 +%{_datarootdir}/fb303 +%doc LICENSE NOTICE + +%files -n fb303-devel +%{_libdir}/libfb303.so +%{_includedir}/thrift/fb303 +%doc LICENSE NOTICE + +%files -n python3-fb303 +%{python3_sitelib}/fb303 +%{python3_sitelib}/fb303_scripts +%{python3_sitelib}/%{name}_fb303-%{version}-py%{python3_version}.egg-info +%doc LICENSE NOTICE + +%files -n fb303-java -f .mfiles-fb303 +%doc LICENSE NOTICE + +%changelog +* Sat Jul 27 2019 Fedora Release Engineering - 0.10.0-18 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Sat Jun 01 2019 Jitka Plesnikova - 0.10.0-17 +- Perl 5.30 rebuild + +* Sun Feb 03 2019 Fedora Release Engineering - 0.10.0-16 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Wed Jul 18 2018 Christopher Tubbs - 0.10.0-15 +- Rebuild to address transient error + +* Wed Jul 18 2018 Christopher Tubbs - 0.10.0-14 +- Migrate to python3; rhbz#1533306 + +* Sat Jul 14 2018 Fedora Release Engineering - 0.10.0-13 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Fri Jun 29 2018 Jitka Plesnikova - 0.10.0-12 +- Perl 5.28 rebuild + +* Wed May 30 2018 Christopher Tubbs - 0.10.0-11 +- Fix FTBFS; update servlet-api dependency (rhbz#1581175) + +* Thu Mar 08 2018 Christopher Tubbs - 0.10.0-10 +- Add gcc-c++ BuildRequires + +* Fri Feb 09 2018 Fedora Release Engineering - 0.10.0-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Fri Dec 22 2017 Christopher Tubbs - 0.10.0-8 +- Fix for rhbz#1507518 + +* Thu Aug 03 2017 Fedora Release Engineering - 0.10.0-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Thu Jul 27 2017 Fedora Release Engineering - 0.10.0-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Thu Jul 06 2017 Christopher Tubbs - 0.10.0-5 +- Fix FTBFS in rawhide: add BR javapackages-local + +* Sun Jun 04 2017 Jitka Plesnikova - 0.10.0-4 +- Perl 5.26 rebuild + +* Mon May 15 2017 Fedora Release Engineering - 0.10.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_27_Mass_Rebuild + +* Mon Mar 13 2017 Christopher Tubbs - 0.10.0-2 +- Build TNonblockingServer, remove useless man page, and use java-headless + +* Tue Mar 07 2017 Christopher Tubbs - 0.10.0-1 +- Update to thrift 0.10.0 + +* Sat Feb 11 2017 Fedora Release Engineering - 0.9.1-17.6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Tue Jul 19 2016 Fedora Release Engineering - 0.9.1-17.5 +- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages + +* Tue May 17 2016 Jitka Plesnikova - 0.9.1-17.4 +- Perl 5.24 rebuild + +* Wed Mar 30 2016 Petr Pisar - 0.9.1-17.3 +- Adapt to GCC 6 (bug #1306671) + +* Fri Feb 05 2016 Fedora Release Engineering - 0.9.1-17.2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Sat Jan 16 2016 Jonathan Wakely - 0.9.1-17.1 +- Rebuilt for Boost 1.60 + +* Mon Nov 23 2015 Peter Robinson 0.9.1-17 +- Fix release + +* Wed Oct 21 2015 Marcin Juszkiewicz - 0.9.1-16.6 +- Backport THRIFT-2214 fix to get package built on aarch64. + +* Thu Aug 27 2015 Jonathan Wakely - 0.9.1-16.5 +- Rebuilt for Boost 1.59 + +* Wed Jul 29 2015 Fedora Release Engineering - 0.9.1-16.4 +- Rebuilt for https://fedoraproject.org/wiki/Changes/F23Boost159 + +* Wed Jul 22 2015 David Tardon - 0.9.1-16.3 +- rebuild for Boost 1.58 + +* Fri Jun 19 2015 Fedora Release Engineering - 0.9.1-16.2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Sat Jun 06 2015 Jitka Plesnikova - 0.9.1-16.1 +- Perl 5.22 rebuild + +* Fri Apr 24 2015 Michal Srb - 0.9.1-16 +- Fix FTBFS (Resolves: rhbz#1195364) + +* Mon Apr 20 2015 Will Benton - 0.9.1-15 +- Dropped Erlang support for F22 and above, since erlang-jsx is orphaned + +* Wed Apr 8 2015 Haïkel Guémar - 0.9.1-14 +- Split Qt4/GLib runtimes into separate subpackages +- Drop mono support, it's broken and not even shipped (and it pulls mono-core) + +* Mon Jan 26 2015 Petr Machata - 0.9.1-13.3 +- Rebuild for boost 1.57.0 +* Thu Aug 28 2014 Jitka Plesnikova - 0.9.1-13.2 +- Perl 5.20 rebuild + +* Mon Aug 18 2014 Fedora Release Engineering - 0.9.1-13.1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Fri Jun 27 2014 Petr Pisar - 0.9.1-13 +- Use add_maven_depmap-generated file lists (bug #1107448) + +* Sun Jun 08 2014 Fedora Release Engineering - 0.9.1-12.2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Fri May 23 2014 Petr Machata - 0.9.1-12.1 +- Rebuild for boost 1.55.0 + +* Mon May 05 2014 Lubomir Rintel - 0.9.1-12 +- Fix EPEL build + +* Fri Feb 21 2014 willb - 0.9.1-11 +- fix BZ 1068561 + +* Fri Dec 20 2013 willb - 0.9.1-10 +- fix BZ 1045544 + +* Wed Oct 16 2013 willb - 0.9.1-9 +- Remove spurious dependencies +- Move some versioned shared libraries from -devel + +* Wed Oct 16 2013 Dan Horák - 0.9.1-8 +- Mono available only on selected arches + +* Sun Oct 13 2013 willb - 0.9.1-7 +- minor specfile cleanups + +* Fri Oct 11 2013 willb - 0.9.1-6 +- added thrift man page +- integrated fb303 +- fixed many fb303 library dependency problems + +* Tue Oct 1 2013 willb - 0.9.1-5 +- fixed extension library linking when an older thrift package is not + already installed +- fixed extension library dependencies in Makefile + +* Tue Oct 1 2013 willb - 0.9.1-4 +- addresses rpmlint warnings and errors +- properly links glib, qt, and z extension libraries + +* Mon Sep 30 2013 willb - 0.9.1-3 +- adds QT support +- clarified multiple licensing +- uses parallel make +- removes obsolete M4 macros +- specifies canonical location for source archive + +* Tue Sep 24 2013 willb - 0.9.1-2 +- fixes for i686 +- fixes bogus requires for Java package + +* Fri Sep 20 2013 willb - 0.9.1-1 +- updated to upstream version 0.9.1 +- disables PHP support, which FTBFS in this version + +* Fri Sep 20 2013 willb - 0.9.0-5 +- patch build xml to generate unversioned jars instead of moving after the fact +- unversioned doc dirs on Fedora versions where this is appropriate +- replaced some stray hardcoded paths with macros +- thanks to Gil for the above observations and suggestions for fixes + +* Thu Aug 22 2013 willb - 0.9.0-4 +- removed version number from jar name (obs pmackinn) + +* Thu Aug 22 2013 willb - 0.9.0-3 +- Fixes for F19 and Erlang support + +* Thu Aug 15 2013 willb - 0.9.0-2 +- Incorporates feedback from comments on review request + +* Mon Jul 1 2013 willb - 0.9.0-1 +- Initial package From 1b0847d5b99f02177ab38a4653aefa2338625c0d Mon Sep 17 00:00:00 2001 From: Christopher Tubbs Date: Tue, 20 Aug 2019 14:04:30 -0400 Subject: [PATCH 53/97] Fix FTBFS (by removing Java support) and fix Python3 issues (rhbz#1738810 and rhbz#1533306) --- thrift.spec | 60 ++++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 46 insertions(+), 14 deletions(-) diff --git a/thrift.spec b/thrift.spec index 2787d7f..6883df4 100644 --- a/thrift.spec +++ b/thrift.spec @@ -11,6 +11,15 @@ # We should be able to enable this in the future %global want_d 0 +# Can't do anything with java with all the build deps in modules +%global want_java 0 + +%if 0%{?want_java} == 0 +%global java_configure --without-java +%else +%global java_configure --with-java +%endif + # Thrift's Ruby support depends on Mongrel. Since Mongrel is # deprecated in Fedora, we can't support Ruby bindings for Thrift # unless and until Thrift is patched to use a different HTTP server. @@ -50,7 +59,7 @@ Name: thrift Version: 0.10.0 -Release: 18%{?dist} +Release: 19%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -89,7 +98,9 @@ Patch5: python3.patch # subpackages, to facilitate enabling or disabling individual language # bindings in the future +%if 0%{?want_java} > 0 BuildRequires: ant >= 1.7 +%endif BuildRequires: autoconf BuildRequires: automake BuildRequires: bison @@ -204,6 +215,7 @@ BuildRequires: php-devel The php-%{name} package contains PHP bindings for %{name}. %endif +%if 0%{?want_java} > 0 %package -n lib%{name}-javadoc Summary: API documentation for java-%{name} Requires: lib%{name}-java = %{version}-%{release} @@ -240,6 +252,7 @@ BuildArch: noarch %description -n lib%{name}-java The lib%{name}-java package contains Java bindings for %{name}. +%endif %if 0%{?want_ruby} > 0 %package -n ruby-%{name} @@ -291,6 +304,7 @@ Obsoletes: python2-fb303 < 0.10.0-14%{?dist} %description -n python3-fb303 The python3-fb303 package contains Python bindings for fb303. +%if 0%{?want_java} > 0 %package -n fb303-java Summary: Java bindings for fb303 Requires: java-headless >= 1:1.6.0 @@ -303,6 +317,7 @@ BuildArch: noarch %description -n fb303-java The fb303-java package contains Java bindings for fb303. +%endif %prep %autosetup -p1 @@ -329,6 +344,10 @@ sed -i 's|libfb303_so_LDFLAGS = $(SHARED_LDFLAGS)|libfb303_so_LDFLAGS = $(SHARED sed -i 's|ANT_VALID=.*|ANT_VALID=1|' aclocal/ax_javac_and_java.m4 sed -i 's|ANT_VALID=.*|ANT_VALID=1|' contrib/fb303/aclocal/ax_javac_and_java.m4 +# explicitly set python3 +shopt -s globstar +sed -i -E 's@^(#!.*/env) *python *$@\1 python3@' **/*.py + %build export PY_PREFIX=%{_prefix} export PERL_PREFIX=%{_prefix} @@ -374,7 +393,7 @@ 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 %{ruby_configure} %{erlang_configure} %{golang_configure} %{php_configure} --with-py3 --docdir=%{?_pkgdocdir}%{!?_pkgdocdir:%{_docdir}/%{name}-%{version}} +%configure --disable-dependency-tracking --disable-static --with-boost=/usr %{java_configure} %{ruby_configure} %{erlang_configure} %{golang_configure} %{php_configure} --with-py3 --docdir=%{?_pkgdocdir}%{!?_pkgdocdir:%{_docdir}/%{name}-%{version}} # eliminate unused direct shlib dependencies sed -i -e 's/ -shared / -Wl,--as-needed\0/g' libtool @@ -386,14 +405,18 @@ make %{?_smp_mflags} cd contrib/fb303 sed -i '/^[.][/]configure.*/d' bootstrap.sh sh bootstrap.sh - %configure --disable-static --with-java --without-php --with-py3 --libdir=%{_libdir} + %configure --disable-static %{java_configure} --without-php --with-py3 --libdir=%{_libdir} make %{?_smp_mflags} - ( - cd java - ant dist - ) ) +# build fb303 java +%if 0%{?want_java} > 0 +( + cd contrib/fb303/java + ant dist +) +%endif + %install %make_install find %{buildroot} -name '*.la' -exec rm -f {} ';' @@ -401,14 +424,13 @@ find %{buildroot} -name fastbinary.so | xargs -r chmod 755 find %{buildroot} -name \*.erl -or -name \*.hrl -or -name \*.app | xargs -r chmod 644 # Remove javadocs jar +%if 0%{?want_java} > 0 find %{buildroot}/%{_javadir} -name lib%{name}-javadoc.jar -exec rm -f '{}' \; - # Add POM file and depmap mkdir -p %{buildroot}%{_mavenpomdir} - install -pm 644 %{SOURCE1} %{buildroot}%{_mavenpomdir}/JPP-libthrift.pom - %add_maven_depmap JPP-libthrift.pom libthrift.jar +%endif # Remove bundled jar files find %{buildroot} -name \*.jar -a \! -name \*thrift\* -exec rm -f '{}' \; @@ -434,15 +456,18 @@ find %{buildroot} -name Thread.h -exec chmod a-x '{}' \; ( cd contrib/fb303 make DESTDIR=%{buildroot} install - ( - cd java - ant -Dinstall.path=%{buildroot}%{_javadir} -Dinstall.javadoc.path=%{buildroot}%{_javadocdir}/fb303 install - ) ) +# install fb303 java +%if 0%{?want_java} > 0 +( + cd contrib/fb303/java + ant -Dinstall.path=%{buildroot}%{_javadir} -Dinstall.javadoc.path=%{buildroot}%{_javadocdir}/fb303 install +) # install maven pom and depmaps for fb303 install -pm 644 %{SOURCE3} %{buildroot}%{_mavenpomdir}/JPP-libfb303.pom %add_maven_depmap JPP-libfb303.pom libfb303.jar -f "fb303" +%endif # Ensure all python scripts are executable find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r chmod 755 @@ -503,12 +528,14 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %{python3_sitearch}/%{name}-%{version}-py%{python3_version}.egg-info %doc LICENSE NOTICE +%if 0%{?want_java} > 0 %files -n lib%{name}-javadoc %{_javadocdir}/%{name} %doc LICENSE NOTICE %files -n lib%{name}-java -f .mfiles %doc LICENSE NOTICE +%endif %files -n fb303 %{_datarootdir}/fb303 @@ -525,10 +552,15 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %{python3_sitelib}/%{name}_fb303-%{version}-py%{python3_version}.egg-info %doc LICENSE NOTICE +%if 0%{?want_java} > 0 %files -n fb303-java -f .mfiles-fb303 %doc LICENSE NOTICE +%endif %changelog +* Tue Aug 20 2019 Christopher Tubbs - 0.10.0-19 +- Fix FTBFS (by removing Java support) and fix Python3 issues (rhbz#1738810 and rhbz#1533306) + * Sat Jul 27 2019 Fedora Release Engineering - 0.10.0-18 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild From 0d7379a25312a38d8cea122c2012b595541f1bcf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Thu, 3 Oct 2019 14:39:27 +0200 Subject: [PATCH 54/97] Rebuilt for Python 3.8.0rc1 (#1748018) --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 6883df4..ef37416 100644 --- a/thrift.spec +++ b/thrift.spec @@ -59,7 +59,7 @@ Name: thrift Version: 0.10.0 -Release: 19%{?dist} +Release: 20%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -558,6 +558,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %endif %changelog +* Thu Oct 03 2019 Miro Hrončok - 0.10.0-20 +- Rebuilt for Python 3.8.0rc1 (#1748018) + * Tue Aug 20 2019 Christopher Tubbs - 0.10.0-19 - Fix FTBFS (by removing Java support) and fix Python3 issues (rhbz#1738810 and rhbz#1533306) From 4242bafd94183a06361373e6f5f4c9d7e2a32bc5 Mon Sep 17 00:00:00 2001 From: Orion Poplawski Date: Sun, 1 Dec 2019 20:56:42 -0700 Subject: [PATCH 55/97] - Update to 0.13.0 (bz#1778343) - Drops fb303 package - Switch to Qt5 --- .gitignore | 1 + THRIFT-4177.patch | 27 ------ bootstrap.sh | 14 +++- fb303-0.10.0-buildxml.patch | 158 ------------------------------------ fix-ppc64le-builds.patch | 13 --- libfb303-0.10.0.pom | 104 ------------------------ sources | 2 +- thrift.spec | 153 ++++------------------------------ 8 files changed, 29 insertions(+), 443 deletions(-) delete mode 100644 THRIFT-4177.patch delete mode 100644 fb303-0.10.0-buildxml.patch delete mode 100644 fix-ppc64le-builds.patch delete mode 100644 libfb303-0.10.0.pom diff --git a/.gitignore b/.gitignore index f5a770c..618bab6 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ /0.9.1.tar.gz /thrift-0.10.0.tar.gz +/thrift-0.13.0.tar.gz diff --git a/THRIFT-4177.patch b/THRIFT-4177.patch deleted file mode 100644 index c0c331b..0000000 --- a/THRIFT-4177.patch +++ /dev/null @@ -1,27 +0,0 @@ -diff --git a/compiler/cpp/src/thrift/generate/t_java_generator.cc b/compiler/cpp/src/thrift/generate/t_java_generator.cc -index fb581e4..90dfa06 100644 ---- a/compiler/cpp/src/thrift/generate/t_java_generator.cc -+++ b/compiler/cpp/src/thrift/generate/t_java_generator.cc -@@ -4657,8 +4657,9 @@ void t_java_generator::generate_deep_copy_non_container(ofstream& out, - std::string dest_name, - t_type* type) { - (void)dest_name; -+ type = get_true_type(type); - if (type->is_base_type() || type->is_enum() || type->is_typedef()) { -- if (((t_base_type*)type)->is_binary()) { -+ if (type->is_binary()) { - out << "org.apache.thrift.TBaseHelper.copyBinary(" << source_name << ")"; - } else { - // everything else can be copied directly -diff --git a/compiler/cpp/src/thrift/parse/t_type.h b/compiler/cpp/src/thrift/parse/t_type.h -index 30f8c1f7..3a6d1e04 100644 ---- a/compiler/cpp/src/thrift/parse/t_type.h -+++ b/compiler/cpp/src/thrift/parse/t_type.h -@@ -47,6 +47,7 @@ public: - virtual bool is_void() const { return false; } - virtual bool is_base_type() const { return false; } - virtual bool is_string() const { return false; } -+ virtual bool is_binary() const { return false; } - virtual bool is_bool() const { return false; } - virtual bool is_typedef() const { return false; } - virtual bool is_enum() const { return false; } diff --git a/bootstrap.sh b/bootstrap.sh index 52ecda4..1989437 100644 --- a/bootstrap.sh +++ b/bootstrap.sh @@ -19,7 +19,10 @@ # under the License. # -./cleanup.sh +echo -n "make distclean... " +make -k distclean >/dev/null 2>&1 +echo "ok" + if test -d lib/php/src/ext/thrift_protocol ; then if phpize -v >/dev/null 2>/dev/null ; then (cd lib/php/src/ext/thrift_protocol && phpize) @@ -38,17 +41,24 @@ else exit 1 fi +format_version () { + printf "%03d%03d%03d%03d" $(echo $1 | tr '.' ' '); +} + # we require automake 1.13 or later # check must happen externally due to use of newer macro AUTOMAKE_VERSION=`automake --version | grep automake | egrep -o '([0-9]{1,}\.)+[0-9]{1,}'` -if [ "$AUTOMAKE_VERSION" \< "1.13" ]; then +if [ $(format_version $AUTOMAKE_VERSION) -lt $(format_version 1.13) ]; then echo >&2 "automake version $AUTOMAKE_VERSION is too old (need 1.13 or later)" exit 1 fi +set -e autoscan $LIBTOOLIZE --copy --automake aclocal -I ./aclocal autoheader +sed '/undef VERSION/d' config.hin > config.hin2 +mv config.hin2 config.hin autoconf automake --copy --add-missing --foreign diff --git a/fb303-0.10.0-buildxml.patch b/fb303-0.10.0-buildxml.patch deleted file mode 100644 index eb3825a..0000000 --- a/fb303-0.10.0-buildxml.patch +++ /dev/null @@ -1,158 +0,0 @@ -diff --git a/contrib/fb303/java/build.xml b/contrib/fb303/java/build.xml -index 8f2fa51..d89f05e 100755 ---- a/contrib/fb303/java/build.xml -+++ b/contrib/fb303/java/build.xml -@@ -17,8 +17,7 @@ - specific language governing permissions and limitations - under the License. - --> -- -+ - - - -@@ -38,8 +37,8 @@ - - - -- -- -+ -+ - - - -@@ -50,7 +49,7 @@ - - - -- -+ - - - -@@ -72,13 +71,21 @@ - - - -- -+ - - -- -- -- -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ - -+ - - - -@@ -99,97 +106,4 @@ - - - -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- - diff --git a/fix-ppc64le-builds.patch b/fix-ppc64le-builds.patch deleted file mode 100644 index f56ad86..0000000 --- a/fix-ppc64le-builds.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/aclocal/ax_boost_base.m4 b/aclocal/ax_boost_base.m4 -index b496020..30ee0df 100644 ---- a/aclocal/ax_boost_base.m4 -+++ b/aclocal/ax_boost_base.m4 -@@ -92,7 +92,7 @@ if test "x$want_boost" = "xyes"; then - libsubdirs="lib" - ax_arch=`uname -m` - case $ax_arch in -- x86_64|ppc64|s390x|sparc64|aarch64) -+ x86_64|ppc64|ppc64le|s390x|sparc64|aarch64) - libsubdirs="lib64 lib lib64" - ;; - esac diff --git a/libfb303-0.10.0.pom b/libfb303-0.10.0.pom deleted file mode 100644 index c3fddde..0000000 --- a/libfb303-0.10.0.pom +++ /dev/null @@ -1,104 +0,0 @@ - - - 4.0.0 - org.apache.thrift - libfb303 - 0.10.0 - pom - Apache Thrift - Thrift is a software framework for scalable cross-language services development. - http://thrift.apache.org - - - The Apache Software License, Version 2.0 - http://www.apache.org/licenses/LICENSE-2.0.txt - - - - - mcslee - Mark Slee - - - dreiss - David Reiss - - - aditya - Aditya Agarwal - - - marck - Marc Kwiatkowski - - - jwang - James Wang - - - cpiro - Chris Piro - - - bmaurer - Ben Maurer - - - kclark - Kevin Clark - - - jake - Jake Luciani - - - bryanduxbury - Bryan Duxbury - - - esteve - Esteve Fernandez - - - todd - Todd Lipcon - - - geechorama - Andrew McGeachie - - - molinaro - Anthony Molinaro - - - roger - Roger Meier - - - jfarrell - Jake Farrell - - - jensg - Jens Geyer - - - carl - Carl Yeksigian - - - - scm:git:https://git-wip-us.apache.org/repos/asf/thrift.git - scm:git:https://git-wip-us.apache.org/repos/asf/thrift.git - https://git-wip-us.apache.org/repos/asf?p=thrift.git - - - - org.apache.thrift - libthrift - 0.10.0 - - - diff --git a/sources b/sources index f7d47e8..63b1dcc 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (thrift-0.10.0.tar.gz) = 3695cf0fb0e4080b02446ab694fb61476997d8b181942dd6fe1e3e7cf0dcf990b4184ea33f9d0bc290b96200f702cf1ac1579e36b6b5bfe9ba8914b2d2938ddc +SHA512 (thrift-0.13.0.tar.gz) = 5f7426d1e429ead20dd366f63a6d619071eccc17dc0395738307eef507b703733d029147fb596c4d392d31dc822777ea2a0be709f1f677b1221c9335cfcb09b7 diff --git a/thrift.spec b/thrift.spec index ef37416..d42fbde 100644 --- a/thrift.spec +++ b/thrift.spec @@ -58,8 +58,8 @@ %global golang_configure --without-go Name: thrift -Version: 0.10.0 -Release: 20%{?dist} +Version: 0.13.0 +Release: 1%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -77,21 +77,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 -Source3: https://repo1.maven.org/maven2/org/apache/thrift/libfb303/%{version}/libfb303-%{version}.pom - # this patch is adapted from Gil Cattaneo's thrift-0.7.0 package -Patch0: %{name}-%{version}-buildxml.patch -# for fb303, excise maven ant tasks; build against system libraries; etc. -Patch1: fb303-%{version}-buildxml.patch +#Patch0: %{name}-%{version}-buildxml.patch # fix configure.ac insistence on using /usr/local/lib for JAVA_PREFIX Patch2: configure-java-prefix.patch -# fix for ppc64le builds not linking to /usr/lib64 directory -Patch3: fix-ppc64le-builds.patch -# fix for s390x build; incorporates fix for THRIFT-4177 with some code from THRIFT-4136 -Patch4: THRIFT-4177.patch - -# Update fb303 for python3 -Patch5: python3.patch # BuildRequires for language-specific bindings are listed under these @@ -114,7 +103,7 @@ BuildRequires: libevent-devel BuildRequires: libstdc++-devel BuildRequires: libtool BuildRequires: openssl-devel -BuildRequires: qt-devel +BuildRequires: qt5-qtbase-devel BuildRequires: texlive BuildRequires: zlib-devel @@ -278,46 +267,6 @@ BuildRequires: erlang-rebar The erlang-%{name} package contains Erlang bindings for %{name}. %endif -%package -n fb303 -Summary: Basic interface for Thrift services -Requires: %{name}%{?_isa} = %{version}-%{release} - -%description -n fb303 -fb303 is the shared root of all Thrift services; it provides a -standard interface to monitoring, dynamic options and configuration, -uptime reports, activity, etc. - -%package -n fb303-devel -Summary: Development files for fb303 -Requires: fb303%{?_isa} = %{version}-%{release} - -%description -n fb303-devel -The fb303-devel package contains header files for fb303 - -%package -n python3-fb303 -Summary: Python 3 bindings for fb303 -Requires: fb303%{?_isa} = %{version}-%{release} -BuildRequires: python3-devel -Obsoletes: python-fb303 < 0.10.0-1%{?dist} -Obsoletes: python2-fb303 < 0.10.0-14%{?dist} - -%description -n python3-fb303 -The python3-fb303 package contains Python bindings for fb303. - -%if 0%{?want_java} > 0 -%package -n fb303-java -Summary: Java bindings for fb303 -Requires: java-headless >= 1:1.6.0 -Requires: javapackages-tools -Requires: mvn(org.slf4j:slf4j-api) -Requires: mvn(commons-lang:commons-lang) -Requires: mvn(org.apache.httpcomponents:httpclient) -Requires: mvn(org.apache.httpcomponents:httpcore) -BuildArch: noarch - -%description -n fb303-java -The fb303-java package contains Java bindings for fb303. -%endif %prep %autosetup -p1 @@ -331,18 +280,13 @@ cp -p %{SOURCE2} bootstrap.sh # work around linking issues echo 'libthrift_c_glib_la_LIBADD = $(GLIB_LIBS) $(GOBJECT_LIBS) -L../cpp/.libs ' >> lib/c_glib/Makefile.am -echo 'libthriftqt_la_LIBADD = $(QT_LIBS) -lthrift -L.libs' >> lib/cpp/Makefile.am +echo 'libthriftqt5_la_LIBADD = $(QT_LIBS) -lthrift -L.libs' >> lib/cpp/Makefile.am echo 'libthriftz_la_LIBADD = $(ZLIB_LIBS) -lthrift -L.libs' >> lib/cpp/Makefile.am echo 'EXTRA_libthriftqt_la_DEPENDENCIES = libthrift.la' >> lib/cpp/Makefile.am echo 'EXTRA_libthriftz_la_DEPENDENCIES = libthrift.la' >> lib/cpp/Makefile.am -# echo 'libfb303_so_LIBADD = -lthrift -L../../../lib/cpp/.libs' >> contrib/fb303/cpp/Makefile.am - -sed -i 's|libfb303_so_LDFLAGS = $(SHARED_LDFLAGS)|libfb303_so_LDFLAGS = $(SHARED_LDFLAGS) -lthrift -L../../../lib/cpp/.libs -Wl,--as-needed|g' contrib/fb303/cpp/Makefile.am - # fix broken upstream check for ant version; we enforce this with BuildRequires, so no need to check here sed -i 's|ANT_VALID=.*|ANT_VALID=1|' aclocal/ax_javac_and_java.m4 -sed -i 's|ANT_VALID=.*|ANT_VALID=1|' contrib/fb303/aclocal/ax_javac_and_java.m4 # explicitly set python3 shopt -s globstar @@ -366,56 +310,22 @@ find . -name Makefile\* -exec sed -i -e 's/[.][/]rebar/rebar/g' {} \; sed -i 's|-Dinstall.javadoc.path=$(DESTDIR)$(docdir)/java|-Dinstall.javadoc.path=$(DESTDIR)%{_javadocdir}/%{name}|' lib/java/Makefile.* # build a jar without a version number -sed -i 's|${thrift.artifactid}-${version}|${thrift.artifactid}|' lib/java/build.xml +#sed -i 's|${thrift.artifactid}-${version}|${thrift.artifactid}|' lib/java/build.xml # Proper permissions for Erlang files sed -i 's|$(INSTALL) $$p|$(INSTALL) --mode 644 $$p|g' lib/erl/Makefile.am -# Build fb303 jars against the in-situ copy of thrift -sed -i 's|$(thrift_home)/bin/thrift|../../../compiler/cpp/thrift|g' \ - contrib/fb303/cpp/Makefile.am \ - contrib/fb303/py/Makefile.am - -sed -i 's|$(prefix)/lib$|%{_libdir}|g' contrib/fb303/cpp/Makefile.am - -sed -i 's|$(thrift_home)/include/thrift|../../../lib/cpp/src|g' \ - contrib/fb303/cpp/Makefile.am - -# Create a straightforward makefile for Java fb303 -echo "all: - ant -install: build/libfb303.jar - mkdir -p %{buildroot}%{_javadir} - /usr/bin/install -c -m 644 build/libfb303.jar %{buildroot}%{_javadir} -" > contrib/fb303/java/Makefile - 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 %{java_configure} %{ruby_configure} %{erlang_configure} %{golang_configure} %{php_configure} --with-py3 --docdir=%{?_pkgdocdir}%{!?_pkgdocdir:%{_docdir}/%{name}-%{version}} +%configure --disable-dependency-tracking --disable-static --with-boost=/usr %{java_configure} %{ruby_configure} %{erlang_configure} %{golang_configure} %{php_configure} --docdir=%{?_pkgdocdir}%{!?_pkgdocdir:%{_docdir}/%{name}-%{version}} # eliminate unused direct shlib dependencies sed -i -e 's/ -shared / -Wl,--as-needed\0/g' libtool make %{?_smp_mflags} -# build fb303 -( - cd contrib/fb303 - sed -i '/^[.][/]configure.*/d' bootstrap.sh - sh bootstrap.sh - %configure --disable-static %{java_configure} --without-php --with-py3 --libdir=%{_libdir} - make %{?_smp_mflags} -) - -# build fb303 java -%if 0%{?want_java} > 0 -( - cd contrib/fb303/java - ant dist -) -%endif %install %make_install @@ -452,23 +362,6 @@ mv %{buildroot}/%{php_extdir}/Thrift %{buildroot}/%{_datadir}/php/ # Fix permissions on Thread.h find %{buildroot} -name Thread.h -exec chmod a-x '{}' \; -# install fb303 -( - cd contrib/fb303 - make DESTDIR=%{buildroot} install -) - -# install fb303 java -%if 0%{?want_java} > 0 -( - cd contrib/fb303/java - ant -Dinstall.path=%{buildroot}%{_javadir} -Dinstall.javadoc.path=%{buildroot}%{_javadocdir}/fb303 install -) -# install maven pom and depmaps for fb303 -install -pm 644 %{SOURCE3} %{buildroot}%{_mavenpomdir}/JPP-libfb303.pom -%add_maven_depmap JPP-libfb303.pom libfb303.jar -f "fb303" -%endif - # Ensure all python scripts are executable find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r chmod 755 @@ -486,19 +379,17 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %{_libdir}/libthrift_c_glib.so.* %files qt -%{_libdir}/libthriftqt.so -%{_libdir}/libthriftqt-%{version}.so +%{_libdir}/libthriftqt5.so +%{_libdir}/libthriftqt5-%{version}.so %files devel %{_includedir}/thrift -%exclude %{_includedir}/thrift/fb303 %{_libdir}/*.so %{_libdir}/*.so.0 %{_libdir}/*.so.0.0.0 %exclude %{_libdir}/lib*-%{version}.so -%exclude %{_libdir}/libfb303.so %{_libdir}/pkgconfig/thrift-z.pc -%{_libdir}/pkgconfig/thrift-qt.pc +%{_libdir}/pkgconfig/thrift-qt5.pc %{_libdir}/pkgconfig/thrift-nb.pc %{_libdir}/pkgconfig/thrift.pc %{_libdir}/pkgconfig/thrift_c_glib.pc @@ -537,27 +428,13 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %doc LICENSE NOTICE %endif -%files -n fb303 -%{_datarootdir}/fb303 -%doc LICENSE NOTICE - -%files -n fb303-devel -%{_libdir}/libfb303.so -%{_includedir}/thrift/fb303 -%doc LICENSE NOTICE - -%files -n python3-fb303 -%{python3_sitelib}/fb303 -%{python3_sitelib}/fb303_scripts -%{python3_sitelib}/%{name}_fb303-%{version}-py%{python3_version}.egg-info -%doc LICENSE NOTICE - -%if 0%{?want_java} > 0 -%files -n fb303-java -f .mfiles-fb303 -%doc LICENSE NOTICE -%endif %changelog +* Sun Dec 1 Orion Poplawski - 0.13.0-1 +- Update to 0.13.0 (bz#1778343) +- Drops fb303 package +- Switch to Qt5 + * Thu Oct 03 2019 Miro Hrončok - 0.10.0-20 - Rebuilt for Python 3.8.0rc1 (#1748018) From 7b110fb2151c362ed0e8fc4bd206899354062f31 Mon Sep 17 00:00:00 2001 From: Orion Poplawski Date: Mon, 2 Dec 2019 21:48:03 -0700 Subject: [PATCH 56/97] Fix changelog date --- thrift.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index d42fbde..c271677 100644 --- a/thrift.spec +++ b/thrift.spec @@ -430,7 +430,7 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog -* Sun Dec 1 Orion Poplawski - 0.13.0-1 +* Sun Dec 1 2019 Orion Poplawski - 0.13.0-1 - Update to 0.13.0 (bz#1778343) - Drops fb303 package - Switch to Qt5 From 2181c09e6ffcdc81a90c9c00759aa04578cc9cf8 Mon Sep 17 00:00:00 2001 From: Orion Poplawski Date: Mon, 2 Dec 2019 21:51:01 -0700 Subject: [PATCH 57/97] Update pom --- libthrift-0.10.0.pom | 120 ------------------------------------------- libthrift-0.13.0.pom | 80 +++++++++++++++++++++++++++++ 2 files changed, 80 insertions(+), 120 deletions(-) delete mode 100644 libthrift-0.10.0.pom create mode 100644 libthrift-0.13.0.pom diff --git a/libthrift-0.10.0.pom b/libthrift-0.10.0.pom deleted file mode 100644 index 7c5f61d..0000000 --- a/libthrift-0.10.0.pom +++ /dev/null @@ -1,120 +0,0 @@ - - - 4.0.0 - org.apache.thrift - libthrift - 0.10.0 - pom - Apache Thrift - Thrift is a software framework for scalable cross-language services development. - http://thrift.apache.org - - - The Apache Software License, Version 2.0 - http://www.apache.org/licenses/LICENSE-2.0.txt - - - - - mcslee - Mark Slee - - - dreiss - David Reiss - - - aditya - Aditya Agarwal - - - marck - Marc Kwiatkowski - - - jwang - James Wang - - - cpiro - Chris Piro - - - bmaurer - Ben Maurer - - - kclark - Kevin Clark - - - jake - Jake Luciani - - - bryanduxbury - Bryan Duxbury - - - esteve - Esteve Fernandez - - - todd - Todd Lipcon - - - geechorama - Andrew McGeachie - - - molinaro - Anthony Molinaro - - - roger - Roger Meier - - - jfarrell - Jake Farrell - - - jensg - Jens Geyer - - - carl - Carl Yeksigian - - - - scm:git:https://git-wip-us.apache.org/repos/asf/thrift.git - scm:git:https://git-wip-us.apache.org/repos/asf/thrift.git - https://git-wip-us.apache.org/repos/asf?p=thrift.git - - - - org.slf4j - slf4j-api - 1.7.12 - - - javax.servlet - servlet-api - 2.5 - provided - - - org.apache.httpcomponents - httpclient - 4.4.1 - - - org.apache.httpcomponents - httpcore - 4.4.1 - - - diff --git a/libthrift-0.13.0.pom b/libthrift-0.13.0.pom new file mode 100644 index 0000000..fdef4fa --- /dev/null +++ b/libthrift-0.13.0.pom @@ -0,0 +1,80 @@ + + + 4.0.0 + org.apache.thrift + libthrift + 0.13.0 + Apache Thrift + Thrift is a software framework for scalable cross-language services development. + http://thrift.apache.org + + + The Apache Software License, Version 2.0 + http://www.apache.org/licenses/LICENSE-2.0.txt + repo + + + + + dev + Apache Thrift Developers + dev@thrift.apache.org + + + + scm:git:https://github.com/apache/thrift.git + scm:git:git@github.com:apache/thrift.git + https://github.com/apache/thrift + + + + org.slf4j + slf4j-api + 1.7.25 + compile + + + org.apache.httpcomponents + httpclient + 4.5.6 + compile + + + org.apache.httpcomponents + httpcore + 4.4.1 + compile + + + javax.servlet + servlet-api + 2.5 + provided + + + javax.annotation + javax.annotation-api + 1.3.2 + compile + + + junit + junit + 4.12 + test + + + org.mockito + mockito-all + 1.9.5 + test + + + org.slf4j + slf4j-log4j12 + 1.7.25 + test + + + From 68dbcde685275bc078434ab250db88f87b525bfd Mon Sep 17 00:00:00 2001 From: Orion Poplawski Date: Mon, 2 Dec 2019 21:57:10 -0700 Subject: [PATCH 58/97] One more qt -> qt5 change --- thrift.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index c271677..7cdebcd 100644 --- a/thrift.spec +++ b/thrift.spec @@ -282,7 +282,7 @@ cp -p %{SOURCE2} bootstrap.sh echo 'libthrift_c_glib_la_LIBADD = $(GLIB_LIBS) $(GOBJECT_LIBS) -L../cpp/.libs ' >> lib/c_glib/Makefile.am echo 'libthriftqt5_la_LIBADD = $(QT_LIBS) -lthrift -L.libs' >> lib/cpp/Makefile.am echo 'libthriftz_la_LIBADD = $(ZLIB_LIBS) -lthrift -L.libs' >> lib/cpp/Makefile.am -echo 'EXTRA_libthriftqt_la_DEPENDENCIES = libthrift.la' >> lib/cpp/Makefile.am +echo 'EXTRA_libthriftqt5_la_DEPENDENCIES = libthrift.la' >> lib/cpp/Makefile.am echo 'EXTRA_libthriftz_la_DEPENDENCIES = libthrift.la' >> lib/cpp/Makefile.am # fix broken upstream check for ant version; we enforce this with BuildRequires, so no need to check here From 4f8d42901cd7f4ea393cff015fa58c92bfebb12d Mon Sep 17 00:00:00 2001 From: Orion Poplawski Date: Wed, 4 Dec 2019 20:49:42 -0700 Subject: [PATCH 59/97] Fix perl dependencies Explicitly disable lua --- thrift.spec | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/thrift.spec b/thrift.spec index 7cdebcd..aa9a779 100644 --- a/thrift.spec +++ b/thrift.spec @@ -57,9 +57,15 @@ %global want_golang 0 %global golang_configure --without-go +# Thrift's Lua support has not yet been worked on +%global want_lua 0 +%global lua_configure --without-lua + +# 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.13.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -175,6 +181,11 @@ Requires: perl(constant) Requires: perl(strict) Requires: perl(utf8) Requires: perl(warnings) +# thrift improperly packages some components in files with names different +# than the package they contain +Provides: perl(Thrift::Exception) +Provides: perl(Thrift::MessageType) +Provides: perl(Thrift::Type) BuildArch: noarch %description -n perl-%{name} @@ -319,7 +330,9 @@ 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 %{java_configure} %{ruby_configure} %{erlang_configure} %{golang_configure} %{php_configure} --docdir=%{?_pkgdocdir}%{!?_pkgdocdir:%{_docdir}/%{name}-%{version}} +%configure --disable-dependency-tracking --disable-static --with-boost=/usr \ + --docdir=%{?_pkgdocdir}%{!?_pkgdocdir:%{_docdir}/%{name}-%{version}} \ + %{java_configure} %{ruby_configure} %{erlang_configure} %{golang_configure} %{php_configure} %{lua_configure} # eliminate unused direct shlib dependencies sed -i -e 's/ -shared / -Wl,--as-needed\0/g' libtool @@ -430,6 +443,10 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Wed Dec 4 2019 Orion Poplawski - 0.13.0-2 +- Fix perl dependencies +- Explicitly disable lua + * Sun Dec 1 2019 Orion Poplawski - 0.13.0-1 - Update to 0.13.0 (bz#1778343) - Drops fb303 package From 73b2bcebf7fb9e4f4982db049ce8e872bd1e675f Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 31 Jan 2020 01:30:12 +0000 Subject: [PATCH 60/97] - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index aa9a779..c43c99d 100644 --- a/thrift.spec +++ b/thrift.spec @@ -65,7 +65,7 @@ # change is a SONAME change and dependencies need to be rebuilt Name: thrift Version: 0.13.0 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -443,6 +443,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Fri Jan 31 2020 Fedora Release Engineering - 0.13.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + * Wed Dec 4 2019 Orion Poplawski - 0.13.0-2 - Fix perl dependencies - Explicitly disable lua From a78384718c32db5404e35b7947decfa5bd98ff35 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Tue, 26 May 2020 03:51:54 +0200 Subject: [PATCH 61/97] Rebuilt for Python 3.9 --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index c43c99d..ccce965 100644 --- a/thrift.spec +++ b/thrift.spec @@ -65,7 +65,7 @@ # change is a SONAME change and dependencies need to be rebuilt Name: thrift Version: 0.13.0 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -443,6 +443,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Tue May 26 2020 Miro Hrončok - 0.13.0-4 +- Rebuilt for Python 3.9 + * Fri Jan 31 2020 Fedora Release Engineering - 0.13.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild From 2567e0e7918e6661a9c7235cc8d2b1ddacecdb52 Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Tue, 23 Jun 2020 11:39:46 +0200 Subject: [PATCH 62/97] Perl 5.32 rebuild --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index ccce965..8957c0a 100644 --- a/thrift.spec +++ b/thrift.spec @@ -65,7 +65,7 @@ # change is a SONAME change and dependencies need to be rebuilt Name: thrift Version: 0.13.0 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -443,6 +443,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Tue Jun 23 2020 Jitka Plesnikova - 0.13.0-5 +- Perl 5.32 rebuild + * Tue May 26 2020 Miro Hrončok - 0.13.0-4 - Rebuilt for Python 3.9 From fa2b09f6459bcd4bc3c6617a468bc9cd9e689834 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 29 Jul 2020 12:26:26 +0000 Subject: [PATCH 63/97] - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 8957c0a..cff0608 100644 --- a/thrift.spec +++ b/thrift.spec @@ -65,7 +65,7 @@ # change is a SONAME change and dependencies need to be rebuilt Name: thrift Version: 0.13.0 -Release: 5%{?dist} +Release: 6%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -443,6 +443,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Wed Jul 29 2020 Fedora Release Engineering - 0.13.0-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + * Tue Jun 23 2020 Jitka Plesnikova - 0.13.0-5 - Perl 5.32 rebuild From eddb9dc7305bf242ee477c19835cf93325ceb174 Mon Sep 17 00:00:00 2001 From: Orion Poplawski Date: Thu, 17 Sep 2020 21:04:16 -0600 Subject: [PATCH 64/97] Drop unneeded BR on flex-devel (bz#1871095) --- thrift.spec | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/thrift.spec b/thrift.spec index cff0608..64bd3e5 100644 --- a/thrift.spec +++ b/thrift.spec @@ -65,7 +65,7 @@ # change is a SONAME change and dependencies need to be rebuilt Name: thrift Version: 0.13.0 -Release: 6%{?dist} +Release: 7%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -102,7 +102,6 @@ BuildRequires: bison BuildRequires: boost-devel BuildRequires: boost-static BuildRequires: flex -BuildRequires: flex-devel BuildRequires: gcc-c++ BuildRequires: glib2-devel BuildRequires: libevent-devel @@ -443,6 +442,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Thu Sep 17 2020 Orion Poplawski - 0.13.0-7 +- Drop unneeded BR on flex-devel (bz#1871095) + * Wed Jul 29 2020 Fedora Release Engineering - 0.13.0-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild From f37407955c85ed5ed9b2508252b92d6075a90a2a Mon Sep 17 00:00:00 2001 From: Christopher Tubbs Date: Wed, 23 Sep 2020 09:07:32 -0400 Subject: [PATCH 65/97] rebuilt for side tag f34-build-side-30069 --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 64bd3e5..76ef633 100644 --- a/thrift.spec +++ b/thrift.spec @@ -65,7 +65,7 @@ # change is a SONAME change and dependencies need to be rebuilt Name: thrift Version: 0.13.0 -Release: 7%{?dist} +Release: 8%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -442,6 +442,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Wed Sep 23 2020 Christopher Tubbs - 0.13.0-8 +- rebuilt for side tag f34-build-side-30069 + * Thu Sep 17 2020 Orion Poplawski - 0.13.0-7 - Drop unneeded BR on flex-devel (bz#1871095) From c7836e8a6061e07a329f2fbff63b0a83c6c12402 Mon Sep 17 00:00:00 2001 From: Orion Poplawski Date: Mon, 5 Oct 2020 19:44:17 -0600 Subject: [PATCH 66/97] Add BR python3-setuptools --- thrift.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 76ef633..8fa49fa 100644 --- a/thrift.spec +++ b/thrift.spec @@ -65,7 +65,7 @@ # change is a SONAME change and dependencies need to be rebuilt Name: thrift Version: 0.13.0 -Release: 8%{?dist} +Release: 9%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -151,6 +151,7 @@ The %{name}-qt package contains GLib bindings for %{name}. %package -n python3-%{name} Summary: Python 3 support for %{name} BuildRequires: python3-devel +BuildRequires: python3-setuptools Requires: %{name}%{?_isa} = %{version}-%{release} Requires: python3 Obsoletes: python-%{name} < 0.10.0-1%{?dist} @@ -442,6 +443,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Mon Oct 05 2020 Orion Poplawski - 0.13.0-9 +- Add BR python3-setuptools + * Wed Sep 23 2020 Christopher Tubbs - 0.13.0-8 - rebuilt for side tag f34-build-side-30069 From a39efdcfc334030e9c9649b61e6f050762cec375 Mon Sep 17 00:00:00 2001 From: Tom Stellard Date: Tue, 12 Jan 2021 00:47:02 +0000 Subject: [PATCH 67/97] Add BuildRequires: make https://fedoraproject.org/wiki/Changes/Remove_make_from_BuildRoot --- thrift.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/thrift.spec b/thrift.spec index 8fa49fa..1c40587 100644 --- a/thrift.spec +++ b/thrift.spec @@ -96,6 +96,7 @@ Patch2: configure-java-prefix.patch %if 0%{?want_java} > 0 BuildRequires: ant >= 1.7 %endif +BuildRequires: make BuildRequires: autoconf BuildRequires: automake BuildRequires: bison From 8b82732945b1f2789009c115e2429ff2819231de Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 27 Jan 2021 21:54:29 +0000 Subject: [PATCH 68/97] - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 1c40587..4d71dd8 100644 --- a/thrift.spec +++ b/thrift.spec @@ -65,7 +65,7 @@ # change is a SONAME change and dependencies need to be rebuilt Name: thrift Version: 0.13.0 -Release: 9%{?dist} +Release: 10%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -444,6 +444,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Wed Jan 27 2021 Fedora Release Engineering - 0.13.0-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + * Mon Oct 05 2020 Orion Poplawski - 0.13.0-9 - Add BR python3-setuptools From 2e9246ff7fcf8303ef870a57cfddd6ce3e5e0473 Mon Sep 17 00:00:00 2001 From: Orion Poplawski Date: Mon, 15 Feb 2021 08:19:27 -0700 Subject: [PATCH 69/97] Update to 0.14.0 (bz#1928172) CVE-2020-13949 --- .gitignore | 1 + libthrift-0.13.0.pom => libthrift-0.14.0.pom | 2 +- sources | 2 +- thrift.spec | 9 ++++++--- 4 files changed, 9 insertions(+), 5 deletions(-) rename libthrift-0.13.0.pom => libthrift-0.14.0.pom (98%) diff --git a/.gitignore b/.gitignore index 618bab6..bd50136 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ /0.9.1.tar.gz /thrift-0.10.0.tar.gz /thrift-0.13.0.tar.gz +/thrift-0.14.0.tar.gz diff --git a/libthrift-0.13.0.pom b/libthrift-0.14.0.pom similarity index 98% rename from libthrift-0.13.0.pom rename to libthrift-0.14.0.pom index fdef4fa..31d44de 100644 --- a/libthrift-0.13.0.pom +++ b/libthrift-0.14.0.pom @@ -4,7 +4,7 @@ 4.0.0 org.apache.thrift libthrift - 0.13.0 + 0.14.0 Apache Thrift Thrift is a software framework for scalable cross-language services development. http://thrift.apache.org diff --git a/sources b/sources index 63b1dcc..d140fab 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (thrift-0.13.0.tar.gz) = 5f7426d1e429ead20dd366f63a6d619071eccc17dc0395738307eef507b703733d029147fb596c4d392d31dc822777ea2a0be709f1f677b1221c9335cfcb09b7 +SHA512 (thrift-0.14.0.tar.gz) = 4bf1c9f8f7eeb75c5d70f14657d530a574002846266668c56c1153c6820e6ba199bb462893505cb8cfb7a4cc481b11a4fe84d0d26a3279424c5948f45fa8ce3f diff --git a/thrift.spec b/thrift.spec index 4d71dd8..32ab8b9 100644 --- a/thrift.spec +++ b/thrift.spec @@ -64,8 +64,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.13.0 -Release: 10%{?dist} +Version: 0.14.0 +Release: 1%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -338,7 +338,7 @@ export PYTHON=%{_bindir}/python3 # eliminate unused direct shlib dependencies sed -i -e 's/ -shared / -Wl,--as-needed\0/g' libtool -make %{?_smp_mflags} +%make_build %install @@ -444,6 +444,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Mon Feb 15 2021 Orion Poplawski - 0.14.0-1 +- Update to 0.14.0 (bz#1928172) CVE-2020-13949 + * Wed Jan 27 2021 Fedora Release Engineering - 0.13.0-10 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild From 4de2b22333c9938e7281175b164d7a6e06ddcd99 Mon Sep 17 00:00:00 2001 From: Orion Poplawski Date: Wed, 17 Feb 2021 18:50:01 -0700 Subject: [PATCH 70/97] Add patch to fix compilation on non-x86 --- thrift-char.patch | 13 +++++++++++++ thrift.spec | 10 +++++++--- 2 files changed, 20 insertions(+), 3 deletions(-) create mode 100644 thrift-char.patch diff --git a/thrift-char.patch b/thrift-char.patch new file mode 100644 index 0000000..3004d36 --- /dev/null +++ b/thrift-char.patch @@ -0,0 +1,13 @@ +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 == '\'') { diff --git a/thrift.spec b/thrift.spec index 32ab8b9..a9f4b97 100644 --- a/thrift.spec +++ b/thrift.spec @@ -65,7 +65,7 @@ # change is a SONAME change and dependencies need to be rebuilt Name: thrift Version: 0.14.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -83,8 +83,9 @@ 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 -# this patch is adapted from Gil Cattaneo's thrift-0.7.0 package -#Patch0: %{name}-%{version}-buildxml.patch +# 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 @@ -444,6 +445,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Thu Feb 18 2021 Orion Poplawski - 0.14.0-2 +- Add patch to fix compilation on non-x86 + * Mon Feb 15 2021 Orion Poplawski - 0.14.0-1 - Update to 0.14.0 (bz#1928172) CVE-2020-13949 From a5abe5fb6fff21c61554fd1ad8e83d17424573af Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Sun, 23 May 2021 02:21:08 +0200 Subject: [PATCH 71/97] Perl 5.34 rebuild --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index a9f4b97..335da2d 100644 --- a/thrift.spec +++ b/thrift.spec @@ -65,7 +65,7 @@ # change is a SONAME change and dependencies need to be rebuilt Name: thrift Version: 0.14.0 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -445,6 +445,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Sun May 23 2021 Jitka Plesnikova - 0.14.0-3 +- Perl 5.34 rebuild + * Thu Feb 18 2021 Orion Poplawski - 0.14.0-2 - Add patch to fix compilation on non-x86 From 6888753b89c6409cc2c415447cdd71d6d630b139 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Fri, 4 Jun 2021 21:16:37 +0200 Subject: [PATCH 72/97] Rebuilt for Python 3.10 --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 335da2d..5f8d346 100644 --- a/thrift.spec +++ b/thrift.spec @@ -65,7 +65,7 @@ # change is a SONAME change and dependencies need to be rebuilt Name: thrift Version: 0.14.0 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -445,6 +445,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Fri Jun 04 2021 Python Maint - 0.14.0-4 +- Rebuilt for Python 3.10 + * Sun May 23 2021 Jitka Plesnikova - 0.14.0-3 - Perl 5.34 rebuild From a7ff3c27c982e1d6f5ce8a3509260b8fbcdfadb9 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 23 Jul 2021 19:12:48 +0000 Subject: [PATCH 73/97] - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 5f8d346..15b73db 100644 --- a/thrift.spec +++ b/thrift.spec @@ -65,7 +65,7 @@ # change is a SONAME change and dependencies need to be rebuilt Name: thrift Version: 0.14.0 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -445,6 +445,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Fri Jul 23 2021 Fedora Release Engineering - 0.14.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + * Fri Jun 04 2021 Python Maint - 0.14.0-4 - Rebuilt for Python 3.10 From 45924cc4835096de2056e7c3924ca1779e98aa68 Mon Sep 17 00:00:00 2001 From: Sahana Prasad Date: Tue, 14 Sep 2021 19:16:31 +0200 Subject: [PATCH 74/97] Rebuilt with OpenSSL 3.0.0 --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 15b73db..c4c9642 100644 --- a/thrift.spec +++ b/thrift.spec @@ -65,7 +65,7 @@ # change is a SONAME change and dependencies need to be rebuilt Name: thrift Version: 0.14.0 -Release: 5%{?dist} +Release: 6%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -445,6 +445,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Tue Sep 14 2021 Sahana Prasad - 0.14.0-6 +- Rebuilt with OpenSSL 3.0.0 + * Fri Jul 23 2021 Fedora Release Engineering - 0.14.0-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild From 809f46c8100ad8d86383856112b5152fd5989690 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 22 Jan 2022 02:39:12 +0000 Subject: [PATCH 75/97] - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index c4c9642..7fdaa05 100644 --- a/thrift.spec +++ b/thrift.spec @@ -65,7 +65,7 @@ # change is a SONAME change and dependencies need to be rebuilt Name: thrift Version: 0.14.0 -Release: 6%{?dist} +Release: 7%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -445,6 +445,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Sat Jan 22 2022 Fedora Release Engineering - 0.14.0-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + * Tue Sep 14 2021 Sahana Prasad - 0.14.0-6 - Rebuilt with OpenSSL 3.0.0 From c03542a9b14d95b3b520b9fafa744b3d4796b11d Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Wed, 1 Jun 2022 08:27:44 +0200 Subject: [PATCH 76/97] Perl 5.36 rebuild --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 7fdaa05..d27b6a3 100644 --- a/thrift.spec +++ b/thrift.spec @@ -65,7 +65,7 @@ # change is a SONAME change and dependencies need to be rebuilt Name: thrift Version: 0.14.0 -Release: 7%{?dist} +Release: 8%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -445,6 +445,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Wed Jun 01 2022 Jitka Plesnikova - 0.14.0-8 +- Perl 5.36 rebuild + * Sat Jan 22 2022 Fedora Release Engineering - 0.14.0-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild From 634e406a86a4c387bed3674a6d0cc63db0aabb7e Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Tue, 24 May 2022 10:05:13 -0400 Subject: [PATCH 77/97] Work around GCC 12 error by disabling LTO (close RHBZ#2046213) --- thrift.spec | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index d27b6a3..74a0fb0 100644 --- a/thrift.spec +++ b/thrift.spec @@ -1,3 +1,14 @@ +# thrift: FTBFS in Fedora 36: /usr/include/c++/12/bits/new_allocator.h:158:33: +# error: 'operator delete' called on pointer '_605' with nonzero offset [1, +# 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") %{?perl_default_filter} @@ -65,7 +76,7 @@ # change is a SONAME change and dependencies need to be rebuilt Name: thrift Version: 0.14.0 -Release: 8%{?dist} +Release: 9%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -445,6 +456,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Tue Jun 07 2022 Benjamin A. Beasley - 0.14.0-9 +- Work around GCC 12 error by disabling LTO (close RHBZ#2046213) + * Wed Jun 01 2022 Jitka Plesnikova - 0.14.0-8 - Perl 5.36 rebuild From a065d791744648b779e8e55c15db1535100f0880 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Mon, 13 Jun 2022 19:54:14 +0200 Subject: [PATCH 78/97] Rebuilt for Python 3.11 --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 74a0fb0..949f66a 100644 --- a/thrift.spec +++ b/thrift.spec @@ -76,7 +76,7 @@ # change is a SONAME change and dependencies need to be rebuilt Name: thrift Version: 0.14.0 -Release: 9%{?dist} +Release: 10%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -456,6 +456,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Mon Jun 13 2022 Python Maint - 0.14.0-10 +- Rebuilt for Python 3.11 + * Tue Jun 07 2022 Benjamin A. Beasley - 0.14.0-9 - Work around GCC 12 error by disabling LTO (close RHBZ#2046213) From a9d14cfc623e9f918fb6c894148cd98e360491d7 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 23 Jul 2022 10:26:05 +0000 Subject: [PATCH 79/97] Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 949f66a..9cd8ef3 100644 --- a/thrift.spec +++ b/thrift.spec @@ -76,7 +76,7 @@ # change is a SONAME change and dependencies need to be rebuilt Name: thrift Version: 0.14.0 -Release: 10%{?dist} +Release: 11%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -456,6 +456,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Sat Jul 23 2022 Fedora Release Engineering - 0.14.0-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + * Mon Jun 13 2022 Python Maint - 0.14.0-10 - Rebuilt for Python 3.11 From c5f5a28be91367fa88b9dd934ecfa6d73ac522d8 Mon Sep 17 00:00:00 2001 From: Christopher Tubbs Date: Fri, 18 Nov 2022 11:16:37 -0500 Subject: [PATCH 80/97] Convert license tags to SPDX --- thrift.spec | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/thrift.spec b/thrift.spec index 9cd8ef3..dec44d8 100644 --- a/thrift.spec +++ b/thrift.spec @@ -76,7 +76,7 @@ # change is a SONAME change and dependencies need to be rebuilt Name: thrift Version: 0.14.0 -Release: 11%{?dist} +Release: 12%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -86,7 +86,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 @@ -383,7 +383,7 @@ mv %{buildroot}/usr/lib/perl5/* %{buildroot}/%{perl_vendorlib} # 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 +456,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Fri Nov 18 2022 Christopher Tubbs - 0.14.0-12 +- Convert license tags to SPDX + * Sat Jul 23 2022 Fedora Release Engineering - 0.14.0-11 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild From 3c63baeede70d2318f496ce92cb365a4ba6bd327 Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Fri, 13 Jan 2023 21:16:43 +0100 Subject: [PATCH 81/97] Remove perl(MODULE_COMPAT), it will be replaced by generators --- thrift.spec | 1 - 1 file changed, 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index dec44d8..e68e2e9 100644 --- a/thrift.spec +++ b/thrift.spec @@ -180,7 +180,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) From 2e71c67eeed001e3113094c0f49f867b9518e584 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 21 Jan 2023 05:00:18 +0000 Subject: [PATCH 82/97] Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index e68e2e9..a87cf3b 100644 --- a/thrift.spec +++ b/thrift.spec @@ -76,7 +76,7 @@ # change is a SONAME change and dependencies need to be rebuilt Name: thrift Version: 0.14.0 -Release: 12%{?dist} +Release: 13%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -455,6 +455,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Sat Jan 21 2023 Fedora Release Engineering - 0.14.0-13 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + * Fri Nov 18 2022 Christopher Tubbs - 0.14.0-12 - Convert license tags to SPDX From f9e02420c81bff9cdb46b00361a9ff55d36fbeb8 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Tue, 13 Jun 2023 23:29:33 +0200 Subject: [PATCH 83/97] Rebuilt for Python 3.12 --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index a87cf3b..ca1c5d9 100644 --- a/thrift.spec +++ b/thrift.spec @@ -76,7 +76,7 @@ # change is a SONAME change and dependencies need to be rebuilt Name: thrift Version: 0.14.0 -Release: 13%{?dist} +Release: 14%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -455,6 +455,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Tue Jun 13 2023 Python Maint - 0.14.0-14 +- Rebuilt for Python 3.12 + * Sat Jan 21 2023 Fedora Release Engineering - 0.14.0-13 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild From 7543be71062232f1927822fa295685693dc6eb0b Mon Sep 17 00:00:00 2001 From: Orion Poplawski Date: Mon, 16 Jan 2023 20:46:24 -0700 Subject: [PATCH 84/97] Update to 0.15.0 --- .gitignore | 1 + libthrift-0.14.0.pom => libthrift-0.15.0.pom | 18 +++++++++--------- sources | 2 +- thrift-char.patch | 13 ------------- thrift.spec | 10 +++++----- 5 files changed, 16 insertions(+), 28 deletions(-) rename libthrift-0.14.0.pom => libthrift-0.15.0.pom (87%) delete mode 100644 thrift-char.patch diff --git a/.gitignore b/.gitignore index bd50136..7f5d81c 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ /thrift-0.10.0.tar.gz /thrift-0.13.0.tar.gz /thrift-0.14.0.tar.gz +/thrift-0.15.0.tar.gz diff --git a/libthrift-0.14.0.pom b/libthrift-0.15.0.pom similarity index 87% rename from libthrift-0.14.0.pom rename to libthrift-0.15.0.pom index 31d44de..26547ce 100644 --- a/libthrift-0.14.0.pom +++ b/libthrift-0.15.0.pom @@ -4,14 +4,14 @@ 4.0.0 org.apache.thrift libthrift - 0.14.0 + 0.15.0 Apache Thrift Thrift is a software framework for scalable cross-language services development. http://thrift.apache.org The Apache Software License, Version 2.0 - http://www.apache.org/licenses/LICENSE-2.0.txt + https://www.apache.org/licenses/LICENSE-2.0.txt repo @@ -31,25 +31,25 @@ org.slf4j slf4j-api - 1.7.25 + 1.7.28 compile org.apache.httpcomponents httpclient - 4.5.6 + 4.5.10 compile org.apache.httpcomponents httpcore - 4.4.1 + 4.4.12 compile javax.servlet - servlet-api - 2.5 + javax.servlet-api + 4.0.1 provided @@ -67,13 +67,13 @@ org.mockito mockito-all - 1.9.5 + 1.10.19 test org.slf4j slf4j-log4j12 - 1.7.25 + 1.7.28 test diff --git a/sources b/sources index d140fab..38878fe 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (thrift-0.14.0.tar.gz) = 4bf1c9f8f7eeb75c5d70f14657d530a574002846266668c56c1153c6820e6ba199bb462893505cb8cfb7a4cc481b11a4fe84d0d26a3279424c5948f45fa8ce3f +SHA512 (thrift-0.15.0.tar.gz) = 37e48d1872c85abc92ae86017f98bb092ac2b64e46be21ed6fa0b72d46cf956257efcc7db344b55aa9a70f9a9741d400081c1b78f1eb8d72c9e53a196f3e62ef diff --git a/thrift-char.patch b/thrift-char.patch deleted file mode 100644 index 3004d36..0000000 --- a/thrift-char.patch +++ /dev/null @@ -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 == '\'') { diff --git a/thrift.spec b/thrift.spec index ca1c5d9..2f12495 100644 --- a/thrift.spec +++ b/thrift.spec @@ -75,8 +75,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: 14%{?dist} +Version: 0.15.0 +Release: 1%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -94,9 +94,6 @@ 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 @@ -455,6 +452,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Thu Jun 15 2023 Orion Poplawski - 0.15.0-1 +- Update to 0.15.0 + * Tue Jun 13 2023 Python Maint - 0.14.0-14 - Rebuilt for Python 3.12 From acc001c47a556fbe1e3cfd0382ffd7a9b42a3449 Mon Sep 17 00:00:00 2001 From: Orion Poplawski Date: Fri, 16 Jun 2023 10:05:49 -0600 Subject: [PATCH 85/97] Re-enable LTO, seems to be working again --- thrift.spec | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/thrift.spec b/thrift.spec index 2f12495..d1039ff 100644 --- a/thrift.spec +++ b/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") @@ -76,7 +71,7 @@ # change is a SONAME change and dependencies need to be rebuilt Name: thrift Version: 0.15.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -452,6 +447,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Fri Jun 16 2023 Orion Poplawski - 0.15.0-2 +- Re-enable LTO, seems to be working again + * Thu Jun 15 2023 Orion Poplawski - 0.15.0-1 - Update to 0.15.0 From d89e43e7d6d0dd2badd65f40e0aa946011626eff Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 22 Jul 2023 16:16:56 +0000 Subject: [PATCH 86/97] Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index d1039ff..6cfd725 100644 --- a/thrift.spec +++ b/thrift.spec @@ -71,7 +71,7 @@ # change is a SONAME change and dependencies need to be rebuilt Name: thrift Version: 0.15.0 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -447,6 +447,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Sat Jul 22 2023 Fedora Release Engineering - 0.15.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + * Fri Jun 16 2023 Orion Poplawski - 0.15.0-2 - Re-enable LTO, seems to be working again From 4ced25563461549bbe1aa16d46b542470ed5d8b5 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 27 Jan 2024 06:04:56 +0000 Subject: [PATCH 87/97] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 6cfd725..b2c936d 100644 --- a/thrift.spec +++ b/thrift.spec @@ -71,7 +71,7 @@ # change is a SONAME change and dependencies need to be rebuilt Name: thrift Version: 0.15.0 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -447,6 +447,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Sat Jan 27 2024 Fedora Release Engineering - 0.15.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Sat Jul 22 2023 Fedora Release Engineering - 0.15.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild From dcddbdde35c248238760a2d81b987e8a19fb9be9 Mon Sep 17 00:00:00 2001 From: Yaakov Selkowitz Date: Thu, 16 May 2024 14:25:07 -0400 Subject: [PATCH 88/97] Fix flatpak build Python is part of the flatpak runtime and has its own macro to locate it. Boost is not part of the runtime and therefore ends up in the same prefix. Also, use %_prefix instead of /usr in the perl install fixups. --- thrift.spec | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/thrift.spec b/thrift.spec index b2c936d..f2cbc36 100644 --- a/thrift.spec +++ b/thrift.spec @@ -333,8 +333,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} @@ -365,9 +365,9 @@ 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 From 42d21678117cf792cb62383098c08476184e67bc Mon Sep 17 00:00:00 2001 From: Orion Poplawski Date: Thu, 16 May 2024 21:37:49 -0600 Subject: [PATCH 89/97] Update to 0.20.0 --- .gitignore | 1 + libthrift-0.15.0.pom => libthrift-0.20.0.pom | 65 +++++++++----------- sources | 2 +- thrift.spec | 7 ++- 4 files changed, 36 insertions(+), 39 deletions(-) rename libthrift-0.15.0.pom => libthrift-0.20.0.pom (51%) diff --git a/.gitignore b/.gitignore index 7f5d81c..2a688c5 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ /thrift-0.13.0.tar.gz /thrift-0.14.0.tar.gz /thrift-0.15.0.tar.gz +/thrift-0.20.0.tar.gz diff --git a/libthrift-0.15.0.pom b/libthrift-0.20.0.pom similarity index 51% rename from libthrift-0.15.0.pom rename to libthrift-0.20.0.pom index 26547ce..7cc8e43 100644 --- a/libthrift-0.15.0.pom +++ b/libthrift-0.20.0.pom @@ -1,10 +1,15 @@ - + + + + + 4.0.0 org.apache.thrift libthrift - 0.15.0 + 0.20.0 Apache Thrift Thrift is a software framework for scalable cross-language services development. http://thrift.apache.org @@ -31,50 +36,38 @@ org.slf4j slf4j-api - 1.7.28 - compile + 1.7.36 + runtime - org.apache.httpcomponents - httpclient - 4.5.10 - compile + org.apache.httpcomponents.client5 + httpclient5 + 5.2.1 + runtime - org.apache.httpcomponents - httpcore - 4.4.12 - compile + org.apache.httpcomponents.core5 + httpcore5 + 5.2 + runtime - javax.servlet - javax.servlet-api - 4.0.1 - provided + jakarta.servlet + jakarta.servlet-api + 5.0.0 + runtime - javax.annotation - javax.annotation-api - 1.3.2 - compile + jakarta.annotation + jakarta.annotation-api + 2.1.1 + runtime - junit - junit - 4.12 - test - - - org.mockito - mockito-all - 1.10.19 - test - - - org.slf4j - slf4j-log4j12 - 1.7.28 - test + org.apache.commons + commons-lang3 + 3.12.0 + runtime diff --git a/sources b/sources index 38878fe..458d2a6 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (thrift-0.15.0.tar.gz) = 37e48d1872c85abc92ae86017f98bb092ac2b64e46be21ed6fa0b72d46cf956257efcc7db344b55aa9a70f9a9741d400081c1b78f1eb8d72c9e53a196f3e62ef +SHA512 (thrift-0.20.0.tar.gz) = 8dc77f666e60141a6b3cf7ee1407b08a0e80d176f8ccfee69317d7df89ab87aea2c7b3ba3e59d4561835edf1ce23762443ad5aeed0099bf075b010853d5eb1cd diff --git a/thrift.spec b/thrift.spec index f2cbc36..9dcf33b 100644 --- a/thrift.spec +++ b/thrift.spec @@ -70,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.15.0 -Release: 4%{?dist} +Version: 0.20.0 +Release: 1%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -447,6 +447,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Fri May 17 2024 Orion Poplawski - 0.20.0-1 +- Update to 0.20.0 + * Sat Jan 27 2024 Fedora Release Engineering - 0.15.0-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 029eb5b076a5dfae522f219c6710c409b837c6e6 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Sat, 8 Jun 2024 22:34:18 +0200 Subject: [PATCH 90/97] Rebuilt for Python 3.13 --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 9dcf33b..ec7a354 100644 --- a/thrift.spec +++ b/thrift.spec @@ -71,7 +71,7 @@ # change is a SONAME change and dependencies need to be rebuilt Name: thrift Version: 0.20.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -447,6 +447,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Sat Jun 08 2024 Python Maint - 0.20.0-2 +- Rebuilt for Python 3.13 + * Fri May 17 2024 Orion Poplawski - 0.20.0-1 - Update to 0.20.0 From 5a6065456a1252ec2399b6c375d2304fd5ab7e36 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 20 Jul 2024 07:24:12 +0000 Subject: [PATCH 91/97] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index ec7a354..6b62f8b 100644 --- a/thrift.spec +++ b/thrift.spec @@ -71,7 +71,7 @@ # change is a SONAME change and dependencies need to be rebuilt Name: thrift Version: 0.20.0 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -447,6 +447,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Sat Jul 20 2024 Fedora Release Engineering - 0.20.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + * Sat Jun 08 2024 Python Maint - 0.20.0-2 - Rebuilt for Python 3.13 From 99d304634a8a0737c0fdf2e62495e2c15c9b3fcb Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sun, 19 Jan 2025 12:45:33 +0000 Subject: [PATCH 92/97] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 6b62f8b..2c4e7a1 100644 --- a/thrift.spec +++ b/thrift.spec @@ -71,7 +71,7 @@ # change is a SONAME change and dependencies need to be rebuilt Name: thrift Version: 0.20.0 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -447,6 +447,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Sun Jan 19 2025 Fedora Release Engineering - 0.20.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + * Sat Jul 20 2024 Fedora Release Engineering - 0.20.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From 2a9d5eb2dfe9b55c82cd621fbfd136e630bc8014 Mon Sep 17 00:00:00 2001 From: Yaakov Selkowitz Date: Tue, 18 Mar 2025 23:29:17 -0400 Subject: [PATCH 93/97] Fix build with GCC 15 https://github.com/apache/thrift/pull/3078 --- gcc15.patch | 47 +++++++++++++++++++++++++++++++++++++++++++++++ thrift.spec | 2 ++ 2 files changed, 49 insertions(+) create mode 100644 gcc15.patch diff --git a/gcc15.patch b/gcc15.patch new file mode 100644 index 0000000..2f3294c --- /dev/null +++ b/gcc15.patch @@ -0,0 +1,47 @@ +From 1920f04398ca32e320f6cf942534ba9d8b3231fd Mon Sep 17 00:00:00 2001 +From: Sutou Kouhei +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 ` 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 ''; this is probably fixable by adding '#include ' + 24 | #include + +++ |+#include + 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 ''; this is probably fixable by adding '#include ' + +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 + #include + #include + diff --git a/thrift.spec b/thrift.spec index 2c4e7a1..389edf5 100644 --- a/thrift.spec +++ b/thrift.spec @@ -91,6 +91,8 @@ Source2: https://raw.github.com/apache/%{name}/%{version}/bootstrap.sh # 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 From a727f7d8283cb50192d86fc19c24d52b4822fdda Mon Sep 17 00:00:00 2001 From: Python Maint Date: Tue, 3 Jun 2025 14:30:38 +0200 Subject: [PATCH 94/97] Rebuilt for Python 3.14 --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 389edf5..ea31be2 100644 --- a/thrift.spec +++ b/thrift.spec @@ -71,7 +71,7 @@ # change is a SONAME change and dependencies need to be rebuilt Name: thrift Version: 0.20.0 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -449,6 +449,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Tue Jun 03 2025 Python Maint - 0.20.0-5 +- Rebuilt for Python 3.14 + * Sun Jan 19 2025 Fedora Release Engineering - 0.20.0-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild From 1f82334fa8a0f767669927201bff4c3aa64c1499 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 25 Jul 2025 19:16:25 +0000 Subject: [PATCH 95/97] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index ea31be2..1994e67 100644 --- a/thrift.spec +++ b/thrift.spec @@ -71,7 +71,7 @@ # change is a SONAME change and dependencies need to be rebuilt Name: thrift Version: 0.20.0 -Release: 5%{?dist} +Release: 6%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -449,6 +449,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Fri Jul 25 2025 Fedora Release Engineering - 0.20.0-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + * Tue Jun 03 2025 Python Maint - 0.20.0-5 - Rebuilt for Python 3.14 From fb39649d7444313a6f781e82672a02c7f70842be Mon Sep 17 00:00:00 2001 From: Python Maint Date: Fri, 15 Aug 2025 15:20:11 +0200 Subject: [PATCH 96/97] Rebuilt for Python 3.14.0rc2 bytecode --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 1994e67..309f4be 100644 --- a/thrift.spec +++ b/thrift.spec @@ -71,7 +71,7 @@ # change is a SONAME change and dependencies need to be rebuilt Name: thrift Version: 0.20.0 -Release: 6%{?dist} +Release: 7%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -449,6 +449,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Fri Aug 15 2025 Python Maint - 0.20.0-7 +- Rebuilt for Python 3.14.0rc2 bytecode + * Fri Jul 25 2025 Fedora Release Engineering - 0.20.0-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild From 30c84913389c9e426ab264b736b39e816a4393f3 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Fri, 19 Sep 2025 14:59:34 +0200 Subject: [PATCH 97/97] Rebuilt for Python 3.14.0rc3 bytecode --- thrift.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/thrift.spec b/thrift.spec index 309f4be..dc82a8e 100644 --- a/thrift.spec +++ b/thrift.spec @@ -71,7 +71,7 @@ # change is a SONAME change and dependencies need to be rebuilt Name: thrift Version: 0.20.0 -Release: 7%{?dist} +Release: 8%{?dist} Summary: Software framework for cross-language services development # Parts of the source are used under the BSD and zlib licenses, but @@ -449,6 +449,9 @@ find %{buildroot} -name \*.py -exec grep -q /usr/bin/env {} \; -print | xargs -r %changelog +* Fri Sep 19 2025 Python Maint - 0.20.0-8 +- Rebuilt for Python 3.14.0rc3 bytecode + * Fri Aug 15 2025 Python Maint - 0.20.0-7 - Rebuilt for Python 3.14.0rc2 bytecode