14 |
# e.g. 1.10.0 wants rustc: 1.9.0-2016-05-24 |
# e.g. 1.10.0 wants rustc: 1.9.0-2016-05-24 |
15 |
# or nightly wants some beta-YYYY-MM-DD |
# or nightly wants some beta-YYYY-MM-DD |
16 |
# Note that cargo matches the program version here, not its crate version. |
# Note that cargo matches the program version here, not its crate version. |
17 |
%global bootstrap_rust 1.37.0 |
%global bootstrap_rust 1.36.0 |
18 |
%global bootstrap_cargo 1.37.0 |
%global bootstrap_cargo 1.36.0 |
19 |
%global bootstrap_channel 1.37.0 |
%global bootstrap_channel 1.36.0 |
20 |
%global bootstrap_date 2019-08-15 |
%global bootstrap_date 2019-07-04 |
21 |
|
|
22 |
# Only the specified arches will use bootstrap binaries. |
# Only the specified arches will use bootstrap binaries. |
23 |
#global bootstrap_arches %%{rust_arches} |
#global bootstrap_arches %%{rust_arches} |
41 |
%if 0%{?rhel} && !0%{?epel} |
%if 0%{?rhel} && !0%{?epel} |
42 |
%bcond_without bundled_llvm |
%bcond_without bundled_llvm |
43 |
%else |
%else |
44 |
%bcond_with bundled_llvm |
%bcond_without bundled_llvm |
45 |
%endif |
%endif |
46 |
|
|
47 |
# libgit2-sys expects to use its bundled library, which is sometimes just a |
# libgit2-sys expects to use its bundled library, which is sometimes just a |
64 |
%endif |
%endif |
65 |
|
|
66 |
Name: rust |
Name: rust |
67 |
Version: 1.38.0 |
Version: 1.37.0 |
68 |
Release: %mkrel 1 |
Release: %mkrel 2 |
69 |
Summary: The Rust Programming Language |
Summary: The Rust Programming Language |
70 |
%if 0%{?mageia} |
%if 0%{?mageia} |
71 |
Group: Development/Other |
Group: Development/Other |
86 |
# We do have the necessary fix in our LLVM 7. |
# We do have the necessary fix in our LLVM 7. |
87 |
Patch1: rust-pr57840-llvm7-debuginfo-variants.patch |
Patch1: rust-pr57840-llvm7-debuginfo-variants.patch |
88 |
|
|
|
# Mask a warning-as-error when rebuilding 1.38 with 1.38 |
|
|
Patch2: rustc-1.38.0-rebuild-bootstrap.patch |
|
|
|
|
|
# Reduce the size of rust-std |
|
|
# https://github.com/rust-lang/rust/pull/64823 |
|
|
Patch3: 0001-WIP-minimize-the-rust-std-component.patch |
|
|
|
|
89 |
# Upstream patch to fix typenum crate build on i386/i486/i586. |
# Upstream patch to fix typenum crate build on i386/i486/i586. |
90 |
Patch4: typenum-pr115-fix-log2-rounding-error.patch |
Patch2: typenum-pr115-fix-log2-rounding-error.patch |
91 |
|
|
92 |
# Get the Rust triple for any arch. |
# Get the Rust triple for any arch. |
93 |
%{lua: function rust_triple(arch) |
%{lua: function rust_triple(arch) |
430 |
|
|
431 |
%patch1 -p1 -R |
%patch1 -p1 -R |
432 |
%patch2 -p1 |
%patch2 -p1 |
|
%patch3 -p1 |
|
|
%patch4 -p1 |
|
433 |
|
|
434 |
%if "%{python}" == "python3" |
%if "%{python}" == "python3" |
435 |
sed -i.try-py3 -e '/try python2.7/i try python3 "$@"' ./configure |
sed -i.try-py3 -e '/try python2.7/i try python3 "$@"' ./configure |
482 |
find vendor -name .cargo-checksum.json \ |
find vendor -name .cargo-checksum.json \ |
483 |
-exec sed -i.uncheck -e 's/"files":{[^}]*}/"files":{ }/' '{}' '+' |
-exec sed -i.uncheck -e 's/"files":{[^}]*}/"files":{ }/' '{}' '+' |
484 |
|
|
|
# Sometimes Rust sources start with #![...] attributes, and "smart" editors think |
|
|
# it's a shebang and make them executable. Then brp-mangle-shebangs gets upset... |
|
|
find -name '*.rs' -type f -perm /111 -exec chmod -v -x '{}' '+' |
|
|
|
|
485 |
|
|
486 |
%build |
%build |
487 |
|
|
567 |
(cd "%{buildroot}%{rustlibdir}/%{rust_triple}/lib" && |
(cd "%{buildroot}%{rustlibdir}/%{rust_triple}/lib" && |
568 |
find ../../../../%{_lib} -maxdepth 1 -name '*.so' | |
find ../../../../%{_lib} -maxdepth 1 -name '*.so' | |
569 |
while read lib; do |
while read lib; do |
570 |
if [ -f "${lib##*/}" ]; then |
# make sure they're actually identical! |
571 |
# make sure they're actually identical! |
cmp "$lib" "${lib##*/}" |
572 |
cmp "$lib" "${lib##*/}" |
ln -v -f -s -t . "$lib" |
|
ln -v -f -s -t . "$lib" |
|
|
fi |
|
573 |
done) |
done) |
574 |
|
|
575 |
# Remove installer artifacts (manifests, uninstall scripts, etc.) |
# Remove installer artifacts (manifests, uninstall scripts, etc.) |