import libtevent-0.9.39-2.el8

This commit is contained in:
CentOS Sources 2019-11-05 15:21:53 -05:00 committed by Andrew Lukoshko
parent b94d00ff80
commit aee92b2674
4 changed files with 19 additions and 181 deletions

2
.gitignore vendored
View File

@ -1 +1 @@
SOURCES/tevent-0.9.37.tar.gz
SOURCES/tevent-0.9.39.tar.gz

View File

@ -1 +1 @@
5b1c1c2bed1323ee5088b211f3e2d29d8822a10b SOURCES/tevent-0.9.37.tar.gz
96adb8a34c6838e2b8bd2f9a874e9bb18d79ccff SOURCES/tevent-0.9.39.tar.gz

View File

@ -1,117 +0,0 @@
From 9673dcd70489c1c9df22aa0eb7a98afbccc0ced3 Mon Sep 17 00:00:00 2001
From: Andreas Schneider <asn@samba.org>
Date: Mon, 3 Sep 2018 10:35:08 +0200
Subject: [PATCH 1/2] waf: Check for -fstack-protect-strong support
The -fstack-protector* flags are compiler only flags, don't pass them to
the linker.
https://developers.redhat.com/blog/2018/03/21/compiler-and-linker-flags-gcc/
BUG: https://bugzilla.samba.org/show_bug.cgi?id=13601
Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
(cherry picked from commit 38e97f8b52e85bdfcf2d74a4fb3c848fa46ba371)
---
buildtools/wafsamba/samba_autoconf.py | 36 ++++++++++++++-------------
1 file changed, 19 insertions(+), 17 deletions(-)
diff --git a/buildtools/wafsamba/samba_autoconf.py b/buildtools/wafsamba/samba_autoconf.py
index c4391d0c4dc..bfd6f9710db 100644
--- a/buildtools/wafsamba/samba_autoconf.py
+++ b/buildtools/wafsamba/samba_autoconf.py
@@ -674,23 +674,25 @@ def SAMBA_CONFIG_H(conf, path=None):
return
# we need to build real code that can't be optimized away to test
- if conf.check(fragment='''
- #include <stdio.h>
-
- int main(void)
- {
- char t[100000];
- while (fgets(t, sizeof(t), stdin));
- return 0;
- }
- ''',
- execute=0,
- ccflags='-fstack-protector',
- ldflags='-fstack-protector',
- mandatory=False,
- msg='Checking if toolchain accepts -fstack-protector'):
- conf.ADD_CFLAGS('-fstack-protector')
- conf.ADD_LDFLAGS('-fstack-protector')
+ stack_protect_list = ['-fstack-protector-strong', '-fstack-protector']
+ for stack_protect_flag in stack_protect_list:
+ flag_supported = conf.check(fragment='''
+ #include <stdio.h>
+
+ int main(void)
+ {
+ char t[100000];
+ while (fgets(t, sizeof(t), stdin));
+ return 0;
+ }
+ ''',
+ execute=0,
+ ccflags=[ '-Werror', '-Wp,-D_FORTIFY_SOURCE=2', stack_protect_flag],
+ mandatory=False,
+ msg='Checking if compiler accepts %s' % (stack_protect_flag))
+ if flag_supported:
+ conf.ADD_CFLAGS('-Wp,-D_FORTIFY_SOURCE=2 %s' % (stack_protect_flag))
+ break
if Options.options.debug:
conf.ADD_CFLAGS('-g', testflags=True)
--
2.18.0
From 5cfefc8d4c7fc4aba5b1dc2b7ea6f02c126d4070 Mon Sep 17 00:00:00 2001
From: Andreas Schneider <asn@samba.org>
Date: Mon, 3 Sep 2018 10:49:52 +0200
Subject: [PATCH 2/2] waf: Add -fstack-clash-protection
https://developers.redhat.com/blog/2018/03/21/compiler-and-linker-flags-gcc/
BUG: https://bugzilla.samba.org/show_bug.cgi?id=13601
Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
(cherry picked from commit fc4df251c88365142515a81bea1120b2b84cc4a0)
---
buildtools/wafsamba/samba_autoconf.py | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
diff --git a/buildtools/wafsamba/samba_autoconf.py b/buildtools/wafsamba/samba_autoconf.py
index bfd6f9710db..f2b3ec8db8d 100644
--- a/buildtools/wafsamba/samba_autoconf.py
+++ b/buildtools/wafsamba/samba_autoconf.py
@@ -694,6 +694,23 @@ def SAMBA_CONFIG_H(conf, path=None):
conf.ADD_CFLAGS('-Wp,-D_FORTIFY_SOURCE=2 %s' % (stack_protect_flag))
break
+ flag_supported = conf.check(fragment='''
+ #include <stdio.h>
+
+ int main(void)
+ {
+ char t[100000];
+ while (fgets(t, sizeof(t), stdin));
+ return 0;
+ }
+ ''',
+ execute=0,
+ ccflags=[ '-Werror', '-fstack-clash-protection'],
+ mandatory=False,
+ msg='Checking if compiler accepts -fstack-clash-protection')
+ if flag_supported:
+ conf.ADD_CFLAGS('-fstack-clash-protection')
+
if Options.options.debug:
conf.ADD_CFLAGS('-g', testflags=True)
--
2.18.0

View File

@ -1,13 +1,7 @@
%{!?python2_sitearch: %global python2_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))")}
%if 0%{?fedora} || 0%{?rhel} > 7
%global with_python3 1
%else
%global with_python3 0
%endif
%global talloc_version 2.1.16
Name: libtevent
Version: 0.9.37
Version: 0.9.39
Release: 2%{?dist}
Summary: The tevent library
License: LGPLv3+
@ -15,26 +9,21 @@ URL: http://tevent.samba.org/
Source: http://samba.org/ftp/tevent/tevent-%{version}.tar.gz
BuildRequires: gcc
%if (0%{?fedora} >= 28 || 0%{?rhel} > 7)
# workaround for unnecessary check in libreplace
BuildRequires: libtirpc-devel
%endif
BuildRequires: libtalloc-devel >= 2.1.0
BuildRequires: python2-devel
BuildRequires: python2-talloc-devel >= 2.1.0
BuildRequires: libtalloc-devel >= %{talloc_version}
BuildRequires: doxygen
BuildRequires: docbook-style-xsl
BuildRequires: libxslt
Provides: bundled(libreplace)
%if 0%{?with_python3}
BuildRequires: python3-devel
BuildRequires: python3-talloc-devel >= 2.0.7
%endif
BuildRequires: python3-talloc-devel >= %{talloc_version}
Obsoletes: python2-tevent < %{version}-%{release}
Obsoletes: python2-tevent-debuginfo < %{version}-%{release}
# Patches
Patch0001: fstack_flags.patch
%description
Tevent is an event system based on the talloc memory management library.
@ -53,17 +42,6 @@ Requires: pkgconfig
Header files needed to develop programs that link against the Tevent library.
%package -n python2-tevent
Summary: Python bindings for the Tevent library
Requires: libtevent%{?_isa} = %{version}-%{release}
%{?python_provide:%python_provide python2-tevent}
%description -n python2-tevent
Python bindings for libtevent
%if 0%{?with_python3}
%package -n python3-tevent
Summary: Python 3 bindings for the Tevent library
Requires: libtevent%{?_isa} = %{version}-%{release}
@ -73,8 +51,6 @@ Requires: libtevent%{?_isa} = %{version}-%{release}
%description -n python3-tevent
Python 3 bindings for libtevent
%endif
%prep
# Update timestamps on the files touched by a patch, to avoid non-equal
# .pyc/.pyo files across the multilib peers within a build, where "Level"
@ -92,42 +68,20 @@ UpdateTimestamps() {
}
%setup -q -n tevent-%{version}
%patch0001 -p1
%build
%if 0%{?with_python3}
export PY3_CONFIG_FLAGS=--extra-python=%{__python3}
%else
export PY3_CONFIG_FLAGS=
%endif
# https://bugzilla.redhat.com/show_bug.cgi?id=1597318 - libtevent uses
# Python 2 to build
pathfix.py -n -p -i %{__python2} buildtools/bin/waf
export RHEL_ALLOW_PYTHON2_FOR_BUILD=1
export PYTHON=%{__python2}
%configure --disable-rpath \
--bundled-libraries=NONE \
--builtin-libraries=replace \
$PY3_CONFIG_FLAGS
--builtin-libraries=replace
make %{?_smp_mflags} V=1
doxygen doxy.config
%check
# https://bugzilla.redhat.com/show_bug.cgi?id=1597318 - libtevent uses
# Python 2 to build
export RHEL_ALLOW_PYTHON2_FOR_BUILD=1
make %{?_smp_mflags} check
%install
# https://bugzilla.redhat.com/show_bug.cgi?id=1597318 - libtevent uses
# Python 2 to build
export RHEL_ALLOW_PYTHON2_FOR_BUILD=1
make install DESTDIR=$RPM_BUILD_ROOT
# Shared libraries need to be marked executable for
@ -150,22 +104,23 @@ cp -a doc/man/* $RPM_BUILD_ROOT/%{_mandir}
%{_libdir}/pkgconfig/tevent.pc
%{_mandir}/man3/tevent*.gz
%files -n python2-tevent
%{python2_sitearch}/tevent.py*
%{python2_sitearch}/_tevent.so
%ldconfig_scriptlets
%if 0%{?with_python3}
%files -n python3-tevent
%{python3_sitearch}/tevent.py
%{python3_sitearch}/__pycache__/tevent.*
%{python3_sitearch}/_tevent.cpython*.so
%endif
%changelog
* Tue Apr 30 2019 Jakub Hrozek <jhrozek@redhat.com>
- Remove the python2 subpackages on upgrade
- Resolves: #1567139 - libtevent: Drop Python 2 subpackage from RHEL 8
* Wed Apr 24 2019 Jakub Hrozek <jhrozek@redhat.com> - 0.9.39-1
- Resolves: #1684580 - Rebase libtevent to version 0.9.36 for Samba
- Resolves: #1597318 - libtevent uses Python 2 to build
- Resolves: #1567139 - libtevent: Drop Python 2 subpackage from RHEL 8
* Thu Sep 20 2018 Jakub Hrozek <jhrozek@redhat.com> - 0.9.37-2
- Resolves: #1624138 - Review annocheck distro flag failures in libtevent