Merge branch 'master' into epel7
This commit is contained in:
commit
0091da19db
8
.gitignore
vendored
8
.gitignore
vendored
@ -35,3 +35,11 @@
|
||||
/rustc-1.14.0-x86_64-unknown-linux-gnu.tar.gz
|
||||
/rustc-1.15.0-powerpc64-unknown-linux-gnu.tar.gz
|
||||
/rustc-1.15.0-powerpc64le-unknown-linux-gnu.tar.gz
|
||||
/rust-1.15.1-aarch64-unknown-linux-gnu.tar.gz
|
||||
/rust-1.15.1-armv7-unknown-linux-gnueabihf.tar.gz
|
||||
/rust-1.15.1-i686-unknown-linux-gnu.tar.gz
|
||||
/rust-1.15.1-powerpc64le-unknown-linux-gnu.tar.gz
|
||||
/rust-1.15.1-powerpc64-unknown-linux-gnu.tar.gz
|
||||
/rust-1.15.1-s390x-unknown-linux-gnu.tar.gz
|
||||
/rust-1.15.1-x86_64-unknown-linux-gnu.tar.gz
|
||||
/rustc-1.16.0-src.tar.gz
|
||||
|
26
rust-1.16.0-configure-no-override.patch
Normal file
26
rust-1.16.0-configure-no-override.patch
Normal file
@ -0,0 +1,26 @@
|
||||
diff --git a/configure b/configure
|
||||
index 505767cede55..4074a1e2f765 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -753,8 +753,8 @@ case "$CFG_RELEASE_CHANNEL" in
|
||||
*-pc-windows-gnu)
|
||||
;;
|
||||
*)
|
||||
- CFG_ENABLE_DEBUGINFO_LINES=1
|
||||
- CFG_ENABLE_DEBUGINFO_ONLY_STD=1
|
||||
+ # CFG_ENABLE_DEBUGINFO_LINES=1
|
||||
+ # CFG_ENABLE_DEBUGINFO_ONLY_STD=1
|
||||
;;
|
||||
esac
|
||||
|
||||
@@ -765,8 +765,8 @@ case "$CFG_RELEASE_CHANNEL" in
|
||||
*-pc-windows-gnu)
|
||||
;;
|
||||
*)
|
||||
- CFG_ENABLE_DEBUGINFO_LINES=1
|
||||
- CFG_ENABLE_DEBUGINFO_ONLY_STD=1
|
||||
+ # CFG_ENABLE_DEBUGINFO_LINES=1
|
||||
+ # CFG_ENABLE_DEBUGINFO_ONLY_STD=1
|
||||
;;
|
||||
esac
|
||||
;;
|
102
rust.spec
102
rust.spec
@ -8,8 +8,10 @@
|
||||
# To bootstrap from scratch, set the channel and date from src/stage0.txt
|
||||
# e.g. 1.10.0 wants rustc: 1.9.0-2016-05-24
|
||||
# or nightly wants some beta-YYYY-MM-DD
|
||||
%global bootstrap_channel 1.14.0
|
||||
%global bootstrap_date 2016-12-18
|
||||
%global bootstrap_rust 1.15.1
|
||||
%global bootstrap_cargo 0.16.0
|
||||
%global bootstrap_channel %{bootstrap_rust}
|
||||
%global bootstrap_date 2017-02-09
|
||||
|
||||
# Only the specified arches will use bootstrap binaries.
|
||||
#global bootstrap_arches %%{rust_arches}
|
||||
@ -30,10 +32,18 @@
|
||||
%bcond_with bundled_llvm
|
||||
%endif
|
||||
|
||||
# LLDB isn't available everywhere...
|
||||
%if 0%{?rhel}
|
||||
%bcond_with lldb
|
||||
%else
|
||||
%bcond_without lldb
|
||||
%endif
|
||||
|
||||
|
||||
|
||||
Name: rust
|
||||
Version: 1.15.1
|
||||
Release: 2%{?dist}
|
||||
Version: 1.16.0
|
||||
Release: 1%{?dist}
|
||||
Summary: The Rust Programming Language
|
||||
License: (ASL 2.0 or MIT) and (BSD and ISC and MIT)
|
||||
# ^ written as: (rust itself) and (bundled libraries)
|
||||
@ -47,6 +57,8 @@ ExclusiveArch: %{rust_arches}
|
||||
%endif
|
||||
Source0: https://static.rust-lang.org/dist/%{rustc_package}.tar.gz
|
||||
|
||||
Patch1: rust-1.16.0-configure-no-override.patch
|
||||
|
||||
# Get the Rust triple for any arch.
|
||||
%{lua: function rust_triple(arch)
|
||||
local abi = "gnu"
|
||||
@ -72,7 +84,7 @@ end}
|
||||
table.insert(bootstrap_arches, arch)
|
||||
end
|
||||
local base = rpm.expand("https://static.rust-lang.org/dist/%{bootstrap_date}"
|
||||
.."/rustc-%{bootstrap_channel}")
|
||||
.."/rust-%{bootstrap_channel}")
|
||||
local target_arch = rpm.expand("%{_target_cpu}")
|
||||
for i, arch in ipairs(bootstrap_arches) do
|
||||
print(string.format("Source%d: %s-%s.tar.gz\n",
|
||||
@ -85,11 +97,12 @@ end}
|
||||
%endif
|
||||
|
||||
%ifarch %{bootstrap_arches}
|
||||
%global bootstrap_root rustc-%{bootstrap_channel}-%{rust_triple}
|
||||
%global local_rust_root %{_builddir}/%{bootstrap_root}/rustc
|
||||
Provides: bundled(%{name}-bootstrap) = %{bootstrap_channel}
|
||||
%global bootstrap_root rust-%{bootstrap_channel}-%{rust_triple}
|
||||
%global local_rust_root %{_builddir}/%{bootstrap_root}%{_prefix}
|
||||
Provides: bundled(%{name}-bootstrap) = %{bootstrap_rust}
|
||||
%else
|
||||
BuildRequires: %{name} >= %{bootstrap_channel}
|
||||
BuildRequires: cargo >= %{bootstrap_cargo}
|
||||
BuildRequires: %{name} >= %{bootstrap_rust}
|
||||
BuildConflicts: %{name} > %{version}
|
||||
%global local_rust_root %{_prefix}
|
||||
%endif
|
||||
@ -124,6 +137,9 @@ BuildConflicts: llvm-static
|
||||
# make check needs "ps" for src/test/run-pass/wait-forked-but-failed-child.rs
|
||||
BuildRequires: procps-ng
|
||||
|
||||
# debuginfo-gdb tests need gdb
|
||||
BuildRequires: gdb
|
||||
|
||||
# TODO: work on unbundling these!
|
||||
Provides: bundled(hoedown) = 3.0.5
|
||||
Provides: bundled(jquery) = 2.1.4
|
||||
@ -151,7 +167,7 @@ Requires: rust-rpm-macros
|
||||
%endif
|
||||
|
||||
# ALL Rust libraries are private, because they don't keep an ABI.
|
||||
%global _privatelibs lib.*-[[:xdigit:]]{8}[.]so.*
|
||||
%global _privatelibs lib.*-[[:xdigit:]]*[.]so.*
|
||||
%global __provides_exclude ^(%{_privatelibs})$
|
||||
%global __requires_exclude ^(%{_privatelibs})$
|
||||
|
||||
@ -187,6 +203,20 @@ This package includes the rust-gdb script, which allows easier debugging of Rust
|
||||
programs.
|
||||
|
||||
|
||||
%if %with lldb
|
||||
|
||||
%package lldb
|
||||
Summary: LLDB pretty printers for Rust
|
||||
BuildArch: noarch
|
||||
Requires: lldb
|
||||
|
||||
%description lldb
|
||||
This package includes the rust-lldb script, which allows easier debugging of Rust
|
||||
programs.
|
||||
|
||||
%endif
|
||||
|
||||
|
||||
%package doc
|
||||
Summary: Documentation for Rust
|
||||
# NOT BuildArch: noarch
|
||||
@ -203,6 +233,9 @@ its standard library.
|
||||
|
||||
%ifarch %{bootstrap_arches}
|
||||
%setup -q -n %{bootstrap_root} -T -b %{bootstrap_source}
|
||||
./install.sh --components=cargo,rustc,rust-std-%{rust_triple} \
|
||||
--prefix=./%{_prefix} --disable-ldconfig
|
||||
test -f '%{local_rust_root}/bin/cargo'
|
||||
test -f '%{local_rust_root}/bin/rustc'
|
||||
%endif
|
||||
|
||||
@ -227,7 +260,9 @@ sed -i.jemalloc -e '1i // ignore-test jemalloc is disabled' \
|
||||
src/test/run-pass/allocator-default.rs
|
||||
|
||||
%if 0%{?epel}
|
||||
sed -i.cmake -e 's/CFG_CMAKE cmake/&3/' configure
|
||||
mkdir -p cmake-bin
|
||||
ln -s /usr/bin/cmake3 cmake-bin/cmake
|
||||
%global cmake_path $PWD/cmake-bin
|
||||
%endif
|
||||
|
||||
%if %{without bundled_llvm} && %{with llvm_static}
|
||||
@ -237,11 +272,16 @@ sed -i.ffi -e '$a #[link(name = "ffi")] extern {}' \
|
||||
src/librustc_llvm/lib.rs
|
||||
%endif
|
||||
|
||||
%patch1 -p1 -b .no-override
|
||||
|
||||
|
||||
%build
|
||||
|
||||
%{?cmake_path:export PATH=%{cmake_path}:$PATH}
|
||||
|
||||
# Use hardening ldflags.
|
||||
export RUSTFLAGS="-Clink-arg=-Wl,-z,relro,-z,now"
|
||||
%global rustflags -Clink-arg=-Wl,-z,relro,-z,now
|
||||
export RUSTFLAGS="%{rustflags}"
|
||||
|
||||
# We're going to override --libdir when configuring to get rustlib into a
|
||||
# common path, but we'll fix the shared libraries during install.
|
||||
@ -257,14 +297,17 @@ export RUSTFLAGS="-Clink-arg=-Wl,-z,relro,-z,now"
|
||||
--disable-jemalloc \
|
||||
--disable-rpath \
|
||||
--enable-debuginfo \
|
||||
--disable-rustbuild \
|
||||
--enable-vendor \
|
||||
--release-channel=%{channel}
|
||||
|
||||
%make_build VERBOSE=1
|
||||
%make_build %{!?rhel:-Onone}
|
||||
|
||||
|
||||
%install
|
||||
%make_install VERBOSE=1
|
||||
%{?cmake_path:export PATH=%{cmake_path}:$PATH}
|
||||
export RUSTFLAGS="%{rustflags}"
|
||||
|
||||
%make_install
|
||||
|
||||
# The libdir libraries are identical to those under rustlib/, and we need
|
||||
# the latter in place to support dynamic linking for compiler plugins, so we'll
|
||||
@ -293,12 +336,20 @@ rm -f %{buildroot}%{_docdir}/%{name}/LICENSE-MIT
|
||||
find %{buildroot}%{_docdir}/%{name}/html -empty -delete
|
||||
find %{buildroot}%{_docdir}/%{name}/html -type f -exec chmod -x '{}' '+'
|
||||
|
||||
%if %without lldb
|
||||
rm -f %{buildroot}%{_bindir}/rust-lldb
|
||||
rm -f %{buildroot}%{rustlibdir}/etc/lldb_*.py*
|
||||
%endif
|
||||
|
||||
|
||||
%check
|
||||
%{?cmake_path:export PATH=%{cmake_path}:$PATH}
|
||||
export RUSTFLAGS="%{rustflags}"
|
||||
|
||||
# Note, many of the tests execute in parallel threads,
|
||||
# so it's better not to use a parallel make here.
|
||||
# The results are not stable on koji, so mask errors and just log it.
|
||||
make check-lite VERBOSE=1 -k || python2 src/etc/check-summary.py tmp/*.log || :
|
||||
make check || :
|
||||
|
||||
|
||||
%post -p /sbin/ldconfig
|
||||
@ -332,7 +383,18 @@ make check-lite VERBOSE=1 -k || python2 src/etc/check-summary.py tmp/*.log || :
|
||||
%{_bindir}/rust-gdb
|
||||
%dir %{rustlibdir}
|
||||
%dir %{rustlibdir}/etc
|
||||
%{rustlibdir}/etc/*.py*
|
||||
%{rustlibdir}/etc/debugger_*.py*
|
||||
%{rustlibdir}/etc/gdb_*.py*
|
||||
|
||||
|
||||
%if %with lldb
|
||||
%files lldb
|
||||
%{_bindir}/rust-lldb
|
||||
%dir %{rustlibdir}
|
||||
%dir %{rustlibdir}/etc
|
||||
%{rustlibdir}/etc/debugger_*.py*
|
||||
%{rustlibdir}/etc/lldb_*.py*
|
||||
%endif
|
||||
|
||||
|
||||
%files doc
|
||||
@ -347,6 +409,12 @@ make check-lite VERBOSE=1 -k || python2 src/etc/check-summary.py tmp/*.log || :
|
||||
|
||||
|
||||
%changelog
|
||||
* Thu Mar 16 2017 Josh Stone <jistone@redhat.com> - 1.16.0-1
|
||||
- Update to 1.16.0.
|
||||
- Use rustbuild instead of the old makefiles.
|
||||
- Update bootstrapping to include rust-std and cargo.
|
||||
- Add a rust-lldb subpackage.
|
||||
|
||||
* Fri Feb 10 2017 Josh Stone <jistone@redhat.com> - 1.15.1-2
|
||||
- Rebuild without bootstrap binaries.
|
||||
|
||||
|
2
sources
2
sources
@ -1 +1 @@
|
||||
SHA512 (rustc-1.15.1-src.tar.gz) = 10d533b17cf7f92b9dff14b399b5dd0ac8b68284eea072c85ede78a4e4c2c4fce8c781777124c64798057aceb6444535e02e067fd67ba3633c3e828fb4d2d339
|
||||
SHA512 (rustc-1.16.0-src.tar.gz) = 096b1b7406be9bc61161bb7cdd2061f2bc2174c161a31f4ed6ceecf7fc379f315fc2f7cb9f6c134ea4f8519c27bf6e5a3f712cf1e56d5785831d8c8374eb0ba5
|
||||
|
@ -1,8 +1,8 @@
|
||||
SHA512 (rustc-1.15.1-src.tar.gz) = 10d533b17cf7f92b9dff14b399b5dd0ac8b68284eea072c85ede78a4e4c2c4fce8c781777124c64798057aceb6444535e02e067fd67ba3633c3e828fb4d2d339
|
||||
SHA512 (rustc-1.14.0-aarch64-unknown-linux-gnu.tar.gz) = d08f666a394d7024ceef4e37e224a496192ea87cde398c6e2f71fa045661c560587a7c960118756dda8b62e1a7c2925eab024d054e9b79879299d55546915c5d
|
||||
SHA512 (rustc-1.14.0-armv7-unknown-linux-gnueabihf.tar.gz) = fb573088e2983350f29dbef909ca276e7ec98054c460ac8d910fdbcea9848f558952b122b38eb1b72fb52b659c0197c8ae105f422c5ce18b3a5cb69e6d1ebb40
|
||||
SHA512 (rustc-1.14.0-i686-unknown-linux-gnu.tar.gz) = 4a951439d8c001b8ff2f6aa2f505e23130209494026fdacea019aef05bebb2f0d3404df047ccedbe9f4140cb5163404db22a5b0977752c495fc45f739d1252fb
|
||||
SHA512 (rustc-1.14.0-powerpc64le-unknown-linux-gnu.tar.gz) = 174e18d2bd8fc9587ea93f437a7bb1e3c1ef172fb24b1f4473404f0012e7cbe80b38c226ac6fb6231987237021ecc5353e4a8acc6b2176b11b713a73aef6f43a
|
||||
SHA512 (rustc-1.14.0-powerpc64-unknown-linux-gnu.tar.gz) = 192175f475d3c52004358d3afa7c6c9a50d7f21e62b5ad81b9a10ecca5f2abad8c731728065efa5ba6dfe1a903e756be772bf104575af30c4aecebf2808c3f82
|
||||
SHA512 (rustc-1.14.0-s390x-unknown-linux-gnu.tar.gz) = 5514007bd2354fbbbf29786d8d6f55fccc564b872a2c32041c6a663535029816d6c485b9c237eb9d58a62a34e26ea504123025f7c189d98637ffb1e8d7b0cc64
|
||||
SHA512 (rustc-1.14.0-x86_64-unknown-linux-gnu.tar.gz) = da33a8c509d3a554bed3173f8cdd6fc3639646e5b12eae80654d83290160227238c6f9ff9c0247d63a90f48eeafc8dc31a4a02575ba43fa6d5f75ae58a347c32
|
||||
SHA512 (rustc-1.16.0-src.tar.gz) = 096b1b7406be9bc61161bb7cdd2061f2bc2174c161a31f4ed6ceecf7fc379f315fc2f7cb9f6c134ea4f8519c27bf6e5a3f712cf1e56d5785831d8c8374eb0ba5
|
||||
SHA512 (rust-1.15.1-aarch64-unknown-linux-gnu.tar.gz) = 734103680ffdc175a5a5f3278a338f839031119aa16c2440bee18668e9dffefe470aab1d78d13377e2e0bbd726b2044402aac6369d66653bf1715f4638f61693
|
||||
SHA512 (rust-1.15.1-armv7-unknown-linux-gnueabihf.tar.gz) = d3606e416571e741857c834bc8080e985e3269856577d342eebd2ebef2b7c3e6c0d085c2d03059a880f2e32c835f6d69277953eeac86b897bd67f4fc8893d961
|
||||
SHA512 (rust-1.15.1-i686-unknown-linux-gnu.tar.gz) = 13d602842e7a2ef360c80d3ec84ecd5d6c742ea6dad642394a2a57b28554a7758905b37daaf2bcc549428c5f9383307270f8508e8685748b906fc2b9230bc4ad
|
||||
SHA512 (rust-1.15.1-powerpc64le-unknown-linux-gnu.tar.gz) = e2608b6e9b34aa1c5f3de09a4785e4efe67170af06fa9f975b096d64e7debd012952e8c5c54d067ad0ed2704acb5cf1b62721e0e3f14a767fa61b1cd51f6bad2
|
||||
SHA512 (rust-1.15.1-powerpc64-unknown-linux-gnu.tar.gz) = 33552de33ad63330cb6e104f77105bf9b16eb20e43b8dee3303032b14e2540ac58b27f59e4ad5bb4c87f76a891c59e188a074db48e2e95ef4463d274d5721269
|
||||
SHA512 (rust-1.15.1-s390x-unknown-linux-gnu.tar.gz) = 083ad5b3cdaf5d7b56d4a6b02dbca8bbb9b0fb9a79a5d4799e5e6295a9a1248eef0ddb05df780f611b80537bd0372f47a2bbbe23063cd00c5eac616dd29eb043
|
||||
SHA512 (rust-1.15.1-x86_64-unknown-linux-gnu.tar.gz) = e089c455b1a7507aeed4652f05c0672c4e996e708c46f4405191f4b3a9d08403cab27f1a5a63f865d9a8f099f6ca980d2d2eef37aaa5e7e5bd751a3224e88b84
|
||||
|
Loading…
Reference in New Issue
Block a user