Blob Blame History Raw
# Generated by rust2rpm
%bcond_without check

%global crate addr2line

Name:           rust-%{crate}
Version:        0.5.0
Release:        3%{?dist}
Summary:        Cross-platform `addr2line` clone written in Rust, using `gimli`

# https://github.com/gimli-rs/addr2line/issues/79
License:        ASL 2.0 or MIT
URL:            https://crates.io/crates/addr2line
Source0:        https://crates.io/api/v1/crates/%{crate}/%{version}/download#/%{crate}-%{version}.crate
# Initial patched metadata
# * Bump object to 0.7
# * Bump owning_ref to 0.3
# * Bump gimli to 0.15
# * Bump error-chain to 0.11
# * Bump memmap to 0.6, https://github.com/gimli-rs/addr2line/pull/78
# * Bump itertools to 0.7
Patch0:         addr2line-0.5.0-fix-metadata.diff
# Make it work with object v0.7
Patch1:         0001-bump-object-to-0.7.patch
# Make it work with memmap v0.6
Patch2:         0001-bump-memmap-to-0.6.patch

ExclusiveArch:  %{rust_arches}

BuildRequires:  rust-packaging
# [dependencies]
BuildRequires:  (crate(clap) >= 2.19.1 with crate(clap) < 3.0.0)
BuildRequires:  (crate(cpp_demangle) >= 0.2.0 with crate(cpp_demangle) < 0.3.0)
BuildRequires:  (crate(error-chain) >= 0.11.0 with crate(error-chain) < 0.12.0)
BuildRequires:  (crate(fallible-iterator) >= 0.1.3 with crate(fallible-iterator) < 0.2.0)
BuildRequires:  (crate(gimli) >= 0.15.0 with crate(gimli) < 0.16.0)
BuildRequires:  (crate(memmap) >= 0.6.0 with crate(memmap) < 0.7.0)
BuildRequires:  (crate(object) >= 0.7.0 with crate(object) < 0.8.0)
BuildRequires:  (crate(owning_ref) >= 0.3.0 with crate(owning_ref) < 0.4.0)
BuildRequires:  (crate(rustc-demangle) >= 0.1.3 with crate(rustc-demangle) < 0.2.0)
%if %{with check}
# [dev-dependencies]
BuildRequires:  (crate(glob) >= 0.2.0 with crate(glob) < 0.3.0)
BuildRequires:  (crate(itertools) >= 0.7.0 with crate(itertools) < 0.8.0)
%endif

%description
%{summary}.

%package     -n %{crate}
Summary:        %{summary}

%description -n %{crate}
%{summary}.

%package        devel
Summary:        %{summary}
BuildArch:      noarch

%description    devel
A cross-platform `addr2line` clone written in Rust, using `gimli`.

This package contains library source intended for building other packages
which use %{crate} from crates.io.

%prep
%autosetup -n %{crate}-%{version} -p1
%cargo_prep

%build
%cargo_build

%install
%cargo_install

%if %{with check}
%check
%cargo_test
%endif

%files       -n %{crate}
%{_bindir}/addr2line

%files          devel
%doc README.md
%{cargo_registry}/%{crate}-%{version}/
%exclude %{cargo_registry}/%{crate}-%{version}/{benchmark.sh,bench.plot.r,coverage,memory.png,time.png}

%changelog
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.5.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild

* Mon Jan 08 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.5.0-2
- Rebuild for rust-packaging v5

* Fri Jan 05 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.5.0-1
- Initial package