summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--debian/changelog16
-rw-r--r--debian/control14
-rw-r--r--debian/copyright67
-rw-r--r--debian/libstd-rust-1.65.lintian-overrides13
-rw-r--r--debian/libstd-rust-1.66.install (renamed from debian/libstd-rust-1.65.install)0
-rw-r--r--debian/libstd-rust-1.66.lintian-overrides13
-rw-r--r--debian/patches/d-0000-ignore-removed-submodules.patch51
-rw-r--r--debian/patches/d-0002-mdbook-strip-embedded-libs.patch4
-rw-r--r--debian/patches/d-0004-clippy-feature-sync.patch2
-rw-r--r--debian/patches/d-0005-no-jemalloc.patch4
-rw-r--r--debian/patches/d-armel-fix-lldb.patch2
-rw-r--r--debian/patches/d-bootstrap-cargo-check-cfg.patch2
-rw-r--r--debian/patches/d-bootstrap-cargo-doc-paths.patch2
-rw-r--r--debian/patches/d-bootstrap-custom-debuginfo-path.patch4
-rw-r--r--debian/patches/d-bootstrap-disable-git.patch32
-rw-r--r--debian/patches/d-bootstrap-old-cargo-compat.patch22
-rw-r--r--debian/patches/d-bootstrap-permit-symlink-in-docs.patch4
-rw-r--r--debian/patches/d-bootstrap-read-beta-version-from-file.patch4
-rw-r--r--debian/patches/d-bootstrap-rustflags.patch4
-rw-r--r--debian/patches/d-bootstrap-use-local-css.patch16
-rw-r--r--debian/patches/d-rustc-add-soname.patch6
-rw-r--r--debian/patches/d-rustc-fix-mips64el-bootstrap.patch8
-rw-r--r--debian/patches/d-rustc-i686-baseline.patch12
-rw-r--r--debian/patches/d-rustc-windows-ssp.patch8
-rw-r--r--debian/patches/series5
-rw-r--r--debian/patches/u-arm-compiler-builtins-weak-linkage-arm.patch23
-rw-r--r--debian/patches/u-fix-backtrace-tests.patch54
-rw-r--r--debian/patches/u-fix-get-toml-when-test.patch46
-rw-r--r--debian/patches/u-ignore-endian-big-diff.patch20
-rw-r--r--debian/patches/u-make-compiletest-work-without-rpath.patch20
-rw-r--r--debian/patches/ubuntu-disable-ppc64el-asm-tests.patch15
-rw-r--r--debian/upstream-tarball-unsuspicious.txt13
32 files changed, 216 insertions, 290 deletions
diff --git a/debian/changelog b/debian/changelog
index c7354c1e8..af4e386b8 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,19 @@
+rustc (1.66.0+dfsg1-1) unstable; urgency=medium
+
+ * Upload to unstable
+
+ -- Fabian Grünbichler <debian@fabian.gruenbichler.email> Tue, 27 Jun 2023 17:12:20 +0200
+
+rustc (1.66.0+dfsg1-1~exp1) experimental; urgency=medium
+
+ [ Blair Noctis ]
+ * New upstream version 1.66.0+dfsg1
+ * Drop outdated patches
+ * Work around incorrect config handling (picking up initial rustc) when
+ running tests
+
+ -- Fabian Grünbichler <debian@fabian.gruenbichler.email> Sun, 23 Apr 2023 20:45:41 +0200
+
rustc (1.65.0+dfsg1-2) unstable; urgency=medium
* Team upload
diff --git a/debian/control b/debian/control
index 29daa47ad..5604fa509 100644
--- a/debian/control
+++ b/debian/control
@@ -14,8 +14,8 @@ Build-Depends:
dpkg-dev (>= 1.17.14),
python3:native,
cargo:native (>= 0.60.0) <!pkg.rustc.dlstage0>,
- rustc:native (>= 1.64.0+dfsg) <!pkg.rustc.dlstage0>,
- rustc:native (<= 1.65.0++) <!pkg.rustc.dlstage0>,
+ rustc:native (>= 1.65.0+dfsg) <!pkg.rustc.dlstage0>,
+ rustc:native (<= 1.66.0++) <!pkg.rustc.dlstage0>,
llvm-15-dev:native,
llvm-15-tools:native,
gcc-mingw-w64-x86-64-posix:native [amd64] <!nowindows>,
@@ -56,7 +56,7 @@ Depends: ${shlibs:Depends}, ${misc:Depends},
libstd-rust-dev (= ${binary:Version}),
gcc, libc-dev, binutils (>= 2.26)
Recommends:
- cargo (>= 0.66.0~~), cargo (<< 0.67.0~~),
+ cargo (>= 0.67.0~~), cargo (<< 0.68.0~~),
# llvm is needed for llvm-dwp for -C split-debuginfo=packed
llvm-15,
Suggests:
@@ -77,7 +77,7 @@ Description: Rust systems programming language
generic programming and meta-programming, in both static and dynamic
styles.
-Package: libstd-rust-1.65
+Package: libstd-rust-1.66
Section: libs
Architecture: any
Multi-Arch: same
@@ -104,7 +104,7 @@ Section: libdevel
Architecture: any
Multi-Arch: same
Depends: ${shlibs:Depends}, ${misc:Depends},
- libstd-rust-1.65 (= ${binary:Version}),
+ libstd-rust-1.66 (= ${binary:Version}),
Description: Rust standard libraries - development files
Rust is a curly-brace, block-structured expression language. It
visually resembles the C language family, but differs significantly
@@ -267,7 +267,7 @@ Package: rust-clippy
Architecture: any
Multi-Arch: allowed
Depends: ${misc:Depends}, ${shlibs:Depends},
- libstd-rust-1.65 (= ${binary:Version})
+ libstd-rust-1.66 (= ${binary:Version})
Recommends: cargo
Description: Rust linter
Rust is a curly-brace, block-structured expression language. It
@@ -322,7 +322,7 @@ Depends: ${misc:Depends}, ${shlibs:Depends},
rust-gdb (>= ${binary:Version}) | rust-lldb (>= ${binary:Version}),
cargo,
Recommends:
- cargo (>= 0.66.0~~), cargo (<< 0.67.0~~)
+ cargo (>= 0.67.0~~), cargo (<< 0.68.0~~)
Suggests:
rust-doc (>= ${binary:Version}),
rust-src (>= ${binary:Version}),
diff --git a/debian/copyright b/debian/copyright
index cd920fe5a..832050b28 100644
--- a/debian/copyright
+++ b/debian/copyright
@@ -11,6 +11,8 @@ Files-Excluded:
vendor/mdbook/src/theme/FontAwesome
vendor/mdbook/src/theme/highlight.js
vendor/mdbook/src/theme/highlight.css
+# DOCX versions of TRPL book prepared for No Starch Press
+ src/doc/book/nostarch/docx
# Exclude submodules https://github.com/rust-lang/rust/tree/master/src/tools
# We prefer to do them in different Debian packages so they can have their own
# version numbers. If upstream merges them "properly" (i.e. unify the version
@@ -43,12 +45,12 @@ Files-Excluded:
# DO NOT EDIT below, AUTOGENERATED
vendor/ahash-0.7.4
vendor/anyhow-1.0.60
- vendor/anyhow-1.0.62
vendor/anymap
vendor/arbitrary
vendor/ar
vendor/arrayvec-0.7.0
vendor/bitmaps
+ vendor/bumpalo
vendor/byteorder
vendor/bytesize
vendor/camino-1.0.9
@@ -56,6 +58,8 @@ Files-Excluded:
vendor/chalk-ir
vendor/chalk-recursive
vendor/chalk-solve
+ vendor/clap
+ vendor/clap_lex
vendor/color-eyre
vendor/color-spantrace
vendor/combine
@@ -98,8 +102,6 @@ Files-Excluded:
vendor/dunce
vendor/either-1.6.0
vendor/either-1.6.1
- vendor/enum-iterator
- vendor/enum-iterator-derive
vendor/expect-test-1.0.1
vendor/eyre
vendor/filetime-0.2.14
@@ -107,6 +109,7 @@ Files-Excluded:
vendor/flate2-1.0.16
vendor/foreign-types
vendor/foreign-types-shared
+ vendor/form_urlencoded-1.0.1
vendor/fsevent-sys
vendor/fs_extra-1.1.0
vendor/fs_extra
@@ -115,7 +118,6 @@ Files-Excluded:
vendor/fxhash
vendor/generic-array-0.14.4
vendor/getrandom-0.2.0
- vendor/getset
vendor/gimli-0.26.1
vendor/git2
vendor/git2-curl
@@ -123,12 +125,12 @@ Files-Excluded:
vendor/heck-0.3.3
vendor/hex-0.3.2
vendor/hex-0.4.2
+ vendor/home-0.5.3
vendor/idna-0.2.0
vendor/im-rc
vendor/indenter
vendor/inotify
vendor/inotify-sys
- vendor/itertools-0.10.1
vendor/itoa-1.0.2
vendor/jemalloc-sys
vendor/jod-thread
@@ -137,22 +139,22 @@ Files-Excluded:
vendor/kstring
vendor/libc-0.2.126
vendor/libc-0.2.127
- vendor/libc-0.2.131
vendor/libffi
vendor/libffi-sys
vendor/libgit2-sys
- vendor/libloading-0.6.7
vendor/libloading-0.7.1
vendor/libmimalloc-sys
vendor/libnghttp2-sys
vendor/libssh2-sys
vendor/libz-sys
vendor/linked-hash-map
+ vendor/lock_api-0.4.7
vendor/log-0.4.14
vendor/lzma-sys-0.1.16
vendor/mach
- vendor/matches-0.1.8
+ vendor/matches
vendor/mimalloc
+ vendor/miniz_oxide-0.5.3
vendor/mio
vendor/normalize-line-endings
vendor/notify
@@ -163,14 +165,14 @@ Files-Excluded:
vendor/openssl-probe
vendor/openssl-src
vendor/openssl-sys
+ vendor/ordered-float
vendor/os_info
vendor/owo-colors
vendor/paste
+ vendor/percent-encoding-2.1.0
vendor/pin-project-lite-0.2.8
- vendor/pkg-config-0.3.18
vendor/pretty_env_logger
- vendor/proc-macro2-1.0.37
- vendor/proc-macro2-1.0.39
+ vendor/proc-macro2-1.0.46
vendor/protobuf
vendor/protobuf-support
vendor/pulldown-cmark-to-cmark
@@ -181,6 +183,7 @@ Files-Excluded:
vendor/regex-1.5.6
vendor/regex-syntax-0.6.26
vendor/region
+ vendor/rustc-build-sysroot
vendor/rustc_version
vendor/ryu-1.0.10
vendor/ryu-1.0.5
@@ -192,51 +195,52 @@ Files-Excluded:
vendor/security-framework-sys
vendor/semver-1.0.12
vendor/serde-1.0.137
+ vendor/serde-1.0.145
vendor/serde_derive-1.0.137
+ vendor/serde_derive-1.0.145
vendor/serde_ignored
vendor/serde_json-1.0.81
- vendor/serde_json-1.0.83
+ vendor/serde_json-1.0.85
+ vendor/serde-value
vendor/sha2-0.10.1
vendor/sharded-slab-0.1.1
vendor/similar
vendor/sized-chunks
vendor/slice-group-by
vendor/smallvec-1.8.1
+ vendor/smallvec-1.9.0
vendor/snap-1.0.1
vendor/snapbox
vendor/snapbox-macros
vendor/socket2
vendor/static_assertions
vendor/strip-ansi-escapes
- vendor/syn-1.0.91
- vendor/syn-1.0.95
vendor/target-lexicon
- vendor/thiserror-1.0.31
- vendor/thiserror-impl-1.0.31
+ vendor/thiserror-1.0.33
+ vendor/thiserror-impl-1.0.33
vendor/threadpool
vendor/tikv-jemallocator
vendor/tikv-jemalloc-ctl
vendor/tikv-jemalloc-sys
- vendor/tinyvec-0.3.4
vendor/toml-0.5.7
+ vendor/toml_datetime
vendor/toml_edit
vendor/tracing-0.1.35
+ vendor/tracing-attributes-0.1.22
vendor/tracing-core-0.1.28
vendor/tracing-error
vendor/tracing-log-0.1.2
- vendor/tracing-subscriber-0.3.3
+ vendor/tracing-subscriber
vendor/tracing-tree-0.2.0
vendor/typed-arena
vendor/typenum-1.12.0
vendor/ui_test
vendor/unicode-bidi-0.3.4
vendor/unicode-ident-1.0.0
- vendor/unicode-normalization-0.1.13
- vendor/unicode-width-0.1.8
- vendor/unicode-xid-0.2.2
+ vendor/unicode-width-0.1.9
+ vendor/url-2.2.2
vendor/utf8parse
vendor/vcpkg
- vendor/vergen
vendor/version_check-0.9.3
vendor/vte
vendor/xattr-0.2.2
@@ -255,6 +259,7 @@ Files: C*.md
configure
config.toml.example
git-commit-hash
+ git-commit-info
library/*
src/README.md
src/bootstrap/*
@@ -567,10 +572,10 @@ License: MIT or Apache-2.0
Comment: see https://github.com/chronotope/chrono
Files:
- vendor/clap/*
+ vendor/clap-3.*/*
vendor/clap_complete/*
vendor/clap_derive/*
- vendor/clap_lex/*
+ vendor/clap_lex-0.*/*
Copyright: 2015-2022 Kevin K. <kbknapp@gmail.com>
License: MIT
Comment: see https://github.com/clap-rs/clap
@@ -918,11 +923,6 @@ Copyright: 2019-2019 Eliza Weisman <eliza@buoyant.io>
License: MIT
Comment: see https://github.com/hawkw/matchers
-Files: vendor/matches/*
-Copyright: 2014-2017 Simon Sapin <simon.sapin@exyr.org>
-License: MIT
-Comment: see https://github.com/SimonSapin
-
Files: vendor/mdbook/*
Copyright: 2015-2017 Mathieu David <mathieudavid@mathieudavid.org>
License: MPL-2.0
@@ -1188,9 +1188,14 @@ Comment: see https://github.com/rust-analyzer/rowan
Files: vendor/rustc-ap-rustc_lexer/*
Copyright: 2010-2022 The Rust Project Developers
-License: MIT or Apache-2.0
+License: MIT or Apache-2.0
Comment: see https://github.com/rust-lang/rust
+Files: vendor/rustc_tools_util/*
+Copyright: 2014-2022 The Rust Project Developers
+License: MIT or Apache-2.0
+Comment: see https://github.com/rust-lang/rust-clippy/tree/master/rustc_tools_util
+
Files: vendor/rustc-semver/*
Copyright: 2020-2020 flip1995 <hello@philkrones.com>
License: MIT OR Apache-2.0
@@ -1395,7 +1400,7 @@ Files:
vendor/tracing-attributes/*
vendor/tracing-core/*
vendor/tracing-log/*
- vendor/tracing-subscriber/*
+ vendor/tracing-subscriber-0.*/*
Copyright:
2018-2020 Eliza Weisman <eliza@buoyant.io>
2018-2020 Tokio Contributors <team@tokio.rs>
diff --git a/debian/libstd-rust-1.65.lintian-overrides b/debian/libstd-rust-1.65.lintian-overrides
deleted file mode 100644
index 3218caec4..000000000
--- a/debian/libstd-rust-1.65.lintian-overrides
+++ /dev/null
@@ -1,13 +0,0 @@
-# "libstd" just seemed too generic
-libstd-rust-1.65 binary: package-name-doesnt-match-sonames
-libstd-rust-1.65 binary: sharedobject-in-library-directory-missing-soname
-
-# Rust doesn't use dev shlib symlinks nor any of the other shlib support stuff
-libstd-rust-1.65 binary: dev-pkg-without-shlib-symlink
-libstd-rust-1.65 binary: shlib-without-versioned-soname
-libstd-rust-1.65 binary: unused-shlib-entry-in-control-file
-
-# Libraries that use libc symbols (libterm, libstd, etc) *are* linked
-# to libc. Lintian gets upset that some Rust libraries don't need
-# libc, boo hoo.
-libstd-rust-1.65 binary: library-not-linked-against-libc
diff --git a/debian/libstd-rust-1.65.install b/debian/libstd-rust-1.66.install
index cd4545cca..cd4545cca 100644
--- a/debian/libstd-rust-1.65.install
+++ b/debian/libstd-rust-1.66.install
diff --git a/debian/libstd-rust-1.66.lintian-overrides b/debian/libstd-rust-1.66.lintian-overrides
new file mode 100644
index 000000000..bf80cf0e3
--- /dev/null
+++ b/debian/libstd-rust-1.66.lintian-overrides
@@ -0,0 +1,13 @@
+# "libstd" just seemed too generic
+libstd-rust-1.66 binary: package-name-doesnt-match-sonames
+libstd-rust-1.66 binary: sharedobject-in-library-directory-missing-soname
+
+# Rust doesn't use dev shlib symlinks nor any of the other shlib support stuff
+libstd-rust-1.66 binary: dev-pkg-without-shlib-symlink
+libstd-rust-1.66 binary: shlib-without-versioned-soname
+libstd-rust-1.66 binary: unused-shlib-entry-in-control-file
+
+# Libraries that use libc symbols (libterm, libstd, etc) *are* linked
+# to libc. Lintian gets upset that some Rust libraries don't need
+# libc, boo hoo.
+libstd-rust-1.66 binary: library-not-linked-against-libc
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)
diff --git a/debian/upstream-tarball-unsuspicious.txt b/debian/upstream-tarball-unsuspicious.txt
index 5d9dbaf38..18d254093 100644
--- a/debian/upstream-tarball-unsuspicious.txt
+++ b/debian/upstream-tarball-unsuspicious.txt
@@ -57,8 +57,10 @@ src/doc/unstable-book/src/*/*.md
src/etc/third-party/README.txt
src/librustdoc/html/highlight/fixtures/sample.html
src/librustdoc/html/static/scrape-examples-help.md
+src/test/rustdoc/inline_cross/assoc_item_trait_bounds.out*.html
src/tools/clippy/src/docs/trailing_empty_array.txt
src/tools/rust-analyzer/crates/rust-analyzer/src/diagnostics/to_proto.rs
+src/tools/rust-analyzer/crates/ide-completion/src/completions/env_vars.rs
src/tools/rust-analyzer/docs/user/manual.adoc
src/tools/rustfmt/*.md
vendor/*/*/*/LICENSE
@@ -71,8 +73,8 @@ vendor/*/LICENSE-MIT
vendor/*/README.md
vendor/ahash/FAQ.md
vendor/ammonia/src/lib.rs
-vendor/clap/examples/demo.md
-vendor/clap/examples/tutorial_*/*.md
+vendor/clap-*/examples/demo.md
+vendor/clap-*/examples/tutorial_*/*.md
vendor/generic-array/DESIGN.md
vendor/handlebars/src/lib.rs
vendor/handlebars/src/render.rs
@@ -85,7 +87,7 @@ vendor/pulldown-cmark/tests/suite/footnotes.rs
vendor/rustc-demangle/src/legacy.rs
vendor/stable_deref_trait/src/lib.rs
vendor/tinyvec/LICENSE-*.md
-vendor/tracing-subscriber/src/fmt/format/json.rs
+vendor/tracing-subscriber-*/src/fmt/format/json.rs
vendor/unicase/src/lib.rs
vendor/unicode-normalization/src/stream_safe.rs
vendor/winapi/src/lib.rs
@@ -159,7 +161,6 @@ src/doc/embedded-book/src/assets/f3.jpg
src/doc/embedded-book/src/assets/verify.jpeg
src/doc/nomicon/src/img/safeandunsafe.svg
src/doc/rustc-dev-guide/src/img/*.png
-src/doc/rustc-dev-guide/src/img/rustc_stages.svg
src/doc/rustc-dev-guide/src/queries/example-0.png
src/doc/rustc/src/images/*.png
src/etc/installer/gfx/
@@ -206,7 +207,6 @@ src/test/mir-opt/*/*.mir
src/test/run-make/*-sgx-lvi/enclave/*.c
src/test/run-make/*-sgx-lvi/enclave/*/*/*.c
src/test/rustdoc/*.html
-src/test/rustdoc/tuples.link2_i32.html
src/test/ui/macros/not-utf8.bin
src/tools/*/tests/*/*.stderr
src/tools/clippy/tests/ui-toml/*/*.stderr
@@ -305,6 +305,7 @@ src/tools/clippy/clippy_lints/src/needless_pass_by_value.rs
src/tools/clippy/clippy_lints/src/pass_by_ref_or_value.rs
src/tools/clippy/src/docs/from_str_radix_10.txt
src/tools/rust-analyzer/crates/ide-assists/src/handlers/number_representation.rs
+src/tools/rust-analyzer/crates/ide-db/src/syntax_helpers/format_string_exprs.rs
src/tools/rustfmt/src/formatting.rs
src/tools/rustfmt/src/parse/parser.rs
src/tools/rustfmt/src/string.rs
@@ -313,7 +314,7 @@ vendor/ahash/src/lib.rs
vendor/aho-corasick/src/nfa.rs
vendor/askama_shared/src/generator.rs
vendor/block-buffer/tests/mod.rs
-vendor/clap/src/derive.rs
+vendor/clap-*/src/derive.rs
vendor/compiler_builtins/libm/src/math/atan.rs
vendor/datafrog/src/lib.rs
vendor/digest/src/core_api/rt_variable.rs