## START: Set by rpmautospec
## (rpmautospec version 0.7.3)
## RPMAUTOSPEC: autorelease, autochangelog
%define autorelease(e:s:pb:n) %{?-p:0.}%{lua:
    release_number = 2;
    base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}"));
    print(release_number + base_release_number - 1);
}%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}}
## END: Set by rpmautospec

# Generated by rust2rpm 26
%bcond_without check

%global crate rbspy

Name:           rust-rbspy
Version:        0.24.0
Release:        %autorelease
Summary:        Sampling CPU profiler for Ruby

License:        MIT
URL:            https://crates.io/crates/rbspy
Source:         %{crates_source}
# Automatically generated patch to strip dependencies and normalize metadata
Patch:          rbspy-fix-metadata-auto.diff
# Manually created patch for downstream crate metadata changes
# * Remove unused direct dependency on goblin:
#   https://github.com/rbspy/rbspy/pull/391
Patch:          rbspy-fix-metadata.diff

BuildRequires:  cargo-rpm-macros >= 24
%if %{with check}
BuildRequires:  ruby
BuildRequires:  rubygems
%endif

%global _description %{expand:
Sampling CPU profiler for Ruby.}

%description %{_description}

%package     -n %{crate}
Summary:        %{summary}
# (MIT OR Apache-2.0) AND Unicode-DFS-2016
# 0BSD OR MIT OR Apache-2.0
# Apache-2.0
# Apache-2.0 OR BSL-1.0
# Apache-2.0 OR MIT
# Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT
# BSD-2-Clause OR Apache-2.0 OR MIT
# CDDL-1.0
# MIT
# MIT OR Apache-2.0
# MIT OR Zlib OR Apache-2.0
# MPL-2.0
# Unlicense OR MIT
# Zlib OR Apache-2.0 OR MIT
License:        MIT AND Apache-2.0 AND CDDL-1.0 AND Unicode-DFS-2016 AND (0BSD OR MIT OR Apache-2.0) AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND (Apache-2.0 OR BSD-2-Clause OR MIT) AND (MIT OR Zlib OR Apache-2.0) AND MPL-2.0 AND (Unlicense OR MIT)
# LICENSE.dependencies contains a full license breakdown

%description -n %{crate} %{_description}

%files       -n %{crate}
%license License.md
%license LICENSE.dependencies
%doc ARCHITECTURE.md
%doc CODE_OF_CONDUCT.md
%doc CONTRIBUTORS.md
%doc NEW_RUBY_VERSION_CHECKLIST.md
%doc README.md
%doc RELEASE_CHECKLIST.md
%{_bindir}/rbspy

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

%description    devel %{_description}

This package contains library source intended for building other packages which
use the "%{crate}" crate.

%files          devel
%license %{crate_instdir}/License.md
%doc %{crate_instdir}/ARCHITECTURE.md
%doc %{crate_instdir}/CODE_OF_CONDUCT.md
%doc %{crate_instdir}/CONTRIBUTORS.md
%doc %{crate_instdir}/NEW_RUBY_VERSION_CHECKLIST.md
%doc %{crate_instdir}/README.md
%doc %{crate_instdir}/RELEASE_CHECKLIST.md
%{crate_instdir}/

%package     -n %{name}+default-devel
Summary:        %{summary}
BuildArch:      noarch

%description -n %{name}+default-devel %{_description}

This package contains library source intended for building other packages which
use the "default" feature of the "%{crate}" crate.

%files       -n %{name}+default-devel
%ghost %{crate_instdir}/Cargo.toml

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

%generate_buildrequires
%cargo_generate_buildrequires

%build
%cargo_build
%{cargo_license_summary}
%{cargo_license} > LICENSE.dependencies

%install
%cargo_install

%if %{with check}
%check
# * skip tests that load a Ruby script which is not included in published crates
%ifarch s390x
%cargo_test -- -- --skip core::ruby_spy::tests::test_get_trace --skip core::ruby_spy::tests::test_get_trace_when_process_has_exited --skip sampler::tests::test_sample_single_process_with_time_limit --skip sampler::tests::test_sample_single_process --skip sampler::tests::test_sample_subprocesses --skip test_get_ruby_stack_trace
# * skip tests that don't work on BE architectures due to hardcoded hex literals
%else
%cargo_test -- -- --skip core::ruby_spy::tests::test_get_trace --skip core::ruby_spy::tests::test_get_trace_when_process_has_exited --skip sampler::tests::test_sample_single_process_with_time_limit --skip sampler::tests::test_sample_single_process --skip sampler::tests::test_sample_subprocesses
%endif
%endif

%changelog
## START: Generated by rpmautospec
* Wed Oct 30 2024 Benjamin A. Beasley <code@musicinmybrain.net> - 0.24.0-2
- Drop unused direct dependency on rust-goblin

* Wed Jul 31 2024 Davide Cavalca <dcavalca@fedoraproject.org> - 0.24.0-1
- Update to 0.24.0; Fixes: RHBZ#2241072

* Sat Jul 20 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.17.0-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild

* Thu May 23 2024 Fabio Valentini <decathorpe@gmail.com> - 0.17.0-5
- Rebuild with Rust 1.78 to fix incomplete debuginfo and backtraces

* Fri Jan 26 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.17.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild

* Fri Jul 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.17.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild

* Sat Jul 15 2023 Fabio Valentini <decathorpe@gmail.com> - 0.17.0-2
- Adapt to changes in clap exposed by inferno 0.11.15 update

* Thu May 18 2023 Davide Cavalca <dcavalca@fedoraproject.org> - 0.17.0-1
- Update to 0.17.0; Fixes: RHBZ#2139409

* Sat Feb 04 2023 Fabio Valentini <decathorpe@gmail.com> - 0.12.1-3
- Rebuild for fixed frame pointer compiler flags in Rust RPM macros

* Sat Jan 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.12.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild

* Fri Jul 29 2022 Fabio Valentini <decathorpe@gmail.com> - 0.12.1-1
- Update to version 0.12.1; Fixes RHBZ#2058869

* Sat Jul 23 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.8.1-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild

* Fri Jan 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.8.1-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild

* Thu Nov 18 2021 Davide Cavalca <dcavalca@fedoraproject.org> - 0.8.1-3
- Build for EPEL8 and fix tests

* Thu Nov 18 2021 Davide Cavalca <dcavalca@fedoraproject.org> - 0.8.1-2
- Gate out tests on s390x for now

* Thu Nov 18 2021 Davide Cavalca <dcavalca@fedoraproject.org> - 0.8.1-1
- Initial import; Fixes: RHBZ#2023856
## END: Generated by rpmautospec