diff --git a/.gitignore b/.gitignore index 2feacea..1ced8d9 100644 --- a/.gitignore +++ b/.gitignore @@ -81,3 +81,19 @@ /rust-1.20.0-powerpc64-unknown-linux-gnu.tar.xz /rust-1.20.0-s390x-unknown-linux-gnu.tar.xz /rust-1.20.0-x86_64-unknown-linux-gnu.tar.xz +/rustc-1.22.1-src.tar.xz +/rust-1.21.0-aarch64-unknown-linux-gnu.tar.xz +/rust-1.21.0-armv7-unknown-linux-gnueabihf.tar.xz +/rust-1.21.0-i686-unknown-linux-gnu.tar.xz +/rust-1.21.0-powerpc64le-unknown-linux-gnu.tar.xz +/rust-1.21.0-powerpc64-unknown-linux-gnu.tar.xz +/rust-1.21.0-s390x-unknown-linux-gnu.tar.xz +/rust-1.21.0-x86_64-unknown-linux-gnu.tar.xz +/rustc-1.23.0-src.tar.xz +/rust-1.22.0-aarch64-unknown-linux-gnu.tar.xz +/rust-1.22.0-armv7-unknown-linux-gnueabihf.tar.xz +/rust-1.22.0-i686-unknown-linux-gnu.tar.xz +/rust-1.22.0-powerpc64le-unknown-linux-gnu.tar.xz +/rust-1.22.0-powerpc64-unknown-linux-gnu.tar.xz +/rust-1.22.0-s390x-unknown-linux-gnu.tar.xz +/rust-1.22.0-x86_64-unknown-linux-gnu.tar.xz diff --git a/rust-1.22.0-45566-option-checking.patch b/rust-1.22.0-45566-option-checking.patch deleted file mode 100644 index 777e1f5..0000000 --- a/rust-1.22.0-45566-option-checking.patch +++ /dev/null @@ -1,93 +0,0 @@ -commit 75277c72c0c6f603bb258383ad74d3082dc4a720 (from c1a0b6d9eb888ded9a7204db0d67d62b1cdc9944) -Merge: c1a0b6d9eb88 19714f55ee70 -Author: bors -Date: Sat Oct 28 07:08:52 2017 +0000 - - Auto merge of #45566 - cuviper:option-checking, r=alexcrichton - - configure.py: fix --disable-option-checking and extra config paths - - - indexing 'option-checking' out of `known_args` had a type error - - when option checking is disabled, don't error on duplicate args, just take the last - - add config.toml stubs for datadir, infodir, and localstatedir (which were already accepted, but broken) - - --- - - This fixes a regression from 1.21 to beta, when the configure script was rewritten in python. - -diff --git a/config.toml.example b/config.toml.example -index 261fe2053879..df0142b8d46d 100644 ---- a/config.toml.example -+++ b/config.toml.example -@@ -203,6 +203,16 @@ - # Where to install man pages in `prefix` above - #mandir = "share/man" - -+# Where to install data in `prefix` above (currently unused) -+#datadir = "share" -+ -+# Where to install additional info in `prefix` above (currently unused) -+#infodir = "share/info" -+ -+# Where to install local state (currently unused) -+# If this is a relative path, it will get installed in `prefix` above -+#localstatedir = "/var/lib" -+ - # ============================================================================= - # Options for compiling Rust code itself - # ============================================================================= -diff --git a/src/bootstrap/config.rs b/src/bootstrap/config.rs -index 66e5efcea4e8..33c7141e7044 100644 ---- a/src/bootstrap/config.rs -+++ b/src/bootstrap/config.rs -@@ -207,6 +207,11 @@ struct Install { - bindir: Option, - libdir: Option, - mandir: Option, -+ -+ // standard paths, currently unused -+ datadir: Option, -+ infodir: Option, -+ localstatedir: Option, - } - - /// TOML representation of how the LLVM build is configured. -diff --git a/src/bootstrap/configure.py b/src/bootstrap/configure.py -index 42425a164a20..579422c97993 100755 ---- a/src/bootstrap/configure.py -+++ b/src/bootstrap/configure.py -@@ -225,7 +225,12 @@ while i < len(sys.argv): - unknown_args.append(arg) - p("") - --if 'option-checking' not in known_args or known_args['option-checking'][1]: -+# Note: here and a few other places, we use [-1] to apply the *last* value -+# passed. But if option-checking is enabled, then the known_args loop will -+# also assert that options are only passed once. -+option_checking = ('option-checking' not in known_args -+ or known_args['option-checking'][-1][1]) -+if option_checking: - if len(unknown_args) > 0: - err("Option '" + unknown_args[0] + "' is not recognized") - if len(need_value_args) > 0: -@@ -238,7 +243,7 @@ config = {} - - def build(): - if 'build' in known_args: -- return known_args['build'][0][1] -+ return known_args['build'][-1][1] - return bootstrap.default_build_triple() - - -@@ -276,9 +281,9 @@ for key in known_args: - - # Ensure each option is only passed once - arr = known_args[key] -- if len(arr) > 1: -+ if option_checking and len(arr) > 1: - err("Option '{}' provided more than once".format(key)) -- option, value = arr[0] -+ option, value = arr[-1] - - # If we have a clear avenue to set our value in rustbuild, do so - if option.rustbuild is not None: diff --git a/rust.spec b/rust.spec index beffa9b..b61a636 100644 --- a/rust.spec +++ b/rust.spec @@ -8,10 +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_rust 1.21.0 -%global bootstrap_cargo 0.22.0 +%global bootstrap_rust 1.22.0 +%global bootstrap_cargo 0.23.0 %global bootstrap_channel %{bootstrap_rust} -%global bootstrap_date 2017-10-12 +%global bootstrap_date 2017-11-22 # Only the specified arches will use bootstrap binaries. #global bootstrap_arches %%{rust_arches} @@ -47,8 +47,8 @@ Name: rust -Version: 1.22.0 -Release: 0.beta.3%{?dist} +Version: 1.23.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) @@ -62,8 +62,6 @@ ExclusiveArch: %{rust_arches} %endif Source0: https://static.rust-lang.org/dist/%{rustc_package}.tar.xz -Patch1: rust-1.22.0-45566-option-checking.patch - # Get the Rust triple for any arch. %{lua: function rust_triple(arch) local abi = "gnu" @@ -121,13 +119,14 @@ BuildRequires: python2 BuildRequires: curl %if %with bundled_llvm -BuildRequires: cmake3 +BuildRequires: cmake3 >= 3.4.3 Provides: bundled(llvm) = 4.0 %else +BuildRequires: cmake >= 2.8.7 %if 0%{?epel} %global llvm llvm3.9 %endif -%if 0%{?fedora} >= 28 +%if 0%{?fedora} >= 27 %global llvm llvm4.0 %endif %if %defined llvm @@ -313,9 +312,6 @@ sed -i.ffi -e '$a #[link(name = "ffi")] extern {}' \ src/librustc_llvm/lib.rs %endif -%global _default_patch_fuzz 1 -%patch1 -p1 -b .option-checking - # The configure macro will modify some autoconf-related files, which upsets # cargo when it tries to verify checksums in those files. If we just truncate # that file list, cargo won't have anything to complain about. @@ -479,8 +475,11 @@ rm -f %{buildroot}%{rustlibdir}/etc/lldb_*.py* %changelog -* Wed Nov 15 2017 Josh Stone - 1.22.0-0.beta.3 -- beta test +* Mon Jan 08 2018 Josh Stone - 1.23.0-1 +- Update to 1.23.0. + +* Thu Nov 23 2017 Josh Stone - 1.22.1-1 +- Update to 1.22.1. * Thu Oct 12 2017 Josh Stone - 1.21.0-1 - Update to 1.21.0. diff --git a/sources b/sources index 47e0215..f5b3446 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (rustc-1.21.0-src.tar.xz) = 63b5c247ef7028c59bb246b96cb9917476d6d13cf68b37956e290248a1e53de3e4dbfad1dcae3c5c2cacc73c9dd212c50e45902c7d913fadeaac81db630bc951 +SHA512 (rustc-1.23.0-src.tar.xz) = 2e605121dd5152c1a898b263d634b0ac55c7ea79c7fbc9f72c432e68fb397618a267283f3dfb0f77d5e189720d788b1937e8114a1f71bdb10ddd4cbaae92fa80 diff --git a/sources-bootstrap b/sources-bootstrap index 7bddcd5..8a5a2b8 100644 --- a/sources-bootstrap +++ b/sources-bootstrap @@ -1,8 +1,8 @@ -SHA512 (rustc-1.21.0-src.tar.xz) = 63b5c247ef7028c59bb246b96cb9917476d6d13cf68b37956e290248a1e53de3e4dbfad1dcae3c5c2cacc73c9dd212c50e45902c7d913fadeaac81db630bc951 -SHA512 (rust-1.20.0-aarch64-unknown-linux-gnu.tar.xz) = 23ac0086fa10c46eb2d607fc70dcb35b9858440b20030c4e688ec7d83e1d2798c46dd931914e2b555b6d846220bc678ea769a5e9b366b8fd12d9e57b4962ca3a -SHA512 (rust-1.20.0-armv7-unknown-linux-gnueabihf.tar.xz) = ca041644fd78d399e81a8dad9b5d5b401a2d8426eaf1e4ed02a2c5415b0a1caefadbc9716fefd6fd01aedde4fae15fc0357375d43a803714a88d65643b8ab5d1 -SHA512 (rust-1.20.0-i686-unknown-linux-gnu.tar.xz) = fdd3e039589feba8a1f3ab2aa0d92bfe87a05d0e1697c5ea981577628e89715d3790a747408cb0d52fc48605c3faf6b59548e6237bdfc0505f8090b23a63a89b -SHA512 (rust-1.20.0-powerpc64le-unknown-linux-gnu.tar.xz) = 2ccb9b686bc6e52dfe906ee9c807564b7a87839340b6b3de9862d53182d68044b892f6eea5606a9c6e04538a1aa3d8e2c17c73480bbfe317c1edb294e1b937a4 -SHA512 (rust-1.20.0-powerpc64-unknown-linux-gnu.tar.xz) = cd25a99e9f4331d458639887db8e3011ca9eb0907bb8a9f948353042658344338b170326c3931f4cca66dde2375611eeaae536f9b08a8f3cc4b75eef9220a8b5 -SHA512 (rust-1.20.0-s390x-unknown-linux-gnu.tar.xz) = 60e051bc917c46fcec0816f1a7bbaee40a781af3f9061c8d3d257fc380321994737cc95383686032b7264e42b75d0ac71c7727875ec97672e6776329915bffb6 -SHA512 (rust-1.20.0-x86_64-unknown-linux-gnu.tar.xz) = 5e397b1d3f7ef2ef7f11a7d48ad309f17220751246d5bf3e7301cca1c1a81864be49a7b78e122bb3bc66938971b73c8db443ba9e969880544e61af4061a5d96e +SHA512 (rustc-1.23.0-src.tar.xz) = 2e605121dd5152c1a898b263d634b0ac55c7ea79c7fbc9f72c432e68fb397618a267283f3dfb0f77d5e189720d788b1937e8114a1f71bdb10ddd4cbaae92fa80 +SHA512 (rust-1.22.0-aarch64-unknown-linux-gnu.tar.xz) = 9fbf60153e375746d665e23a273ea3bd9c0fc5f3116bb40dcfb385d8d519f67a07712f0b28371854b2d00f4bcd8e174f6182d3c3fbfd88c9901fff4d59f117b5 +SHA512 (rust-1.22.0-armv7-unknown-linux-gnueabihf.tar.xz) = 2deeca2cc96506b270c54395c2f4a9f649c06d1042f51947fab1048092f746c6f9aa5025a5d322f5a1591675d21438496de72ea389270e89c7f3e98a11b14dae +SHA512 (rust-1.22.0-i686-unknown-linux-gnu.tar.xz) = 76aa4dbbfd4c1a9efe84c2cb062462747d41caed505aebad3e51cd8ce9fa4470a06640fc202a6d46dc17c31e7f2b396442b15c3ae5462d6de19dd65a5d544603 +SHA512 (rust-1.22.0-powerpc64le-unknown-linux-gnu.tar.xz) = 9bce8585933a843b3703bd2f3fe7420ec81730b38d8d0d2418178eed7c6bf51d15979ddbd21f598615ac54cc73d3a943a535b6bf5d62627027c8edbe04c1d1d7 +SHA512 (rust-1.22.0-powerpc64-unknown-linux-gnu.tar.xz) = a11261081626d87b5cdf6b7c6fdce4ebadcfa42550dfcf6fe149a3af2e6f99b81aa71de46096a3744f9dd96e0d1c33c0b8c89384b41f059e556b4880b74f3618 +SHA512 (rust-1.22.0-s390x-unknown-linux-gnu.tar.xz) = a61bf086fbdec4c444420e0562969ed37bc0fa00e864ac5eccb13fc13e3dd9a36da3ac6a036143f4e1f3b04dcdab22f971558cfa23327fc789e31f9bb69e062b +SHA512 (rust-1.22.0-x86_64-unknown-linux-gnu.tar.xz) = d3be6fbed7e421a454b819ae14b1ab1de0930f00bea510f78f080cfd0ae12e5675c874d89d699a9af7f1a4cc0859c43a84a072d03d40204d6e3c43ea284276b7