diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-17 12:13:01 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-17 12:13:01 +0000 |
commit | 8eaa44899cb2f756d21ac152935a9cfa65ca2e7b (patch) | |
tree | 4561b181d6ffa6c8a16cf2740e43440e86d0bb22 /debian/patches | |
parent | Merging upstream version 1.66.0+dfsg1. (diff) | |
download | rustc-8eaa44899cb2f756d21ac152935a9cfa65ca2e7b.tar.xz rustc-8eaa44899cb2f756d21ac152935a9cfa65ca2e7b.zip |
Adding debian version 1.66.0+dfsg1-1.debian/1.66.0+dfsg1-1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'debian/patches')
25 files changed, 137 insertions, 233 deletions
diff --git a/debian/patches/d-0000-ignore-removed-submodules.patch b/debian/patches/d-0000-ignore-removed-submodules.patch index 26d1e4361..7fdae2bd9 100644 --- a/debian/patches/d-0000-ignore-removed-submodules.patch +++ b/debian/patches/d-0000-ignore-removed-submodules.patch @@ -5,14 +5,14 @@ Subject: d-0000-ignore-removed-submodules --- Cargo.toml | 15 --------------- src/bootstrap/bootstrap.py | 4 ---- - src/bootstrap/builder.rs | 11 +---------- + src/bootstrap/builder.rs | 15 +-------------- src/bootstrap/doc.rs | 1 - src/bootstrap/test.rs | 12 +----------- src/tools/clippy/Cargo.toml | 5 ----- src/tools/rust-analyzer/Cargo.toml | 11 ++++++++++- src/tools/rustfmt/Cargo.toml | 5 ----- src/tools/tidy/src/deps.rs | 2 +- - 9 files changed, 13 insertions(+), 53 deletions(-) + 9 files changed, 13 insertions(+), 57 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index e49fe5e..863c800 100644 @@ -57,10 +57,10 @@ index e49fe5e..863c800 100644 # See comments in `library/rustc-std-workspace-core/README.md` for what's going on # here diff --git a/src/bootstrap/bootstrap.py b/src/bootstrap/bootstrap.py -index cc08ae5..bf7d696 100644 +index 5712868..5a6ab27 100644 --- a/src/bootstrap/bootstrap.py +++ b/src/bootstrap/bootstrap.py -@@ -759,10 +759,6 @@ class RustBuild(object): +@@ -766,10 +766,6 @@ class RustBuild(object): os.path.join(self.rust_root, "src/bootstrap/Cargo.toml")] for _ in range(0, self.verbose): args.append("--verbose") @@ -72,10 +72,10 @@ index cc08ae5..bf7d696 100644 args.append("--features") args.append("build-metrics") diff --git a/src/bootstrap/builder.rs b/src/bootstrap/builder.rs -index 14e8ebd..6d43333 100644 +index 8b144f1..c4bed1ec 100644 --- a/src/bootstrap/builder.rs +++ b/src/bootstrap/builder.rs -@@ -600,8 +600,6 @@ impl<'a> Builder<'a> { +@@ -599,8 +599,6 @@ impl<'a> Builder<'a> { tool::RemoteTestClient, tool::RustInstaller, tool::Cargo, @@ -84,7 +84,7 @@ index 14e8ebd..6d43333 100644 tool::RustAnalyzerProcMacroSrv, tool::RustDemangler, tool::Rustdoc, -@@ -622,8 +621,6 @@ impl<'a> Builder<'a> { +@@ -621,8 +619,6 @@ impl<'a> Builder<'a> { check::CodegenBackend, check::Clippy, check::Miri, @@ -93,7 +93,7 @@ index 14e8ebd..6d43333 100644 check::Rustfmt, check::Bootstrap ), -@@ -650,7 +648,6 @@ impl<'a> Builder<'a> { +@@ -650,7 +646,6 @@ impl<'a> Builder<'a> { test::ReplacePlaceholderTest, test::Cargotest, test::Cargo, @@ -101,7 +101,7 @@ index 14e8ebd..6d43333 100644 test::ErrorIndex, test::Distcheck, test::RunMakeFullDeps, -@@ -698,10 +695,8 @@ impl<'a> Builder<'a> { +@@ -698,10 +693,8 @@ impl<'a> Builder<'a> { doc::RustdocBook, doc::RustByExample, doc::RustcBook, @@ -111,8 +111,8 @@ index 14e8ebd..6d43333 100644 - doc::Miri, doc::EmbeddedBook, doc::EditionGuide, - ), -@@ -715,15 +712,12 @@ impl<'a> Builder<'a> { + doc::StyleGuide, +@@ -717,8 +710,6 @@ impl<'a> Builder<'a> { dist::Analysis, dist::Src, dist::Cargo, @@ -121,14 +121,7 @@ index 14e8ebd..6d43333 100644 dist::Rustfmt, dist::RustDemangler, dist::Clippy, - dist::Miri, - dist::LlvmTools, - dist::RustDev, -- dist::Extended, - // It seems that PlainSourceTarball somehow changes how some of the tools - // perceive their dependencies (see #93033) which would invalidate fingerprints - // and force us to rebuild tools after vendoring dependencies. -@@ -736,7 +725,6 @@ impl<'a> Builder<'a> { +@@ -739,7 +730,6 @@ impl<'a> Builder<'a> { install::Docs, install::Std, install::Cargo, @@ -136,7 +129,7 @@ index 14e8ebd..6d43333 100644 install::Rustfmt, install::RustDemangler, install::Clippy, -@@ -2056,10 +2050,7 @@ impl<'a> Builder<'a> { +@@ -2062,10 +2052,7 @@ impl<'a> Builder<'a> { } } @@ -149,10 +142,10 @@ index 14e8ebd..6d43333 100644 } diff --git a/src/bootstrap/doc.rs b/src/bootstrap/doc.rs -index f909ecc..8bf71b1 100644 +index ea06caf..5d8247f 100644 --- a/src/bootstrap/doc.rs +++ b/src/bootstrap/doc.rs -@@ -73,7 +73,6 @@ macro_rules! book { +@@ -74,7 +74,6 @@ macro_rules! book { // FIXME: Make checking for a submodule automatic somehow (maybe by having a list of all submodules // and checking against it?). book!( @@ -161,10 +154,10 @@ index f909ecc..8bf71b1 100644 EditionGuide, "src/doc/edition-guide", "edition-guide", submodule; EmbeddedBook, "src/doc/embedded-book", "embedded-book", submodule; diff --git a/src/bootstrap/test.rs b/src/bootstrap/test.rs -index dd41f84..ba6227c 100644 +index 791c35c..964e2e0 100644 --- a/src/bootstrap/test.rs +++ b/src/bootstrap/test.rs -@@ -1886,17 +1886,7 @@ impl Step for RustcGuide { +@@ -1909,17 +1909,7 @@ impl Step for RustcGuide { } fn run(self, builder: &Builder<'_>) { @@ -184,7 +177,7 @@ index dd41f84..ba6227c 100644 } diff --git a/src/tools/clippy/Cargo.toml b/src/tools/clippy/Cargo.toml -index b7e136c..a844a5d 100644 +index 60200a8..3980db9 100644 --- a/src/tools/clippy/Cargo.toml +++ b/src/tools/clippy/Cargo.toml @@ -36,11 +36,6 @@ walkdir = "2.3" @@ -200,7 +193,7 @@ index b7e136c..a844a5d 100644 clippy_utils = { path = "clippy_utils" } derive-new = "0.5" diff --git a/src/tools/rust-analyzer/Cargo.toml b/src/tools/rust-analyzer/Cargo.toml -index 6b68ca8..93f755c 100644 +index 286ef1e..3d68711 100644 --- a/src/tools/rust-analyzer/Cargo.toml +++ b/src/tools/rust-analyzer/Cargo.toml @@ -1,5 +1,14 @@ @@ -236,11 +229,11 @@ index 7a4e02d..27b91f2 100644 [package.metadata.rust-analyzer] diff --git a/src/tools/tidy/src/deps.rs b/src/tools/tidy/src/deps.rs -index cbd8cfa..6b39fd6 100644 +index 8a0239e..9b35cba 100644 --- a/src/tools/tidy/src/deps.rs +++ b/src/tools/tidy/src/deps.rs -@@ -308,7 +308,7 @@ const FORBIDDEN_TO_HAVE_DUPLICATES: &[&str] = &[ - // These two crates take quite a long time to build, so don't allow two versions of them +@@ -311,7 +311,7 @@ const FORBIDDEN_TO_HAVE_DUPLICATES: &[&str] = &[ + // This crate takes quite a long time to build, so don't allow two versions of them // to accidentally sneak into our dependency graph, in order to ensure we keep our CI times // under control. - "cargo", diff --git a/debian/patches/d-0002-mdbook-strip-embedded-libs.patch b/debian/patches/d-0002-mdbook-strip-embedded-libs.patch index 3916871a2..2fae76fe5 100644 --- a/debian/patches/d-0002-mdbook-strip-embedded-libs.patch +++ b/debian/patches/d-0002-mdbook-strip-embedded-libs.patch @@ -14,7 +14,7 @@ Comment: Use https://github.com/infinity0/mdBook/tree/debian to help you rebase 7 files changed, 35 insertions(+), 203 deletions(-) diff --git a/src/tools/linkchecker/main.rs b/src/tools/linkchecker/main.rs -index a7c78d8..22927f8 100644 +index 7842611..4ccccf1 100644 --- a/src/tools/linkchecker/main.rs +++ b/src/tools/linkchecker/main.rs @@ -183,7 +183,17 @@ impl Checker { @@ -53,7 +53,7 @@ index a7c78d8..22927f8 100644 FileEntry::Dir => unreachable!("never with `check` path"), FileEntry::OtherFile => return, FileEntry::Redirect { .. } => return, -@@ -261,6 +279,12 @@ impl Checker { +@@ -262,6 +280,12 @@ impl Checker { let (target_pretty_path, target_entry) = self.load_file(&path, report); let (target_source, target_ids) = match target_entry { FileEntry::Missing => { diff --git a/debian/patches/d-0004-clippy-feature-sync.patch b/debian/patches/d-0004-clippy-feature-sync.patch index 19c75955e..64b1c3eed 100644 --- a/debian/patches/d-0004-clippy-feature-sync.patch +++ b/debian/patches/d-0004-clippy-feature-sync.patch @@ -10,7 +10,7 @@ this is what rustc_workspace_hack does in the upstream build. 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/tools/clippy/Cargo.toml b/src/tools/clippy/Cargo.toml -index a844a5d..4dd3f55 100644 +index 3980db9..fdf1a03 100644 --- a/src/tools/clippy/Cargo.toml +++ b/src/tools/clippy/Cargo.toml @@ -43,7 +43,7 @@ if_chain = "1.0" diff --git a/debian/patches/d-0005-no-jemalloc.patch b/debian/patches/d-0005-no-jemalloc.patch index ca74117bd..24ad1c6fd 100644 --- a/debian/patches/d-0005-no-jemalloc.patch +++ b/debian/patches/d-0005-no-jemalloc.patch @@ -26,11 +26,11 @@ index 27ee3dd..87fb29f 100644 max_level_info = ['rustc_driver/max_level_info'] rustc_use_parallel_compiler = ['rustc_driver/rustc_use_parallel_compiler'] diff --git a/src/tools/rust-analyzer/crates/profile/Cargo.toml b/src/tools/rust-analyzer/crates/profile/Cargo.toml -index 0b78a45..99d4179 100644 +index 5697aea..ae9bbd5 100644 --- a/src/tools/rust-analyzer/crates/profile/Cargo.toml +++ b/src/tools/rust-analyzer/crates/profile/Cargo.toml @@ -15,7 +15,6 @@ cfg-if = "1.0.0" - libc = "0.2.126" + libc = "0.2.135" la-arena = { version = "0.3.0", path = "../../lib/la-arena" } countme = { version = "3.0.1", features = ["enable"] } -jemalloc-ctl = { version = "0.5.0", package = "tikv-jemalloc-ctl", optional = true } diff --git a/debian/patches/d-armel-fix-lldb.patch b/debian/patches/d-armel-fix-lldb.patch index 12d64570b..1205dbe86 100644 --- a/debian/patches/d-armel-fix-lldb.patch +++ b/debian/patches/d-armel-fix-lldb.patch @@ -4,7 +4,7 @@ diff --git a/src/bootstrap/test.rs b/src/bootstrap/test.rs index c0fa8c9acb..2b5559efc7 100644 --- a/src/bootstrap/test.rs +++ b/src/bootstrap/test.rs -@@ -1476,7 +1476,11 @@ note: if you're sure you want to do this, please open an issue as to why. In the +@@ -1462,7 +1462,11 @@ .ok(); if let Some(ref vers) = lldb_version { cmd.arg("--lldb-version").arg(vers); diff --git a/debian/patches/d-bootstrap-cargo-check-cfg.patch b/debian/patches/d-bootstrap-cargo-check-cfg.patch index c715b1f31..24bc7499c 100644 --- a/debian/patches/d-bootstrap-cargo-check-cfg.patch +++ b/debian/patches/d-bootstrap-cargo-check-cfg.patch @@ -5,7 +5,7 @@ diff --git a/src/bootstrap/builder.rs b/src/bootstrap/builder.rs index 0ab4824ac0a..76c476f449b 100644 --- a/src/bootstrap/builder.rs +++ b/src/bootstrap/builder.rs -@@ -1472,9 +1472,9 @@ impl<'a> Builder<'a> { +@@ -1480,9 +1480,9 @@ // complete list of features, so for that reason we don't enable checking of // features for std crates. cargo.arg(if mode != Mode::Std { diff --git a/debian/patches/d-bootstrap-cargo-doc-paths.patch b/debian/patches/d-bootstrap-cargo-doc-paths.patch index 17c284f8b..c3b2e8b72 100644 --- a/debian/patches/d-bootstrap-cargo-doc-paths.patch +++ b/debian/patches/d-bootstrap-cargo-doc-paths.patch @@ -106,7 +106,7 @@ diff --git a/src/doc/reference/src/conditional-compilation.md b/src/doc/referenc index 6966cec..0ca3589 100644 --- a/src/doc/reference/src/conditional-compilation.md +++ b/src/doc/reference/src/conditional-compilation.md -@@ -351,6 +351,6 @@ println!("I'm running on a {} machine!", machine_kind); +@@ -370,6 +370,6 @@ [`target_feature` attribute]: attributes/codegen.md#the-target_feature-attribute [attribute]: attributes.md [attributes]: attributes.md diff --git a/debian/patches/d-bootstrap-custom-debuginfo-path.patch b/debian/patches/d-bootstrap-custom-debuginfo-path.patch index 2b548abcf..6333e8a58 100644 --- a/debian/patches/d-bootstrap-custom-debuginfo-path.patch +++ b/debian/patches/d-bootstrap-custom-debuginfo-path.patch @@ -8,11 +8,9 @@ Subject: d-bootstrap-custom-debuginfo-path src/test/codegen/remap_path_prefix/issue-73167-remap-std.rs | 2 +- 2 files changed, 3 insertions(+), 4 deletions(-) -diff --git a/src/bootstrap/lib.rs b/src/bootstrap/lib.rs -index ddc92ba..259b56e 100644 --- a/src/bootstrap/lib.rs +++ b/src/bootstrap/lib.rs -@@ -1026,10 +1026,9 @@ impl Build { +@@ -1040,10 +1040,9 @@ match which { GitRepo::Rustc => { diff --git a/debian/patches/d-bootstrap-disable-git.patch b/debian/patches/d-bootstrap-disable-git.patch index 63823f51b..ddbe186e6 100644 --- a/debian/patches/d-bootstrap-disable-git.patch +++ b/debian/patches/d-bootstrap-disable-git.patch @@ -10,36 +10,32 @@ Forwarded: not-needed src/bootstrap/dist.rs | 5 ++++- 2 files changed, 9 insertions(+), 2 deletions(-) -diff --git a/src/bootstrap/channel.rs b/src/bootstrap/channel.rs -index 1932a00..7974630 100644 --- a/src/bootstrap/channel.rs +++ b/src/bootstrap/channel.rs -@@ -29,7 +29,11 @@ pub struct Info { +@@ -33,6 +33,12 @@ + impl GitInfo { pub fn new(ignore_git: bool, dir: &Path) -> GitInfo { - // See if this even begins to look like a git dir -- if !dir.join(".git").exists() { + // -+ // Debian: force-enabling this block because the debian package is also in a git -+ // repository, but we don't want to parse gitinfo. This is needed for the -+ // bootstrap tests to work which running for Debian git. -+ if true || !dir.join(".git").exists() { - return GitInfo::Absent; - } - -diff --git a/src/bootstrap/dist.rs b/src/bootstrap/dist.rs -index 6181a61..5fe3600 100644 ++ // Debian: returning early because the Debian package is also in a git ++ // repository, but we don't want to parse gitinfo. This is ++ // needed for the bootstrap tests to work which running for ++ // Debian git. ++ return GitInfo::Absent; + // See if this even begins to look like a git dir + if !dir.join(".git").exists() { + match read_commit_info_file(dir) { --- a/src/bootstrap/dist.rs +++ b/src/bootstrap/dist.rs -@@ -902,7 +902,10 @@ impl Step for PlainSourceTarball { +@@ -925,7 +925,10 @@ } // If we're building from git sources, we need to vendor a complete distribution. -- if builder.rust_info.is_git() { +- if builder.rust_info.is_managed_git_subrepository() { + // -+ // Debian: disabling this block because the debian package is also in a git ++ // Debian: short-circuited because the Debian package is also in a git + // repository, but cargo-vendor should not be installed or run. -+ if false && builder.rust_info.is_git() { ++ if false && builder.rust_info.is_managed_git_subrepository() { // Ensure we have the submodules checked out. builder.update_submodule(Path::new("src/tools/rust-analyzer")); diff --git a/debian/patches/d-bootstrap-old-cargo-compat.patch b/debian/patches/d-bootstrap-old-cargo-compat.patch index e30d4a245..1caa3675a 100644 --- a/debian/patches/d-bootstrap-old-cargo-compat.patch +++ b/debian/patches/d-bootstrap-old-cargo-compat.patch @@ -15,19 +15,17 @@ Subject: Backwards-compat for cargo 0.47 src/bootstrap/doc.rs | 3 --- 1 file changed, 3 deletions(-) -diff --git a/src/bootstrap/doc.rs b/src/bootstrap/doc.rs -index fb5395d..72eac7c 100644 --- a/src/bootstrap/doc.rs +++ b/src/bootstrap/doc.rs -@@ -446,7 +446,6 @@ impl Step for Std { - cargo - .arg("-p") - .arg(package) -- .arg("-Zskip-rustdoc-fingerprint") - .arg("--") - .arg("--markdown-css") - .arg("rust.css") -@@ -590,7 +589,6 @@ impl Step for Rustc { +@@ -618,7 +618,6 @@ + cargo + .arg("-p") + .arg(package) +- .arg("-Zskip-rustdoc-fingerprint") + .arg("--") + .arg("-Z") + .arg("unstable-options") +@@ -715,7 +714,6 @@ cargo.rustdocflag("--generate-link-to-definition"); compile::rustc_cargo(builder, &mut cargo, target); cargo.arg("-Zunstable-options"); @@ -35,7 +33,7 @@ index fb5395d..72eac7c 100644 // Only include compiler crates, no dependencies of those, such as `libc`. // Do link to dependencies on `docs.rs` however using `rustdoc-map`. -@@ -712,7 +710,6 @@ macro_rules! tool_doc { +@@ -837,7 +835,6 @@ &[], ); diff --git a/debian/patches/d-bootstrap-permit-symlink-in-docs.patch b/debian/patches/d-bootstrap-permit-symlink-in-docs.patch index 635e2e786..2eed7043a 100644 --- a/debian/patches/d-bootstrap-permit-symlink-in-docs.patch +++ b/debian/patches/d-bootstrap-permit-symlink-in-docs.patch @@ -1,10 +1,8 @@ partial revert of b9eedea4b0368fd1f00f204db75109ff444fab5b upstream -diff --git a/src/bootstrap/dist.rs b/src/bootstrap/dist.rs -index b1fae356d89..10ed8ffb714 100644 --- a/src/bootstrap/dist.rs +++ b/src/bootstrap/dist.rs -@@ -83,6 +83,7 @@ impl Step for Docs { +@@ -72,6 +72,7 @@ tarball.set_product_name("Rust Documentation"); tarball.add_bulk_dir(&builder.doc_out(host), dest); tarball.add_file(&builder.src.join("src/doc/robots.txt"), dest, 0o644); diff --git a/debian/patches/d-bootstrap-read-beta-version-from-file.patch b/debian/patches/d-bootstrap-read-beta-version-from-file.patch index 812a653ba..9738aa740 100644 --- a/debian/patches/d-bootstrap-read-beta-version-from-file.patch +++ b/debian/patches/d-bootstrap-read-beta-version-from-file.patch @@ -7,11 +7,9 @@ Subject: d-bootstrap-read-beta-version-from-file src/bootstrap/lib.rs | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) -diff --git a/src/bootstrap/lib.rs b/src/bootstrap/lib.rs -index 68d387b..ddc92ba 100644 --- a/src/bootstrap/lib.rs +++ b/src/bootstrap/lib.rs -@@ -1269,14 +1269,15 @@ impl Build { +@@ -1283,14 +1283,15 @@ return s; } diff --git a/debian/patches/d-bootstrap-rustflags.patch b/debian/patches/d-bootstrap-rustflags.patch index dfcdee922..33b3d1e34 100644 --- a/debian/patches/d-bootstrap-rustflags.patch +++ b/debian/patches/d-bootstrap-rustflags.patch @@ -7,11 +7,9 @@ Subject: d-bootstrap-rustflags src/bootstrap/builder.rs | 12 ++++++++++++ 1 file changed, 12 insertions(+) -diff --git a/src/bootstrap/builder.rs b/src/bootstrap/builder.rs -index 23ea2fe..b2b1c54 100644 --- a/src/bootstrap/builder.rs +++ b/src/bootstrap/builder.rs -@@ -1499,6 +1499,18 @@ impl<'a> Builder<'a> { +@@ -1507,6 +1507,18 @@ } } diff --git a/debian/patches/d-bootstrap-use-local-css.patch b/debian/patches/d-bootstrap-use-local-css.patch index 7aadf5f21..894bd03c7 100644 --- a/debian/patches/d-bootstrap-use-local-css.patch +++ b/debian/patches/d-bootstrap-use-local-css.patch @@ -7,11 +7,9 @@ Subject: d-bootstrap-use-local-css src/bootstrap/doc.rs | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) -diff --git a/src/bootstrap/doc.rs b/src/bootstrap/doc.rs -index f8ba05c..fb5395d 100644 --- a/src/bootstrap/doc.rs +++ b/src/bootstrap/doc.rs -@@ -373,6 +373,10 @@ impl Step for Standalone { +@@ -365,6 +365,10 @@ .arg(&builder.src.join("src/doc/index.md")) .arg("--markdown-playground-url") .arg("https://play.rust-lang.org/") @@ -22,20 +20,14 @@ index f8ba05c..fb5395d 100644 .arg("-o") .arg(&out) .arg(&path); -@@ -381,17 +385,6 @@ impl Step for Standalone { +@@ -373,11 +377,6 @@ cmd.arg("--disable-minification"); } - if filename == "not_found.md" { -- cmd.arg("--markdown-css") -- .arg(format!("https://doc.rust-lang.org/rustdoc{}.css", &builder.version)) -- .arg("--markdown-css") -- .arg("https://doc.rust-lang.org/rust.css"); +- cmd.arg("--markdown-css").arg("https://doc.rust-lang.org/rust.css"); - } else { -- cmd.arg("--markdown-css") -- .arg(format!("rustdoc{}.css", &builder.version)) -- .arg("--markdown-css") -- .arg("rust.css"); +- cmd.arg("--markdown-css").arg("rust.css"); - } builder.run(&mut cmd); } diff --git a/debian/patches/d-rustc-add-soname.patch b/debian/patches/d-rustc-add-soname.patch index e69898bf5..277f431d2 100644 --- a/debian/patches/d-rustc-add-soname.patch +++ b/debian/patches/d-rustc-add-soname.patch @@ -24,17 +24,15 @@ using a GNU linker). compiler/rustc_codegen_ssa/src/back/link.rs | 7 +++++++ 1 file changed, 7 insertions(+) -diff --git a/compiler/rustc_codegen_ssa/src/back/link.rs b/compiler/rustc_codegen_ssa/src/back/link.rs -index 04ec1e7..67296ca 100644 --- a/compiler/rustc_codegen_ssa/src/back/link.rs +++ b/compiler/rustc_codegen_ssa/src/back/link.rs -@@ -2240,6 +2240,13 @@ fn add_order_independent_options( +@@ -2280,6 +2280,13 @@ } add_rpath_args(cmd, sess, codegen_results, out_filename); + + if (crate_type == config::CrateType::Dylib || crate_type == config::CrateType::Cdylib) -+ && sess.target.linker_is_gnu { ++ && sess.target.linker_flavor.is_gnu() { + let filename = String::from(out_filename.file_name().unwrap().to_str().unwrap()); + let soname = [String::from("-Wl,-soname=") + &filename]; + cmd.args(&soname); diff --git a/debian/patches/d-rustc-fix-mips64el-bootstrap.patch b/debian/patches/d-rustc-fix-mips64el-bootstrap.patch index 06d73098a..17ce2e563 100644 --- a/debian/patches/d-rustc-fix-mips64el-bootstrap.patch +++ b/debian/patches/d-rustc-fix-mips64el-bootstrap.patch @@ -38,21 +38,17 @@ index e0d5f6f..57ad8c4 100644 max_atomic_width: Some(64), mcount: "_mcount".into(), -diff --git a/src/bootstrap/bootstrap.py b/src/bootstrap/bootstrap.py -index 92d29d6..23c0764 100644 --- a/src/bootstrap/bootstrap.py +++ b/src/bootstrap/bootstrap.py -@@ -734,6 +734,8 @@ class RustBuild(object): +@@ -745,6 +745,8 @@ # preserve existing RUSTFLAGS env.setdefault("RUSTFLAGS", "") + if self.build_triple().startswith('mips'): + env["RUSTFLAGS"] += " -Ctarget-feature=+xgot" - build_section = "target.{}".format(self.build) target_features = [] if self.get_toml("crt-static", build_section) == "true": -diff --git a/src/test/assembly/asm/mips-types.rs b/src/test/assembly/asm/mips-types.rs -index 04bf49a..a7c6056 100644 + target_features += ["+crt-static"] --- a/src/test/assembly/asm/mips-types.rs +++ b/src/test/assembly/asm/mips-types.rs @@ -1,3 +1,4 @@ diff --git a/debian/patches/d-rustc-i686-baseline.patch b/debian/patches/d-rustc-i686-baseline.patch index 127997334..b856d9391 100644 --- a/debian/patches/d-rustc-i686-baseline.patch +++ b/debian/patches/d-rustc-i686-baseline.patch @@ -7,16 +7,14 @@ Subject: d-rustc-i686-baseline compiler/rustc_target/src/spec/i686_unknown_linux_gnu.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -Index: rust/compiler/rustc_target/src/spec/i686_unknown_linux_gnu.rs -=================================================================== ---- rust.orig/compiler/rustc_target/src/spec/i686_unknown_linux_gnu.rs -+++ rust/compiler/rustc_target/src/spec/i686_unknown_linux_gnu.rs -@@ -2,7 +2,7 @@ use crate::spec::{LinkerFlavor, StackPro +--- a/compiler/rustc_target/src/spec/i686_unknown_linux_gnu.rs ++++ b/compiler/rustc_target/src/spec/i686_unknown_linux_gnu.rs +@@ -2,7 +2,7 @@ pub fn target() -> Target { let mut base = super::linux_gnu_base::opts(); - base.cpu = "pentium4".into(); + base.cpu = "pentiumpro".into(); base.max_atomic_width = Some(64); - base.add_pre_link_args(LinkerFlavor::Gcc, &["-m32"]); - // don't use probe-stack=inline-asm until rust#83139 and rust#84667 are resolved + base.supported_sanitizers = SanitizerSet::ADDRESS; + base.add_pre_link_args(LinkerFlavor::Gnu(Cc::Yes, Lld::No), &["-m32"]); diff --git a/debian/patches/d-rustc-windows-ssp.patch b/debian/patches/d-rustc-windows-ssp.patch index bbf00594c..158195d05 100644 --- a/debian/patches/d-rustc-windows-ssp.patch +++ b/debian/patches/d-rustc-windows-ssp.patch @@ -7,16 +7,14 @@ Bug: https://github.com/rust-lang/rust/issues/68973 compiler/rustc_target/src/spec/windows_gnu_base.rs | 2 ++ 1 file changed, 2 insertions(+) -diff --git a/compiler/rustc_target/src/spec/windows_gnu_base.rs b/compiler/rustc_target/src/spec/windows_gnu_base.rs -index d11f1f7..137f8eb 100644 --- a/compiler/rustc_target/src/spec/windows_gnu_base.rs +++ b/compiler/rustc_target/src/spec/windows_gnu_base.rs -@@ -41,6 +41,8 @@ pub fn opts() -> TargetOptions { +@@ -41,6 +41,8 @@ "-lmsvcrt", "-luser32", "-lkernel32", + "-lssp_nonshared", + "-lssp", ]; - let mut late_link_args = TargetOptions::link_args(LinkerFlavor::Ld, mingw_libs); - super::add_link_args(&mut late_link_args, LinkerFlavor::Gcc, mingw_libs); + let mut late_link_args = + TargetOptions::link_args(LinkerFlavor::Gnu(Cc::No, Lld::No), mingw_libs); diff --git a/debian/patches/series b/debian/patches/series index d3c74ae4c..d3d42890b 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -5,10 +5,7 @@ u-ignore-reproducible-failure.patch u-reproducible-build.patch u-ignore-endian-big-diff.patch u-make-compiletest-work-without-rpath.patch -u-fix-backtrace-tests.patch # fixed in 1.66 - -# can be dropped once upstream updates compiler_builtins -u-arm-compiler-builtins-weak-linkage-arm.patch +u-fix-get-toml-when-test.patch # can be dropped once upstream updates rustix u-fix-rustix-for-sparc64.patch diff --git a/debian/patches/u-arm-compiler-builtins-weak-linkage-arm.patch b/debian/patches/u-arm-compiler-builtins-weak-linkage-arm.patch deleted file mode 100644 index 530efcebe..000000000 --- a/debian/patches/u-arm-compiler-builtins-weak-linkage-arm.patch +++ /dev/null @@ -1,23 +0,0 @@ -From 72c872147679096c53cbb49ca670662d05d43110 Mon Sep 17 00:00:00 2001 -From: Lokathor <zefria@gmail.com> -Date: Tue, 27 Sep 2022 13:22:45 -0600 -Subject: [PATCH] Update macros.rs - ---- -https://github.com/rust-lang/compiler-builtins/pull/495 - - src/macros.rs | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/vendor/compiler_builtins/src/macros.rs b/vendor/compiler_builtins/src/macros.rs -index 7d90b7aa..477c2568 100644 ---- a/vendor/compiler_builtins/src/macros.rs -+++ b/vendor/compiler_builtins/src/macros.rs -@@ -266,6 +266,7 @@ macro_rules! intrinsics { - #[cfg(target_arch = "arm")] - pub mod $alias { - #[cfg_attr(not(feature = "mangled-names"), no_mangle)] -+ #[cfg_attr(all(not(windows), not(target_vendor="apple")), linkage = "weak")] - pub extern "aapcs" fn $alias( $($argname: $ty),* ) $(-> $ret)? { - super::$name($($argname),*) - } diff --git a/debian/patches/u-fix-backtrace-tests.patch b/debian/patches/u-fix-backtrace-tests.patch deleted file mode 100644 index 9a5617ad1..000000000 --- a/debian/patches/u-fix-backtrace-tests.patch +++ /dev/null @@ -1,54 +0,0 @@ -From 3d8b3e6ca179dc2ac79c038ad607b2321be70e8d Mon Sep 17 00:00:00 2001 -From: Aaron Hill <aa1ronham@gmail.com> -Date: Wed, 21 Sep 2022 10:24:16 -0500 -Subject: [PATCH] Set 'exec-env:RUST_BACKTRACE=0' in const-eval-select tests - -This allows the tests to pass even if the user has RUST_BACKTRACE -set when running 'x.py' ---- - src/test/ui/intrinsics/const-eval-select-backtrace-std.rs | 1 + - .../ui/intrinsics/const-eval-select-backtrace-std.run.stderr | 2 +- - src/test/ui/intrinsics/const-eval-select-backtrace.rs | 1 + - src/test/ui/intrinsics/const-eval-select-backtrace.run.stderr | 2 +- - 4 files changed, 4 insertions(+), 2 deletions(-) - -diff --git a/src/test/ui/intrinsics/const-eval-select-backtrace-std.rs b/src/test/ui/intrinsics/const-eval-select-backtrace-std.rs -index 29aefe07162b3..1164a3a5b0180 100644 ---- a/src/test/ui/intrinsics/const-eval-select-backtrace-std.rs -+++ b/src/test/ui/intrinsics/const-eval-select-backtrace-std.rs -@@ -1,6 +1,7 @@ - // See issue #100696. - // run-fail - // check-run-results -+// exec-env:RUST_BACKTRACE=0 - fn main() { - &""[1..]; - } -diff --git a/src/test/ui/intrinsics/const-eval-select-backtrace-std.run.stderr b/src/test/ui/intrinsics/const-eval-select-backtrace-std.run.stderr -index e53e6034620ca..463cd52c5aa7b 100644 ---- a/src/test/ui/intrinsics/const-eval-select-backtrace-std.run.stderr -+++ b/src/test/ui/intrinsics/const-eval-select-backtrace-std.run.stderr -@@ -1,2 +1,2 @@ --thread 'main' panicked at 'byte index 1 is out of bounds of ``', $DIR/const-eval-select-backtrace-std.rs:5:6 -+thread 'main' panicked at 'byte index 1 is out of bounds of ``', $DIR/const-eval-select-backtrace-std.rs:6:6 - note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace -diff --git a/src/test/ui/intrinsics/const-eval-select-backtrace.rs b/src/test/ui/intrinsics/const-eval-select-backtrace.rs -index 99f0725200c1d..ef1c7c4195b91 100644 ---- a/src/test/ui/intrinsics/const-eval-select-backtrace.rs -+++ b/src/test/ui/intrinsics/const-eval-select-backtrace.rs -@@ -2,6 +2,7 @@ - // See issue #100696. - // run-fail - // check-run-results -+// exec-env:RUST_BACKTRACE=0 - - #[track_caller] - fn uhoh() { -diff --git a/src/test/ui/intrinsics/const-eval-select-backtrace.run.stderr b/src/test/ui/intrinsics/const-eval-select-backtrace.run.stderr -index 2fd730ac7a68a..54e28db5e533d 100644 ---- a/src/test/ui/intrinsics/const-eval-select-backtrace.run.stderr -+++ b/src/test/ui/intrinsics/const-eval-select-backtrace.run.stderr -@@ -1,2 +1,2 @@ --thread 'main' panicked at 'Aaah!', $DIR/const-eval-select-backtrace.rs:16:9 -+thread 'main' panicked at 'Aaah!', $DIR/const-eval-select-backtrace.rs:17:9 - note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace diff --git a/debian/patches/u-fix-get-toml-when-test.patch b/debian/patches/u-fix-get-toml-when-test.patch new file mode 100644 index 000000000..229bd1432 --- /dev/null +++ b/debian/patches/u-fix-get-toml-when-test.patch @@ -0,0 +1,46 @@ +Description: Fix get_toml() when cfg(test) + When cfg(test), Config::parse doesn't parse a config.toml but uses default + values, failing when the initial rustc is needed. This is a workaround before + upstream issue gets solved. +Bug: https://github.com/rust-lang/rust/issues/105766 +Last-Update: 2023-03-29 +--- +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ +--- a/src/bootstrap/config.rs ++++ b/src/bootstrap/config.rs +@@ -896,9 +896,9 @@ + + config.stage0_metadata = t!(serde_json::from_slice::<Stage0Metadata>(&stage0_json)); + +- #[cfg(test)] ++ /*#[cfg(test)] + let get_toml = |_| TomlConfig::default(); +- #[cfg(not(test))] ++ #[cfg(not(test))]*/ + let get_toml = |file: &Path| { + let contents = + t!(fs::read_to_string(file), format!("config file {} not found", file.display())); +@@ -907,7 +907,22 @@ + match toml::from_str(&contents) + .and_then(|table: toml::Value| TomlConfig::deserialize(table)) + { +- Ok(table) => table, ++ /// Debian: We use previous version as a custom rustc, which unfortunately won't be ++ /// picked up because config.toml isn't read when cfg!(test). Making tests use the ++ /// entirety of our config.toml isn't feasible either as it panicks on GitRepo::Llvm ++ /// (d-bootstrap-custom-debuginfo-path.patch), so only give paths of initial rustc ++ /// and cargo. ++ Ok(table) => if !cfg!(test) || table.build.is_none() { ++ table ++ } else { ++ let mut config = TomlConfig::default(); ++ let mut build = Build::default(); ++ let cbuild = table.build.unwrap(); ++ build.rustc = cbuild.rustc; ++ build.cargo = cbuild.cargo; ++ config.build = Some(build); ++ config ++ }, + Err(err) => { + eprintln!("failed to parse TOML configuration '{}': {}", file.display(), err); + crate::detail_exit(2); diff --git a/debian/patches/u-ignore-endian-big-diff.patch b/debian/patches/u-ignore-endian-big-diff.patch index e02960fd9..21e2de1e9 100644 --- a/debian/patches/u-ignore-endian-big-diff.patch +++ b/debian/patches/u-ignore-endian-big-diff.patch @@ -14,35 +14,27 @@ Bug: https://github.com/rust-lang/rust/issues/89577 src/test/ui/consts/const-eval/ub-wide-ptr.rs | 1 + 6 files changed, 6 insertions(+) -diff --git a/src/test/ui/consts/const-eval/ub-enum.rs b/src/test/ui/consts/const-eval/ub-enum.rs -index 8628868..13d22ac 100644 --- a/src/test/ui/consts/const-eval/ub-enum.rs +++ b/src/test/ui/consts/const-eval/ub-enum.rs @@ -1,3 +1,4 @@ +// ignore-test // stderr-per-bitwidth #![feature(never_type)] - -diff --git a/src/test/ui/consts/const-eval/ub-int-array.rs b/src/test/ui/consts/const-eval/ub-int-array.rs -index 7e0fb33..a54f618 100644 + #![allow(invalid_value)] --- a/src/test/ui/consts/const-eval/ub-int-array.rs +++ b/src/test/ui/consts/const-eval/ub-int-array.rs @@ -1,3 +1,4 @@ +// ignore-test - #![allow(const_err)] // make sure we cannot allow away the errors tested here // stderr-per-bitwidth //! Test the "array of int" fast path in validity checking, and in particular whether it -diff --git a/src/test/ui/consts/const-eval/ub-nonnull.rs b/src/test/ui/consts/const-eval/ub-nonnull.rs -index 259707b..145c7df 100644 + //! points at the right array element. --- a/src/test/ui/consts/const-eval/ub-nonnull.rs +++ b/src/test/ui/consts/const-eval/ub-nonnull.rs @@ -1,3 +1,4 @@ +// ignore-test // stderr-per-bitwidth #![feature(rustc_attrs)] - #![allow(const_err, invalid_value)] // make sure we cannot allow away the errors tested here -diff --git a/src/test/ui/consts/const-eval/ub-ref-ptr.rs b/src/test/ui/consts/const-eval/ub-ref-ptr.rs -index 1887cb2..14b15f6 100644 + #![allow(invalid_value)] // make sure we cannot allow away the errors tested here --- a/src/test/ui/consts/const-eval/ub-ref-ptr.rs +++ b/src/test/ui/consts/const-eval/ub-ref-ptr.rs @@ -1,3 +1,4 @@ @@ -50,17 +42,13 @@ index 1887cb2..14b15f6 100644 // ignore-tidy-linelength // stderr-per-bitwidth #![allow(invalid_value)] -diff --git a/src/test/ui/consts/const-eval/ub-uninhabit.rs b/src/test/ui/consts/const-eval/ub-uninhabit.rs -index 33fbd14..022192f 100644 --- a/src/test/ui/consts/const-eval/ub-uninhabit.rs +++ b/src/test/ui/consts/const-eval/ub-uninhabit.rs @@ -1,3 +1,4 @@ +// ignore-test // stderr-per-bitwidth - #![allow(const_err)] // make sure we cannot allow away the errors tested here -diff --git a/src/test/ui/consts/const-eval/ub-wide-ptr.rs b/src/test/ui/consts/const-eval/ub-wide-ptr.rs -index ea48a09..4d9cbe1 100644 + use std::mem; --- a/src/test/ui/consts/const-eval/ub-wide-ptr.rs +++ b/src/test/ui/consts/const-eval/ub-wide-ptr.rs @@ -1,3 +1,4 @@ diff --git a/debian/patches/u-make-compiletest-work-without-rpath.patch b/debian/patches/u-make-compiletest-work-without-rpath.patch index 67c3badcd..7e852a586 100644 --- a/debian/patches/u-make-compiletest-work-without-rpath.patch +++ b/debian/patches/u-make-compiletest-work-without-rpath.patch @@ -48,20 +48,20 @@ index 64df76e2772..98a35810cfd 100644 use lazycell::LazyCell; use test::ColorConfig; -@@ -389,7 +390,7 @@ impl Config { - } +@@ -386,7 +387,7 @@ fn target_cfg(&self) -> &TargetCfg { -- self.target_cfg.borrow_with(|| TargetCfg::new(&self.rustc_path, &self.target)) -+ self.target_cfg.borrow_with(|| TargetCfg::new(self)) + self.target_cfg +- .borrow_with(|| TargetCfg::new(&self.rustc_path, &self.target, &self.target_rustcflags)) ++ .borrow_with(|| TargetCfg::new(self)) } pub fn matches_arch(&self, arch: &str) -> bool { -@@ -455,20 +456,22 @@ pub enum Endian { +@@ -457,21 +458,22 @@ } impl TargetCfg { -- fn new(rustc_path: &Path, target: &str) -> TargetCfg { +- fn new(rustc_path: &Path, target: &str, target_rustcflags: &Vec<String>) -> TargetCfg { - let output = match Command::new(rustc_path) + fn new(config: &Config) -> TargetCfg { + let mut command = Command::new(&config.rustc_path); @@ -70,6 +70,7 @@ index 64df76e2772..98a35810cfd 100644 .arg("--print=cfg") .arg("--target") - .arg(target) +- .args(target_rustcflags) + .arg(&config.target) .output() { @@ -126,7 +127,7 @@ index 8f289876f73..eb467170249 100644 /// The platform-specific library name pub fn get_lib_name(lib: &str, dylib: bool) -> String { // In some casess (e.g. MUSL), we build a static -@@ -1826,16 +1814,7 @@ impl<'test> TestCx<'test> { +@@ -1811,16 +1799,7 @@ // Need to be sure to put both the lib_path and the aux path in the dylib // search path for the child. @@ -156,7 +157,7 @@ index 9d047b63c85..4b73be0fbb9 100644 use tracing::*; -@@ -105,3 +106,25 @@ impl PathBufExt for PathBuf { +@@ -111,3 +112,25 @@ } } } @@ -182,6 +183,3 @@ index 9d047b63c85..4b73be0fbb9 100644 + let new_paths = paths.map(Into::into).chain(old_paths.into_iter().flatten()); + cmd.env(dylib_env_var(), env::join_paths(new_paths).unwrap()); +} --- -2.30.2 - diff --git a/debian/patches/ubuntu-disable-ppc64el-asm-tests.patch b/debian/patches/ubuntu-disable-ppc64el-asm-tests.patch index 001305b6e..4acfdcb2f 100644 --- a/debian/patches/ubuntu-disable-ppc64el-asm-tests.patch +++ b/debian/patches/ubuntu-disable-ppc64el-asm-tests.patch @@ -1,6 +1,6 @@ --- a/compiler/rustc_lint_defs/src/builtin.rs +++ b/compiler/rustc_lint_defs/src/builtin.rs -@@ -2913,11 +2913,13 @@ declare_lint! { +@@ -2883,11 +2883,13 @@ /// /// use std::arch::asm; /// @@ -14,22 +14,13 @@ /// #[naked] /// pub extern "Rust" fn rust_abi() -> u32 { /// unsafe { asm!("", options(noreturn)); } ---- a/src/test/run-make-fulldeps/intrinsic-unreachable/Makefile -+++ b/src/test/run-make-fulldeps/intrinsic-unreachable/Makefile -@@ -1,6 +1,7 @@ - include ../tools.mk - - # ignore-windows-msvc -+# needs-asm-support - # - # Because of Windows exception handling, the code is not necessarily any shorter. - # https://github.com/llvm-mirror/llvm/commit/64b2297786f7fd6f5fa24cdd4db0298fbf211466 --- a/compiler/rustc_lint/src/builtin.rs +++ b/compiler/rustc_lint/src/builtin.rs -@@ -3053,6 +3053,10 @@ declare_lint! { +@@ -3130,7 +3130,10 @@ /// ### Example /// /// ```rust,compile_fail +- /// # #![feature(asm_experimental_arch)] + /// #![cfg_attr( + /// not(any(target_arch = "powerpc64", target_arch = "s390x")), + /// feature(asm_experimental_arch) |