160 lines
4.7 KiB
RPMSpec
160 lines
4.7 KiB
RPMSpec
#
|
|
# spec file for package libunwind
|
|
#
|
|
# Copyright (c) 2022 SUSE LLC
|
|
#
|
|
# All modifications and additions to the file contributed by third parties
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
# upon. The license for this file, and modifications and additions to the
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
# license for the pristine package is not an Open Source License, in which
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
# published by the Open Source Initiative.
|
|
|
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
|
#
|
|
|
|
|
|
Name: libunwind
|
|
Version: 1.6.2
|
|
Release: 0
|
|
Summary: Call chain detection library
|
|
License: MIT
|
|
Group: System/Base
|
|
URL: https://savannah.nongnu.org/projects/libunwind/
|
|
Source0: https://download.savannah.gnu.org/releases/%{name}/%{name}-%{version}.tar.gz
|
|
Source1: https://download.savannah.gnu.org/releases/%{name}/%{name}-%{version}.tar.gz.sig
|
|
Source2: %{name}.keyring
|
|
Source3: baselibs.conf
|
|
BuildRequires: gcc-c++
|
|
BuildRequires: lzma-devel
|
|
BuildRequires: pkgconfig
|
|
ExcludeArch: s390
|
|
|
|
%description
|
|
A C programming interface (API) to determine the call chain of a program.
|
|
|
|
%package -n libunwind8
|
|
Summary: Call chain detection library for process self-inspection
|
|
Group: System/Libraries
|
|
Conflicts: libunwind < %{version}-%{release}
|
|
|
|
%description -n libunwind8
|
|
A C programming interface (API) to determine the call chain of a
|
|
program from within the same process.
|
|
|
|
%package -n libunwind-coredump0
|
|
Summary: Call chain detection library for coredump images
|
|
Group: System/Libraries
|
|
Conflicts: libunwind < %{version}-%{release}
|
|
|
|
%description -n libunwind-coredump0
|
|
A C programming interface (API) to determine the call chains
|
|
of the threads in coredump images.
|
|
|
|
%package -n libunwind-ptrace0
|
|
Summary: Call chain detection library for ptraced processes
|
|
Group: System/Libraries
|
|
Conflicts: libunwind < %{version}-%{release}
|
|
|
|
%description -n libunwind-ptrace0
|
|
A C programming interface (API) to determine the call chains of
|
|
another process by means of using ptrace(2) on it.
|
|
|
|
%package -n libunwind-setjmp0
|
|
Summary: Non-local goto (setjmp/longmap) implementation based on libunwind
|
|
Group: System/Libraries
|
|
Conflicts: libunwind < %{version}-%{release}
|
|
|
|
%description -n libunwind-setjmp0
|
|
The unwind-setjmp library offers a libunwind-based implementation of
|
|
non-local gotos. This is a drop-in replacement for the normal,
|
|
system-provided routines of the same name. With this library, setting
|
|
up a non-local goto via setjmp is generally faster compared to the
|
|
system routines, at the cost of a much slower longjmp.
|
|
|
|
%package devel
|
|
Summary: Headers for the Unwind library
|
|
Group: Development/Libraries/C and C++
|
|
%ifnarch ppc ppc64 ppc64le s390x
|
|
Requires: libunwind-coredump0 = %{version}-%{release}
|
|
%endif
|
|
Requires: libunwind-ptrace0 = %{version}-%{release}
|
|
Requires: libunwind-setjmp0 = %{version}-%{release}
|
|
Requires: libunwind8 = %{version}-%{release}
|
|
|
|
%description devel
|
|
A set of C programming interfaces to determine the call chain within a running
|
|
program (libunwind), of a coredump image (libunwind-coredump), or of a separate
|
|
process (libunwind-ptrace).
|
|
|
|
%prep
|
|
%autosetup
|
|
|
|
%build
|
|
%configure \
|
|
--enable-minidebuginfo
|
|
%make_build
|
|
|
|
%check
|
|
# run-coredump-unwind fails
|
|
%make_build check || :
|
|
|
|
%install
|
|
%make_install
|
|
find %{buildroot} -iregex '.*\.l?a$' -delete -print
|
|
# Help packagers with %files
|
|
find %{buildroot}/%{_libdir} -type f | sort
|
|
|
|
%post -n libunwind8 -p /sbin/ldconfig
|
|
%postun -n libunwind8 -p /sbin/ldconfig
|
|
%post -n libunwind-coredump0 -p /sbin/ldconfig
|
|
%postun -n libunwind-coredump0 -p /sbin/ldconfig
|
|
%post -n libunwind-ptrace0 -p /sbin/ldconfig
|
|
%postun -n libunwind-ptrace0 -p /sbin/ldconfig
|
|
%post -n libunwind-setjmp0 -p /sbin/ldconfig
|
|
%postun -n libunwind-setjmp0 -p /sbin/ldconfig
|
|
|
|
%files -n libunwind8
|
|
%{_libdir}/libunwind.so.8*
|
|
%ifarch %arm
|
|
%{_libdir}/libunwind-arm.so.8*
|
|
%else
|
|
%ifarch riscv32 riscv64
|
|
%{_libdir}/libunwind-riscv.so.8*
|
|
%else
|
|
%ifarch %ix86
|
|
%{_libdir}/libunwind-x86.so.8*
|
|
%else
|
|
%ifarch ppc
|
|
%{_libdir}/libunwind-ppc32.so.8*
|
|
%else
|
|
%ifarch ppc64 ppc64le
|
|
%{_libdir}/libunwind-ppc64.so.8*
|
|
%else
|
|
%{_libdir}/libunwind-%{_target_cpu}.so.8*
|
|
%endif
|
|
%endif
|
|
%endif
|
|
%endif
|
|
%endif
|
|
|
|
%ifnarch ppc ppc64 ppc64le s390x
|
|
%files -n libunwind-coredump0
|
|
%{_libdir}/libunwind-coredump.so.0*
|
|
%endif
|
|
|
|
%files -n libunwind-setjmp0
|
|
%{_libdir}/libunwind-setjmp.so.0*
|
|
|
|
%files -n libunwind-ptrace0
|
|
%{_libdir}/libunwind-ptrace.so.0*
|
|
|
|
%files devel
|
|
%{_includedir}/*
|
|
%{_libdir}/%{name}*.so
|
|
%{_libdir}/pkgconfig/%{name}*.pc
|
|
|
|
%changelog
|