Blame SPECS/satyr.spec

01add4
%{!?python_sitearch: %global python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")}
01add4
01add4
# rhel6's python-sphinx cannot build manual pages
01add4
%if 0%{?rhel} && 0%{?rhel} <= 6
01add4
  %define enable_python_manpage 0
01add4
%else
01add4
  %define enable_python_manpage 1
01add4
%endif
01add4
01add4
%if 0%{?suse_version}
01add4
  %define python2_devel python-devel
01add4
  %define libdw_devel libdw-devel
01add4
  %define libelf_devel libelf-devel
01add4
%else
01add4
  %define python2_devel python2-devel
01add4
  %define libdw_devel elfutils-devel
01add4
  %define libelf_devel elfutils-libelf-devel
01add4
%endif
01add4
01add4
Name: satyr
01add4
Version: 0.13
01add4
Release: 15%{?dist}
01add4
Summary: Tools to create anonymous, machine-friendly problem reports
01add4
Group: System Environment/Libraries
01add4
License: GPLv2+
01add4
URL: https://github.com/abrt/satyr
01add4
Source0: https://fedorahosted.org/released/abrt/satyr-%{version}.tar.xz
01add4
BuildRequires: %{python2_devel}
01add4
BuildRequires: %{libdw_devel}
01add4
BuildRequires: %{libelf_devel}
01add4
BuildRequires: binutils-devel
01add4
BuildRequires: rpm-devel
01add4
BuildRequires: libtool
01add4
BuildRequires: pkgconfig
01add4
BuildRequires: automake
01add4
BuildRequires: gcc-c++
01add4
%if %{?enable_python_manpage}
01add4
BuildRequires: python-sphinx
01add4
%endif
01add4
01add4
# git is need for '%%autosetup -S git' which automatically applies all the
01add4
# patches above. Please, be aware that the patches must be generated
01add4
# by 'git format-patch'
01add4
BuildRequires: git
01add4
01add4
Patch0: satyr-0.13-elfutils-0.158.patch
01add4
Patch1: satyr-0.13-elfutils-unwinder.patch
01add4
Patch2: satyr-0.13-disable-fingerprints.patch
01add4
Patch3: satyr-0.13-unwinder-refresh-config-h.patch
01add4
01add4
# 1142856, minor bugs found by static analyzer
01add4
Patch4: satyr-0.13-static-analyzer-bugs.patch
01add4
01add4
# 1123262, empty duphash of unreliable koops
01add4
Patch5: satyr-0.13-koops-unreliable-frames.patch
01add4
01add4
# 1142339, python exception parsing
01add4
Patch6: satyr-0.13-python-exceptions.patch
01add4
01add4
# 1142338, ppc64 backtrace parsing
01add4
Patch7: satyr-0.13-ppc64-backtrace-parsing.patch
01add4
01add4
# 1142346, limit stacktrace depth
01add4
Patch8: satyr-0.13-limit-stacktrace-depth.patch
01add4
01add4
# 1139555, ureport auth support
01add4
Patch9: satyr-0.13-ureport-auth-support.patch
01add4
01add4
# 1034857, ignore java suppressed exceptions
01add4
Patch10: satyr-0.13-java-suppressed-exceptions.patch
01add4
01add4
# 1147952, don't free gdb stacktrace on method failure
01add4
Patch11: satyr-0.13-dont-free-gdb-stacktrace.patch
01add4
01add4
# 1142346, better handling of infinite recursion
01add4
Patch12: satyr-0.13-better-inf-recursion-handling.patch
01add4
01add4
# 1210599, add functionality to generate a backtrace without saving a coredump
01add4
Patch13: satyr-0.13-fulfill-missing-values-in-core-frames.patch
01add4
Patch14: satyr-0.13-unwind-minor-refactoring.patch
01add4
Patch15: satyr-0.13-support-unwinding-from-core-hook.patch
01add4
Patch16: satyr-0.13-debug-unwinding-from-core-hook-using-satyr-binary.patch
01add4
Patch17: satyr-0.13-disable-hook-unwind-on-kernels-w-o-PTRACE_SEIZE.patch
01add4
Patch18: satyr-0.13-abrt-refactorize-unwinding-from-core-hook.patch
01add4
Patch19: satyr-0.13-core_unwind-fix-the-missing-frame-build_id-and-file.patch
01add4
01add4
# 1334604, add support for Ruby
01add4
Patch20: satyr-0.13-Add-support-for-Ruby-report-type.patch
01add4
Patch21: satyr-0.13-python-add-Ruby-support.patch
01add4
01add4
# 1332869, actualize list of normalization function in satyr
01add4
Patch22: satyr-0.13-normalize-extend-xorg-blacklist.patch
01add4
Patch23: satyr-0.13-normalization-additional-X-GDK-functions.patch
01add4
Patch24: satyr-0.13-normalization-add-glibc-__assert_fail_base.patch
01add4
Patch25: satyr-0.13-normalization-add-glibc-__libc_fatal.patch
01add4
Patch26: satyr-0.13-normalization-normalize-out-exit-frames.patch
01add4
Patch27: satyr-0.13-normalization-actualize-list-of-functions.patch
01add4
01add4
# 1334604, add support for Ruby testsuite fix
01add4
Patch28: satyr-0.13-tests-fix-failure-on-gcc5-on-x86_64.patch
01add4
01add4
# 1336390, fix defects found by coverity
01add4
Patch29: satyr-0.13-Fix-defects-found-by-coverity.patch
01add4
Patch30: satyr-0.13-Check-the-return-value-of-sr_parse_char_cspan.patch
01add4
01add4
# 1342469, support for VARIANT and VARIANT_ID
01add4
Patch31: satyr-0.13-os-add-support-for-OS-Variant.patch
01add4
01add4
# 1260074, Incorrectly unwinding core_backtrace for stack overflow (aarch64)
01add4
Patch32: satyr-0.13-Honor-frame-number-limit-in-GDB-core-unwinder.patch
01add4
Patch33: satyr-0.13-testsuite-add-test-for-limit-frame-number-in-GDB-cor.patch
01add4
01add4
%description
01add4
Satyr is a library that can be used to create and process microreports.
01add4
Microreports consist of structured data suitable to be analyzed in a fully
01add4
automated manner, though they do not necessarily contain sufficient information
01add4
to fix the underlying problem. The reports are designed not to contain any
01add4
potentially sensitive data to eliminate the need for review before submission.
01add4
Included is a tool that can create microreports and perform some basic
01add4
operations on them.
01add4
01add4
%package devel
01add4
Summary: Development libraries for %{name}
01add4
Group: Development/Libraries
01add4
Requires: %{name}%{?_isa} = %{version}-%{release}
01add4
01add4
%description devel
01add4
Development libraries and headers for %{name}.
01add4
01add4
%package python
01add4
Summary: Python bindings for %{name}
01add4
Group: Development/Libraries
01add4
Requires: %{name}%{?_isa} = %{version}-%{release}
01add4
01add4
%description python
01add4
Python bindings for %{name}.
01add4
01add4
%prep
01add4
# http://www.rpm.org/wiki/PackagerDocs/Autosetup
01add4
# Default '__scm_apply_git' is 'git apply && git commit' but this workflow
01add4
# doesn't allow us to create a new file within a patch, so we have to use
01add4
# 'git am' (see /usr/lib/rpm/macros for more details)
01add4
%define __scm_apply_git(qp:m:) %{__git} am
01add4
%autosetup -S git
01add4
01add4
%build
01add4
autoreconf
01add4
01add4
%configure \
01add4
%if ! %{?enable_python_manpage}
01add4
        --disable-python-manpage \
01add4
%endif
01add4
        --disable-static
01add4
01add4
make %{?_smp_mflags}
01add4
01add4
%install
01add4
make install DESTDIR=%{buildroot}
01add4
01add4
# Remove all libtool archives (*.la) from modules directory.
01add4
find %{buildroot} -name "*.la" | xargs rm --
01add4
01add4
%check
01add4
make check || {
01add4
    # find and print the logs of failed test
01add4
    # do not cat tests/testsuite.log because it contains a lot of bloat
01add4
    find tests -name "testsuite.log" -print -exec cat '{}' \;
01add4
    exit 1
01add4
}
01add4
01add4
01add4
%post -p /sbin/ldconfig
01add4
%postun -p /sbin/ldconfig
01add4
01add4
%files
01add4
%doc README NEWS COPYING
01add4
%{_bindir}/satyr
01add4
%{_mandir}/man1/%{name}.1*
01add4
%{_libdir}/lib*.so.*
01add4
01add4
%files devel
01add4
%{_includedir}/*
01add4
%{_libdir}/lib*.so
01add4
%{_libdir}/pkgconfig/*
01add4
01add4
%files python
01add4
%dir %{python_sitearch}/%{name}
01add4
%{python_sitearch}/%{name}/*
01add4
01add4
%if %{?enable_python_manpage}
01add4
%{_mandir}/man3/satyr-python.3*
01add4
%endif
01add4
01add4
%changelog
01add4
* Tue Jun 19 2018 Matej Marusak <mmarusak@redhat.com> - 0.13-15
01add4
- Honor frame number limit in GDB core unwinder
01add4
  - Related: #1260074
01add4
01add4
* Mon Jun 06 2016 Matej Habrnal <mhabrnal@redhat.com> - 0.13-14
01add4
- add support for OS Variant
01add4
  - Related: #1342469
01add4
01add4
* Thu May 12 2016 Matej Habrnal <mhabrnal@redhat.com> - 0.13-13
01add4
- add support for Ruby
01add4
  - Related: #1334604
01add4
- actualize list of normalization function in satyr
01add4
  - Related: #1332869
01add4
- fix defects found by coverity
01add4
  - Related: #1336390
01add4
01add4
* Wed Sep 9 2015 Richard Marko <rmarko@redhat.com> - 0.13-12
01add4
- apply last patch
01add4
  - Related: #1210599
01add4
01add4
* Wed Sep 9 2015 Richard Marko <rmarko@redhat.com> - 0.13-11
01add4
- core unwind: fix the missing frame build_id and file_name
01add4
  - Related: #1210599
01add4
01add4
* Fri Jul 17 2015 Richard Marko <rmarko@redhat.com> - 0.13-10
01add4
- leave saving of core backtrace to abrt hook
01add4
  - Related: #1210599
01add4
01add4
* Tue Jun 23 2015 Richard Marko <rmarko@redhat.com> - 0.13-9
01add4
- Add functionality to generate a backtrace without saving a coredump
01add4
  - Resolves: #1210599
01add4
01add4
* Wed Nov 19 2014 Martin Milata <mmilata@redhat.com> - 0.13-8
01add4
- Better handling of stacktraces with infinite recursion
01add4
  - Resolves: #1142346
01add4
01add4
* Fri Oct 03 2014 Martin Milata <mmilata@redhat.com> - 0.13-7
01add4
- Don't free GDB stacktrace on error
01add4
  - Resolves: #1147952
01add4
01add4
* Fri Oct 03 2014 Martin Milata <mmilata@redhat.com> - 0.13-6
01add4
- Ignore suppressed exceptions in the Java exception parser
01add4
  - Resolves: #1034857
01add4
01add4
* Thu Sep 18 2014 Martin Milata <mmilata@redhat.com> - 0.13-5
01add4
- Fix minor bugs found by static analyzers
01add4
  - Resolves: #1142856
01add4
- Return empty duphash for koopses with no reliable frames
01add4
  - Resolves: #1123262
01add4
- Fix parsing of python SyntaxError exceptions
01add4
  - Resolves: #1142339
01add4
- Fix parsing of ppc64 gdb stacktraces
01add4
  - Resolves: #1142338
01add4
- Limit the depth of generated stacktrace to avoid huge reports
01add4
  - Resolves: #1142346
01add4
- Add authentication support to uReport, needed for reporting to customer portal
01add4
  - Resolves: #1139555
01add4
01add4
* Fri Jan 24 2014 Daniel Mach <dmach@redhat.com> - 0.13-4
01add4
- Mass rebuild 2014-01-24
01add4
01add4
* Wed Jan 22 2014 Martin Milata <mmilata@redhat.com> 0.13-3
01add4
- Fix build with elfutils unwinder
01add4
  - Resolves: #1051569
01add4
01add4
* Tue Jan 14 2014 Martin Milata <mmilata@redhat.com> 0.13-2
01add4
- Use elfutils unwinder
01add4
  - Resolves: #1051569
01add4
- Disable function fingerprinting
01add4
  - Resolves: #1052402
01add4
01add4
* Tue Jan 07 2014 Martin Milata <mmilata@redhat.com> 0.13-1
01add4
- Rebase to satyr-0.13
01add4
  - Resolves: #1040900
01add4
- Includes patch to build against elfutils-0.158
01add4
01add4
* Fri Dec 27 2013 Daniel Mach <dmach@redhat.com> - 0.9-3
01add4
- Mass rebuild 2013-12-27
01add4
01add4
* Wed Dec 04 2013 Martin Milata <mmilata@redhat.com> 0.9-2
01add4
- Fix malformed JSON for some Java and koops reports
01add4
  - Resolves: #1035317
01add4
  - Resolves: #1036790
01add4
- Fix memory leak in RPM handling
01add4
  - Resolves: #1016780
01add4
- Check for unsigned overflows
01add4
  - Resolves: #1034869
01add4
01add4
* Wed Sep 11 2013 Jakub Filak <jfilak@redhat.com> 0.9-1
01add4
- New upstream version
01add4
  - Enrich koops uReport data with koops text and kernel version.
01add4
  - Improve koops modules handling.
01add4
01add4
* Wed Aug 28 2013 Richard Marko<rmarko@redhat.com> 0.8-1
01add4
- New upstream version
01add4
  - Added support for json de/serialization of reports and stacktraces.
01add4
  - Library version number increased, as the interface changed since the last release
01add4
01add4
* Mon Aug 26 2013 Martin Milata <mmilata@redhat.com> 0.7-1
01add4
- New upstream version
01add4
  - Fix couple of crashes (#997076, #994747)
01add4
01add4
* Mon Jul 29 2013 Martin Milata <mmilata@redhat.com> 0.6-1
01add4
- New upstream version
01add4
  - Do not export internal function symbols.
01add4
01add4
* Thu Jul 25 2013 Martin Milata <mmilata@redhat.com> 0.5-2
01add4
- Remove libunwind dependency altogether, always use GDB for unwinding.
01add4
01add4
* Thu Jul 25 2013 Jakub Filak <jfilak@redhat.com> 0.5-1
01add4
- Added function that creates core stacktrace from GDB output. Several bugfixes.
01add4
01add4
* Tue Jul 09 2013 Martin Milata <mmilata@redhat.com> 0.4-2
01add4
- Fix failing tests (failure manifests only on s390x)
01add4
01add4
* Mon Jul 08 2013 Martin Milata <mmilata@redhat.com> 0.4-1
01add4
- New upstream version
01add4
  - Added features needed by ABRT
01add4
  - Support for uReport2
01add4
  - Major C and Python API changes
01add4
- Patch for python-2.6 compatibility
01add4
01add4
* Tue Apr 02 2013 Dan HorĂ¡k <dan[at]danny.cz> 0.3-2
01add4
- libunwind exists only on selected arches
01add4
01add4
* Mon Mar 25 2013 Martin Milata <mmilata@redhat.com> 0.3-1
01add4
- New upstream version
01add4
  - Bug fixes
01add4
  - Build fixes for older systems
01add4
- Do not require libunwind on rhel
01add4
01add4
* Mon Mar 18 2013 Martin Milata <mmilata@redhat.com> 0.2-1
01add4
- Documentation and spec cleanup
01add4
- Build fixes (build against RPM)
01add4
01add4
* Mon Aug 30 2010 Karel Klic <kklic@redhat.com> 0.1-1
01add4
- Upstream package spec file