diff --git a/.gitattributes b/.gitattributes index f77a836516923cd873779f6960678fdcc04d0334..05a0e946187b8160d0c54c23a9f8100f44e0f43b 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,2 +1 @@ -rustc-1.70.0-src.tar.xz filter=lfs diff=lfs merge=lfs -text -rustc-1.71.0-src.tar.xz filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text diff --git a/0001-Revert-Fix-x-test-lint-docs-when-download-rustc-is-e.patch b/0001-Revert-Fix-x-test-lint-docs-when-download-rustc-is-e.patch deleted file mode 100644 index 50518c6e3deadc369fce1b9a5ac4d027db8f76ec..0000000000000000000000000000000000000000 --- a/0001-Revert-Fix-x-test-lint-docs-when-download-rustc-is-e.patch +++ /dev/null @@ -1,60 +0,0 @@ -From 9204a8359201271fd7b1c625d6f29ddd095a419d Mon Sep 17 00:00:00 2001 -From: Josh Stone -Date: Mon, 10 Jul 2023 13:48:49 -0700 -Subject: [PATCH] Revert "Fix `x test lint-docs` when download-rustc is - enabled" - -This reverts commit abf9cbcb69e485b56776112bc587f6166e7ac5c9. ---- - src/tools/lint-docs/src/groups.rs | 3 +-- - src/tools/lint-docs/src/lib.rs | 9 --------- - 2 files changed, 1 insertion(+), 11 deletions(-) - -diff --git a/src/tools/lint-docs/src/groups.rs b/src/tools/lint-docs/src/groups.rs -index b11fb287cf4d..2a923a61b0a7 100644 ---- a/src/tools/lint-docs/src/groups.rs -+++ b/src/tools/lint-docs/src/groups.rs -@@ -39,12 +39,11 @@ pub(crate) fn generate_group_docs(&self, lints: &[Lint]) -> Result<(), Box Result> { - let mut result = BTreeMap::new(); - let mut cmd = Command::new(self.rustc_path); -- cmd.env_remove("LD_LIBRARY_PATH"); - cmd.arg("-Whelp"); - let output = cmd.output().map_err(|e| format!("failed to run command {:?}\n{}", cmd, e))?; - if !output.status.success() { - return Err(format!( -- "failed to collect lint info: failed to run {cmd:?}: {:?}\n--- stderr\n{}--- stdout\n{}\n", -+ "failed to collect lint info: {:?}\n--- stderr\n{}--- stdout\n{}\n", - output.status, - std::str::from_utf8(&output.stderr).unwrap(), - std::str::from_utf8(&output.stdout).unwrap(), -diff --git a/src/tools/lint-docs/src/lib.rs b/src/tools/lint-docs/src/lib.rs -index fe29b9abda39..034c6aa0708e 100644 ---- a/src/tools/lint-docs/src/lib.rs -+++ b/src/tools/lint-docs/src/lib.rs -@@ -403,12 +403,6 @@ fn generate_lint_output( - fs::write(&tempfile, source) - .map_err(|e| format!("failed to write {}: {}", tempfile.display(), e))?; - let mut cmd = Command::new(self.rustc_path); -- // NOTE: bootstrap sets `LD_LIBRARY_PATH` for building lint-docs itself. -- // Unfortunately, lint-docs is a bootstrap tool while rustc is built from source, -- // and sometimes the paths conflict. In particular, when using `download-rustc`, -- // the LLVM versions can differ between `ci-llvm` and `ci-rustc-sysroot`. -- // Unset LD_LIBRARY_PATH here so it doesn't interfere with running the compiler. -- cmd.env_remove("LD_LIBRARY_PATH"); - if options.contains(&"edition2015") { - cmd.arg("--edition=2015"); - } else { -@@ -421,9 +415,6 @@ fn generate_lint_output( - } - cmd.arg("lint_example.rs"); - cmd.current_dir(tempdir.path()); -- if self.verbose { -- eprintln!("running: {cmd:?}"); -- } - let output = cmd.output().map_err(|e| format!("failed to run command {:?}\n{}", cmd, e))?; - let stderr = std::str::from_utf8(&output.stderr).unwrap(); - let msgs = stderr --- -2.41.0 - diff --git a/0001-Revert-fix-bug-etc-bash_complettion-src-etc-.-to-avo.patch b/0001-Revert-fix-bug-etc-bash_complettion-src-etc-.-to-avo.patch deleted file mode 100644 index a326207c5f1d0801163d908590237ef1a80311f0..0000000000000000000000000000000000000000 --- a/0001-Revert-fix-bug-etc-bash_complettion-src-etc-.-to-avo.patch +++ /dev/null @@ -1,31 +0,0 @@ -From cea2e61a03773ce28fd57b7338c4ae4d947650ca Mon Sep 17 00:00:00 2001 -From: Josh Stone -Date: Mon, 10 Jul 2023 15:52:55 -0700 -Subject: [PATCH] Revert "fix: :bug: etc/bash_complettion -> src/etc/... to - avoid copy error" - -This reverts commit 08ce68b6a6bad360e9c3611ad60cf6598401f878. ---- - src/bootstrap/dist.rs | 6 +----- - 1 file changed, 1 insertion(+), 5 deletions(-) - -diff --git a/src/bootstrap/dist.rs b/src/bootstrap/dist.rs -index b49845386da1..9cead7adc8c3 100644 ---- a/src/bootstrap/dist.rs -+++ b/src/bootstrap/dist.rs -@@ -1071,11 +1071,7 @@ fn run(self, builder: &Builder<'_>) -> Option { - - tarball.add_file(&cargo, "bin", 0o755); - tarball.add_file(etc.join("_cargo"), "share/zsh/site-functions", 0o644); -- tarball.add_renamed_file( -- etc.join("cargo.bashcomp.sh"), -- "src/etc/bash_completion.d", -- "cargo", -- ); -+ tarball.add_renamed_file(etc.join("cargo.bashcomp.sh"), "etc/bash_completion.d", "cargo"); - tarball.add_dir(etc.join("man"), "share/man/man1"); - tarball.add_legal_and_readme_to("share/doc/cargo"); - --- -2.41.0 - diff --git a/0002-fix-version-comparison-bug.patch b/0002-fix-version-comparison-bug.patch new file mode 100644 index 0000000000000000000000000000000000000000..824c2d51fcf8b2be5e66255b1d53a856520e79a7 --- /dev/null +++ b/0002-fix-version-comparison-bug.patch @@ -0,0 +1,32 @@ +From 31a81a08786826cc6e832bd0b49fb8b934e29648 Mon Sep 17 00:00:00 2001 +From: Ariadne Conill +Date: Thu, 3 Aug 2023 15:05:40 -0700 +Subject: [PATCH] bootstrap: config: fix version comparison bug + +Rust requires a previous version of Rust to build, such as the current version, or the +previous version. However, the version comparison logic did not take patch releases +into consideration when doing the version comparison for the current branch, e.g. +Rust 1.71.1 could not be built by Rust 1.71.0 because it is neither an exact version +match, or the previous version. + +Adjust the version comparison logic to tolerate mismatches in the patch version. + +Signed-off-by: Ariadne Conill +--- + src/bootstrap/config.rs | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/bootstrap/config.rs b/src/bootstrap/config.rs +index 45bea9608fc82..f283b2eb7e9ce 100644 +--- a/src/bootstrap/config.rs ++++ b/src/bootstrap/config.rs +@@ -2004,7 +2004,8 @@ impl Config { + .unwrap(); + if !(source_version == rustc_version + || (source_version.major == rustc_version.major +- && source_version.minor == rustc_version.minor + 1)) ++ && (source_version.minor == rustc_version.minor ++ || source_version.minor == rustc_version.minor + 1))) + { + let prev_version = format!("{}.{}.x", source_version.major, source_version.minor - 1); + eprintln!( diff --git a/rust.spec b/rust.spec index a53bf3dffbe6902bff95887f8ff42cf55b4d4bd9..166dd262c8e4e766d44d04ac11491a6ca507cbfc 100644 --- a/rust.spec +++ b/rust.spec @@ -11,8 +11,8 @@ %bcond_without analyzer Name: rust -Version: 1.71.0 -Release: 3 +Version: 1.71.1 +Release: 1 Summary: The Rust Programming Language License: (ASL 2.0 or MIT) and (BSD and MIT) URL: https://www.rust-lang.org @@ -27,16 +27,12 @@ Patch0001: rustc-1.71.0-disable-http2.patch Patch0002: clippy-driver-usage-should-user-friendly.patch Patch0003: cargo-help-clippy-should-have-description-to-user.patch Patch0004: fix-a-println-wrong-format.patch -# Restore LD_LIBRARY_PATH when running lint-docs -# https://github.com/rust-lang/rust/pull/110521#issuecomment-1629705099 -Patch0005: 0001-Revert-Fix-x-test-lint-docs-when-download-rustc-is-e.patch -# Restore the bash completion path -# https://github.com/rust-lang/rust/pull/110906#issuecomment-1629832675 -Patch0006: 0001-Revert-fix-bug-etc-bash_complettion-src-etc-.-to-avo.patch # By default, rust tries to use "rust-lld" as a linker for WebAssembly. Patch0007: 0001-Use-lld-provided-by-system-for-wasm.patch # Set a substitute-path in rust-gdb for standard library sources. Patch0008: rustc-1.70.0-rust-gdb-substitute-path.patch +# https://github.com/rust-lang/rust/pull/114440 +Patch0009: 0002-fix-version-comparison-bug.patch %{lua: function rust_triple(arch) local abi = "gnu" @@ -249,22 +245,21 @@ test -f '%{local_rust_root}/bin/rustc' %endif %setup -q -n rustc-%{version}-src %if %with disabled_libssh2 -%patch0000 -p1 +%patch -P 0000 -p1 %endif %if %without curl_http2 -%patch0001 -p1 +%patch -P 0001 -p1 rm -rf vendor/libnghttp2-sys*/ %endif %if "%{python}" != "python3" sed -i.try-python -e '/^try python3 /i try "%{python}" "$@"' ./configure %endif -%patch0002 -p1 -%patch0003 -p1 -%patch0004 -p1 -%patch0005 -p1 -%patch0006 -p1 -%patch0007 -p1 -%patch0008 -p1 +%patch -P 0002 -p1 +%patch -P 0003 -p1 +%patch -P 0004 -p1 +%patch -P 0007 -p1 +%patch -P 0008 -p1 +%patch -P 0009 -p1 rm -rf vendor/curl-sys*/curl/ rm -rf vendor/jemalloc-sys/jemalloc/ rm -rf vendor/libffi-sys*/libffi/ @@ -493,6 +488,9 @@ export %{rust_env} %{_mandir}/man1/cargo*.1* %changelog +* Mon Aug 7 2023 Funda Wang - 1.71.1-1 +- New version 1.71.1 + * Sun Jul 30 2023 Funda Wang - 1.71.0-3 - Fix release channel name diff --git a/rustc-1.71.0-src.tar.xz b/rustc-1.71.1-src.tar.xz similarity index 32% rename from rustc-1.71.0-src.tar.xz rename to rustc-1.71.1-src.tar.xz index bddf0a9168e41aec90bb940b8e74bd56cd19aa08..edd7920e92c457297133908526fff32ff554dd6d 100644 --- a/rustc-1.71.0-src.tar.xz +++ b/rustc-1.71.1-src.tar.xz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5814699031aafdcc2e2f71fc9b389678cd7042350d1583da061463d8e88681c7 -size 151962928 +oid sha256:371af0fbe04051e20a74dbea6d4e4e548f10f15309c49cae2688afb882b6c7f1 +size 151983068