Update to 1.1.19.1 (RHBZ#1801575)

Enable SSL support
Enable tests
Change to use chrpath to remove rpath, since patching libtool will fail to run tests
Add patch to fix crashing of tests
This commit is contained in:
Robin Lee 2020-02-18 19:49:14 +08:00
parent a841a64c09
commit d4160e0f83
4 changed files with 68 additions and 22 deletions

1
.gitignore vendored
View File

@ -17,3 +17,4 @@ gearmand-0.14.tar.gz
/gearmand-1.1.16.tar.gz
/gearmand-1.1.17.tar.gz
/gearmand-1.1.18.tar.gz
/gearmand-1.1.19.1.tar.gz

50
273.patch Normal file
View File

@ -0,0 +1,50 @@
From d6507e52adcf851d8888b93f9905f0fad1052af2 Mon Sep 17 00:00:00 2001
From: Robin Lee <cheeselee@fedoraproject.org>
Date: Sun, 16 Feb 2020 02:37:42 +0800
Subject: [PATCH] Fix crashing of tests when '-Wp,-D_GLIBCXX_ASSERTIONS' is
given
If 'vec' is a vector, calling 'vec[0]' will crash the program if
'vec' is empty and '-Wp,-D_GLIBCXX_ASSERTIONS' given in CXXFLAGS.
Fixes https://github.com/gearman/gearmand/issues/272
---
libtest/cmdline.h | 4 ++--
tests/hostile.cc | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/libtest/cmdline.h b/libtest/cmdline.h
index 692363f6..3503bada 100644
--- a/libtest/cmdline.h
+++ b/libtest/cmdline.h
@@ -153,7 +153,7 @@ class Application {
const char* stdout_c_str() const
{
- return &_stdout_buffer[0];
+ return _stdout_buffer.size() ? &_stdout_buffer[0] : NULL;
}
libtest::vchar_t stderr_result() const
@@ -163,7 +163,7 @@ class Application {
const char* stderr_c_str() const
{
- return &_stderr_buffer[0];
+ return _stderr_buffer.size() ? &_stderr_buffer[0] : NULL;
}
size_t stderr_result_length() const
diff --git a/tests/hostile.cc b/tests/hostile.cc
index c4c0487d..c7686206 100644
--- a/tests/hostile.cc
+++ b/tests/hostile.cc
@@ -136,7 +136,7 @@ extern "C" {
gearman_return_t rc;
void *value= gearman_client_do(&client, WORKER_FUNCTION_NAME,
NULL,
- &payload[0],
+ payload.size() ? &payload[0] : NULL,
payload.size() ? random() % payload.size() : 0,
NULL, &rc);

View File

@ -15,8 +15,8 @@
%global _with_sqlite 1
Name: gearmand
Version: 1.1.18
Release: 11%{?dist}
Version: 1.1.19.1
Release: 1%{?dist}
Summary: A distributed job system
License: BSD
@ -26,11 +26,13 @@ Source1: gearmand.init
Source2: gearmand.sysconfig
Source3: gearmand.service
Patch0: gearmand-1.1.12-ppc64le.patch
Patch1: https://github.com/gearman/gearmand/pull/273.patch
# Fails to build on PPC.
# See https://bugzilla.redhat.com/987104 and https://bugzilla.redhat.com/987109
ExcludeArch: ppc
BuildRequires: gcc-c++
BuildRequires: chrpath
BuildRequires: libuuid-devel
BuildRequires: boost-devel >= 1.37.0, boost-thread
%if %{_with_sqlite}
@ -54,12 +56,8 @@ BuildRequires: systemd
%endif
# For %%check
# https://github.com/gearman/gearmand/issues/278
#BuildRequires: curl-devel
#%if 0%{?fedora} >= 20 || 0%{?rhel} >= 7
#BuildRequires: mariadb-server
#%else
#BuildRequires: mysql-server
#%endif
# google perftools available only on these
%ifarch %{ix86} x86_64 ppc64 ppc64le aarch64 %{arm}
@ -108,27 +106,18 @@ Development headers for %{name}.
%prep
%setup -q
%patch0 -p1
%patch1 -p1
%build
# HACK to work around boost issues.
export LDFLAGS="$LDFLAGS -lboost_system"
%configure --disable-static --disable-silent-rules --enable-ssl
%ifarch ppc64 sparc64
# no tcmalloc
%configure --disable-static --disable-rpath --disable-silent-rules
%else
%configure --disable-static --disable-rpath --enable-tcmalloc --disable-silent-rules
%endif
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
make %{_smp_mflags}
%install
rm -rf %{buildroot}
make install DESTDIR=%{buildroot}
rm -v %{buildroot}%{_libdir}/libgearman*.la
chrpath --delete %{buildroot}%{_bindir}/gearman
install -p -D -m 0644 %{SOURCE2} %{buildroot}%{_sysconfdir}/sysconfig/gearmand
%if 0%{?_with_systemd}
@ -141,10 +130,9 @@ install -p -D -m 0644 %{SOURCE2} %{buildroot}%{_sysconfdir}/sysconfig/gearmand
mkdir -p %{buildroot}/var/run/gearmand
%endif
mkdir -p %{buildroot}/var/log
%check
#make check
make test
%pre
@ -217,6 +205,13 @@ exit 0
%changelog
* Tue Feb 18 2020 Robin Lee <cheeselee@fedoraproject.org> - 1.1.19.1-1
- Update to 1.1.19.1 (RHBZ#1801575)
- Enable SSL support
- Enable tests
- Change to use chrpath to remove rpath, since patching libtool will fail to run tests
- Add patch to fix crashing of tests
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.18-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild

View File

@ -1 +1 @@
SHA512 (gearmand-1.1.18.tar.gz) = fd2c978775bde19a8f1ffaf720b4c8adfda9859e5f554b247e7edca15fcc684168fb279af6c63e29c0524c8c863a9f3d07ea802e67eec42be793c0487b9beb9a
SHA512 (gearmand-1.1.19.1.tar.gz) = cbcf85dfd7268aa9acc039eac9505385af3be89eeba48270ddb45739e0ccdcf0d2963d821ccbb6a471396fc9ab2521d096f5d6c2fc3d41b3fb050bd82a795f1f