diff --git a/.gitignore b/.gitignore index 7e89bb7..b2c9e29 100644 --- a/.gitignore +++ b/.gitignore @@ -18,3 +18,12 @@ /cargo-nightly-powerpc64-unknown-linux-gnu.tar.gz /cargo-nightly-s390x-unknown-linux-gnu.tar.gz /cargo-0.15.0.tar.gz +/cargo-0.16.0.tar.gz +/cargo-0.16.0-aarch64-unknown-linux-gnu.tar.gz +/cargo-0.16.0-armv7-unknown-linux-gnueabihf.tar.gz +/cargo-0.16.0-i686-unknown-linux-gnu.tar.gz +/cargo-0.16.0-powerpc64le-unknown-linux-gnu.tar.gz +/cargo-0.16.0-powerpc64-unknown-linux-gnu.tar.gz +/cargo-0.16.0-s390x-unknown-linux-gnu.tar.gz +/cargo-0.16.0-x86_64-unknown-linux-gnu.tar.gz +/cargo-0.16.0-vendor.tar.xz diff --git a/cargo.spec b/cargo.spec index 5b22ecf..5cc04b1 100644 --- a/cargo.spec +++ b/cargo.spec @@ -2,17 +2,18 @@ # https://forge.rust-lang.org/platform-support.html %global rust_arches x86_64 i686 armv7hl aarch64 ppc64 ppc64le s390x -# To bootstrap from scratch, set the date from src/snapshots.txt -# e.g. 0.11.0 wants 2016-03-21 -%global bootstrap_date 2016-11-02 -# (using a newer version than required to get vendor directories and more archs) - # Only the specified arches will use bootstrap binaries. #global bootstrap_arches %%{rust_arches} +%if 0%{?rhel} +%bcond_without bundled_libgit2 +%else +%bcond_with bundled_libgit2 +%endif + Name: cargo -Version: 0.15.0 -Release: 4%{?dist} +Version: 0.16.0 +Release: 1%{?dist} Summary: Rust's package manager and build tool License: ASL 2.0 or MIT URL: https://crates.io/ @@ -48,8 +49,7 @@ end} for arch in string.gmatch(rpm.expand("%{bootstrap_arches}"), "%S+") do table.insert(bootstrap_arches, arch) end - local base = rpm.expand("https://static.rust-lang.org/cargo-dist" - .."/%{bootstrap_date}/cargo-nightly") + local base = rpm.expand("https://static.rust-lang.org/dist/cargo-%{version}") local target_arch = rpm.expand("%{_target_cpu}") for i, arch in ipairs(bootstrap_arches) do i = i + 10 @@ -73,8 +73,6 @@ BuildRequires: rust BuildRequires: make BuildRequires: cmake BuildRequires: gcc -BuildRequires: python2 >= 2.7 -BuildRequires: curl %ifarch %{bootstrap_arches} %global bootstrap_root cargo-nightly-%{rust_triple} @@ -86,12 +84,17 @@ BuildRequires: %{name} >= 0.13.0 # Indirect dependencies for vendored -sys crates above BuildRequires: libcurl-devel -BuildRequires: libgit2-devel BuildRequires: libssh2-devel BuildRequires: openssl-devel BuildRequires: zlib-devel BuildRequires: pkgconfig +%if %with bundled_libgit2 +Provides: bundled(libgit2) = 0.24.0 +%else +BuildRequires: libgit2-devel >= 0.24 +%endif + # Cargo is not much use without Rust Requires: rust @@ -131,18 +134,10 @@ EOF %build -%ifarch aarch64 %{mips} %{power64} -%ifarch %{bootstrap_arches} -# Upstream binaries have a 4k-paged jemalloc, which breaks with Fedora 64k pages. -# See https://github.com/rust-lang/rust/issues/36994 -# Fixed by https://github.com/rust-lang/rust/issues/37392 -# So we can remove this when bootstrap reaches Rust 1.14.0, Cargo ~0.15.0. -export MALLOC_CONF=lg_dirty_mult:-1 -%endif -%endif - +%if %without bundled_libgit2 # convince libgit2-sys to use the distro libgit2 export LIBGIT2_SYS_USE_PKG_CONFIG=1 +%endif # use our offline registry mkdir -p .cargo @@ -150,12 +145,13 @@ export CARGO_HOME=$PWD/.cargo # This should eventually migrate to distro policy # Enable optimization, debuginfo, and link hardening. -export RUSTFLAGS="-C opt-level=3 -g -Clink-args=-Wl,-z,relro,-z,now" +export RUSTFLAGS="-C opt-level=3 -g -Clink-arg=-Wl,-z,relro,-z,now" %configure --disable-option-checking \ --build=%{rust_triple} --host=%{rust_triple} --target=%{rust_triple} \ --rustc=%{_bindir}/rustc --rustdoc=%{_bindir}/rustdoc \ --cargo=%{local_cargo} \ + --release-channel=stable \ %{nil} %make_build VERBOSE=1 @@ -193,6 +189,11 @@ rm -rf %{buildroot}/%{_docdir}/%{name}/ %changelog +* Thu Feb 09 2017 Josh Stone - 0.16.0-1 +- Update to 0.16.0. +- Start using the current upstream release for bootstrap. +- Merge and clean up conditionals for epel7. + * Tue Feb 07 2017 Igor Gnatenko - 0.15.0-4 - Disable bootstrap diff --git a/sources b/sources index 70e6999..6f85061 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ -SHA512 (cargo-0.15.0.tar.gz) = a5917d500697ffd000204716a1802e83633d0fd1859a918d57b6add932aa7b935f4ca3cd7ac206b1565b0af29414306198500e036fbf4838f4e91920a84e7dfe -SHA512 (cargo-0.15.0-vendor.tar.xz) = 542123ec07c9059082b44b1b95c7d2dfcc32097c51353fe113fd222258cb6a2f9e83fe8b526ed9ef9960ee379c886903b43984697bf31b17353cd605557328a0 +SHA512 (cargo-0.16.0.tar.gz) = d5763a4e3c5992a457febd663c218d98198849071b173fb7e9f1067c8239aefb32f28827710e3d98f4c2afc3866c62d0bff02044b70a857d9b9540938826eb99 +SHA512 (cargo-0.16.0-vendor.tar.xz) = 09dac7598eb5ba7c5a8f0d164b566aa1ebab9fd994fecba5ebf9583a5027a0a60a01982a7780038d238f4dd82a232b925773f14fd80807f2499d9040f55c1591 SHA512 (rust-installer-4f994850808a572e2cc8d43f968893c8e942e9bf.tar.gz) = 9ceb4755890ad3ae68ce141231c5114077261e0279d3a9a6208053f8d3386c9198e6b94d6321b456648dd5baa86dfc3ae81df44b67d41b428d11afd6763f0cff diff --git a/sources-bootstrap b/sources-bootstrap index 9377052..acf45df 100644 --- a/sources-bootstrap +++ b/sources-bootstrap @@ -1,10 +1,10 @@ -SHA512 (cargo-0.15.0.tar.gz) = a5917d500697ffd000204716a1802e83633d0fd1859a918d57b6add932aa7b935f4ca3cd7ac206b1565b0af29414306198500e036fbf4838f4e91920a84e7dfe -SHA512 (cargo-0.15.0-vendor.tar.xz) = 542123ec07c9059082b44b1b95c7d2dfcc32097c51353fe113fd222258cb6a2f9e83fe8b526ed9ef9960ee379c886903b43984697bf31b17353cd605557328a0 -SHA512 (cargo-nightly-aarch64-unknown-linux-gnu.tar.gz) = 4512c1320f4ecf7b5176b9817b00caf367501f5859ff79a48458e232db2f108f103184bb5b7bb1ebbeb7f53ca80d1036b8da6777e45f703b82827d8e5d2ee258 -SHA512 (cargo-nightly-armv7-unknown-linux-gnueabihf.tar.gz) = 93f438f503490e4198866347671d587fc41b88ee6fb408487569a47fa77270e1395437806f3cc7540248b72bb5b6f94afe6d9d46ebb275ee1cfd068dd3555348 -SHA512 (cargo-nightly-i686-unknown-linux-gnu.tar.gz) = c00bb5073c422ae0f7561dab527fce0a3f1b9daaf4dce8be8cdcab264625dea6727a93a405ce895cbc3c4d4066853c292207ab377ce08350f65ca56fb9599cc7 -SHA512 (cargo-nightly-powerpc64le-unknown-linux-gnu.tar.gz) = 427d118fa679b417e7725d06eb8d2cf4588f284189b653d24840ccbb442df11c782befe0bf33c852612015ac0328e651c1707c2eed8e444f149fd2b7edf1a770 -SHA512 (cargo-nightly-powerpc64-unknown-linux-gnu.tar.gz) = d581df25d2899135d8019636f2337c50b1542038d2791d3f7450054bcf2686f5bdf8f445112a0f0ba81d8690cde5d231d5adafab9e93256ccdd00fc5a2cc2cbb -SHA512 (cargo-nightly-s390x-unknown-linux-gnu.tar.gz) = 35476b178e14ea6f6cc134dcceceac715b9f17958b694bc11c7e44594d089fa449d343b8bb484de53b797ffa9650041df31cfcb2efcab39d9fabffefb843a237 -SHA512 (cargo-nightly-x86_64-unknown-linux-gnu.tar.gz) = 7dfd83ac94cf0d1ddff15fc41e870c6fa9082e9a97527c6f99d64a1143b1af1561da3767bd7079adffa4deae1ab4749c919972bbd763f91ee66b8dc09e6f279c +SHA512 (cargo-0.16.0.tar.gz) = d5763a4e3c5992a457febd663c218d98198849071b173fb7e9f1067c8239aefb32f28827710e3d98f4c2afc3866c62d0bff02044b70a857d9b9540938826eb99 +SHA512 (cargo-0.16.0-vendor.tar.xz) = 09dac7598eb5ba7c5a8f0d164b566aa1ebab9fd994fecba5ebf9583a5027a0a60a01982a7780038d238f4dd82a232b925773f14fd80807f2499d9040f55c1591 +SHA512 (cargo-0.16.0-aarch64-unknown-linux-gnu.tar.gz) = a6cf2fb429adf682a87cf8591ebe4baa04ed33495c1b81a6bc667a608551e8c95e08ea577023f35bd9f6b2118f5b2d6a8e55dce0e278564da807dd6aadc6f604 +SHA512 (cargo-0.16.0-armv7-unknown-linux-gnueabihf.tar.gz) = 68c0d8191a85a627037874c3fda72b88a12db0e0606bcf00676d705cf04ed977ec909bcacf5269f5a6ef6bf4d8115d07c88859b5b67053f02678333a4c6162b1 +SHA512 (cargo-0.16.0-i686-unknown-linux-gnu.tar.gz) = b32560b64f2596ddc3536b113d3af21348093cf3fcb921faa6df77232451dfea35ba0827e3564d65047b0bcc0df2391bf4ab7c3cdf774aca1fe02db495f0eb14 +SHA512 (cargo-0.16.0-powerpc64le-unknown-linux-gnu.tar.gz) = e3235ef0141c2f611c9405f39c8f5a34906ebb3fe73f51a25fc27a09d60999a42c64bcf0f341e1765d974ee81eabb554978550c4b7f3c715e676ea1190081e63 +SHA512 (cargo-0.16.0-powerpc64-unknown-linux-gnu.tar.gz) = f6e82d04bd91fa032bc430e906c6825b557555906e2f298b2ecf6ccb52b0628694fe9e46b1297458643f2a35aafc5237eabfea487eaf0f6c1dec3c9d5e791740 +SHA512 (cargo-0.16.0-s390x-unknown-linux-gnu.tar.gz) = 19f8b505a848b7be63d8ef47eb04c8ac08b882f8aa5d429d9473065008c9c1eb433995a1508556e931ddd5228bc85b9ac1a10eb9ae1b07771e2766dbffc35ea9 +SHA512 (cargo-0.16.0-x86_64-unknown-linux-gnu.tar.gz) = 83b8066c5f1d27a60fafd8e024772a9bce13962807af9200e4f9d2777792285f9b625cfce8f78ab82760ebb92f493f1814419f1420aba58ce8d50878f727c915 SHA512 (rust-installer-4f994850808a572e2cc8d43f968893c8e942e9bf.tar.gz) = 9ceb4755890ad3ae68ce141231c5114077261e0279d3a9a6208053f8d3386c9198e6b94d6321b456648dd5baa86dfc3ae81df44b67d41b428d11afd6763f0cff