+# NOTE: for versions >= 0.29 see rust.spec
#
# Conditional build:
%bcond_with bootstrap # bootstrap using precompiled binaries
Summary: Rust's package manager and build tool
Summary(pl.UTF-8): Zarządca pakietów i narzędzie do budowania
Name: cargo
-Version: 0.22.0
-Release: 2
+Version: 0.26.0
+Release: 3.1
License: Apache v2.0 or MIT
Group: Development/Tools
Source0: https://github.com/rust-lang/cargo/archive/%{cargo_version}/%{name}-%{cargo_version}.tar.gz
-# Source0-md5: 3a781687f7ac248d83efc4cfa642a260
+# Source0-md5: 9929f01186583c5c9f01b587356a7c92
Source2: https://static.rust-lang.org/dist/%{name}-%{cargo_bootstrap}-x86_64-unknown-linux-gnu.tar.gz
# Source2-md5: d2cbab6378c1f60b483efa0f076a8f81
Source3: https://static.rust-lang.org/dist/%{name}-%{cargo_bootstrap}-i686-unknown-linux-gnu.tar.gz
# It's so big because some of the -sys crates include the C library source they
# want to link to. With our -devel buildreqs in place, they'll be used instead.
# FIXME: These should all eventually be packaged on their own!
-Source4: %{name}-%{version}-vendor.tar.xz
-# Source4-md5: 0e0595ee6ced6164052633df6a8a9eab
+# PLD: using sources vendored by Fedora
+Source4: https://src.fedoraproject.org/repo/pkgs/cargo/%{name}-%{version}-vendor.tar.xz/sha512/6ed2a1644c9b18fc24ddad5350d41b6c36cd5b62de4cf0b748a57b589f4f0ac12f91461989158d58d0892bf6fc2c1626cf574e7e2b9da4b0e35f72dfd88f9048/%{name}-%{version}-vendor.tar.xz
+# Source4-md5: bf5dd065f46ece6a0d30dbd3216508a0
+Patch0: x32.patch
+Patch1: build_fix.patch
+Patch2: %{name}-url-buildfix.patch
URL: https://crates.io/
%{!?with_bootstrap:BuildRequires: %{name} >= 0.13.0}
BuildRequires: cmake
BuildRequires: pkgconfig
BuildRequires: zlib-devel
Requires: rust
-ExclusiveArch: %{x8664} %{ix86}
+ExclusiveArch: %{x8664} %{ix86} x32
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+%ifarch x32
+%define rust_triple x86_64-unknown-linux-gnux32
+%else
%define rust_triple %{_target_cpu}-unknown-linux-gnu
+%endif
%if %{with bootstrap}
%define bootstrap_root cargo-%{cargo_bootstrap}-%{rust_triple}
%prep
%setup -q -n %{name}-%{cargo_version} -a4
+%ifarch x32
+%patch0 -p1
+%endif
+
+%patch1 -p1
+%patch2 -p1
+
%if %{with bootstrap}
%ifarch %{x8664}
tar xf %{SOURCE2}