Blob Blame History Raw
# Generated by rust2rpm
# Tests are too much environment dependent
%bcond_with check
%global debug_package %{nil}

# We ship it as part of rust.src
%global __cargo_is_bin() false

%global crate cargo

Name:           rust-%{crate}
Version:        0.32.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
# * No rustc-workspace-hack
# * Bump crossbeam-utils to 0.6, https://github.com/rust-lang/cargo/commit/5e71ad6c5b4b4f9d63400464d331c6d210ac8e70
Patch0:         cargo-fix-metadata.diff
Patch1:         0001-Upgrade-crossbeam-utils-to-0.6.0.patch

ExclusiveArch:  %{rust_arches}

BuildRequires:  rust-packaging
BuildRequires:  (crate(atty/default) >= 0.2.0 with crate(atty/default) < 0.3.0)
BuildRequires:  (crate(bytesize/default) >= 1.0.0 with crate(bytesize/default) < 2.0.0)
BuildRequires:  (crate(clap/default) >= 2.31.2 with crate(clap/default) < 3.0.0)
BuildRequires:  (crate(crates-io/default) >= 0.20.0 with crate(crates-io/default) < 0.21.0)
BuildRequires:  (crate(crossbeam-utils/default) >= 0.6.0 with crate(crossbeam-utils/default) < 0.7.0)
BuildRequires:  (crate(crypto-hash/default) >= 0.3.1 with crate(crypto-hash/default) < 0.4.0)
BuildRequires:  (crate(curl-sys/default) >= 0.4.12 with crate(curl-sys/default) < 0.5.0)
BuildRequires:  (crate(curl/default) >= 0.4.17 with crate(curl/default) < 0.5.0)
BuildRequires:  (crate(curl/http2) >= 0.4.17 with crate(curl/http2) < 0.5.0)
BuildRequires:  (crate(env_logger/default) >= 0.5.11 with crate(env_logger/default) < 0.6.0)
BuildRequires:  (crate(failure/default) >= 0.1.2 with crate(failure/default) < 0.2.0)
BuildRequires:  (crate(filetime/default) >= 0.2.0 with crate(filetime/default) < 0.3.0)
BuildRequires:  (crate(flate2/default) >= 1.0.3 with crate(flate2/default) < 2.0.0)
BuildRequires:  (crate(fs2/default) >= 0.4.0 with crate(fs2/default) < 0.5.0)
BuildRequires:  (crate(git2-curl/default) >= 0.8.1 with crate(git2-curl/default) < 0.9.0)
BuildRequires:  (crate(git2/default) >= 0.7.5 with crate(git2/default) < 0.8.0)
BuildRequires:  (crate(glob/default) >= 0.2.11 with crate(glob/default) < 0.3.0)
BuildRequires:  (crate(hex/default) >= 0.3.0 with crate(hex/default) < 0.4.0)
BuildRequires:  (crate(home/default) >= 0.3.0 with crate(home/default) < 0.4.0)
BuildRequires:  (crate(ignore/default) >= 0.4.0 with crate(ignore/default) < 0.5.0)
BuildRequires:  (crate(jobserver/default) >= 0.1.11 with crate(jobserver/default) < 0.2.0)
BuildRequires:  (crate(lazy_static/default) >= 1.0.0 with crate(lazy_static/default) < 2.0.0)
BuildRequires:  (crate(lazycell/default) >= 1.2.0 with crate(lazycell/default) < 2.0.0)
BuildRequires:  (crate(libc/default) >= 0.2.0 with crate(libc/default) < 0.3.0)
BuildRequires:  (crate(libgit2-sys/default) >= 0.7.9 with crate(libgit2-sys/default) < 0.8.0)
BuildRequires:  (crate(log/default) >= 0.4.0 with crate(log/default) < 0.5.0)
BuildRequires:  (crate(num_cpus/default) >= 1.0.0 with crate(num_cpus/default) < 2.0.0)
BuildRequires:  (crate(opener/default) >= 0.3.0 with crate(opener/default) < 0.4.0)
BuildRequires:  (crate(openssl/default) >= 0.10.11 with crate(openssl/default) < 0.11.0)
BuildRequires:  (crate(rustfix/default) >= 0.4.2 with crate(rustfix/default) < 0.5.0)
BuildRequires:  (crate(same-file/default) >= 1.0.0 with crate(same-file/default) < 2.0.0)
BuildRequires:  (crate(semver/default) >= 0.9.0 with crate(semver/default) < 0.10.0)
BuildRequires:  (crate(semver/serde) >= 0.9.0 with crate(semver/serde) < 0.10.0)
BuildRequires:  (crate(serde/default) >= 1.0.0 with crate(serde/default) < 2.0.0)
BuildRequires:  (crate(serde_derive/default) >= 1.0.0 with crate(serde_derive/default) < 2.0.0)
BuildRequires:  (crate(serde_ignored/default) >= 0.0.4 with crate(serde_ignored/default) < 0.0.5)
BuildRequires:  (crate(serde_json/default) >= 1.0.30 with crate(serde_json/default) < 2.0.0)
BuildRequires:  (crate(serde_json/raw_value) >= 1.0.30 with crate(serde_json/raw_value) < 2.0.0)
BuildRequires:  (crate(shell-escape/default) >= 0.1.4 with crate(shell-escape/default) < 0.2.0)
BuildRequires:  (crate(tar) >= 0.4.15 with crate(tar) < 0.5.0)
BuildRequires:  (crate(tempfile/default) >= 3.0.0 with crate(tempfile/default) < 4.0.0)
BuildRequires:  (crate(termcolor/default) >= 1.0.0 with crate(termcolor/default) < 2.0.0)
BuildRequires:  (crate(toml/default) >= 0.4.2 with crate(toml/default) < 0.5.0)
BuildRequires:  (crate(unicode-width/default) >= 0.1.5 with crate(unicode-width/default) < 0.2.0)
BuildRequires:  (crate(url/default) >= 1.1.0 with crate(url/default) < 2.0.0)
%if %{with check}
BuildRequires:  (crate(bufstream/default) >= 0.1.0 with crate(bufstream/default) < 0.2.0)
BuildRequires:  (crate(proptest/default) >= 0.8.7 with crate(proptest/default) < 0.9.0)
BuildRequires:  git-core
%endif

%global _description \
Cargo, a package manager for Rust.

%description %{_description}

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

%description    devel %{_description}

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

%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}

%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 "default" feature of "%{crate}" crate.

%files       -n %{name}+default-devel
%ghost %{cargo_registry}/%{crate}-%{version}/Cargo.toml

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

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

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

%files       -n %{name}+openssl-devel
%ghost %{cargo_registry}/%{crate}-%{version}/Cargo.toml

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

%build
%cargo_build

%install
%cargo_install

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

%changelog
* Sat Dec 15 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.32.0-2
- Bump crossbeam-utils to 0.6

* Thu Dec 06 2018 Josh Stone <jistone@redhat.com> - 0.32.0-1
- Update to 0.32.0

* Sat Nov 17 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.31.0-1
- Update to 0.31.0

* Tue Nov 13 2018 Josh Stone <jistone@redhat.com> - 0.30.0-2
- Adapt to new packaging

* 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