# Generated by rust2rpm
# Tests are too much environment dependent
%bcond_with check
%global debug_package %{nil}
%global crate cargo
Name: rust-%{crate}
Version: 0.29.0
Release: 2%{?dist}
Summary: Cargo, a package manager for Rust
# Upstream license specification: MIT OR Apache-2.0
License: MIT or ASL 2.0
URL: https://crates.io/crates/cargo
Source0: https://crates.io/api/v1/crates/%{crate}/%{version}/download#/%{crate}-%{version}.crate
# Initial patched metadata
# * No windows/macos
# * Bump lazycell to 1.0
# * Bump termcolor to 1.0
# * Switch to crossbeam-utils
Patch0: cargo-fix-metadata.diff
Patch0001: 0001-Switch-to-crossbeam_utils-crate-sidesteppin.patch
Patch0002: 0002-Upgrade-to-crossbeam-utils-s-new-0.5-API.patch
ExclusiveArch: %{rust_arches}
BuildRequires: rust-packaging
# [dependencies]
BuildRequires: (crate(atty) >= 0.2.0 with crate(atty) < 0.3.0)
BuildRequires: (crate(clap) >= 2.31.2 with crate(clap) < 3.0.0)
BuildRequires: (crate(crates-io) >= 0.17.0 with crate(crates-io) < 0.18.0)
BuildRequires: (crate(crossbeam-utils) >= 0.5.0 with crate(crossbeam-utils) < 0.6.0)
BuildRequires: (crate(crypto-hash) >= 0.3.1 with crate(crypto-hash) < 0.4.0)
BuildRequires: (crate(curl) >= 0.4.12 with crate(curl) < 0.5.0)
BuildRequires: (crate(env_logger) >= 0.5.4 with crate(env_logger) < 0.6.0)
BuildRequires: (crate(failure) >= 0.1.1 with crate(failure) < 0.2.0)
BuildRequires: (crate(filetime) >= 0.2.0 with crate(filetime) < 0.3.0)
BuildRequires: (crate(flate2) >= 1.0.0 with crate(flate2) < 2.0.0)
BuildRequires: (crate(fs2) >= 0.4.0 with crate(fs2) < 0.5.0)
BuildRequires: (crate(git2) >= 0.7.0 with crate(git2) < 0.8.0)
BuildRequires: (crate(git2-curl) >= 0.8.1 with crate(git2-curl) < 0.9.0)
BuildRequires: (crate(glob) >= 0.2.11 with crate(glob) < 0.3.0)
BuildRequires: (crate(hex) >= 0.3.0 with crate(hex) < 0.4.0)
BuildRequires: (crate(home) >= 0.3.0 with crate(home) < 0.4.0)
BuildRequires: (crate(ignore) >= 0.4.0 with crate(ignore) < 0.5.0)
BuildRequires: (crate(jobserver) >= 0.1.9 with crate(jobserver) < 0.2.0)
BuildRequires: (crate(lazy_static) >= 1.0.0 with crate(lazy_static) < 2.0.0)
BuildRequires: (crate(lazycell) >= 1.0.0 with crate(lazycell) < 2.0.0)
BuildRequires: (crate(libc) >= 0.2.0 with crate(libc) < 0.3.0)
BuildRequires: (crate(libgit2-sys) >= 0.7.1 with crate(libgit2-sys) < 0.8.0)
BuildRequires: (crate(log) >= 0.4.0 with crate(log) < 0.5.0)
BuildRequires: (crate(num-traits) >= 0.2.0 with crate(num-traits) < 0.3.0)
BuildRequires: (crate(num_cpus) >= 1.0.0 with crate(num_cpus) < 2.0.0)
BuildRequires: (crate(same-file) >= 1.0.0 with crate(same-file) < 2.0.0)
BuildRequires: ((crate(semver) >= 0.9.0 with crate(semver) < 0.10.0) with crate(semver/serde))
BuildRequires: (crate(serde) >= 1.0.0 with crate(serde) < 2.0.0)
BuildRequires: (crate(serde_derive) >= 1.0.0 with crate(serde_derive) < 2.0.0)
BuildRequires: (crate(serde_ignored) >= 0.0.4 with crate(serde_ignored) < 0.0.5)
BuildRequires: (crate(serde_json) >= 1.0.0 with crate(serde_json) < 2.0.0)
BuildRequires: (crate(shell-escape) >= 0.1.0 with crate(shell-escape) < 0.2.0)
BuildRequires: (crate(tar) >= 0.4.15 with crate(tar) < 0.5.0)
BuildRequires: (crate(tempfile) >= 3.0.0 with crate(tempfile) < 4.0.0)
BuildRequires: (crate(termcolor) >= 1.0.0 with crate(termcolor) < 2.0.0)
BuildRequires: (crate(toml) >= 0.4.2 with crate(toml) < 0.5.0)
BuildRequires: (crate(url) >= 1.1.0 with crate(url) < 2.0.0)
%if %{with check}
# [dev-dependencies]
BuildRequires: (crate(bufstream) >= 0.1.0 with crate(bufstream) < 0.2.0)
BuildRequires: git-core
%endif
%description
%{summary}.
%package devel
Summary: %{summary}
BuildArch: noarch
%description devel
Cargo, a package manager for Rust.
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 devel
%license LICENSE-APACHE LICENSE-MIT
%doc ARCHITECTURE.md CONTRIBUTING.md README.md src/doc
%{cargo_registry}/%{crate}-%{version}/
%exclude %{cargo_registry}/%{crate}-%{version}/{appveyor.yml,etc}
# We ship it as part of rust.src
%exclude %{_bindir}/cargo
%changelog
* Mon Sep 10 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.29.0-2
- Switch to crossbeam-utils
* Sat Aug 04 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.29.0-1
- Update to 0.29.0
* Sun Jul 22 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.28.0-1
- Initial package