[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1014324: marked as done (bullseye-pu: package rustc-mozilla/1.59.0+dfsg1-1~deb11u1)



Your message dated Sat, 10 Sep 2022 13:36:19 +0100
with message-id <92fe43e7805e82e43100a6471ccbf91cd9a12944.camel@adam-barratt.org.uk>
and subject line Closing requests for updates in 11.5
has caused the Debian Bug report #1014324,
regarding bullseye-pu: package rustc-mozilla/1.59.0+dfsg1-1~deb11u1
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
1014324: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1014324
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: release.debian.org
Severity: normal
Tags: bullseye
User: release.debian.org@packages.debian.org
Usertags: pu
X-Debbugs-Cc: pkg-rust-maintainers@alioth-lists.debian.net

Hi,

This updates rustc-mozilla in bullseye from 1.51 to 1.59. I disabled the
new binary packages in src:rustc_1.59, there are more packages that we
don't really need and could disable but since they are already present
I left them be.

I'm attaching two diffs for the debian/ dir, one from rustc-mozilla 1.51,
and one from rustc 1.59.

Cheers,
Emilio
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/bin/rust-lld rustc-mozilla-1.59.0+dfsg1/debian/bin/rust-lld
--- rustc-mozilla-1.51.0+dfsg1/debian/bin/rust-lld	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/bin/rust-lld	2022-06-06 14:03:37.000000000 +0200
@@ -6,4 +6,4 @@
 # However the tests fail for other reasons, namely we can't build rustdoc
 # (which runs the tests) in wasm32 yet. So this is just WIP at the moment,
 # it is not expect to work nor to be installed on user machines.
-exec /usr/bin/lld-11 "${@/#-Wl,/}"
+exec /usr/bin/lld-13 "${@/#-Wl,/}"
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/changelog rustc-mozilla-1.59.0+dfsg1/debian/changelog
--- rustc-mozilla-1.51.0+dfsg1/debian/changelog	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/changelog	2022-07-03 11:52:07.278402955 +0200
@@ -1,3 +1,223 @@
+rustc-mozilla (1.59.0+dfsg1-1~deb11u1) bullseye; urgency=medium
+
+  * Non-maintainer upload.
+  * Backport to bullseye as rustc-mozilla.
+  * Do a bootstrap build.
+  * Disable wasm.
+  * Disable new binary packages rustfmt, -clippy, -all.
+
+ -- Emilio Pozuelo Monfort <pochu@debian.org>  Sun, 03 Jul 2022 11:51:30 +0200
+
+rustc (1.59.0+dfsg1-1) unstable; urgency=medium
+
+  * Upload to unstable.
+
+ -- Ximin Luo <infinity0@debian.org>  Wed, 11 May 2022 14:11:46 +0100
+
+rustc (1.59.0+dfsg1-1~exp1) experimental; urgency=medium
+
+  [ Fabian Grünbichler ]
+  * New upstream release
+
+ -- Ximin Luo <infinity0@debian.org>  Tue, 29 Mar 2022 14:32:01 +0100
+
+rustc (1.58.1+dfsg1-1) unstable; urgency=medium
+
+  * Upload to unstable.
+
+ -- Ximin Luo <infinity0@debian.org>  Tue, 29 Mar 2022 12:23:46 +0100
+
+rustc (1.58.1+dfsg1-1~exp1) experimental; urgency=medium
+
+  [ Fabian Gruenbichler ]
+  * New upstream release.
+
+ -- Ximin Luo <infinity0@debian.org>  Tue, 08 Mar 2022 11:32:29 +0000
+
+rustc (1.57.0+dfsg1-1) unstable; urgency=medium
+
+  * Upload to unstable. (Closes: #1005203)
+
+ -- Ximin Luo <infinity0@debian.org>  Tue, 08 Mar 2022 10:51:18 +0000
+
+rustc (1.57.0+dfsg1-1~exp1) experimental; urgency=medium
+
+  [ Simon Chopin ]
+  * d/p/d-bootstrap-rustflags.patch: remove the warnings bit, use the option
+    "deny-warnings = false" in d/config.toml.in instead
+
+  [ Fabian Grünbichler ]
+  * Fix CVE-2022-21658 - std::fs::remove_dir_all TOCTOU symlink issue
+  * New upstream release. (Closes: #1005203)
+
+ -- Fabian Grünbichler <f.gruenbichler@proxmox.com>  Thu, 03 Feb 2022 19:14:04 +0100
+
+rustc (1.56.0+dfsg1-2) unstable; urgency=medium
+
+  * Update to debhelper 13.
+
+ -- Ximin Luo <infinity0@debian.org>  Fri, 22 Oct 2021 23:29:14 +0100
+
+rustc (1.56.0+dfsg1-1) unstable; urgency=medium
+
+  * New upstream release.
+  * Support terse and verbose DEB_BUILD_OPTIONS.
+  * Support -Z gcc-ld=lld via symlinks.
+  * Fix RUSTC_SYSROOT in rust-gdb and rust-lldb, thanks James McCoy.
+
+ -- Ximin Luo <infinity0@debian.org>  Fri, 22 Oct 2021 18:54:49 +0100
+
+rustc (1.56.0~beta.4+dfsg1-1~exp2) experimental; urgency=medium
+
+  * Include upstream patch for x32 support. (Closes: #993855)
+  * Update to LLVM 13.
+
+ -- Ximin Luo <infinity0@debian.org>  Fri, 15 Oct 2021 10:44:35 +0100
+
+rustc (1.56.0~beta.4+dfsg1-1~exp1) experimental; urgency=medium
+
+  * New upstream release.
+
+ -- Ximin Luo <infinity0@debian.org>  Thu, 14 Oct 2021 22:50:58 +0100
+
+rustc (1.55.0+dfsg1-2) unstable; urgency=medium
+
+  * Actually work around segfault on ppc64el.
+  * Fix FTBFS on armhf caused by GCC 11 changes.
+
+ -- Ximin Luo <infinity0@debian.org>  Thu, 14 Oct 2021 00:36:15 +0100
+
+rustc (1.55.0+dfsg1-1) unstable; urgency=medium
+
+  * Upload to unstable.
+  * Bump test failures-allowed on s390x to 40.
+  * Work around a segfault on ppc64el
+
+ -- Ximin Luo <infinity0@debian.org>  Wed, 13 Oct 2021 22:06:15 +0100
+
+rustc (1.55.0+dfsg1-1~exp1) experimental; urgency=medium
+
+  * New upstream release.
+
+ -- Ximin Luo <infinity0@debian.org>  Sat, 09 Oct 2021 03:22:08 +0100
+
+rustc (1.54.0+dfsg1-3) unstable; urgency=medium
+
+  * Fix links to cargo-doc.
+
+ -- Ximin Luo <infinity0@debian.org>  Sat, 09 Oct 2021 11:46:08 +0100
+
+rustc (1.54.0+dfsg1-2) unstable; urgency=medium
+
+  * Fix some more build & test failures.
+
+ -- Ximin Luo <infinity0@debian.org>  Sat, 09 Oct 2021 03:12:35 +0100
+
+rustc (1.54.0+dfsg1-1) unstable; urgency=medium
+
+  * Upload to unstable.
+  * Re-enable backported patch for armhf & reset its allowed-failures.
+  * Add compatibility patch for cargo 0.47.
+  * Ignore more spurious test failures, and filed upstream.
+  * Bump powerpc allowed-failures to 180 at the request of ports maintainers.
+
+ -- Ximin Luo <infinity0@debian.org>  Sat, 09 Oct 2021 00:24:37 +0100
+
+rustc (1.54.0+dfsg1-1~exp1) experimental; urgency=medium
+
+  * New upstream release.
+
+ -- Ximin Luo <infinity0@debian.org>  Wed, 06 Oct 2021 10:37:55 +0100
+
+rustc (1.53.0+dfsg1-4) unstable; urgency=medium
+
+  * Ignore some hanging test regressions on non-release arches powerpc, ppc64.
+
+ -- Ximin Luo <infinity0@debian.org>  Wed, 06 Oct 2021 19:24:11 +0100
+
+rustc (1.53.0+dfsg1-3) unstable; urgency=medium
+
+  * Disable patch that was backported incorrectly.
+  * Temporarily increase armhf allowed-failures to 12.
+
+ -- Ximin Luo <infinity0@debian.org>  Wed, 06 Oct 2021 19:01:54 +0100
+
+rustc (1.53.0+dfsg1-2) unstable; urgency=medium
+
+  * Fix some test failures.
+
+ -- Ximin Luo <infinity0@debian.org>  Wed, 06 Oct 2021 10:29:03 +0100
+
+rustc (1.53.0+dfsg1-1) unstable; urgency=medium
+
+  * Upload to unstable.
+  * Update mips patches, disable a test as our workaround makes it invalid.
+  * Temporarily ignore some tests that fail on big-endian.
+
+ -- Ximin Luo <infinity0@debian.org>  Tue, 05 Oct 2021 23:19:31 +0100
+
+rustc (1.53.0+dfsg1-1~exp1) experimental; urgency=medium
+
+  * New upstream release. (Closes: #986803)
+  * Honour parallel option in DEB_BUILD_OPTIONS. (Closes: #993871)
+
+ -- Ximin Luo <infinity0@debian.org>  Sat, 02 Oct 2021 12:46:49 +0100
+
+rustc (1.52.1+dfsg1-1) unstable; urgency=medium
+
+  * Upload to unstable.
+  * Reorganise dependencies, move optional rustc deps to rust-all.
+
+ -- Ximin Luo <infinity0@debian.org>  Wed, 29 Sep 2021 20:05:55 +0100
+
+rustc (1.52.1+dfsg1-1~exp3) experimental; urgency=medium
+
+  * Update to LLVM 12.
+
+ -- Ximin Luo <infinity0@debian.org>  Wed, 19 May 2021 17:52:44 +0100
+
+rustc (1.52.1+dfsg1-1~exp2) experimental; urgency=medium
+
+  * Fix rust-clippy dependency on libstd-rust-*
+
+ -- Ximin Luo <infinity0@debian.org>  Sat, 15 May 2021 22:42:38 +0100
+
+rustc (1.52.1+dfsg1-1~exp1) experimental; urgency=medium
+
+  * New upstream release.
+
+ -- Ximin Luo <infinity0@debian.org>  Sat, 15 May 2021 15:21:27 +0100
+
+rustc (1.52.0+dfsg1-1~exp1) experimental; urgency=medium
+
+  * New upstream release.
+
+ -- Ximin Luo <infinity0@debian.org>  Fri, 07 May 2021 20:38:38 +0100
+
+rustc (1.52.0~beta.3+dfsg1-1~exp4) experimental; urgency=medium
+
+  * Fix issue with dh_missing --fail-missing
+
+ -- Ximin Luo <infinity0@debian.org>  Thu, 06 May 2021 01:52:30 +0100
+
+rustc (1.52.0~beta.3+dfsg1-1~exp3) experimental; urgency=medium
+
+  * Fix Makefile addition syntax.
+
+ -- Ximin Luo <infinity0@debian.org>  Wed, 05 May 2021 22:24:22 +0100
+
+rustc (1.52.0~beta.3+dfsg1-1~exp2) experimental; urgency=medium
+
+  * Install the rust-llvm-dwp symlink.
+
+ -- Ximin Luo <infinity0@debian.org>  Wed, 05 May 2021 22:20:13 +0100
+
+rustc (1.52.0~beta.3+dfsg1-1~exp1) experimental; urgency=medium
+
+  * New upstream release.
+
+ -- Ximin Luo <infinity0@debian.org>  Mon, 26 Apr 2021 12:31:27 +0100
+
 rustc-mozilla (1.51.0+dfsg1-1~deb11u1) bullseye; urgency=medium
 
   * Non-maintainer upload.
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/config.toml.in rustc-mozilla-1.59.0+dfsg1/debian/config.toml.in
--- rustc-mozilla-1.51.0+dfsg1/debian/config.toml.in	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/config.toml.in	2022-06-17 16:00:08.749151991 +0200
@@ -1,8 +1,10 @@
+changelog-seen = 2
+
 [build]
 submodules = false
 vendor = true
 locked-deps = false
-verbose = 2
+verbose = VERBOSITY
 
 rustc = "RUST_DESTDIR/usr/bin/rustc"
 cargo = "RUST_DESTDIR/usr/bin/cargo"
@@ -19,6 +21,9 @@ target = ["DEB_TARGET_RUST_TYPE"]
 # we do it this way to avoid spurious rebuilds
 docs = false
 
+extended = true
+tools = ["clippy", "rustfmt"]
+
 [install]
 prefix = "/usr"
 
@@ -62,3 +67,5 @@ remap-debuginfo = true
 
 verbose-tests = true
 backtrace-on-ice = true
+
+deny-warnings = false
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/control rustc-mozilla-1.59.0+dfsg1/debian/control
--- rustc-mozilla-1.51.0+dfsg1/debian/control	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/control	2022-06-17 17:51:59.054234489 +0200
@@ -9,17 +9,17 @@ Rules-Requires-Root: no
 # :native annotations are to support cross-compiling, see README.Debian
 Build-Depends:
  debhelper (>= 9),
- debhelper-compat (= 12),
+ debhelper-compat (= 13),
  dpkg-dev (>= 1.17.14),
  python3:native,
-# cargo:native (>= 0.40.0)              <!pkg.rustc.dlstage0>,
-# rustc-mozilla:native (>= 1.50.0+dfsg) <!pkg.rustc.dlstage0>,
-# rustc-mozilla:native (<= 1.51.0++)    <!pkg.rustc.dlstage0>,
- llvm-11-dev:native,
- llvm-11-tools:native,
+# cargo:native (>= 0.40.0)      <!pkg.rustc.dlstage0>,
+# rustc:native (>= 1.58.0+dfsg) <!pkg.rustc.dlstage0>,
+# rustc:native (<= 1.59.0++)    <!pkg.rustc.dlstage0>,
+ llvm-13-dev:native,
+ llvm-13-tools:native,
  gcc-mingw-w64-x86-64-posix:native [amd64] <!nowindows>,
  gcc-mingw-w64-i686-posix:native [i386] <!nowindows>,
- libllvm11,
+ libllvm13 (>= 1:13.0.0),
  cmake (>= 3.0) | cmake3,
 # needed by some vendor crates
  pkg-config,
@@ -38,9 +38,9 @@ Build-Depends:
  curl <pkg.rustc.dlstage0>,
  ca-certificates <pkg.rustc.dlstage0>,
 Build-Depends-Indep:
- wasi-libc (>= 0.0~git20200731.215adc8~~) <!nowasm>,
- wasi-libc (<= 0.0~git20200731.215adc8++) <!nowasm>,
- clang-11:native,
+# wasi-libc (>= 0.0~git20210922.ad51334~~) <!nowasm>,
+# wasi-libc (<= 0.0~git20210922.ad51334++) <!nowasm>,
+ clang-13:native,
 Build-Conflicts: gdb-minimal <!nocheck>
 Standards-Version: 4.2.1
 Homepage: http://www.rust-lang.org/
@@ -51,12 +51,16 @@ Package: rustc-mozilla
 Architecture: any
 Multi-Arch: allowed
 Pre-Depends: ${misc:Pre-Depends}
-Depends: ${shlibs:Depends}, ${misc:Depends}, libstd-rust-mozilla-dev (= ${binary:Version}),
+Depends: ${shlibs:Depends}, ${misc:Depends},
+ libstd-rust-mozilla-dev (= ${binary:Version}),
  gcc, libc-dev, binutils (>= 2.26)
-Recommends: cargo (>= 0.52.0~~), cargo (<< 0.53.0~~), rust-mozilla-gdb | rust-mozilla-lldb
-# lld is needed for wasm compilation
-# llvm is needed for llvm-dwp for split-debuginfo
-Suggests: rust-mozilla-doc, rust-mozilla-src, lld-11, llvm-11
+Recommends:
+ cargo (>= 0.60.0~~), cargo (<< 0.61.0~~),
+# llvm is needed for llvm-dwp for -C split-debuginfo=packed
+ llvm-13,
+Suggests:
+# lld and clang are needed for wasm compilation
+ lld-13, clang-13,
 Conflicts: rustc
 Provides: rustc (= ${binary:Version})
 Replaces: libstd-rust-dev (<< 1.25.0+dfsg1-2~~), rustc
@@ -74,7 +78,7 @@ Description: Rust systems programming la
  generic programming and meta-programming, in both static and dynamic
  styles.
 
-Package: libstd-rust-mozilla-1.51
+Package: libstd-rust-mozilla-1.59
 Section: libs
 Architecture: any
 Multi-Arch: same
@@ -100,7 +104,8 @@ Package: libstd-rust-mozilla-dev
 Section: libdevel
 Architecture: any
 Multi-Arch: same
-Depends: ${shlibs:Depends}, ${misc:Depends}, libstd-rust-mozilla-1.51 (= ${binary:Version})
+Depends: ${shlibs:Depends}, ${misc:Depends},
+ libstd-rust-mozilla-1.59 (= ${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
@@ -146,35 +151,35 @@ Description: Rust standard libraries - d
  needed to cross-compile Rust programs to the *-pc-windows-gnu target
  corresponding to the architecture of this package.
 
-Package: libstd-rust-mozilla-dev-wasm32
-Section: libdevel
-Architecture: all
-Multi-Arch: foreign
-Depends: ${shlibs:Depends}, ${misc:Depends}
-# Embeds wasi-libc so doesn't need to depend on it
-# None of its licenses require source redistrib, so no need for Built-Using
-Recommends: lld-11
-Suggests: clang-11, nodejs (>= 12.16)
-# nodejs contains wasi-node for running the program
-Conflicts: libstd-rust-dev-wasm32
-Replaces: libstd-rust-dev-wasm32
-Build-Profiles: <!nowasm>
-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
- in syntactic and semantic details.  Its design is oriented toward
- concerns of "programming in the large", that is, of creating and
- maintaining boundaries - both abstract and operational - that
- preserve large-system integrity, availability and concurrency.
- .
- It supports a mixture of imperative procedural, concurrent actor,
- object-oriented and pure functional styles.  Rust also supports
- generic programming and meta-programming, in both static and dynamic
- styles.
- .
- This package contains the standard Rust libraries including development files,
- needed to cross-compile Rust programs to the wasm32-unknown-unknown and
- wasm32-wasi targets.
+#Package: libstd-rust-mozilla-dev-wasm32
+#Section: libdevel
+#Architecture: all
+#Multi-Arch: foreign
+#Depends: ${shlibs:Depends}, ${misc:Depends}
+## Embeds wasi-libc so doesn't need to depend on it
+## None of its licenses require source redistrib, so no need for Built-Using
+#Recommends:
+# lld-13, clang-13,
+#Suggests:
+## nodejs contains wasi-node for running the program
+# nodejs (>= 12.16),
+#Build-Profiles: <!nowasm>
+#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
+# in syntactic and semantic details.  Its design is oriented toward
+# concerns of "programming in the large", that is, of creating and
+# maintaining boundaries - both abstract and operational - that
+# preserve large-system integrity, availability and concurrency.
+# .
+# It supports a mixture of imperative procedural, concurrent actor,
+# object-oriented and pure functional styles.  Rust also supports
+# generic programming and meta-programming, in both static and dynamic
+# styles.
+# .
+# This package contains the standard Rust libraries including development files,
+# needed to cross-compile Rust programs to the wasm32-unknown-unknown and
+# wasm32-wasi targets.
 
 Package: rust-mozilla-gdb
 Architecture: all
@@ -200,8 +205,8 @@ Description: Rust debugger (gdb)
 
 Package: rust-mozilla-lldb
 Architecture: all
-# When updating, also update rust-mozilla-lldb.links
-Depends: lldb-11, ${misc:Depends}, python3-lldb-11
+# When updating, also update rust-lldb.links
+Depends: lldb-13, ${misc:Depends}, python3-lldb-13
 Conflicts: rust-lldb
 Replaces: rustc (<< 1.1.0+dfsg1-1), rust-lldb
 Description: Rust debugger (lldb)
@@ -266,3 +271,84 @@ Description: Rust systems programming la
  .
  This package contains sources of the Rust compiler and standard
  libraries, useful for IDEs and code analysis tools such as Racer.
+
+#Package: rust-mozilla-clippy
+#Architecture: any
+#Multi-Arch: allowed
+#Depends: ${misc:Depends}, ${shlibs:Depends},
+# libstd-rust-mozilla-1.59 (= ${binary:Version})
+#Recommends: cargo
+#Description: Rust linter
+# Rust is a curly-brace, block-structured expression language.  It
+# visually resembles the C language family, but differs significantly
+# in syntactic and semantic details.  Its design is oriented toward
+# concerns of "programming in the large", that is, of creating and
+# maintaining boundaries - both abstract and operational - that
+# preserve large-system integrity, availability and concurrency.
+# .
+# It supports a mixture of imperative procedural, concurrent actor,
+# object-oriented and pure functional styles.  Rust also supports
+# generic programming and meta-programming, in both static and dynamic
+# styles.
+# .
+# This package contains 'clippy', a linter to catch common mistakes and improve
+# your Rust code as well a collection of over 400 compatible lints.
+# .
+# Lints are divided into categories, each with a default lint level. You can
+# choose how much Clippy is supposed to annoy help you by changing the lint
+# level by category.
+# .
+# Clippy is integrated into the 'cargo' build tool, available via 'cargo clippy'.
+#
+#Package: rustfmt-mozilla
+#Architecture: any
+#Multi-Arch: allowed
+#Depends: ${misc:Depends}, ${shlibs:Depends},
+#Recommends: cargo
+#Description: Rust formatting helper
+# Rust is a curly-brace, block-structured expression language.  It
+# visually resembles the C language family, but differs significantly
+# in syntactic and semantic details.  Its design is oriented toward
+# concerns of "programming in the large", that is, of creating and
+# maintaining boundaries - both abstract and operational - that
+# preserve large-system integrity, availability and concurrency.
+# .
+# It supports a mixture of imperative procedural, concurrent actor,
+# object-oriented and pure functional styles.  Rust also supports
+# generic programming and meta-programming, in both static and dynamic
+# styles.
+# .
+# This package contains 'rustfmt', a tool for formatting Rust code according to
+# style guidelines, as well as 'cargo-fmt', a helper enabling running rustfmt
+# directly with 'cargo fmt'.
+#
+#Package: rust-mozilla-all
+#Architecture: all
+#Depends: ${misc:Depends}, ${shlibs:Depends},
+# rustc-mozilla (>= ${binary:Version}),
+# rustfmt-mozilla (>= ${binary:Version}),
+# rust-mozilla-clippy (>= ${binary:Version}),
+# rust-mozilla-gdb (>= ${binary:Version}) | rust-mozilla-lldb (>= ${binary:Version}),
+# cargo,
+#Recommends:
+# cargo (>= 0.60.0~~), cargo (<< 0.61.0~~)
+#Suggests:
+# rust-mozilla-doc (>= ${binary:Version}),
+# rust-mozilla-src (>= ${binary:Version}),
+# libstd-rust-mozilla-dev-wasm32 (>= ${binary:Version}),
+# libstd-rust-mozilla-dev-windows (>= ${binary:Version}),
+#Description: Rust systems programming language - all developer tools
+# Rust is a curly-brace, block-structured expression language.  It
+# visually resembles the C language family, but differs significantly
+# in syntactic and semantic details.  Its design is oriented toward
+# concerns of "programming in the large", that is, of creating and
+# maintaining boundaries - both abstract and operational - that
+# preserve large-system integrity, availability and concurrency.
+# .
+# It supports a mixture of imperative procedural, concurrent actor,
+# object-oriented and pure functional styles.  Rust also supports
+# generic programming and meta-programming, in both static and dynamic
+# styles.
+# .
+# This package is an empty metapackage that depends on all developer tools
+# in the standard rustc distribution that have been packaged for Debian.
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/copyright rustc-mozilla-1.59.0+dfsg1/debian/copyright
--- rustc-mozilla-1.51.0+dfsg1/debian/copyright	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/copyright	2022-03-29 15:17:23.000000000 +0200
@@ -5,14 +5,18 @@ Files-Excluded:
  *.min.js
  src/llvm-emscripten
  src/llvm-project
- vendor/jemalloc-sys
- vendor/libmimalloc-sys
- vendor/mimalloc
+# Fonts already in Debian, covered by d-rustdoc-use-system-font.patch
+# TODO make that patch, modify src/librustdoc/html/static/css/rustdoc.css
+ src/librustdoc/html/static/fonts/noto-sans-*
+# Pre-generated docs
+ src/tools/rustfmt/docs
+# Proprietary doc formats
+ src/doc/book/nostarch/docx
+# Fonts already in Debian, covered by d-0003-mdbook-strip-embedded-libs.patch
  vendor/mdbook/src/theme/fonts
  vendor/mdbook/src/theme/FontAwesome
  vendor/mdbook/src/theme/highlight.js
  vendor/mdbook/src/theme/highlight.css
- vendor/psm/src/arch/wasm32.o
 # 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
@@ -22,64 +26,51 @@ Files-Excluded:
 # cargo's own test suite (in its own package) also called cargotest.
 # NB: don't exclude rust-installer, it's needed for "install" functionality
  src/tools/cargo
- src/tools/clippy
  src/tools/rls
  src/tools/remote-test-client
  src/tools/remote-test-server
  src/tools/rust-analyzer
- src/tools/rustfmt
  src/tools/miri
+# Embedded GH pages
+ src/tools/clippy/util/gh-pages
+# Misc embedded
+ vendor/structopt/link-check-headers.json
 # Embedded C libraries
  vendor/libz-sys/src/zlib*
  vendor/lzma-sys*/xz-*
 # Embedded binary blobs
- vendor/winapi-*/*/*.a
+ vendor/jsonpath_lib/docs
  vendor/mdbook/src/theme/playground_editor
-# Embedded proprietary doc formats
- src/doc/book/nostarch/docx
+ vendor/psm/src/arch/wasm32.o
+ vendor/winapi-*/*/*.a
+# Embedded submodule used for CI
+ library/stdarch/crates/intrinsic-test/acle
+# NPM packages we can't be bothered documenting licenses for
+ vendor/tera/docs/node_modules
 # unused dependencies, generated by debian/prune-unused-deps
 # DO NOT EDIT below, AUTOGENERATED
- vendor/addr2line-0.14.0
+ vendor/addr2line
+ vendor/adler-0.2.3
  vendor/always-assert
- vendor/annotate-snippets-0.6.1
- vendor/anyhow-1.0.34
  vendor/anymap
+ vendor/arbitrary
  vendor/ar
- vendor/arc-swap
- vendor/arrayref
- vendor/array_tool
- vendor/arrayvec-0.5.1
+ vendor/arrayvec-0.7.0
  vendor/autocfg-1.0.0
  vendor/backtrace
- vendor/base64-0.11.0
- vendor/base64
+ vendor/bitflags-1.2.1
  vendor/bitmaps
- vendor/blake2b_simd
- vendor/bytecount
- vendor/byteorder-1.3.4
  vendor/bytes
  vendor/bytesize
- vendor/cargo_metadata-0.12.0
- vendor/cargo_metadata-0.8.2
- vendor/cargo_metadata
- vendor/cargo-platform
- vendor/cc-1.0.60
- vendor/chalk-derive-0.51.0
- vendor/chalk-ir-0.51.0
+ vendor/cargo_metadata-0.14.0
+ vendor/cc-1.0.69
  vendor/chalk-recursive
- vendor/chalk-solve-0.51.0
- vendor/chrono-0.4.15
- vendor/cloudabi
- vendor/cmake-0.1.44
- vendor/colored
  vendor/commoncrypto
  vendor/commoncrypto-sys
- vendor/compiletest_rs
- vendor/constant_time_eq
- vendor/const_fn-0.4.2
  vendor/core-foundation
  vendor/core-foundation-sys
  vendor/countme
+ vendor/cov-mark
  vendor/cranelift-bforest
  vendor/cranelift-codegen
  vendor/cranelift-codegen-meta
@@ -91,36 +82,31 @@ Files-Excluded:
  vendor/cranelift-native
  vendor/cranelift-object
  vendor/crc32fast-1.2.0
- vendor/crossbeam-queue
- vendor/crossbeam-utils-0.8.0
+ vendor/crossbeam-channel-0.5.0
+ vendor/crossbeam-utils-0.8.3
  vendor/crypto-hash
  vendor/curl
  vendor/curl-sys
  vendor/dashmap
+ vendor/derive_arbitrary
  vendor/derive_more
- vendor/derive-new
  vendor/directories
- vendor/dirs
- vendor/dirs-sys
+ vendor/dot
  vendor/drop_bomb
  vendor/either-1.6.0
- vendor/env_logger-0.6.2
- vendor/env_logger-0.8.1
+ vendor/enum-iterator
+ vendor/enum-iterator-derive
  vendor/env_logger
- vendor/errno
- vendor/errno-dragonfly
  vendor/expect-test-1.0.1
- vendor/filetime-0.2.12
+ vendor/filetime-0.2.14
  vendor/flate2-1.0.16
  vendor/foreign-types
  vendor/foreign-types-shared
- vendor/fsevent
  vendor/fsevent-sys
  vendor/fs_extra-1.1.0
- vendor/fst-0.3.5
+ vendor/fs_extra
+ vendor/fst-0.4.5
  vendor/fst
- vendor/fuchsia-zircon
- vendor/fuchsia-zircon-sys
  vendor/futures-0.1.29
  vendor/futures
  vendor/futures-channel
@@ -132,32 +118,22 @@ Files-Excluded:
  vendor/futures-task
  vendor/futures-util
  vendor/fwdansi
- vendor/gcc
- vendor/getrandom
+ vendor/getset
  vendor/git2
  vendor/git2-curl
- vendor/hashbrown-0.9.0
+ vendor/hashbrown-0.11.0
  vendor/heck-0.3.1
- vendor/hermit-abi-0.1.17
  vendor/hex-0.3.2
  vendor/home
- vendor/humantime
  vendor/idna-0.1.5
- vendor/if_chain
+ vendor/idna-0.2.0
  vendor/im-rc
- vendor/indexmap-1.6.0
  vendor/inotify
  vendor/inotify-sys
- vendor/instant-0.1.6
- vendor/iovec
- vendor/itertools-0.8.2
- vendor/itertools
+ vendor/itertools-0.10.1
  vendor/itoa-0.4.6
- vendor/jemallocator
- vendor/jemalloc-ctl
  vendor/jod-thread
  vendor/json
- vendor/jsonpath_lib
  vendor/jsonrpc-client-transports
  vendor/jsonrpc-core
  vendor/jsonrpc-core-client
@@ -165,91 +141,74 @@ Files-Excluded:
  vendor/jsonrpc-ipc-server
  vendor/jsonrpc-pubsub
  vendor/jsonrpc-server-utils
- vendor/kernel32-sys
+ vendor/kqueue
+ vendor/kqueue-sys
  vendor/lazycell
- vendor/libc-0.2.82
- vendor/libc-0.2.84
+ vendor/libc-0.2.108
  vendor/libgit2-sys
- vendor/libloading
+ 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.1
- vendor/log-0.4.11
- vendor/log-0.4.13
  vendor/lsp-codec
  vendor/lsp-server
  vendor/lsp-types-0.60.0
  vendor/lsp-types
  vendor/mach
- vendor/memchr-2.3.3
+ vendor/matches-0.1.8
+ vendor/measureme-9.1.2
+ vendor/memmap2
  vendor/mimalloc
  vendor/miniz_oxide-0.4.0
- vendor/mio-0.6.22
+ vendor/mio-0.7.13
  vendor/mio
- vendor/mio-named-pipes
- vendor/mio-uds
- vendor/miow-0.2.2
- vendor/net2
+ vendor/miow
  vendor/notify
  vendor/ntapi
- vendor/num-integer-0.1.43
- vendor/num-traits-0.2.12
  vendor/object
- vendor/once_cell-1.4.1
+ vendor/once_cell-1.7.2
  vendor/oorandom
  vendor/openssl
  vendor/openssl-probe
  vendor/openssl-src
  vendor/openssl-sys
  vendor/ordslice
- vendor/packed_simd
+ vendor/os_info
  vendor/parity-tokio-ipc
- vendor/parking_lot-0.11.0
- vendor/parking_lot_core-0.8.0
  vendor/paste
- vendor/paste-impl
  vendor/percent-encoding-1.0.1
  vendor/perf-event
- vendor/perf-event-open-sys
- vendor/pico-args
- vendor/pin-project-lite-0.1.11
+ vendor/pin-project-lite-0.2.4
  vendor/pin-utils
  vendor/pretty_env_logger
- vendor/proc-macro2-1.0.19
+ vendor/proc-macro2-1.0.30
  vendor/proc-macro-crate
  vendor/proc-macro-hack
  vendor/proc-macro-nested
+ vendor/pulldown-cmark-0.8.0
  vendor/pulldown-cmark-to-cmark
- vendor/quine-mc_cluskey
  vendor/quote-1.0.7
  vendor/racer
- vendor/rand_xoshiro
- vendor/raw-cpuid
+ vendor/rand_xoshiro-0.4.0
  vendor/rayon-1.3.1
  vendor/rayon-core-1.7.1
- vendor/redox_users
  vendor/regalloc
  vendor/region
- vendor/rls-analysis
  vendor/rls-vfs
  vendor/rowan
- vendor/rust-argon2
  vendor/rustc-ap-rustc_arena
  vendor/rustc-ap-rustc_ast
- vendor/rustc-ap-rustc_ast_passes
  vendor/rustc-ap-rustc_ast_pretty
- vendor/rustc-ap-rustc_attr
  vendor/rustc-ap-rustc_data_structures
  vendor/rustc-ap-rustc_errors
- vendor/rustc-ap-rustc_expand
  vendor/rustc-ap-rustc_feature
  vendor/rustc-ap-rustc_fs_util
  vendor/rustc-ap-rustc_graphviz
  vendor/rustc-ap-rustc_index
- vendor/rustc-ap-rustc_lexer-701.0.0
+ vendor/rustc-ap-rustc_lexer-722.0.0
  vendor/rustc-ap-rustc_lexer
  vendor/rustc-ap-rustc_lint_defs
  vendor/rustc-ap-rustc_macros
@@ -258,73 +217,62 @@ Files-Excluded:
  vendor/rustc-ap-rustc_session
  vendor/rustc-ap-rustc_span
  vendor/rustc-ap-rustc_target
- vendor/rustc-semver
- vendor/rustc_tools_util
  vendor/rustc_version
+ vendor/ryu-1.0.5
  vendor/salsa
  vendor/salsa-macros
  vendor/schannel
  vendor/security-framework
  vendor/security-framework-sys
- vendor/semver-0.9.0
- vendor/semver
- vendor/semver-parser-0.10.1
- vendor/semver-parser
- vendor/serde-1.0.118
- vendor/serde_derive-1.0.118
+ vendor/semver-1.0.3
+ vendor/serde-1.0.125
+ vendor/serde_derive-1.0.125
  vendor/serde_ignored
  vendor/serde_json-1.0.59
- vendor/serde_path_to_error
+ vendor/serde_repr-0.1.6
  vendor/serde_repr
- vendor/sharded-slab-0.0.9
- vendor/shell-escape
+ vendor/sharded-slab-0.1.1
  vendor/signal-hook-registry
  vendor/sized-chunks
  vendor/slab
- vendor/smallvec-0.6.13
- vendor/smallvec-1.4.2
  vendor/smol_str
- vendor/socket2-0.3.16
+ vendor/snap-1.0.1
+ vendor/socket2
  vendor/strip-ansi-escapes
- vendor/structopt
- vendor/structopt-derive
- vendor/syn-1.0.38
- vendor/syn-1.0.58
+ vendor/syn-1.0.80
  vendor/target-lexicon
- vendor/term
- vendor/termcolor-1.1.0
- vendor/tester
  vendor/text-size
- vendor/thiserror-1.0.20
- vendor/thiserror
- vendor/thiserror-impl-1.0.20
- vendor/thiserror-impl
  vendor/thread_local-1.0.1
  vendor/threadpool
- vendor/time-0.1.43
+ vendor/tikv-jemallocator
+ vendor/tikv-jemalloc-ctl
+ vendor/tikv-jemalloc-sys-0.4.1+5.2.1-patched
+ vendor/tikv-jemalloc-sys
  vendor/tinyvec-0.3.4
  vendor/tokio
- vendor/tokio-macros
+ vendor/tokio-stream
  vendor/tokio-util
  vendor/tower-service
- vendor/tracing-0.1.19
- vendor/tracing-subscriber-0.2.13
- vendor/tracing-tree-0.1.6
+ vendor/typed-arena
  vendor/ungrammar
- vendor/unicode_categories
+ vendor/unicode-bidi-0.3.4
  vendor/unicode-normalization-0.1.13
  vendor/unicode-segmentation-1.6.0
  vendor/url-1.7.2
- vendor/url-2.1.1
  vendor/utf8parse
  vendor/vcpkg
  vendor/vergen
- vendor/version_check-0.9.1
  vendor/vte
- vendor/winapi-0.2.8
- vendor/winapi-build
+ vendor/walkdir-2.3.1
+ vendor/windows_aarch64_msvc
+ vendor/windows_i686_gnu
+ vendor/windows_i686_msvc
+ vendor/windows-sys
+ vendor/windows_x86_64_gnu
+ vendor/windows_x86_64_msvc
  vendor/write-json
- vendor/ws2_32-sys
+ vendor/xflags
+ vendor/xflags-macros
  vendor/xshell
  vendor/xshell-macros
  vendor/yaml-merge-keys
@@ -350,7 +298,7 @@ Files: C*.md
        src/etc/*
        src/lib*
        src/rust*
-       src/stage0.txt
+       src/stage0.json
        src/tools/*
        src/test/*
        src/version
@@ -361,53 +309,43 @@ Copyright: 2006-2009 Graydon Hoare
            2012-2017 The Rust Project Developers (see AUTHORS.txt)
 License: MIT or Apache-2.0
 
-Files: library/backtrace/crates/backtrace-sys/src/libbacktrace/*
-Copyright: 2012-2016 Free Software Foundation, Inc.
-License: BSD-3-Clause
-Comment: written by Ian Lance Taylor, Google.
-
-Files:
- library/backtrace/crates/backtrace-sys/src/libbacktrace/filenames.h
- library/backtrace/crates/backtrace-sys/src/libbacktrace/ltmain.sh
-Copyright: 2000, 2001, 2007, 2010 Free Software Foundation, Inc.
-License: GPL-2+
-
-Files: library/std/src/memchr.rs
-Copyright: 2015 Andrew Gallant, bluss and Nicolas Koch
-License: MIT or Apache-2.0
-
 Files: library/std/src/sync/mpsc/mpsc_queue.rs
        library/std/src/sync/mpsc/spsc_queue.rs
 Copyright: 2010-2011 Dmitry Vyukov
 License: BSD-2-Clause
 
-Files: src/librustdoc/html/static/FiraSans*
+Files: src/librustdoc/html/static/fonts/FiraSans*
 Copyright: 2014, Mozilla Foundation, 2014, Telefonica S.A.
 License: SIL-OPEN-FONT
 
-Files: src/librustdoc/html/static/SourceCodePro*
-Copyright: 2010, 2012 Adobe Systems Incorporated
+Files: src/librustdoc/html/static/fonts/NanumBarun*
+Copyright: 2010 NAVER Corporation
 License: SIL-OPEN-FONT
 
-Files: src/librustdoc/html/static/SourceSerifPro*
-Copyright: 2014 Adobe Systems Incorporated
+Files: src/librustdoc/html/static/fonts/SourceCodePro*
+Copyright: 2010, 2012 Adobe Systems Incorporated
 License: SIL-OPEN-FONT
 
-Files: src/librustdoc/html/static/main.js
-Copyright: 2014 The Rust Project Developers
-License: MIT or Apache-2.0
+Files: src/librustdoc/html/static/fonts/SourceSerif4*
+Copyright: 2014-2021 Adobe Systems Incorporated
+License: SIL-OPEN-FONT
 
 Files: vendor/compiler_builtins/*
 Copyright: 2016-2019 Jorge Aparicio <japaricious@gmail.com>
 License: MIT or Apache-2.0
 Comment: see https://github.com/rust-lang-nursery/compiler-builtins
 
+Files: vendor/compiletest_rs/*
+Copyright: 2015-2020 The Rust Project Developers
+           2015-2020 Thomas Bracht Laumann Jespersen <laumann.thomas@gmail.com>
+           2015-2020 Manish Goregaokar <manishsmail@gmail.com>
+License: Apache-2.0 or MIT
+Comment: see https://github.com/laumann/compiletest-rs
+
 Files:
  vendor/bitflags/*
  vendor/cc/*
- vendor/cc-1*/*
  vendor/cmake/*
- vendor/env_logger/*
  vendor/env_logger-0*/*
  vendor/getopts/*
  vendor/glob/*
@@ -417,7 +355,7 @@ Files:
  vendor/regex-syntax/*
  vendor/rustc-hash/*
  vendor/time/*
-Copyright: 2010-2020 The Rust Project Developers
+Copyright: 2010-2021 The Rust Project Developers
 License: MIT or Apache-2.0
 Comment:
  This is a collection of external crates embedded here to bootstrap cargo.
@@ -425,11 +363,6 @@ Comment:
  same MIT/Apache-2.0 dual-license. See https://github.com/rust-lang.
  Exceptions are noted below.
 
-Files: vendor/adler/*
-Copyright: 2020-2020 Jonas Schievink <jonasschievink@gmail.com>
-License: 0BSD or MIT or Apache-2.0
-Comment: see https://github.com/jonas-schievink/adler.git
-
 Files: vendor/num-integer/*
        vendor/num-traits/*
 Copyright: 2014-2018 The Rust Project Developers
@@ -439,7 +372,6 @@ Comment: see https://github.com/rust-num
 Files:
  vendor/string_cache/*
  vendor/string_cache_codegen/*
- vendor/string_cache_shared/*
  vendor/unicode-bidi/*
 Copyright: 2015-2017 Alex Crichton <alex@alexcrichton.com>
            2015-2017 Keegan McAllister <kmcallister@mozilla.com>
@@ -461,11 +393,9 @@ Files:
  vendor/rand_core-0*/*
  vendor/rand_hc/*
  vendor/rand_hc-0*/*
- vendor/rand_isaac/*
  vendor/rand_pcg/*
- vendor/rand_pcg-0*/*
  vendor/rand_xorshift/*
- vendor/rand_xorshift-0*/*
+ vendor/rand_xoshiro/*
 Copyright: 2010-2019 The Rand Project Developers
            2010-2019 The Rust Project Developers
 License: MIT or Apache-2.0
@@ -481,15 +411,11 @@ Files:
  vendor/flate2/*
  vendor/fnv/*
  vendor/jobserver/*
- vendor/libz-sys/*
  vendor/lzma-sys/*
- vendor/miow/*
  vendor/pkg-config/*
  vendor/proc-macro2/*
- vendor/proc-macro2-0*/*
  vendor/rustc-demangle/*
  vendor/scoped-tls/*
- vendor/socket2/*
  vendor/tar/*
  vendor/toml/*
  vendor/xz2/*
@@ -507,18 +433,24 @@ Files: vendor/dlmalloc/src/dlmalloc.c
 Copyright: 2000-2012 Doug Lea <dl@cs.oswego.edu>
 License: CC0-1.0
 
-Files: vendor/addr2line/*
-Copyright: 2016-2020 Nick Fitzgerald <fitzgen@gmail.com>
-           2016-2020 Philip Craig <philipjcraig@gmail.com>
-           2016-2020 Jon Gjengset <jon@thesquareplanet.com>
-           2016-2020 Noah Bergbauer <noah.bergbauer@tum.de>
+Files: vendor/tester/*
+Copyright: 2016-2019 The Rust Project Developers
+License: MIT OR Apache-2.0
+Comment: see https://github.com/messense/rustc-test
+
+Files: vendor/addr2line-0*/*
+Copyright:
+ 2016-2021 Nick Fitzgerald <fitzgen@gmail.com>
+ 2016-2021 Philip Craig <philipjcraig@gmail.com>
+ 2016-2021 Jon Gjengset <jon@thesquareplanet.com>
+ 2016-2021 Noah Bergbauer <noah.bergbauer@tum.de>
 License: Apache-2.0 or MIT
 Comment: see https://github.com/gimli-rs/addr2line
 
-Files: vendor/adler32/*
-Copyright: 2015-2020 Remi Rampin <remirampin@gmail.com>
-License: Zlib
-Comment: see https://github.com/remram44/adler32-rs
+Files: vendor/adler/*
+Copyright: 2020-2020 Jonas Schievink <jonasschievink@gmail.com>
+License: 0BSD or MIT or Apache-2.0
+Comment: see https://github.com/jonas-schievink/adler.git
 
 Files: vendor/ammonia/*
 Copyright: 2015-2018 Michael Howell <michael@notriddle.com>
@@ -526,7 +458,7 @@ License: MIT  or  Apache-2.0
 Comment: see https://github.com/notriddle/ammonia
 
 Files: vendor/annotate-snippets/*
-Copyright: 2018-2019 Zibi Braniecki <gandalf@mozilla.com>
+Copyright: 2018-2020 Zibi Braniecki <gandalf@mozilla.com>
 License: Apache-2.0 or MIT
 Comment: see https://github.com/zbraniecki/annotate-snippets-rs
 
@@ -540,31 +472,21 @@ Copyright:
 License: MIT
 Comment: see https://github.com/ogham/rust-ansi-term
 
-Files: vendor/anymap/*
-Copyright: 2014-2018 Chris Morgan <me@chrismorgan.info>
-License: MIT or Apache-2.0
-Comment: see https://github.com/chris-morgan/anymap
-
 Files: vendor/aho-corasick/*
        vendor/memchr/*
-       vendor/utf8-ranges/*
 Copyright: 2015 Andrew Gallant <jamslam@gmail.com>
            2015-2018 bluss
 License: MIT or Unlicense
 Comment: see upstream projects,
- * https://github.com/docopt/docopt.rs
  * https://github.com/BurntSushi/aho-corasick
  * https://github.com/BurntSushi/rust-memchr
- * https://github.com/BurntSushi/utf8-ranges
 
-Files: vendor/arrayref/*
-Copyright: 2015-2018 David Roundy <roundyd@physics.oregonstate.edu>
-License: BSD-2-Clause
-Comment: see https://github.com/droundy/arrayref
+Files: vendor/array_tool/*
+Copyright: 2015-2018 Daniel P. Clark <6ftdan@gmail.com>
+License: MIT OR Apache-2.0
+Comment: see https://github.com/danielpclark/array_tool
 
-Files:
- vendor/autocfg/*
- vendor/autocfg-0*/*
+Files: vendor/autocfg/*
 Copyright: 2018-2020 Josh Stone <cuviper@gmail.com>
 License: Apache-2.0 or MIT
 
@@ -573,12 +495,6 @@ Copyright: 2015-2017 softprops <d.tangre
 License: MIT
 Comment: see https://github.com/softprops/atty
 
-Files: vendor/base64/*
-Copyright: 2015-2020 Alice Maz <alice@alicemaz.com>
-           2015-2020 Marshall Pierce <marshall@mpierce.org>
-License: MIT or Apache-2.0
-Comment: see https://github.com/marshallpierce/rust-base64
-
 Files:
  vendor/block-buffer/*
  vendor/block-buffer-0*/*
@@ -606,63 +522,67 @@ Copyright: 2018-2020 Andrew Gallant <jam
 License: MIT OR Apache-2.0
 Comment: see https://github.com/BurntSushi/bstr
 
+Files: vendor/bytecount/*
+Copyright: 2016-2020 Andre Bogus <bogusandre@gmail.de>
+           2016-2020 Joshua Landau <joshua@landau.ws>
+License: Apache-2.0 or MIT
+Comment: see https://github.com/llogiq/bytecount
+
 Files:
  vendor/byteorder/*
- vendor/fst/*
  vendor/globset/*
  vendor/ignore/*
  vendor/same-file/*
  vendor/termcolor/*
  vendor/walkdir/*
  vendor/winapi-util/*
- vendor/wincolor/*
 Copyright: 2015-2020 Andrew Gallant <jamslam@gmail.com>
 License: Unlicense or MIT
 Comment:
  see https://github.com/BurntSushi/byteorder
- see https://github.com/BurntSushi/fst
  see https://github.com/BurntSushi/same-file
  see https://github.com/BurntSushi/walkdir
  see https://github.com/BurntSushi/winapi-util
  see https://github.com/BurntSushi/ripgrep/tree/master/globset
  see https://github.com/BurntSushi/ripgrep/tree/master/ignore
  see https://github.com/BurntSushi/ripgrep/tree/master/termcolor
- see https://github.com/BurntSushi/ripgrep/tree/master/wincolor
+
+Files: vendor/camino/*
+Copyright: 2020-2022 Without Boats <saoirse@without.boats>
+           2020-2022 Ashley Williams <ashley666ashley@gmail.com>
+           2020-2022 Steve Klabnik <steve@steveklabnik.com>
+           2020-2022 Rain <rain@sunshowers.io>
+License: MIT OR Apache-2.0
+Comment: see https://github.com/withoutboats/camino
 
 Files:
  vendor/cargo_metadata/*
  vendor/cargo_metadata-0*/*
- vendor/log_settings/*
 Copyright: 2016-2020 Oliver Schneider <git-spam-no-reply9815368754983@oli-obk.de>
 License: MIT
 Comment:
- see https://github.com/oli-obk/log_settings
  see https://github.com/oli-obk/cargo_metadata
 
-Files:
- vendor/c2-chacha/*
- vendor/ppv-lite86/*
+Files: vendor/cargo-platform/*
+Copyright: 2019-2022 The Cargo Project Developers
+License: MIT OR Apache-2.0
+Comment: see https://github.com/rust-lang/cargo
+
+Files: vendor/ppv-lite86/*
 Copyright: 2019-2019 The CryptoCorrosion Contributors
 License: MIT or Apache-2.0
 Comment: see https://github.com/cryptocorrosion/cryptocorrosion
 
 Files:
- vendor/chalk-derive-0*/*
- vendor/chalk-engine-0*/*
- vendor/chalk-ir-0*/*
- vendor/chalk-solve-0*/*
  vendor/chalk-derive/*
  vendor/chalk-engine/*
  vendor/chalk-ir/*
- vendor/chalk-macros/*
- vendor/chalk-recursive/*
- vendor/chalk-rust-ir/*
  vendor/chalk-solve/*
 Copyright:
- 2015-2020 Rust Compiler Team
- 2015-2020 Chalk developers
+ 2015-2022 Rust Compiler Team
+ 2015-2022 Chalk developers
 License: Apache-2.0 or MIT
-Comment: see https://github.com/rust-lang-nursery/chalk
+Comment: see https://github.com/rust-lang/chalk
 
 Files: vendor/chrono/*
 Copyright: 2014-2018 Kang Seonghoon <public+rust@mearie.org>
@@ -674,26 +594,10 @@ Copyright: 2015-2017 Kevin K. <kbknapp@g
 License: MIT
 Comment: see https://github.com/kbknapp/clap-rs.git
 
-Files:
- vendor/cloudabi-0*/*
- vendor/cloudabi/*
-Copyright: 2016-2020 Nuxi (https://nuxi.nl/) and contributors
-License: BSD-2-Clause
-Comment: see https://github.com/nuxinl/cloudabi
-
-Files: vendor/console/*
-Copyright: 2017-2020 Armin Ronacher <armin.ronacher@active-4.com>
-License: MIT
-Comment: see https://github.com/mitsuhiko/console
-
-Files:
- vendor/const_fn/*
- vendor/pin-project-lite/*
-Copyright: 2018-2021 Taiki Endo <te316e89@gmail.com>
-License: Apache-2.0 or MIT
-Comment:
- see https://github.com/taiki-e/const_fn
- see https://github.com/taiki-e/pin-project-lite
+Files: vendor/colored/*
+Copyright: 2016-2020 Thomas Wickham <mackwic@gmail.com>
+License: MPL-2.0
+Comment: see https://github.com/mackwic/colored
 
 Files: vendor/crc32fast/*
 Copyright: 2018-2019 Sam Rijs <srijs@airpost.net>
@@ -708,35 +612,22 @@ Files:
  vendor/crossbeam-epoch/*
  vendor/crossbeam-epoch-0*/*
  vendor/crossbeam-queue/*
- vendor/crossbeam-queue-0*/*
  vendor/crossbeam-utils/*
  vendor/crossbeam-utils-0*/*
 Copyright: 2015-2021 The Crossbeam Project Developers
 License: MIT or Apache-2.0
 Comment: see https://github.com/crossbeam-rs
 
-Files: vendor/codespan/*
-Copyright: 2018-2020 Brendan Zabarauskas <bjzaba@yahoo.com.au>
-License: Apache-2.0
-Comment: see https://github.com/brendanzab/codespan
-
-Files: vendor/codespan-reporting/*
-Copyright: 2018-2020 Brendan Zabarauskas <bjzaba@yahoo.com.au>
-License: Apache-2.0
-Comment: see https://github.com/brendanzab/codespan
+Files: vendor/cstr/*
+Copyright: 2018-2020 Xidorn Quan <me@upsuper.org>
+License: MIT
+Comment: see https://github.com/upsuper/cstr
 
 Files: vendor/ctor/*
 Copyright: 2018-2020 Matt Mastracci <matthew@mastracci.com>
 License: Apache-2.0 OR MIT
 Comment: see https://github.com/mmastrac/rust-ctor
 
-Files:
- vendor/darling/*
- vendor/darling_core/*
- vendor/darling_macro/*
-Copyright: 2017-2019 Ted Driggs <ted.driggs@outlook.com>
-License: MIT
-
 Files: vendor/datafrog/*
 Copyright:
  2018 Frank McSherry <fmcsherry@me.com>
@@ -745,6 +636,11 @@ Copyright:
 License: Apache-2.0 or MIT
 Comment: see https://github.com/rust-lang-nursery/datafrog
 
+Files: vendor/derive-new/*
+Copyright: 2016-2020 Nick Cameron <ncameron@mozilla.com>
+License: MIT
+Comment: see https://github.com/nrc/derive-new
+
 Files: vendor/diff/*
 Copyright: 2015-2017 Utkarsh Kukreti <utkarshkukreti@gmail.com>
 License: MIT or Apache-2.0
@@ -753,21 +649,17 @@ Comment: see https://github.com/utkarshk
 Files:
  vendor/anyhow/*
  vendor/dissimilar/*
- vendor/dtoa/*
  vendor/itoa/*
  vendor/quote/*
- vendor/quote-0*/*
  vendor/syn/*
- vendor/syn-0*/*
-Copyright: 2016-2021 David Tolnay <dtolnay@gmail.com>
+Copyright: 2016-2022 David Tolnay <dtolnay@gmail.com>
 License: MIT or Apache-2.0
 Comment:
  see https://github.com/dtolnay/anyhow
- see https://github.com/dtolnay/itoa
  see https://github.com/dtolnay/dissimilar
+ see https://github.com/dtolnay/itoa
  see https://github.com/dtolnay/quote
  see https://github.com/dtolnay/syn
- see https://github.com/dtolnay/synom
 
 Files:
  vendor/arrayvec/*
@@ -776,8 +668,6 @@ Files:
  vendor/itertools/*
  vendor/itertools-0*/*
  vendor/maplit/*
- vendor/nodrop/*
- vendor/ordermap/*
  vendor/scopeguard/*
 Copyright: 2014-2020 bluss
 License: MIT or Apache-2.0
@@ -787,7 +677,6 @@ Comment:
  see https://github.com/bluss/arrayvec
  see https://github.com/bluss/fixedbitset
  see https://github.com/bluss/maplit
- see https://github.com/bluss/ordermap
  see https://github.com/bluss/scopeguard
 
 Files: vendor/difference/*
@@ -795,50 +684,42 @@ Copyright: 2015-2018 Johann Hofmann <mai
 License: MIT
 Comment: see https://github.com/johannhof/difference.rs
 
-Files: vendor/drop_bomb/*
-Copyright: 2018-2020 Aleksey Kladov <aleksey.kladov@gmail.com>
+Files:
+ vendor/dirs/*
+ vendor/dirs-sys/*
+Copyright: 2015-2020 Simon Ochsenreither <simon@ochsenreither.de>
+           2015-2020 dirs-rs contributors
 License: MIT OR Apache-2.0
-Comment: see https://github.com/matklad/drop_bomb
+Comment:
+ see https://github.com/dirs-dev/dirs-rs
+ see https://github.com/dirs-dev/dirs-sys-rs
+
+Files:
+ vendor/dirs-next/*
+ vendor/dirs-sys-next/*
+Copyright: 2017-2021 The @xdg-rs members
+License: MIT OR Apache-2.0
+Comment: see https://github.com/xdg-rs/dirs
 
 Files: vendor/elasticlunr-rs/*
 Copyright: 2017-2018 Matt Ickstadt <mattico8@gmail.com>
 License: MIT or Apache-2.0
 Comment: see https://github.com/mattico/elasticlunr-rs
 
-Files:
- vendor/ena-0*/*
- vendor/ena/*
+Files: vendor/ena/*
 Copyright: 2015-2020 Niko Matsakis <niko@alum.mit.edu>
 License: MIT or Apache-2.0
 Comment: see https://github.com/nikomatsakis/ena
 
-Files: vendor/encode_unicode/*
-Copyright: 2016-2020 Torbjørn Birch Moltu <t.b.moltu@lyse.net>
-License: MIT or Apache-2.0
-Comment: see https://github.com/tormol/encode_unicode
-
-Files:
- vendor/error-chain/*
-Copyright: 2016-2017 Brian Anderson <banderson@mozilla.com>
-           2016-2017 Paul Colomiets <paul@colomiets.name>
-           2016-2017 Colin Kiegel <kiegel@gmx.de>
-           2016-2017 Yamakaky <yamakaky@yamaworld.fr>
-License: MIT or Apache-2.0
-Comment: see https://github.com/brson/error-chain
-
 Files: vendor/expect-test/*
-Copyright: 2017-2020 rust-analyzer developers
+Copyright: 2020-2022 rust-analyzer developers
 License: MIT OR Apache-2.0
-Comment: see https://github.com/rust-analyzer/rust-analyzer
+Comment: see https://github.com/rust-analyzer/expect-test
 
-Files:
- vendor/failure/*
- vendor/failure_derive/*
-Copyright: 2017-2018 Without Boats <boats@mozilla.com>
-License: MIT OR Apache-2.0
-Comment:
- see https://github.com/withoutboats/failure
- see https://github.com/withoutboats/failure_derive
+Files: vendor/fallible-iterator/*
+Copyright: 2016-2019 Steven Fackler <sfackler@gmail.com>
+License: MIT or Apache-2.0
+Comment: see https://github.com/sfackler/rust-fallible-iterator
 
 Files: vendor/fortanix-sgx-abi/*
 Copyright: 2015-2019 Jethro Beekman <jethro@fortanix.com>
@@ -850,25 +731,6 @@ Copyright: 2020-2020 Andrew Hickman <and
 License: MIT or Apache-2.0
 Comment: see https://github.com/andrewhickman/fs-err
 
-Files:
- vendor/fsevent/*
- vendor/fsevent-sys/*
-Copyright: 2015-2020 Pierre Baillet <pierre@baillet.name>
-License: MIT
-Comment: see https://github.com/octplane/fsevent-rust
-
-Files: vendor/fs_extra/*
-Copyright: 2017-2018 Denis Kurilenko <webdesus@gmail.com>
-License: MIT
-Comment: see https://github.com/webdesus/fs_extra
-
-Files:
- vendor/fuchsia-zircon/*
- vendor/fuchsia-zircon-sys/*
-Copyright: 2014-2018 Raph Levien <raph@google.com>
-License: BSD-3-Clause
-Comment: see https://fuchsia.googlesource.com/garnet/
-
 Files: vendor/futf/*
 Copyright: 2015-2018 Keegan McAllister <kmcallister@mozilla.com>
 License: MIT  or  Apache-2.0
@@ -883,20 +745,19 @@ Copyright:
 License: MIT
 Comment: see https://github.com/fizyk20/generic-array.git
 
-Files: vendor/gimli/*
-Copyright: 2016-2020 Nick Fitzgerald <fitzgen@gmail.com>
-           2016-2020 Philip Craig <philipjcraig@gmail.com>
+Files:
+ vendor/gimli-0*/*
+ vendor/gimli/*
+Copyright:
+ 2016-2021 Nick Fitzgerald <fitzgen@gmail.com>
+ 2016-2021 Philip Craig <philipjcraig@gmail.com>
 License: Apache-2.0 or MIT
 Comment: see https://github.com/gimli-rs/gimli
 
-Files: vendor/goblin/*
-Copyright: 2016-2020 m4b <m4b.github.io@gmail.com>
-           2016-2020 seu <seu@panopticon.re>
-           2016-2020 Will Glynn <will@willglynn.com>
-           2016-2020 Philip Craig <philipjcraig@gmail.com>
-           2016-2020 Lzu Tao <taolzu@gmail.com>
+Files: vendor/globwalk/*
+Copyright: 2018-2020 Gilad Naaman <gilad@naaman.io>
 License: MIT
-Comment: see https://github.com/m4b/goblin
+Comment: see https://github.com/gilnaa/globwalk
 
 Files: vendor/gsgdt/*
 Copyright: 2020 Vishnunarayan K I <appukuttancr@gmail.com>
@@ -931,26 +792,25 @@ Copyright: 2014-2020 The html5ever Proje
 License: MIT or Apache-2.0
 Comment: see https://github.com/servo/html5ever
 
-Files: vendor/home/*
-Copyright: 2017-2020 Brian Anderson <andersrb@gmail.com>
-License: MIT OR Apache-2.0
-Comment: see https://github.com/brson/home
-
-Files: vendor/humantime/*
-Copyright: 2016-2018 Paul Colomiets <paul@colomiets.name>
+Files:
+ vendor/humantime/*
+ vendor/humantime-*/*
+Copyright:
+ 2016-2018 Paul Colomiets <paul@colomiets.name>
+ 2016 The humantime Developers
+ 2016 Pyfisch
+ 2005-2013 Rich Felker
 License: MIT or Apache-2.0
-Comment: see https://github.com/tailhook/humantime
 
-Files: vendor/ident_case/*
-Copyright: 2017-2019 Ted Driggs <ted.driggs@outlook.com>
+Files: vendor/if_chain/*
+Copyright: 2016-2020 Chris Wong <lambda.fairy@gmail.com>
 License: MIT or Apache-2.0
-Comment: see https://github.com/TedDriggs/ident_case
+Comment: see https://github.com/lfairy/if_chain
 
 Files:
  vendor/form_urlencoded/*
  vendor/idna/*
  vendor/percent-encoding/*
- vendor/percent-encoding-1*/*
  vendor/url/*
 Copyright: 2013-2021 The rust-url developers
 License: MIT or Apache-2.0
@@ -962,58 +822,24 @@ Copyright: 2016-2019 bluss
 License: Apache-2.0 or MIT
 Comment: see https://github.com/bluss/indexmap
 
-Files: vendor/inotify/*
-Copyright: 2014-2020 Hanno Braun <mail@hannobraun.de>
-           2014-2020 Félix Saparelli <me@passcod.name>
-           2014-2020 Cristian Kubis <cristian.kubis@tsunix.de>
-           2014-2020 Frank Denis <github@pureftpd.org>
-License: ISC
-Comment: see https://github.com/hannobraun/inotify
-
-Files: vendor/inotify-sys/*
-Copyright: 2017-2020 Hanno Braun <hb@hannobraun.de>
-License: ISC
-Comment: see https://github.com/inotify-rs/inotify-sys
-
-Files: vendor/insta/*
-Copyright: 2019-2020 Armin Ronacher <armin.ronacher@active-4.com>
-License: Apache-2.0
-Comment: see https://github.com/mitsuhiko/insta
+Files:
+ vendor/indoc/*
+ vendor/unindent/*
+Copyright: 2016-2022 David Tolnay <dtolnay@gmail.com>
+License: MIT OR Apache-2.0
+Comment: see https://github.com/dtolnay/indoc
 
 Files: vendor/instant/*
 Copyright: 2019-2020 sebcrozet <developer@crozet.re>
 License: BSD-3-Clause
 Comment: see https://github.com/sebcrozet/instant
 
-Files: vendor/is-match/*
-       vendor/toml-query/*
-Copyright: 2017-2018 Matthias Beyer <mail@beyermatthias.de>
-License: MPL-2.0
-Comment: see https://github.com/matthiasbeyer/is-match
-         see https://github.com/matthiasbeyer/toml-query
-
-Files: vendor/jemallocator/*
-Copyright: 2016-2019 Alex Crichton <alex@alexcrichton.com>
-           2016-2019 Gonzalo Brito Gadeschi <gonzalobg88@gmail.com>
-           2016-2019 Simon Sapin <simon.sapin@exyr.org>
-           2016-2019 Steven Fackler <sfackler@gmail.com>
-License: MIT or Apache-2.0
-Comment: see https://github.com/gnzlbg/jemallocator
-
-Files: vendor/jemalloc-ctl/*
-Copyright: 2016-2019 Steven Fackler <sfackler@gmail.com>
-           2016-2019 Gonzalo Brito Gadeschi <gonzalobg88@gmail.com>
-License: MIT or Apache-2.0
-Comment: see https://github.com/gnzlbg/jemallocator
-
-Files: vendor/jod-thread/*
-Copyright: 2019-2020 Aleksey Kladov <aleksey.kladov@gmail.com>
-License: MIT OR Apache-2.0
-Comment: see https://github.com/matklad/jod-thread
+Files: vendor/jsonpath_lib/*
+Copyright: 2018-2021 Changseok Han <freestrings@gmail.com>
+License: MIT
+Comment: see https://github.com/freestrings/jsonpath
 
-Files:
- vendor/lazy_static/*
- vendor/lazy_static-0*/*
+Files: vendor/lazy_static/*
 Copyright: 2014-2018 Marvin Löbel <loebel.marvin@gmail.com>
 License: MIT or Apache-2.0
 Comment:
@@ -1021,29 +847,16 @@ Comment:
  see https://github.com/Kimundi/owning-ref-rs
 
 Files: vendor/libloading/*
-Copyright: 2015-2020 Simonas Kazlauskas <libloading@kazlauskas.me>
+Copyright: 2015-2022 Simonas Kazlauskas <libloading@kazlauskas.me>
 License: ISC
 Comment: see https://github.com/nagisa/rust_libloading/
 
-Files: vendor/linked-hash-map/*
-Copyright: 2015-2020 Stepan Koltsov <stepan.koltsov@gmail.com>
-           2015-2020 Andrew Paseltiner <apaseltiner@gmail.com>
-License: MIT or Apache-2.0
-Comment: see https://github.com/contain-rs/linked-hash-map
-
-Files: vendor/lsp-server/*
-Copyright: 2019-2020 rust-analyzer developers
+Files: vendor/libm/*
+Copyright: 2018-2021 Jorge Aparicio <jorge@japaric.io>
 License: MIT OR Apache-2.0
-Comment: see https://github.com/rust-analyzer/lsp-server
+Comment: see https://github.com/rust-lang-nursery/libm
 
-Files: vendor/lsp-types/*
-Copyright: 2016-2020 Markus Westerlind <marwes91@gmail.com>
-           2016-2020 Bruno Medeiros <bruno.do.medeiros@gmail.com>
-License: MIT
-Comment: see https://github.com/gluon-lang/lsp-types
-
-Files:
- vendor/mac/*
+Files: vendor/mac/*
 Copyright: 2014-2017 Jonathan Reem <jonathan.reem@gmail.com>
 License: MIT
 Comment:
@@ -1070,18 +883,17 @@ Copyright: 2015-2017 Mathieu David <math
 License: MPL-2.0
 Comment: see https://github.com/azerupi/mdBook
 
-Files:
- vendor/measureme/*
- vendor/measureme-0*/*
+Files: vendor/measureme/*
 Copyright: 2019-2020 Wesley Wiser <wwiser@gmail.com>
            2019-2020 Michael Woerister <michaelwoerister@posteo>
 License: MIT OR Apache-2.0
 Comment: see https://github.com/rust-lang/measureme
 
-Files: vendor/memmap/*
-Copyright: 2015-2018 Dan Burkert <dan@danburkert.com>
+Files: vendor/memmap2-0*/*
+Copyright: 2015-2021 Dan Burkert <dan@danburkert.com>
+           2015-2021 Evgeniy Reizner <razrfalcon@gmail.com>
 License: MIT or Apache-2.0
-Comment: see https://github.com/danburkert/memmap-rs
+Comment: see https://github.com/RazrFalcon/memmap2-rs
 
 Files:
  vendor/memoffset/*
@@ -1091,13 +903,6 @@ License: MIT
 Comment: see https://github.com/Gilnaa/memoffset
 
 Files:
- vendor/merge/*
- vendor/merge_derive/*
-Copyright: 2020-2020 Robin Krahl <robin.krahl@ireas.org>
-License: Apache-2.0 OR MIT
-Comment: see https://git.sr.ht/~ireas/merge-rs
-
-Files:
  vendor/macro-utils/*
  vendor/minifier/*
 Copyright: 2017-2018 Guillaume Gomez <guillaume1.gomez@gmail.com>
@@ -1112,21 +917,10 @@ Copyright: 2017-2020 Frommi <daniil.life
 License: MIT
 Comment: see https://github.com/Frommi/miniz_oxide
 
-Files: vendor/mio/*
-Copyright: 2014-2020 Carl Lerche <me@carllerche.com>
-License: MIT
-Comment: see https://github.com/tokio-rs/mio
-
-Files: vendor/mio-extras/*
-Copyright: 2017-2020 Carl Lerche <me@carllerche.com>
-           2017-2020 David Hotham
-License: MIT OR Apache-2.0
-Comment: see https://github.com/dimbleby/mio-extras
-
-Files: vendor/net2/*
-Copyright: 2015-2020 Alex Crichton <alex@alexcrichton.com>
+Files: vendor/miow-0.3.7/*
+Copyright: 2014-2021 Alex Crichton <alex@alexcrichton.com>
 License: MIT or Apache-2.0
-Comment: see https://github.com/deprecrated/net2-rs
+Comment: see https://github.com/yoshuawuyts/miow
 
 Files: vendor/new_debug_unreachable/*
 Copyright: 2014-2018 Matt Brubeck <mbrubeck@limpet.net>
@@ -1134,35 +928,22 @@ Copyright: 2014-2018 Matt Brubeck <mbrub
 License: MIT
 Comment: see https://github.com/mbrubeck/rust-debug-unreachable
 
-Files: vendor/notify/*
-Copyright: 2014-2020 Félix Saparelli <me@passcod.name>
-           2014-2020 Daniel Faust <hessijames@gmail.com>
-License: CC0-1.0
-Comment: see https://github.com/notify-rs/notify.git
-
 Files: vendor/num_cpus/*
 Copyright: 2015 Sean McArthur <sean.monstar@gmail.com>
 License: MIT
 Comment: see https://github.com/seanmonstar/num_cpus
 
-Files:
- vendor/object-0*/*
- vendor/object/*
+Files: vendor/object-0*/*
 Copyright:
  2016-2020 Nick Fitzgerald <fitzgen@gmail.com>
  2016-2020 Philip Craig <philipjcraig@gmail.com>
 License: Apache-2.0 or MIT
 Comment: see https://github.com/gimli-rs/object
 
-Files: vendor/oorandom/*
-Copyright: 2019-2020 Simon Heath <icefox@dreamquest.io>
-License: MIT
-Comment: see https://sr.ht/~icefox/oorandom/
-
-Files: vendor/open/*
-Copyright: 2015-2017 Sebastian Thiel <byronimo@gmail.com>
-License: MIT
-Comment: see https://github.com/Byron/open-rs
+Files: vendor/odht/*
+Copyright: 2021 Michael Woerister <michaelwoerister@posteo>
+License: Apache-2.0 or MIT
+Comment: see https://github.com/rust-lang/odht
 
 Files: vendor/opener/*
 Copyright: 2018-2020 Brian Bowman <seeker14491@gmail.com>
@@ -1181,15 +962,10 @@ Comment: see https://github.com/Phundrak
 
 Files:
  vendor/hashbrown/*
- vendor/hashbrown-0*/*
  vendor/lock_api/*
- vendor/lock_api-0*/*
  vendor/thread_local/*
- vendor/thread_local-0*/*
  vendor/parking_lot/*
- vendor/parking_lot-0*/*
  vendor/parking_lot_core/*
- vendor/parking_lot_core-0*/*
 Copyright: 2016-2019 Amanieu d'Antras <amanieu@gmail.com>
 License: MIT or Apache-2.0
 Comment:
@@ -1197,21 +973,18 @@ Comment:
  see https://github.com/Amanieu/thread_local-rs
  see https://github.com/Amanieu/parking_lot
 
-Files:
- vendor/paste/*
- vendor/paste-impl/*
-Copyright: 2018-2020 David Tolnay <dtolnay@gmail.com>
-License: MIT OR Apache-2.0
-Comment: see https://github.com/dtolnay/paste
+Files: vendor/packed_simd_2/*
+Copyright: 2018-2021 Gonzalo Brito Gadeschi <gonzalobg88@gmail.com>
+           2018-2021 Jubilee Young <workingjubilee@gmail.com>
+License: MIT or Apache-2.0
+Comment: see https://github.com/rust-lang-nursery/packed_simd
 
 Files: vendor/pathdiff/*
 Copyright: 2017-2020 Manish Goregaokar <manishsmail@gmail.com>
 License: MIT or Apache-2.0
 Comment: see https://github.com/Manishearth/pathdiff
 
-Files:
- vendor/perf-event/*
- vendor/perf-event-open-sys/*
+Files: vendor/perf-event-open-sys/*
 Copyright: 2019-2020 Jim Blandy <jimb@red-bean.com>
 License: MIT OR Apache-2.0
 Comment: see https://github.com/jimblandy/perf-event.git
@@ -1227,11 +1000,6 @@ Comment:
  see https://github.com/dragostis/pest
  see https://github.com/pest-parser/pest
 
-Files: vendor/pico-args/*
-Copyright: 2019-2020 Evgeniy Reizner <razrfalcon@gmail.com>
-License: MIT
-Comment: see https://github.com/RazrFalcon/pico-args
-
 Files: vendor/polonius-engine/*
 Copyright: 2018-2018 The Rust Project Developers
            2018-2018 Polonius Developers
@@ -1253,10 +1021,11 @@ Copyright: 2014-2018 Steven Fackler <sfa
 License: MIT
 Comment: see https://github.com/sfackler/rust-phf
 
-Files: vendor/plain/*
-Copyright: 2017-2020 jzr
-License: MIT or Apache-2.0
-Comment: see https://github.com/randomites/plain
+Files: vendor/pin-project-lite/*
+Copyright: 2018-2021 Taiki Endo <te316e89@gmail.com>
+License: Apache-2.0 or MIT
+Comment:
+ see https://github.com/taiki-e/pin-project-lite
 
 Files: vendor/precomputed-hash/*
 Copyright: 2017-2017 Emilio Cobos Álvarez <emilio@crisal.io>
@@ -1276,29 +1045,16 @@ Copyright: 2019-2020 CreepySkeleton <cre
 License: MIT OR Apache-2.0
 Comment: see https://gitlab.com/CreepySkeleton/proc-macro-error
 
-Files: vendor/proc-macro-hack/*
-Copyright: 2016-2020 David Tolnay <dtolnay@gmail.com>
-License: MIT OR Apache-2.0
-Comment: see https://github.com/dtolnay/proc-macro-hack
-
 Files: vendor/psm/*
 Copyright: 2015-2020 Simonas Kazlauskas <git@kazlauskas.me>
 License: MIT or Apache-2.0
 Comment: see https://github.com/rust-lang/stacker/
 
-Files:
- vendor/pulldown-cmark/*
- vendor/pulldown-cmark-0*/*
+Files: vendor/pulldown-cmark/*
 Copyright: 2015-2017 Raph Levien <raph@google.com>
 License: MIT
 Comment: see https://github.com/google/pulldown-cmark
 
-Files: vendor/pulldown-cmark-to-cmark/*
-Copyright: 2018-2020 Sebastian Thiel <byronimo@gmail.com>
-           2018-2020 Dylan Owen <dyltotheo@gmail.com>
-License: Apache-2.0
-Comment: see https://github.com/Byron/pulldown-cmark-to-cmark
-
 Files: vendor/punycode/*
 Copyright: 2015-2019 mcarton <cartonmartin+git@gmail.com>
 License: MIT
@@ -1313,6 +1069,11 @@ Copyright:
 License: MIT or Apache-2.0
 Comment: see http://github.com/tailhook/quick-error
 
+Files: vendor/quine-mc_cluskey/*
+Copyright: 2016-2016 Oliver Schneider <git-spam-no-reply9815368754983@oli-obk.de>
+License: MIT
+Comment: see https://github.com/oli-obk/quine-mc_cluskey
+
 Files:
  vendor/rayon/*
  vendor/rayon-core/*
@@ -1325,26 +1086,23 @@ Comment:
  see https://github.com/rayon-rs/rayon
  see https://github.com/Zoxc/rayon/tree/rustc
 
-Files:
- vendor/redox_syscall/*
- vendor/redox_syscall-0*/*
- vendor/redox_termios/*
+Files: vendor/redox_users/*
+Copyright: 2017-2021 Jose Narvaez <goyox86@gmail.com>
+           2017-2021 Wesley Hershberger <mggmugginsmc@gmail.com>
+License: MIT
+Comment: see https://gitlab.redox-os.org/redox-os/users
+
+Files: vendor/redox_syscall/*
 Copyright: 2016-2021 Jeremy Soller <jackpot51@gmail.com>
 License: MIT
 Comment:
  see https://github.com/redox-os/syscall
- see https://github.com/redox-os/termios
 
 Files: vendor/regex-automata/*
 Copyright: 2018-2020 Andrew Gallant <jamslam@gmail.com>
 License: Unlicense or MIT
 Comment: see https://github.com/BurntSushi/regex-automata
 
-Files: vendor/relative-path/*
-Copyright: 2017-2020 John-John Tedro <udoprog@tedro.se>
-License: MIT or Apache-2.0
-Comment: see https://github.com/udoprog/relative-path
-
 Files: vendor/remove_dir_all/*
 Copyright: 2017-2018 Aaronepower <theaaronepower@gmail.com>
 License: MIT or Apache-2.0
@@ -1357,54 +1115,38 @@ License: Apache-2.0 or MIT
 Comment: see https://github.com/nrc/rls-span
          see https://github.com/nrc/rls-data
 
-Files: vendor/rowan/*
-Copyright: 2018-2020 Aleksey Kladov <aleksey.kladov@gmail.com>
+Files: vendor/rustc-semver/*
+Copyright: 2020-2020 flip1995 <hello@philkrones.com>
 License: MIT OR Apache-2.0
-Comment: see https://github.com/matklad/rowan
+Comment: see https://github.com/flip1995/rustc-semver
 
-Files:
- vendor/rustc-ap-rustc_lexer/*
- vendor/rustc-ap-rustc_lexer-*/*
-Copyright: 2010-2020 The Rust Project Developers
-License: MIT or Apache-2.0
-Comment: see https://github.com/rust-lang/rust
-
-Files: vendor/rustc_version/*
-Copyright: 2015-2018 Marvin Löbel <loebel.marvin@gmail.com>
+Files: vendor/rustc_tools_util/*
+Copyright: 2014-2021 Matthias Krüger <matthias.krueger@famsik.de>
 License: MIT or Apache-2.0
-Comment: see https://github.com/Kimundi/rustc-version-rs
+Comment: see https://github.com/rust-lang/rust-clippy
 
-Files: vendor/rustfix/*
-Copyright: 2016-2018 Pascal Hertleif <killercup@gmail.com>
-           2016-2018 Oliver Schneider <oli-obk@users.noreply.github.com>
+Files:
+ vendor/rustfix/*
+ vendor/rustfix-0*/*
+Copyright:
+ 2016-2021 Pascal Hertleif <killercup@gmail.com>
+ 2016-2021 Oliver Schneider <oli-obk@users.noreply.github.com>
 License: Apache-2.0 or MIT
 Comment: see https://github.com/killercup/rustfix
 
+Files: vendor/rustversion/*
+Copyright: 2019-2021 David Tolnay <dtolnay@gmail.com>
+License: MIT OR Apache-2.0
+Comment: see https://github.com/dtolnay/rustversion
+
 Files: vendor/ryu/*
 Copyright: 2018-2018 David Tolnay <dtolnay@gmail.com>
 License: Apache-2.0 or BSL-1.0
 Comment: see https://github.com/dtolnay/ryu
 
 Files:
- vendor/salsa/*
- vendor/salsa-macros/*
-Copyright: 2018-2020 Salsa developers
-License: Apache-2.0 OR MIT
-Comment: see https://github.com/salsa-rs/salsa
-
-Files:
- vendor/scroll/*
- vendor/scroll_derive/*
-Copyright: 2016-2020 m4b <m4b.github.io@gmail.com>
-           2016-2020 Ted Mielczarek <ted@mielczarek.org>
-           2016-2020 Systemcluster <me@systemcluster.me
-License: MIT
-Comment: see https://github.com/m4b/scroll
-
-Files:
  vendor/semver-0*/*
  vendor/semver/*
- vendor/semver-parser-0*/*
  vendor/semver-parser/*
 Copyright:
  2014-2020 Steve Klabnik <steve@steveklabnik.com>
@@ -1428,44 +1170,31 @@ Copyright: 2014-2017 Erick Tryzelaar <er
 License: MIT or Apache-2.0
 Comment: see https://github.com/serde-rs/serde
 
-Files:
- vendor/serde_repr/*
- vendor/serde_yaml/*
-Copyright:
- 2019-2020 David Tolnay <dtolnay@gmail.com>
- 2016-2020 David Tolnay <dtolnay@gmail.com>
-License: MIT OR Apache-2.0
-Comment:
- see https://github.com/dtolnay/serde-repr
- see https://github.com/dtolnay/serde-yaml
-
 Files: vendor/sharded-slab/*
 Copyright: 2019-2020 Eliza Weisman <eliza@buoyant.io>
 License: MIT
 Comment: see https://github.com/hawkw/sharded-slab
 
-Files: vendor/siphasher/*
-Copyright: 2016-2018 Frank Denis <github@pureftpd.org>
+Files: vendor/shell-escape/*
+Copyright: 2016-2020 Steven Fackler <sfackler@gmail.com>
 License: MIT or Apache-2.0
-Comment: see https://github.com/jedisct1/rust-siphash
+Comment: see https://github.com/sfackler/shell-escape
 
 Files: vendor/shlex/*
 Copyright: 2015-2015 comex <comexk@gmail.com>
 License: MIT or Apache-2.0
 Comment: see https://github.com/comex/rust-shlex
 
-Files:
- vendor/smallvec-0*/*
- vendor/smallvec/*
+Files: vendor/siphasher/*
+Copyright: 2016-2018 Frank Denis <github@pureftpd.org>
+License: MIT or Apache-2.0
+Comment: see https://github.com/jedisct1/rust-siphash
+
+Files: vendor/smallvec/*
 Copyright: 2015-2020 Simon Sapin <simon.sapin@exyr.org>
 License: MPL-2.0
 Comment: see https://github.com/servo/rust-smallvec
 
-Files: vendor/smol_str/*
-Copyright: 2018-2020 Aleksey Kladov <aleksey.kladov@gmail.com>
-License: MIT OR Apache-2.0
-Comment: see https://github.com/matklad/smol_str
-
 Files: vendor/snap/*
 Copyright: 2016-2020 Andrew Gallant <jamslam@gmail.com>
 License: BSD-3-Clause
@@ -1488,19 +1217,20 @@ License: MIT
 Comment: see https://github.com/dguo/strsim-rs
 
 Files:
+ vendor/structopt/*
+ vendor/structopt-derive/*
+Copyright: 2017-2020 Guillaume Pinot <texitoi@texitoi.eu>
+           2017-2020 others
+License: Apache-2.0 OR MIT
+Comment: see https://github.com/TeXitoi/structopt
+
+Files:
  vendor/strum/*
  vendor/strum_macros/*
 Copyright: 2015-2018 Peter Glotfelty <peglotfe@microsoft.com>
 License: MIT
 
-Files: vendor/superslice/*
-Copyright: 2017-2019 Alkis Evlogimenos <alkis@evlogimenos.com>
-License: Apache-2.0
-Comment: see https://github.com/alkis/superslice-rs
-
-Files:
- vendor/synstructure/*
- vendor/synstructure-0*/*
+Files: vendor/synstructure/*
 Copyright:
  2016-2019 Nika Layzell <nika@thelayzells.com>
 License: MIT
@@ -1521,56 +1251,41 @@ Copyright: 2015-2017 Keegan McAllister <
 License: MIT or Apache-2.0
 Comment: see https://github.com/servo/tendril
 
-Files: vendor/termion/*
-Copyright: 2016-2017 ticki <Ticki@users.noreply.github.com>
-           2016-2017 gycos <alexandre.bury@gmail.com>
-           2016-2017 IGI-111 <igi-111@protonmail.com>
+Files: vendor/tera/*
+Copyright: 2015-2021 Vincent Prouillet <hello@prouilletvincent.com>
 License: MIT
-Comment: see https://github.com/ticki/termion
-
-Files: vendor/terminal_size/*
-Copyright: 2015-2020 Andrew Chin <achin@eminence32.net>
-License: MIT OR Apache-2.0
-Comment: see https://github.com/eminence/terminal-size
+Comment: see https://github.com/Keats/tera
 
-Files: vendor/termios/*
-Copyright: 2015-2020 David Cuddeback <david.cuddeback@gmail.com>
-License: MIT
-Comment: see https://github.com/dcuddeback/termios-rs
+Files:
+ vendor/term/*
+ vendor/term-0*/*
+Copyright:
+ 2014-2021 The Rust Project Developers
+ 2014-2021 Steven Allen
+License: MIT or Apache-2.0
+Comment: see https://github.com/Stebalien/term
 
 Files: vendor/termize/*
 Copyright: 2016-2020 Yuki Okushi <huyuumi.dev@gmail.com>
 License: MIT or Apache-2.0
 Comment: see https://github.com/JohnTitor/termize
 
-Files: vendor/term_size/*
-Copyright: 2016-2018 Kevin K. <kbknapp@gmail.com>
-           2016-2018 Benjamin Sago <ogham@bsago.me>
-License: MIT or Apache-2.0
-Comment: see https://github.com/kbknapp/term_size-rs.git
-
-Files: vendor/text-size/*
-Copyright: 2018-2020 Aleksey Kladov <aleksey.kladov@gmail.com>
-           2018-2020 Christopher Durham (CAD97) <cad97@cad97.com>
-License: MIT OR Apache-2.0
-Comment: see https://github.com/rust-analyzer/text-size
-
 Files: vendor/textwrap/*
 Copyright: 2016-2017 Martin Geisler <martin@geisler.net>
 License: MIT
 Comment: see https://github.com/mgeisler/textwrap
 
-Files: vendor/thin-dst/*
-Copyright: 2019-2020 Christopher Durham (CAD97) <cad97@cad97.com>
+Files:
+ vendor/thiserror/*
+ vendor/thiserror-impl/*
+Copyright: 2019-2020 David Tolnay <dtolnay@gmail.com>
 License: MIT OR Apache-2.0
-Comment: see https://github.com/cad97/thin-dst
+Comment: see https://github.com/dtolnay/thiserror
 
-Files: vendor/threadpool/*
-Copyright: 2015-2020 The Rust Project Developers
-           2015-2020 Corey Farwell <coreyf@rwell.org>
-           2015-2020 Stefan Schindler <dns2utf8@estada.ch>
-License: MIT or Apache-2.0
-Comment: see https://github.com/rust-threadpool/rust-threadpool
+Files: vendor/thorin-dwp/*
+Copyright: 2021-2022 David Wood <david.wood@huawei.com>
+License: MIT OR Apache-2.0
+Comment: see https://github.com/davidtwco/thorin
 
 Files: vendor/tinyvec/*
 Copyright: 2020 Lokathor <zefria@gmail.com>
@@ -1582,17 +1297,16 @@ Copyright: 2020 Soveu <marx.tomasz@gmail
 License: MIT or Apache-2.0 or Zlib
 Comment: see https://github.com/Soveu/tinyvec_macros
 
-Files: vendor/toml-query_derive/*
-Copyright: 2017-2019 Matthias Beyer <mail@beyermatthias.de>
-License: MPL-2.0
-Comment: see https://github.com/matthiasbeyer/toml-query
+Files: vendor/topological-sort/*
+Copyright: 2015-2018 gifnksm <makoto.nksm+github@gmail.com>
+License: MIT OR Apache-2.0
+Comment: see https://github.com/gifnksm/topological-sort-rs
 
 Files:
  vendor/tracing/*
  vendor/tracing-attributes/*
  vendor/tracing-core/*
  vendor/tracing-log/*
- vendor/tracing-serde/*
  vendor/tracing-subscriber/*
 Copyright:
  2018-2020 Eliza Weisman <eliza@buoyant.io>
@@ -1613,9 +1327,7 @@ Copyright: 2015-2019 Paho Lurie-Gregg <p
 License: MIT or Apache-2.0
 Comment: see https://github.com/paholg/typenum
 
-Files:
- vendor/version_check/*
- vendor/version_check-0.1.5/*
+Files: vendor/version_check/*
 Copyright: 2017-2019 Sergio Benitez <sb@sergio.bz>
 License: MIT or Apache-2.0
 Comment: see https://github.com/SergioBenitez/version_check
@@ -1623,23 +1335,27 @@ Comment: see https://github.com/SergioBe
 Files:
  vendor/ucd-parse/*
  vendor/ucd-trie/*
- vendor/ucd-util/*
 Copyright: 2017-2020 Andrew Gallant <jamslam@gmail.com>
 License: MIT or Apache-2.0
 Comment:
  see https://github.com/BurntSushi/rucd
  see https://github.com/BurntSushi/ucd-generate
 
-Files: vendor/ungrammar/*
-Copyright: 2020-2020 Aleksey Kladov <aleksey.kladov@gmail.com>
-License: MIT OR Apache-2.0
-Comment: see https://github.com/matklad/ungrammar
-
 Files: vendor/unicase/*
 Copyright: 2014-2019 Sean McArthur <sean@seanmonstar.com>
 License: MIT or Apache-2.0
 Comment: see https://github.com/seanmonstar/unicase
 
+Files: vendor/unicode_categories/*
+Copyright: 2015-2016 Sean Gillespie <sean@swgillespie.me>
+License: MIT OR Apache-2.0
+Comment: see https://github.com/swgillespie/unicode-categories
+
+Files: vendor/unic-*/*
+Copyright: 2017-2022 The UNIC Project Developers
+License: MIT or Apache-2.0
+Comment: see https://github.com/open-i18n/rust-unic/
+
 Files:
  vendor/unicode-normalization/*
  vendor/unicode-segmentation/*
@@ -1651,18 +1367,33 @@ Comment:
  see https://github.com/unicode-rs/unicode-segmentation
  see https://github.com/unicode-rs/unicode-width
 
-Files:
- vendor/unicode-xid/*
- vendor/unicode-xid-0*/*
+Files: vendor/unicode-xid/*
 Copyright: 2015-2017 erick.tryzelaar <erick.tryzelaar@gmail.com>
            2015-2017 kwantam <kwantam@gmail.com>
 License: MIT or Apache-2.0
 Comment: see https://github.com/unicode-rs/unicode-xid
 
-Files: vendor/vcpkg/*
-Copyright: 2017-2019 Jim McGrath <jimmc2@gmail.com>
+Files: vendor/unicode-script/*
+Copyright: 2017-2020 Manish Goregaokar <manishsmail@gmail.com>
+License: MIT or Apache-2.0
+Comment: see https://github.com/unicode-rs/unicode-script
+
+Files: vendor/unicode-security/*
+Copyright: 2020-2020 Charles Lew <crlf0710@gmail.com>
+           2020-2020 Manish Goregaokar <manishsmail@gmail.com>
 License: MIT or Apache-2.0
-Comment: see https://github.com/mcgoo/vcpkg-rs
+Comment: see https://github.com/unicode-rs/unicode-security
+
+Files: vendor/unified-diff/*
+Copyright: 2021-2021 Michael Howell <michael@notriddle.com>
+           2021-2021 The Rust Project Developers
+License: MIT OR Apache-2.0
+Comment: see https://github.com/notriddle/rust-unified-diff
+
+Files: vendor/utf-8/*
+Copyright: 2015-2018 Simon Sapin <simon.sapin@exyr.org>
+License: MIT OR Apache-2.0
+Comment: see https://github.com/SimonSapin/rust-utf8
 
 Files: vendor/vec_map/*
 Copyright: 2015-2017 Alexis Beingessner <a.beingessner@gmail.com>
@@ -1672,23 +1403,12 @@ Copyright: 2015-2017 Alexis Beingessner
 License: MIT or Apache-2.0
 Comment: see https://github.com/contain-rs/vec-map
 
-Files: vendor/utf-8/*
-Copyright: 2015-2018 Simon Sapin <simon.sapin@exyr.org>
-License: MIT OR Apache-2.0
-Comment: see https://github.com/SimonSapin/rust-utf8
-
-Files:
- vendor/wasi-0*/*
- vendor/wasi/*
+Files: vendor/wasi/*
 Copyright: 2019-2020 The Cranelift Project Developers
 License: Apache-2.0 with LLVM exception or Apache-2.0 or MIT
 Comment: see https://github.com/CraneStation/rust-wasi
 
-Files:
- vendor/kernel32-sys/*
- vendor/winapi/*
- vendor/winapi-0*/*
- vendor/winapi-build/*
+Files: vendor/winapi/*
 Copyright:
  2014-2019 Peter Atashian <retep998@gmail.com>
  2014-2019 winapi-rs developers
@@ -1700,11 +1420,6 @@ Copyright: 2014-2018 Peter Atashian <ret
 License: MIT or Apache-2.0
 Comment: see https://github.com/retep998/winapi-rs
 
-Files: vendor/write-json/*
-Copyright: 2020-2020 Aleksey Kladov <aleksey.kladov@gmail.com>
-License: MIT OR Apache-2.0
-Comment: see https://github.com/matklad/write-json
-
 Files: vendor/xattr/*
 Copyright: 2015-2017 Steven Allen <steven@stebalien.com>
 License: MIT or Apache-2.0
@@ -1715,31 +1430,18 @@ Copyright: 2014-2020 The xml5ever projec
 License: MIT  or  Apache-2.0
 Comment: see https://github.com/servo/html5ever
 
-Files:
- vendor/yaml-rust-0*/*
- vendor/yaml-rust/*
+Files: vendor/yaml-rust-0*/*
 Copyright: 2015-2020 Yuheng Chen <yuhengchen@sensetime.com>
 License: MIT or Apache-2.0
 Comment: see https://github.com/chyh1990/yaml-rust
 
-Files: vendor/humantime-1.3.0/*
-Copyright:
- 2016-2018 Paul Colomiets <paul@colomiets.name>
- 2016 The humantime Developers
- 2016 Pyfisch
- 2005-2013 Rich Felker
-License: MIT or Apache-2.0
-
-Files: vendor/unicode-script/*
-Copyright: 2017-2020 Manish Goregaokar <manishsmail@gmail.com>
-License: MIT or Apache-2.0
-Comment: see https://github.com/unicode-rs/unicode-script
-
-Files: vendor/unicode-security/*
-Copyright: 2020-2020 Charles Lew <crlf0710@gmail.com>
-           2020-2020 Manish Goregaokar <manishsmail@gmail.com>
-License: MIT or Apache-2.0
-Comment: see https://github.com/unicode-rs/unicode-security
+Files: vendor/yansi-term/*
+Copyright: 2014-2020 ogham@bsago.me
+           2014-2020 Ryan Scheel (Havvy) <ryan.havvy@gmail.com>
+           2014-2020 Josh Triplett <josh@joshtriplett.org>
+           2014-2020 Juan Aguilar Santillana <mhpoin@gmail.com>
+License: MIT
+Comment: see https://github.com/botika/yansi-term
 
 Files: debian/*
 Copyright: 2013-2018 Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net>
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/files rustc-mozilla-1.59.0+dfsg1/debian/files
--- rustc-mozilla-1.51.0+dfsg1/debian/files	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/files	2022-07-03 11:52:51.354412937 +0200
@@ -0,0 +1 @@
+rustc-mozilla_1.59.0+dfsg1-1~deb11u1_source.buildinfo devel optional
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/libstd-rust-mozilla-1.51.lintian-overrides rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-mozilla-1.51.lintian-overrides
--- rustc-mozilla-1.51.0+dfsg1/debian/libstd-rust-mozilla-1.51.lintian-overrides	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-mozilla-1.51.lintian-overrides	1970-01-01 01:00:00.000000000 +0100
@@ -1,13 +0,0 @@
-# "libstd" just seemed too generic
-libstd-rust-mozilla-1.51 binary: package-name-doesnt-match-sonames
-libstd-rust-mozilla-1.51 binary: sharedobject-in-library-directory-missing-soname
-
-# Rust doesn't use dev shlib symlinks nor any of the other shlib support stuff
-libstd-rust-mozilla-1.51 binary: dev-pkg-without-shlib-symlink
-libstd-rust-mozilla-1.51 binary: shlib-without-versioned-soname
-libstd-rust-mozilla-1.51 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-mozilla-1.51 binary: library-not-linked-against-libc
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/libstd-rust-mozilla-1.59.install rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-mozilla-1.59.install
--- rustc-mozilla-1.51.0+dfsg1/debian/libstd-rust-mozilla-1.59.install	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-mozilla-1.59.install	2022-03-29 15:17:23.000000000 +0200
@@ -0,0 +1 @@
+usr/lib/${DEB_HOST_MULTIARCH}/
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/libstd-rust-mozilla-1.59.lintian-overrides rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-mozilla-1.59.lintian-overrides
--- rustc-mozilla-1.51.0+dfsg1/debian/libstd-rust-mozilla-1.59.lintian-overrides	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-mozilla-1.59.lintian-overrides	2022-03-29 15:17:23.000000000 +0200
@@ -0,0 +1,13 @@
+# "libstd" just seemed too generic
+libstd-rust-1.59 binary: package-name-doesnt-match-sonames
+libstd-rust-1.59 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.59 binary: dev-pkg-without-shlib-symlink
+libstd-rust-1.59 binary: shlib-without-versioned-soname
+libstd-rust-1.59 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.59 binary: library-not-linked-against-libc
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/libstd-rust-mozilla-dev.install rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev.install
--- rustc-mozilla-1.51.0+dfsg1/debian/libstd-rust-mozilla-dev.install	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev.install	2021-10-22 22:31:00.000000000 +0200
@@ -0,0 +1 @@
+usr/lib/rustlib/${env:DEB_HOST_RUST_TYPE}/lib/
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/libstd-rust-mozilla-dev.lintian-overrides rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev.lintian-overrides
--- rustc-mozilla-1.51.0+dfsg1/debian/libstd-rust-mozilla-dev.lintian-overrides	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev.lintian-overrides	2022-03-29 15:17:22.000000000 +0200
@@ -1,7 +1,11 @@
 # lintian does not know about rust arch-specific directories
-libstd-rust-mozilla-dev binary: arch-dependent-file-not-in-arch-specific-directory usr/lib/rustlib/*/lib/lib*.rlib
+libstd-rust-dev binary: arch-dependent-file-not-in-arch-specific-directory usr/lib/rustlib/*/lib/lib*.rlib
+libstd-rust-dev binary: breakout-link usr/lib/rustlib/*/lib/lib*.so -> usr/lib/*/lib*.so
+
+# lintian doesn't understand rlib files
+libstd-rust-dev binary: no-code-sections [*.rlib]
 
 # See debhelper bug #875780. This override is commented out because it's not
 # always needed, but we want it here for documentation purposes. Basically,
 # if you see it then you probably don't need to worry about it.
-#libstd-rust-mozilla-dev binary: unstripped-static-library usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/lib*.rlib(*)
+#libstd-rust-dev binary: unstripped-static-library usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/lib*.rlib(*)
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/libstd-rust-mozilla-dev-wasm32.install rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev-wasm32.install
--- rustc-mozilla-1.51.0+dfsg1/debian/libstd-rust-mozilla-dev-wasm32.install	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev-wasm32.install	2021-10-22 22:35:47.000000000 +0200
@@ -0,0 +1 @@
+usr/lib/rustlib/wasm32-*/lib/
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/libstd-rust-mozilla-dev-wasm32.lintian-overrides rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev-wasm32.lintian-overrides
--- rustc-mozilla-1.51.0+dfsg1/debian/libstd-rust-mozilla-dev-wasm32.lintian-overrides	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev-wasm32.lintian-overrides	2022-03-29 15:17:22.000000000 +0200
@@ -1,3 +1,8 @@
 # wasm object files count as arch-independent for now,
 # at least until we starting offering Debian in wasm
-libstd-rust-mozilla-dev-wasm32 binary: arch-independent-package-contains-binary-or-object usr/lib/rustlib/wasm32-*/lib/lib*.rlib
+libstd-rust-dev-wasm32 binary: arch-independent-package-contains-binary-or-object usr/lib/rustlib/wasm32-*/lib/lib*.rlib
+libstd-rust-dev-wasm32 binary: arch-independent-package-contains-binary-or-object usr/lib/rustlib/wasm32-*/lib/self-contained/libc.a
+
+# lintian doesn't understand rlib files
+libstd-rust-dev-wasm32 binary: no-code-sections [*.rlib]
+libstd-rust-dev-wasm32 binary: no-code-sections [usr/lib/rustlib/wasm32-*/lib/self-contained/libc.a]
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/libstd-rust-mozilla-dev-windows.install rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev-windows.install
--- rustc-mozilla-1.51.0+dfsg1/debian/libstd-rust-mozilla-dev-windows.install	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev-windows.install	2021-10-22 22:34:38.000000000 +0200
@@ -0,0 +1 @@
+usr/lib/rustlib/${env:WINDOWS_ARCH}-pc-windows-gnu/lib/
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/libstd-rust-mozilla-dev-windows.lintian-overrides rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev-windows.lintian-overrides
--- rustc-mozilla-1.51.0+dfsg1/debian/libstd-rust-mozilla-dev-windows.lintian-overrides	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev-windows.lintian-overrides	2022-03-29 15:17:22.000000000 +0200
@@ -1,2 +1,8 @@
 # lintian does not know about rust arch-specific directories
-libstd-rust-mozilla-dev-windows binary: arch-dependent-file-not-in-arch-specific-directory usr/lib/rustlib/*/lib/lib*.rlib
+libstd-rust-dev-windows binary: arch-dependent-file-not-in-arch-specific-directory usr/lib/rustlib/*/lib/lib*.rlib
+libstd-rust-dev-windows binary: arch-dependent-file-not-in-arch-specific-directory usr/lib/rustlib/*/lib/lib*.a
+libstd-rust-dev-windows binary: executable-not-elf-or-script usr/lib/rustlib/*/lib/*.dll
+
+# lintian doesn't understand these files
+libstd-rust-dev-windows binary: no-code-sections [*.rlib]
+libstd-rust-dev-windows binary: no-code-sections [usr/lib/rustlib/x86_64-pc-windows-gnu/lib/lib*.dll.a]
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/make_orig-stage0_tarball.sh rustc-mozilla-1.59.0+dfsg1/debian/make_orig-stage0_tarball.sh
--- rustc-mozilla-1.51.0+dfsg1/debian/make_orig-stage0_tarball.sh	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/make_orig-stage0_tarball.sh	2022-06-06 14:03:37.000000000 +0200
@@ -28,7 +28,7 @@ stamp=@${SOURCE_DATE_EPOCH:-$(date +%s)}
 touch --date="$stamp" stage0/dpkg-source-dont-rename-parent-directory
 tar --mtime="$stamp" --clamp-mtime \
   --owner=root --group=root \
-  -cJf "../rustc-mozilla_${upstream_version}.orig-stage0.tar.xz" \
+  -cJf "../rustc_${upstream_version}.orig-stage0.tar.xz" \
   --transform "s/^stage0\///" \
   stage0/*
 
@@ -36,7 +36,7 @@ rm -f src/bootstrap/bootstrap.pyc
 
 cat <<eof
 ================================================================================
-orig-stage0 bootstrapping tarball created in ../rustc-mozilla_${upstream_version}.orig-stage0.tar.xz
+orig-stage0 bootstrapping tarball created in ../rustc_${upstream_version}.orig-stage0.tar.xz
 containing the upstream compilers for $upstream_bootstrap_arch
 
 You *probably* now want to do the following steps:
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/0001-Revert-Auto-merge-of-79547.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/0001-Revert-Auto-merge-of-79547.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/0001-Revert-Auto-merge-of-79547.patch	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/0001-Revert-Auto-merge-of-79547.patch	1970-01-01 01:00:00.000000000 +0100
@@ -1,103 +0,0 @@
-From eaf7ea1fc339e1ff348ed941ed2e8c4d66f3e458 Mon Sep 17 00:00:00 2001
-From: Josh Stone <jistone@redhat.com>
-Date: Thu, 18 Feb 2021 19:14:58 -0800
-Subject: [PATCH] Revert "Auto merge of #79547 - erikdesjardins:byval, r=nagisa"
-
-This reverts commit a094ff9590b83c8f94d898f92c2964a5803ded06, reversing
-changes made to d37afad0cc87bf709ad10c85319296ac53030f03.
-
-See https://github.com/rust-lang/rust/issues/80810 for more background
----
- compiler/rustc_middle/src/ty/layout.rs               | 12 ++++++------
- ...return-value-in-reg.rs => return-value-in-reg.rs} |  4 ++--
- src/test/codegen/union-abi.rs                        | 11 +++--------
- 3 files changed, 11 insertions(+), 16 deletions(-)
- rename src/test/codegen/{arg-return-value-in-reg.rs => return-value-in-reg.rs} (74%)
-
-diff --git a/compiler/rustc_middle/src/ty/layout.rs b/compiler/rustc_middle/src/ty/layout.rs
-index b545b92c9252..545f6aee1a21 100644
---- a/compiler/rustc_middle/src/ty/layout.rs
-+++ b/compiler/rustc_middle/src/ty/layout.rs
-@@ -2849,7 +2849,7 @@ fn adjust_for_abi(&mut self, cx: &C, abi: SpecAbi) {
-             || abi == SpecAbi::RustIntrinsic
-             || abi == SpecAbi::PlatformIntrinsic
-         {
--            let fixup = |arg: &mut ArgAbi<'tcx, Ty<'tcx>>| {
-+            let fixup = |arg: &mut ArgAbi<'tcx, Ty<'tcx>>, is_ret: bool| {
-                 if arg.is_ignore() {
-                     return;
-                 }
-@@ -2887,9 +2887,9 @@ fn adjust_for_abi(&mut self, cx: &C, abi: SpecAbi) {
-                     _ => return,
-                 }
- 
--                // Pass and return structures up to 2 pointers in size by value, matching `ScalarPair`.
--                // LLVM will usually pass these in 2 registers, which is more efficient than by-ref.
--                let max_by_val_size = Pointer.size(cx) * 2;
-+                // Return structures up to 2 pointers in size by value, matching `ScalarPair`. LLVM
-+                // will usually return these in 2 registers, which is more efficient than by-ref.
-+                let max_by_val_size = if is_ret { Pointer.size(cx) * 2 } else { Pointer.size(cx) };
-                 let size = arg.layout.size;
- 
-                 if arg.layout.is_unsized() || size > max_by_val_size {
-@@ -2901,9 +2901,9 @@ fn adjust_for_abi(&mut self, cx: &C, abi: SpecAbi) {
-                     arg.cast_to(Reg { kind: RegKind::Integer, size });
-                 }
-             };
--            fixup(&mut self.ret);
-+            fixup(&mut self.ret, true);
-             for arg in &mut self.args {
--                fixup(arg);
-+                fixup(arg, false);
-             }
-             return;
-         }
-diff --git a/src/test/codegen/arg-return-value-in-reg.rs b/src/test/codegen/return-value-in-reg.rs
-similarity index 74%
-rename from src/test/codegen/arg-return-value-in-reg.rs
-rename to src/test/codegen/return-value-in-reg.rs
-index a69291d47821..4bc0136c5e32 100644
---- a/src/test/codegen/arg-return-value-in-reg.rs
-+++ b/src/test/codegen/return-value-in-reg.rs
-@@ -1,4 +1,4 @@
--//! Check that types of up to 128 bits are passed and returned by-value instead of via pointer.
-+//! This test checks that types of up to 128 bits are returned by-value instead of via out-pointer.
- 
- // compile-flags: -C no-prepopulate-passes -O
- // only-x86_64
-@@ -11,7 +11,7 @@ pub struct S {
-     c: u32,
- }
- 
--// CHECK: define i128 @modify(i128{{( %0)?}})
-+// CHECK: define i128 @modify(%S* noalias nocapture dereferenceable(16) %s)
- #[no_mangle]
- pub fn modify(s: S) -> S {
-     S { a: s.a + s.a, b: s.b + s.b, c: s.c + s.c }
-diff --git a/src/test/codegen/union-abi.rs b/src/test/codegen/union-abi.rs
-index f282fd237054..afea01e9a2d0 100644
---- a/src/test/codegen/union-abi.rs
-+++ b/src/test/codegen/union-abi.rs
-@@ -63,16 +63,11 @@ pub union UnionU128{a:u128}
- #[no_mangle]
- pub fn test_UnionU128(_: UnionU128) -> UnionU128 { loop {} }
- 
--pub union UnionU128x2{a:(u128, u128)}
--// CHECK: define void @test_UnionU128x2(i128 %_1.0, i128 %_1.1)
--#[no_mangle]
--pub fn test_UnionU128x2(_: UnionU128x2) { loop {} }
--
- #[repr(C)]
--pub union CUnionU128x2{a:(u128, u128)}
--// CHECK: define void @test_CUnionU128x2(%CUnionU128x2* {{.*}} %_1)
-+pub union CUnionU128{a:u128}
-+// CHECK: define void @test_CUnionU128(%CUnionU128* {{.*}} %_1)
- #[no_mangle]
--pub fn test_CUnionU128x2(_: CUnionU128x2) { loop {} }
-+pub fn test_CUnionU128(_: CUnionU128) { loop {} }
- 
- pub union UnionBool { b:bool }
- // CHECK: define zeroext i1 @test_UnionBool(i8 %b)
--- 
-2.29.2
-
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-0000-ignore-removed-submodules.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-0000-ignore-removed-submodules.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-0000-ignore-removed-submodules.patch	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-0000-ignore-removed-submodules.patch	2022-03-29 15:17:21.000000000 +0200
@@ -1,20 +1,23 @@
-Description: Ignore submodules that we're not building, or that are unused like
- mdbook-linkcheck that pull in a ton of dependencies that are unneeded.
-Author: Ximin Luo <infinity0@debian.org>
-Forwarded: not-needed
-Index: rustc.git/Cargo.toml
-===================================================================
---- rustc.git.orig/Cargo.toml
-+++ rustc.git/Cargo.toml
-@@ -6,7 +6,6 @@ members = [
-   "library/test",
-   "src/rustdoc-json-types",
-   "src/tools/cargotest",
--  "src/tools/clippy",
-   "src/tools/compiletest",
-   "src/tools/error_index_generator",
-   "src/tools/linkchecker",
-@@ -15,23 +14,11 @@ members = [
+From: Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net>
+Date: Sat, 2 Oct 2021 01:07:59 +0100
+Subject: d-0000-ignore-removed-submodules
+
+---
+ Cargo.toml                   | 27 ---------------------------
+ src/bootstrap/bootstrap.py   |  4 ----
+ src/bootstrap/builder.rs     |  7 +------
+ src/bootstrap/doc.rs         |  1 -
+ src/bootstrap/test.rs        | 12 +-----------
+ src/tools/clippy/Cargo.toml  |  5 -----
+ src/tools/rustfmt/Cargo.toml |  5 -----
+ src/tools/tidy/src/deps.rs   |  4 ++--
+ 8 files changed, 4 insertions(+), 61 deletions(-)
+
+diff --git a/Cargo.toml b/Cargo.toml
+index cae48d7..6ab0782 100644
+--- a/Cargo.toml
++++ b/Cargo.toml
+@@ -17,25 +17,14 @@ members = [
    "src/tools/tidy",
    "src/tools/tier-check",
    "src/tools/build-manifest",
@@ -28,19 +31,21 @@ Index: rustc.git/Cargo.toml
 -  "src/tools/cargo/crates/credential/cargo-credential-wincred",
    "src/tools/rustdoc",
 -  "src/tools/rls",
--  "src/tools/rustfmt",
+   "src/tools/rustfmt",
 -  "src/tools/miri",
 -  "src/tools/miri/cargo-miri",
    "src/tools/rustdoc-themes",
    "src/tools/unicode-table-generator",
 -  "src/tools/expand-yaml-anchors",
--  "src/tools/jsondocck",
+   "src/tools/jsondocck",
+   "src/tools/html-checker",
+-  "src/tools/bump-stage0",
+   "src/tools/lld-wrapper",
  ]
  
- exclude = [
-@@ -69,24 +60,8 @@ gimli.debug = 0
- miniz_oxide.debug = 0
- object.debug = 0
+@@ -105,25 +94,9 @@ debug = 0
+ # Only use debuginfo=1 to further reduce compile times.
+ bootstrap.debug = 1
  
 -# We want the RLS to use the version of Cargo that we've got vendored in this
 -# repository to ensure that the same exact version of Cargo is used by both the
@@ -49,13 +54,14 @@ Index: rustc.git/Cargo.toml
 -# vendored copy.
 -[patch."https://github.com/rust-lang/cargo";]
 -cargo = { path = "src/tools/cargo" }
--
+ cargo-util = { path = "src/tools/cargo/crates/cargo-util" }
+ 
 -[patch."https://github.com/rust-lang/rustfmt";]
 -# Similar to Cargo above we want the RLS to use a vendored version of `rustfmt`
 -# that we're shipping as well (to ensure that the rustfmt in RLS and the
 -# `rustfmt` executable are the same exact version).
 -rustfmt-nightly = { path = "src/tools/rustfmt" }
- 
+-
  [patch.crates-io]
 -# See comments in `src/tools/rustc-workspace-hack/README.md` for what's going on
 -# here
@@ -63,19 +69,13 @@ Index: rustc.git/Cargo.toml
  
  # See comments in `library/rustc-std-workspace-core/README.md` for what's going on
  # here
-@@ -100,5 +75,3 @@ rustc-std-workspace-std = { path = 'libr
- rustc-std-workspace-alloc = { path = 'library/rustc-std-workspace-alloc' }
- rustc-std-workspace-std = { path = 'library/rustc-std-workspace-std' }
- 
--[patch."https://github.com/rust-lang/rust-clippy";]
--clippy_lints = { path = "src/tools/clippy/clippy_lints" }
-Index: rustc.git/src/bootstrap/bootstrap.py
-===================================================================
---- rustc.git.orig/src/bootstrap/bootstrap.py
-+++ rustc.git/src/bootstrap/bootstrap.py
-@@ -754,10 +754,6 @@ class RustBuild(object):
+diff --git a/src/bootstrap/bootstrap.py b/src/bootstrap/bootstrap.py
+index 7c36bb2..3f90012 100644
+--- a/src/bootstrap/bootstrap.py
++++ b/src/bootstrap/bootstrap.py
+@@ -1024,10 +1024,6 @@ class RustBuild(object):
                  os.path.join(self.rust_root, "src/bootstrap/Cargo.toml")]
-         for _ in range(1, self.verbose):
+         for _ in range(0, self.verbose):
              args.append("--verbose")
 -        if self.use_locked_deps:
 -            args.append("--locked")
@@ -84,19 +84,19 @@ Index: rustc.git/src/bootstrap/bootstrap
          run(args, env=env, verbose=self.verbose)
  
      def build_triple(self):
-Index: rustc.git/src/bootstrap/builder.rs
-===================================================================
---- rustc.git.orig/src/bootstrap/builder.rs
-+++ rustc.git/src/bootstrap/builder.rs
-@@ -449,7 +449,6 @@ impl<'a> Builder<'a> {
+diff --git a/src/bootstrap/builder.rs b/src/bootstrap/builder.rs
+index 6ccf8b1..3bf0523 100644
+--- a/src/bootstrap/builder.rs
++++ b/src/bootstrap/builder.rs
+@@ -480,7 +480,6 @@ impl<'a> Builder<'a> {
                  doc::RustdocBook,
                  doc::RustByExample,
                  doc::RustcBook,
 -                doc::CargoBook,
+                 doc::Clippy,
                  doc::EmbeddedBook,
                  doc::EditionGuide,
-             ),
-@@ -471,7 +470,6 @@ impl<'a> Builder<'a> {
+@@ -505,7 +504,6 @@ impl<'a> Builder<'a> {
                  dist::Miri,
                  dist::LlvmTools,
                  dist::RustDev,
@@ -104,7 +104,7 @@ Index: rustc.git/src/bootstrap/builder.r
                  dist::BuildManifest,
                  dist::ReproducibleArtifacts,
              ),
-@@ -1343,10 +1340,7 @@ impl<'a> Builder<'a> {
+@@ -1532,10 +1530,7 @@ impl<'a> Builder<'a> {
              }
          }
  
@@ -116,40 +116,30 @@ Index: rustc.git/src/bootstrap/builder.r
              cargo.arg("--frozen");
          }
  
-Index: rustc.git/src/bootstrap/doc.rs
-===================================================================
---- rustc.git.orig/src/bootstrap/doc.rs
-+++ rustc.git/src/bootstrap/doc.rs
-@@ -60,7 +60,6 @@ macro_rules! book {
- // NOTE: When adding a book here, make sure to ALSO build the book by
- // adding a build step in `src/bootstrap/builder.rs`!
+diff --git a/src/bootstrap/doc.rs b/src/bootstrap/doc.rs
+index f0f31c4..01d9b84 100644
+--- a/src/bootstrap/doc.rs
++++ b/src/bootstrap/doc.rs
+@@ -76,7 +76,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!(
--    CargoBook, "src/tools/cargo/src/doc", "cargo";
-     EditionGuide, "src/doc/edition-guide", "edition-guide";
-     EmbeddedBook, "src/doc/embedded-book", "embedded-book";
-     Nomicon, "src/doc/nomicon", "nomicon";
-Index: rustc.git/src/doc/index.md
-===================================================================
---- rustc.git.orig/src/doc/index.md
-+++ rustc.git/src/doc/index.md
-@@ -87,7 +87,7 @@ accomplishing various tasks.
- 
- ## The Cargo Book
- 
--[The Cargo Book](cargo/index.html) is a guide to Cargo, Rust's build tool and dependency manager.
-+[The Cargo Book](../../cargo-doc/doc/index.html) is a guide to Cargo, Rust's build tool and dependency manager.
- 
- ## The Rustdoc Book
- 
-Index: rustc.git/src/bootstrap/test.rs
-===================================================================
---- rustc.git.orig/src/bootstrap/test.rs
-+++ rustc.git/src/bootstrap/test.rs
-@@ -1535,14 +1535,7 @@ impl Step for RustcGuide {
+-    CargoBook, "src/tools/cargo/src/doc", "cargo", submodule = "src/tools/cargo";
+     EditionGuide, "src/doc/edition-guide", "edition-guide", submodule;
+     EmbeddedBook, "src/doc/embedded-book", "embedded-book", submodule;
+     Nomicon, "src/doc/nomicon", "nomicon", submodule;
+diff --git a/src/bootstrap/test.rs b/src/bootstrap/test.rs
+index cb1b0eb..74af81d 100644
+--- a/src/bootstrap/test.rs
++++ b/src/bootstrap/test.rs
+@@ -1833,17 +1833,7 @@ impl Step for RustcGuide {
      }
  
      fn run(self, builder: &Builder<'_>) {
--        let src = builder.src.join("src/doc/rustc-dev-guide");
+-        let relative_path = Path::new("src").join("doc").join("rustc-dev-guide");
+-        builder.update_submodule(&relative_path);
+-
+-        let src = builder.src.join(relative_path);
 -        let mut rustbook_cmd = builder.tool_cmd(Tool::Rustbook);
 -        let toolstate = if try_run(builder, rustbook_cmd.arg("linkcheck").arg(&src)) {
 -            ToolState::TestPass
@@ -161,18 +151,48 @@ Index: rustc.git/src/bootstrap/test.rs
      }
  }
  
-Index: rustc.git/src/tools/tidy/src/deps.rs
-===================================================================
---- rustc.git.orig/src/tools/tidy/src/deps.rs
-+++ rustc.git/src/tools/tidy/src/deps.rs
-@@ -370,8 +370,8 @@ fn check_crate_duplicate(metadata: &Meta
-         // These two crates take 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",
--        "rustc-ap-rustc_ast",
-+        //"cargo",
-+        //"rustc-ap-rustc_ast",
-     ];
+diff --git a/src/tools/clippy/Cargo.toml b/src/tools/clippy/Cargo.toml
+index 8661a86..e94b7e2 100644
+--- a/src/tools/clippy/Cargo.toml
++++ b/src/tools/clippy/Cargo.toml
+@@ -34,11 +34,6 @@ regex = "1.5"
+ # This is used by the `collect-metadata` alias.
+ filetime = "0.2"
+ 
+-# A noop dependency that changes in the Rust repository, it's a bit of a hack.
+-# See the `src/tools/rustc-workspace-hack/README.md` file in `rust-lang/rust`
+-# for more information.
+-rustc-workspace-hack = "1.0"
+-
+ # UI test dependencies
+ clippy_utils = { path = "clippy_utils" }
+ derive-new = "0.5"
+diff --git a/src/tools/rustfmt/Cargo.toml b/src/tools/rustfmt/Cargo.toml
+index 8d9c4a7..f92b1dc 100644
+--- a/src/tools/rustfmt/Cargo.toml
++++ b/src/tools/rustfmt/Cargo.toml
+@@ -58,9 +58,4 @@ lazy_static = "1.0.0"
+ anyhow = "1.0"
+ thiserror = "1.0"
+ 
+-# A noop dependency that changes in the Rust repository, it's a bit of a hack.
+-# See the `src/tools/rustc-workspace-hack/README.md` file in `rust-lang/rust`
+-# for more information.
+-rustc-workspace-hack = "1.0.0"
+-
+ # Rustc dependencies are loaded from the sysroot, Cargo doesn't know about them.
+diff --git a/src/tools/tidy/src/deps.rs b/src/tools/tidy/src/deps.rs
+index 4c28655..0510e71 100644
+--- a/src/tools/tidy/src/deps.rs
++++ b/src/tools/tidy/src/deps.rs
+@@ -274,8 +274,8 @@ const FORBIDDEN_TO_HAVE_DUPLICATES: &[&str] = &[
+     // These two crates take 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",
+-    "rustc-ap-rustc_ast",
++    //"cargo",
++    //"rustc-ap-rustc_ast",
+ ];
  
-     for &name in FORBIDDEN_TO_HAVE_DUPLICATES {
+ /// Dependency checks.
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-0001-disable-miniz.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-0001-disable-miniz.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-0001-disable-miniz.patch	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-0001-disable-miniz.patch	2022-03-06 22:35:27.000000000 +0100
@@ -1,8 +1,16 @@
-Index: rustc.git/vendor/flate2/Cargo.toml
-===================================================================
---- rustc.git.orig/vendor/flate2/Cargo.toml
-+++ rustc.git/vendor/flate2/Cargo.toml
-@@ -45,10 +45,6 @@ version = "1.1.0"
+From: Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net>
+Date: Sat, 2 Oct 2021 01:07:59 +0100
+Subject: d-0001-disable-miniz
+
+---
+ vendor/flate2/Cargo.toml | 4 ----
+ 1 file changed, 4 deletions(-)
+
+diff --git a/vendor/flate2/Cargo.toml b/vendor/flate2/Cargo.toml
+index 28649e8..1545c01 100644
+--- a/vendor/flate2/Cargo.toml
++++ b/vendor/flate2/Cargo.toml
+@@ -44,10 +44,6 @@ version = "1.1.0"
  optional = true
  default-features = false
  
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-0002-pkg-config-no-special-snowflake.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-0002-pkg-config-no-special-snowflake.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-0002-pkg-config-no-special-snowflake.patch	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-0002-pkg-config-no-special-snowflake.patch	2021-10-22 15:49:55.000000000 +0200
@@ -1,7 +1,16 @@
-Index: rustc.git/vendor/pkg-config/src/lib.rs
-===================================================================
---- rustc.git.orig/vendor/pkg-config/src/lib.rs
-+++ rustc.git/vendor/pkg-config/src/lib.rs
+From: Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net>
+Date: Sat, 2 Oct 2021 01:08:00 +0100
+Subject: d-0002-pkg-config-no-special-snowflake
+
+---
+ vendor/pkg-config/src/lib.rs    | 22 ++++++++++------------
+ vendor/pkg-config/tests/test.rs |  2 --
+ 2 files changed, 10 insertions(+), 14 deletions(-)
+
+diff --git a/vendor/pkg-config/src/lib.rs b/vendor/pkg-config/src/lib.rs
+index 2be11b3..0975563 100644
+--- a/vendor/pkg-config/src/lib.rs
++++ b/vendor/pkg-config/src/lib.rs
 @@ -9,8 +9,6 @@
  //! A number of environment variables are available to globally configure how
  //! this crate will invoke `pkg-config`:
@@ -66,11 +75,11 @@ Index: rustc.git/vendor/pkg-config/src/l
          let mut cmd = Command::new(exe);
          if self.is_static(name) {
              cmd.arg("--static");
-Index: rustc.git/vendor/pkg-config/tests/test.rs
-===================================================================
---- rustc.git.orig/vendor/pkg-config/tests/test.rs
-+++ rustc.git/vendor/pkg-config/tests/test.rs
-@@ -34,7 +34,6 @@ fn find(name: &str) -> Result<pkg_config
+diff --git a/vendor/pkg-config/tests/test.rs b/vendor/pkg-config/tests/test.rs
+index 33a623c..0f934c4 100644
+--- a/vendor/pkg-config/tests/test.rs
++++ b/vendor/pkg-config/tests/test.rs
+@@ -34,7 +34,6 @@ fn find(name: &str) -> Result<pkg_config::Library, Error> {
      pkg_config::probe_library(name)
  }
  
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-0003-mdbook-strip-embedded-libs.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-0003-mdbook-strip-embedded-libs.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-0003-mdbook-strip-embedded-libs.patch	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-0003-mdbook-strip-embedded-libs.patch	2022-03-29 15:17:21.000000000 +0200
@@ -1,35 +1,194 @@
-Description: Use local web resources instead of remote ones
-Author: Matthijs van Otterdijk <matthijs@wirevirt.net>
-Author: Ximin Luo <infinity0@debian.org>
-Bug: https://github.com/azerupi/mdBook/issues/271
-Comment:
- Use https://github.com/infinity0/mdBook/tree/debian to help you rebase the
- patch on top of a newer version.
- .
- Make sure the paths here match the ones in debian/rust-doc.links
+From: Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net>
+Date: Sat, 2 Oct 2021 01:08:00 +0100
+Subject: d-0003-mdbook-strip-embedded-libs
+
+Comment: Use https://github.com/infinity0/mdBook/tree/debian to help you rebase the patch on top of a newer version. . Make sure the paths here match the ones in debian/rust-doc.links
 ---
-This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
-Index: rustc.git/src/tools/linkchecker/main.rs
-===================================================================
---- rustc.git.orig/src/tools/linkchecker/main.rs
-+++ rustc.git/src/tools/linkchecker/main.rs
-@@ -172,6 +172,11 @@ fn check(cache: &mut Cache, root: &Path,
-         {
-             return;
+ src/tools/linkchecker/main.rs                      | 16 +++-
+ vendor/mdbook/src/book/init.rs                     |  6 --
+ .../src/renderer/html_handlebars/hbs_renderer.rs   | 80 ++-----------------
+ .../mdbook/src/renderer/html_handlebars/search.rs  |  2 -
+ vendor/mdbook/src/theme/index.hbs                  | 93 +---------------------
+ vendor/mdbook/src/theme/mod.rs                     | 27 -------
+ vendor/mdbook/src/theme/searcher/mod.rs            |  2 -
+ 7 files changed, 24 insertions(+), 202 deletions(-)
+
+diff --git a/src/tools/linkchecker/main.rs b/src/tools/linkchecker/main.rs
+index 94e82e3..ad8dfe5 100644
+--- a/src/tools/linkchecker/main.rs
++++ b/src/tools/linkchecker/main.rs
+@@ -195,7 +195,15 @@ impl Checker {
+     fn check(&mut self, file: &Path, report: &mut Report) {
+         let (pretty_path, entry) = self.load_file(file, report);
+         let source = match entry {
+-            FileEntry::Missing => panic!("missing file {:?} while walking", file),
++            FileEntry::Missing => {
++                if let Ok(target) = fs::read_link(&file) {
++                    if target.starts_with("/usr/share") {
++                        // broken symlink to /usr/share, ok for our Debian build
++                        return;
++                    }
++                }
++                panic!("missing file {:?} while walking", file)
++            }
+             FileEntry::Dir => unreachable!("never with `check` path"),
+             FileEntry::OtherFile => return,
+             FileEntry::Redirect { .. } => return,
+@@ -260,6 +268,12 @@ impl Checker {
+             let (target_pretty_path, target_entry) = self.load_file(&path, report);
+             let (target_source, target_ids) = match target_entry {
+                 FileEntry::Missing => {
++                    if let Ok(target) = fs::read_link(&path) {
++                        if target.starts_with("/usr/share") {
++                            // broken symlink to /usr/share, ok for our Debian build
++                            return;
++                        }
++                    }
+                     if is_exception(file, &target_pretty_path) {
+                         report.links_ignored_exception += 1;
+                     } else {
+diff --git a/vendor/mdbook/src/book/init.rs b/vendor/mdbook/src/book/init.rs
+index 264c113..2b0ff3a 100644
+--- a/vendor/mdbook/src/book/init.rs
++++ b/vendor/mdbook/src/book/init.rs
+@@ -151,12 +151,6 @@ impl BookBuilder {
+         let mut js = File::create(themedir.join("book.js"))?;
+         js.write_all(theme::JS)?;
+ 
+-        let mut highlight_css = File::create(themedir.join("highlight.css"))?;
+-        highlight_css.write_all(theme::HIGHLIGHT_CSS)?;
+-
+-        let mut highlight_js = File::create(themedir.join("highlight.js"))?;
+-        highlight_js.write_all(theme::HIGHLIGHT_JS)?;
+-
+         Ok(())
+     }
+ 
+diff --git a/vendor/mdbook/src/renderer/html_handlebars/hbs_renderer.rs b/vendor/mdbook/src/renderer/html_handlebars/hbs_renderer.rs
+index e8da5b4..a0507fd 100644
+--- a/vendor/mdbook/src/renderer/html_handlebars/hbs_renderer.rs
++++ b/vendor/mdbook/src/renderer/html_handlebars/hbs_renderer.rs
+@@ -3,7 +3,7 @@ use crate::config::{BookConfig, Config, HtmlConfig, Playground, RustEdition};
+ use crate::errors::*;
+ use crate::renderer::html_handlebars::helpers;
+ use crate::renderer::{RenderContext, Renderer};
+-use crate::theme::{self, playground_editor, Theme};
++use crate::theme::{self, Theme};
+ use crate::utils;
+ 
+ use std::borrow::Cow;
+@@ -11,6 +11,7 @@ use std::collections::BTreeMap;
+ use std::collections::HashMap;
+ use std::fs::{self, File};
+ use std::path::{Path, PathBuf};
++use std::os::unix::fs::symlink;
+ 
+ use crate::utils::fs::get_404_output_file;
+ use handlebars::Handlebars;
+@@ -225,80 +226,13 @@ impl HtmlHandlebars {
+         if let Some(contents) = &theme.favicon_svg {
+             write_file(destination, "favicon.svg", contents)?;
          }
-+        // Ignore parent URLs, so that the package installation process can
-+        // provide a symbolic link later
-+        if url.starts_with("../") {
-+            return;
-+        }
-         let (url, fragment) = match url.split_once('#') {
-             None => (url, None),
-             Some((url, fragment)) => (url, Some(fragment)),
-Index: rustc.git/vendor/mdbook/src/theme/index.hbs
-===================================================================
---- rustc.git.orig/vendor/mdbook/src/theme/index.hbs
-+++ rustc.git/vendor/mdbook/src/theme/index.hbs
-@@ -32,13 +32,10 @@
+-        write_file(destination, "highlight.css", &theme.highlight_css)?;
+         write_file(destination, "tomorrow-night.css", &theme.tomorrow_night_css)?;
+         write_file(destination, "ayu-highlight.css", &theme.ayu_highlight_css)?;
+-        write_file(destination, "highlight.js", &theme.highlight_js)?;
+-        write_file(destination, "clipboard.min.js", &theme.clipboard_js)?;
+-        write_file(
+-            destination,
+-            "FontAwesome/css/font-awesome.css",
+-            theme::FONT_AWESOME,
+-        )?;
+-        write_file(
+-            destination,
+-            "FontAwesome/fonts/fontawesome-webfont.eot",
+-            theme::FONT_AWESOME_EOT,
+-        )?;
+-        write_file(
+-            destination,
+-            "FontAwesome/fonts/fontawesome-webfont.svg",
+-            theme::FONT_AWESOME_SVG,
+-        )?;
+-        write_file(
+-            destination,
+-            "FontAwesome/fonts/fontawesome-webfont.ttf",
+-            theme::FONT_AWESOME_TTF,
+-        )?;
+-        write_file(
+-            destination,
+-            "FontAwesome/fonts/fontawesome-webfont.woff",
+-            theme::FONT_AWESOME_WOFF,
+-        )?;
+-        write_file(
+-            destination,
+-            "FontAwesome/fonts/fontawesome-webfont.woff2",
+-            theme::FONT_AWESOME_WOFF2,
+-        )?;
+-        write_file(
+-            destination,
+-            "FontAwesome/fonts/FontAwesome.ttf",
+-            theme::FONT_AWESOME_TTF,
+-        )?;
+-        if html_config.copy_fonts {
+-            write_file(destination, "fonts/fonts.css", theme::fonts::CSS)?;
+-            for (file_name, contents) in theme::fonts::LICENSES.iter() {
+-                write_file(destination, file_name, contents)?;
+-            }
+-            for (file_name, contents) in theme::fonts::OPEN_SANS.iter() {
+-                write_file(destination, file_name, contents)?;
+-            }
+-            write_file(
+-                destination,
+-                theme::fonts::SOURCE_CODE_PRO.0,
+-                theme::fonts::SOURCE_CODE_PRO.1,
+-            )?;
+-        }
+-
+-        let playground_config = &html_config.playground;
+-
+-        // Ace is a very large dependency, so only load it when requested
+-        if playground_config.editable && playground_config.copy_js {
+-            // Load the editor
+-            write_file(destination, "editor.js", playground_editor::JS)?;
+-            write_file(destination, "ace.js", playground_editor::ACE_JS)?;
+-            write_file(destination, "mode-rust.js", playground_editor::MODE_RUST_JS)?;
+-            write_file(
+-                destination,
+-                "theme-dawn.js",
+-                playground_editor::THEME_DAWN_JS,
+-            )?;
+-            write_file(
+-                destination,
+-                "theme-tomorrow_night.js",
+-                playground_editor::THEME_TOMORROW_NIGHT_JS,
+-            )?;
+-        }
++        symlink("/usr/share/fonts-font-awesome/css/font-awesome.min.css", destination.join("css/font-awesome.min.css"))?;
++        symlink("/usr/share/fonts-font-awesome/fonts", destination.join("fonts"))?;
++        symlink("/usr/share/javascript/highlight.js/styles/atelier-dune-light.css", destination.join("highlight.css"))?;
++        symlink("/usr/share/javascript/highlight.js/highlight.js", destination.join("highlight.js"))?;
++        symlink("/usr/share/javascript/mathjax/MathJax.js", destination.join("MathJax.js"))?;
+ 
+         Ok(())
+     }
+diff --git a/vendor/mdbook/src/renderer/html_handlebars/search.rs b/vendor/mdbook/src/renderer/html_handlebars/search.rs
+index 39b5980..7ea49c5 100644
+--- a/vendor/mdbook/src/renderer/html_handlebars/search.rs
++++ b/vendor/mdbook/src/renderer/html_handlebars/search.rs
+@@ -34,8 +34,6 @@ pub fn create_files(search_config: &Search, destination: &Path, book: &Book) ->
+             format!("Object.assign(window.search, {});", index).as_bytes(),
+         )?;
+         utils::fs::write_file(destination, "searcher.js", searcher::JS)?;
+-        utils::fs::write_file(destination, "mark.min.js", searcher::MARK_JS)?;
+-        utils::fs::write_file(destination, "elasticlunr.min.js", searcher::ELASTICLUNR_JS)?;
+         debug!("Copying search files ✓");
+     }
+ 
+diff --git a/vendor/mdbook/src/theme/index.hbs b/vendor/mdbook/src/theme/index.hbs
+index 966eedb..d28ec04 100644
+--- a/vendor/mdbook/src/theme/index.hbs
++++ b/vendor/mdbook/src/theme/index.hbs
+@@ -34,10 +34,7 @@
          {{/if}}
  
          <!-- Fonts -->
@@ -37,24 +196,20 @@ Index: rustc.git/vendor/mdbook/src/theme
 -        {{#if copy_fonts}}
 -        <link rel="stylesheet" href="{{ path_to_root }}fonts/fonts.css">
 -        {{/if}}
-+        <link rel="stylesheet" href="{{ path_to_root }}../font-awesome.min.css">
++        <link rel="stylesheet" href="{{ path_to_root }}css/font-awesome.min.css">
  
          <!-- Highlight.js Stylesheets -->
--        <link rel="stylesheet" href="{{ path_to_root }}highlight.css">
-+        <link rel="stylesheet" href="{{ path_to_root }}../highlight.css">
-         <link rel="stylesheet" href="{{ path_to_root }}tomorrow-night.css">
-         <link rel="stylesheet" href="{{ path_to_root }}ayu-highlight.css">
- 
-@@ -49,7 +46,7 @@
+         <link rel="stylesheet" href="{{ path_to_root }}highlight.css">
+@@ -51,7 +48,7 @@
  
          {{#if mathjax_support}}
          <!-- MathJax -->
 -        <script async type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?config=TeX-AMS-MML_HTMLorMML";></script>
-+        <script async type="text/javascript" src="../mathjax/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
++        <script async type="text/javascript" src="MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
          {{/if}}
      </head>
      <body>
-@@ -59,46 +56,6 @@
+@@ -61,46 +58,6 @@
              var default_theme = window.matchMedia("(prefers-color-scheme: dark)").matches ? "{{ preferred_dark_theme }}" : "{{ default_theme }}";
          </script>
  
@@ -101,7 +256,7 @@ Index: rustc.git/vendor/mdbook/src/theme
          <nav id="sidebar" class="sidebar" aria-label="Table of contents">
              <div class="sidebar-scrollbox">
                  {{#toc}}{{/toc}}
-@@ -226,53 +183,7 @@
+@@ -236,52 +193,6 @@
          </script>
          {{/if}}
  
@@ -151,139 +306,13 @@ Index: rustc.git/vendor/mdbook/src/theme
 -        {{/if}}
 -
 -        <script src="{{ path_to_root }}clipboard.min.js" type="text/javascript" charset="utf-8"></script>
--        <script src="{{ path_to_root }}highlight.js" type="text/javascript" charset="utf-8"></script>
-+        <script src="{{ path_to_root }}../highlight.js" type="text/javascript" charset="utf-8"></script>
+         <script src="{{ path_to_root }}highlight.js" type="text/javascript" charset="utf-8"></script>
          <script src="{{ path_to_root }}book.js" type="text/javascript" charset="utf-8"></script>
  
-         <!-- Custom JS scripts -->
-Index: rustc.git/vendor/mdbook/src/book/init.rs
-===================================================================
---- rustc.git.orig/vendor/mdbook/src/book/init.rs
-+++ rustc.git/vendor/mdbook/src/book/init.rs
-@@ -151,12 +151,6 @@ impl BookBuilder {
-         let mut js = File::create(themedir.join("book.js"))?;
-         js.write_all(theme::JS)?;
- 
--        let mut highlight_css = File::create(themedir.join("highlight.css"))?;
--        highlight_css.write_all(theme::HIGHLIGHT_CSS)?;
--
--        let mut highlight_js = File::create(themedir.join("highlight.js"))?;
--        highlight_js.write_all(theme::HIGHLIGHT_JS)?;
--
-         Ok(())
-     }
- 
-Index: rustc.git/vendor/mdbook/src/renderer/html_handlebars/hbs_renderer.rs
-===================================================================
---- rustc.git.orig/vendor/mdbook/src/renderer/html_handlebars/hbs_renderer.rs
-+++ rustc.git/vendor/mdbook/src/renderer/html_handlebars/hbs_renderer.rs
-@@ -3,7 +3,7 @@ use crate::config::{Config, HtmlConfig,
- use crate::errors::*;
- use crate::renderer::html_handlebars::helpers;
- use crate::renderer::{RenderContext, Renderer};
--use crate::theme::{self, playground_editor, Theme};
-+use crate::theme::{self, Theme};
- use crate::utils;
- 
- use std::borrow::Cow;
-@@ -198,80 +198,8 @@ impl HtmlHandlebars {
-         if let Some(contents) = &theme.favicon_svg {
-             write_file(destination, "favicon.svg", &contents)?;
-         }
--        write_file(destination, "highlight.css", &theme.highlight_css)?;
-         write_file(destination, "tomorrow-night.css", &theme.tomorrow_night_css)?;
-         write_file(destination, "ayu-highlight.css", &theme.ayu_highlight_css)?;
--        write_file(destination, "highlight.js", &theme.highlight_js)?;
--        write_file(destination, "clipboard.min.js", &theme.clipboard_js)?;
--        write_file(
--            destination,
--            "FontAwesome/css/font-awesome.css",
--            theme::FONT_AWESOME,
--        )?;
--        write_file(
--            destination,
--            "FontAwesome/fonts/fontawesome-webfont.eot",
--            theme::FONT_AWESOME_EOT,
--        )?;
--        write_file(
--            destination,
--            "FontAwesome/fonts/fontawesome-webfont.svg",
--            theme::FONT_AWESOME_SVG,
--        )?;
--        write_file(
--            destination,
--            "FontAwesome/fonts/fontawesome-webfont.ttf",
--            theme::FONT_AWESOME_TTF,
--        )?;
--        write_file(
--            destination,
--            "FontAwesome/fonts/fontawesome-webfont.woff",
--            theme::FONT_AWESOME_WOFF,
--        )?;
--        write_file(
--            destination,
--            "FontAwesome/fonts/fontawesome-webfont.woff2",
--            theme::FONT_AWESOME_WOFF2,
--        )?;
--        write_file(
--            destination,
--            "FontAwesome/fonts/FontAwesome.ttf",
--            theme::FONT_AWESOME_TTF,
--        )?;
--        if html_config.copy_fonts {
--            write_file(destination, "fonts/fonts.css", theme::fonts::CSS)?;
--            for (file_name, contents) in theme::fonts::LICENSES.iter() {
--                write_file(destination, file_name, contents)?;
--            }
--            for (file_name, contents) in theme::fonts::OPEN_SANS.iter() {
--                write_file(destination, file_name, contents)?;
--            }
--            write_file(
--                destination,
--                theme::fonts::SOURCE_CODE_PRO.0,
--                theme::fonts::SOURCE_CODE_PRO.1,
--            )?;
--        }
--
--        let playground_config = &html_config.playground;
--
--        // Ace is a very large dependency, so only load it when requested
--        if playground_config.editable && playground_config.copy_js {
--            // Load the editor
--            write_file(destination, "editor.js", playground_editor::JS)?;
--            write_file(destination, "ace.js", playground_editor::ACE_JS)?;
--            write_file(destination, "mode-rust.js", playground_editor::MODE_RUST_JS)?;
--            write_file(
--                destination,
--                "theme-dawn.js",
--                playground_editor::THEME_DAWN_JS,
--            )?;
--            write_file(
--                destination,
--                "theme-tomorrow_night.js",
--                playground_editor::THEME_TOMORROW_NIGHT_JS,
--            )?;
--        }
- 
-         Ok(())
-     }
-Index: rustc.git/vendor/mdbook/src/renderer/html_handlebars/search.rs
-===================================================================
---- rustc.git.orig/vendor/mdbook/src/renderer/html_handlebars/search.rs
-+++ rustc.git/vendor/mdbook/src/renderer/html_handlebars/search.rs
-@@ -34,8 +34,6 @@ pub fn create_files(search_config: &Sear
-             format!("Object.assign(window.search, {});", index).as_bytes(),
-         )?;
-         utils::fs::write_file(destination, "searcher.js", searcher::JS)?;
--        utils::fs::write_file(destination, "mark.min.js", searcher::MARK_JS)?;
--        utils::fs::write_file(destination, "elasticlunr.min.js", searcher::ELASTICLUNR_JS)?;
-         debug!("Copying search files ✓");
-     }
- 
-Index: rustc.git/vendor/mdbook/src/theme/mod.rs
-===================================================================
---- rustc.git.orig/vendor/mdbook/src/theme/mod.rs
-+++ rustc.git/vendor/mdbook/src/theme/mod.rs
+diff --git a/vendor/mdbook/src/theme/mod.rs b/vendor/mdbook/src/theme/mod.rs
+index a1ee18a..d059f01 100644
+--- a/vendor/mdbook/src/theme/mod.rs
++++ b/vendor/mdbook/src/theme/mod.rs
 @@ -1,9 +1,5 @@
  #![allow(missing_docs)]
  
@@ -294,7 +323,7 @@ Index: rustc.git/vendor/mdbook/src/theme
  #[cfg(feature = "search")]
  pub mod searcher;
  
-@@ -24,19 +20,8 @@ pub static VARIABLES_CSS: &[u8] = includ
+@@ -24,19 +20,8 @@ pub static VARIABLES_CSS: &[u8] = include_bytes!("css/variables.css");
  pub static FAVICON_PNG: &[u8] = include_bytes!("favicon.png");
  pub static FAVICON_SVG: &[u8] = include_bytes!("favicon.svg");
  pub static JS: &[u8] = include_bytes!("book.js");
@@ -360,10 +389,10 @@ Index: rustc.git/vendor/mdbook/src/theme
          };
  
          assert_eq!(got, empty);
-Index: rustc.git/vendor/mdbook/src/theme/searcher/mod.rs
-===================================================================
---- rustc.git.orig/vendor/mdbook/src/theme/searcher/mod.rs
-+++ rustc.git/vendor/mdbook/src/theme/searcher/mod.rs
+diff --git a/vendor/mdbook/src/theme/searcher/mod.rs b/vendor/mdbook/src/theme/searcher/mod.rs
+index d5029db..59eda8a 100644
+--- a/vendor/mdbook/src/theme/searcher/mod.rs
++++ b/vendor/mdbook/src/theme/searcher/mod.rs
 @@ -2,5 +2,3 @@
  //! the "search" cargo feature is disabled.
  
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-0004-cc-psm-rebuild-wasm32.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-0004-cc-psm-rebuild-wasm32.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-0004-cc-psm-rebuild-wasm32.patch	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-0004-cc-psm-rebuild-wasm32.patch	2022-03-29 15:17:21.000000000 +0200
@@ -1,6 +1,17 @@
+From: Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net>
+Date: Sat, 2 Oct 2021 01:08:00 +0100
+Subject: d-0004-cc-psm-rebuild-wasm32
+
+---
+ vendor/cc/src/lib.rs | 2 +-
+ vendor/psm/build.rs  | 7 ++-----
+ 2 files changed, 3 insertions(+), 6 deletions(-)
+
+diff --git a/vendor/cc/src/lib.rs b/vendor/cc/src/lib.rs
+index a268fbe..b13944c 100644
 --- a/vendor/cc/src/lib.rs
 +++ b/vendor/cc/src/lib.rs
-@@ -2000,7 +2000,7 @@
+@@ -2193,7 +2193,7 @@ impl Build {
                      || target == "wasm32-unknown-wasi"
                      || target == "wasm32-unknown-unknown"
                  {
@@ -9,9 +20,11 @@
                  } else if target.contains("vxworks") {
                      if self.cpp {
                          "wr-c++".to_string()
+diff --git a/vendor/psm/build.rs b/vendor/psm/build.rs
+index 01a13bf..30bd68d 100644
 --- a/vendor/psm/build.rs
 +++ b/vendor/psm/build.rs
-@@ -27,7 +27,7 @@
+@@ -50,7 +50,7 @@ fn find_assembly(
          ("sparc", _, _, _) => Some(("src/arch/sparc_sysv.s", true)),
          ("riscv32", _, _, _) => Some(("src/arch/riscv.s", true)),
          ("riscv64", _, _, _) => Some(("src/arch/riscv64.s", true)),
@@ -20,7 +33,7 @@
          _ => None,
      }
  }
-@@ -61,11 +61,8 @@
+@@ -94,11 +94,8 @@ fn main() {
          cfg.define(&*format!("CFG_TARGET_ENV_{}", env), None);
      }
  
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-0005-clippy-feature-sync.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-0005-clippy-feature-sync.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-0005-clippy-feature-sync.patch	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-0005-clippy-feature-sync.patch	2022-03-29 15:17:21.000000000 +0200
@@ -0,0 +1,45 @@
+From: Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net>
+Date: Sat, 2 Oct 2021 01:08:00 +0100
+Subject: d-0005-clippy-feature-sync
+
+enable features needed by rustfmt to make build system happy and speedup build.
+this is what rustc_workspace_hack does in the upstream build.
+---
+ src/tools/clippy/Cargo.toml  | 3 ++-
+ src/tools/rustfmt/Cargo.toml | 2 +-
+ 2 files changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/src/tools/clippy/Cargo.toml b/src/tools/clippy/Cargo.toml
+index e94b7e2..6ab5209 100644
+--- a/src/tools/clippy/Cargo.toml
++++ b/src/tools/clippy/Cargo.toml
+@@ -25,6 +25,7 @@ clippy_lints = { version = "0.1", path = "clippy_lints" }
+ semver = "1.0"
+ rustc_tools_util = { version = "0.2", path = "rustc_tools_util" }
+ tempfile = { version = "3.2", optional = true }
++memchr = { version = "2.4", default_features = false, features = ["use_std"] }
+ 
+ [dev-dependencies]
+ cargo_metadata = "0.14"
+@@ -41,7 +42,7 @@ if_chain = "1.0"
+ itertools = "0.10"
+ quote = "1.0"
+ serde = { version = "1.0", features = ["derive"] }
+-syn = { version = "1.0", features = ["full"] }
++syn = { version = "1.0", features = ["full", "visit"] }
+ parking_lot = "0.11.2"
+ 
+ [build-dependencies]
+diff --git a/src/tools/rustfmt/Cargo.toml b/src/tools/rustfmt/Cargo.toml
+index f92b1dc..9e3b2a7 100644
+--- a/src/tools/rustfmt/Cargo.toml
++++ b/src/tools/rustfmt/Cargo.toml
+@@ -36,7 +36,7 @@ generic-simd = ["bytecount/generic-simd"]
+ itertools = "0.9"
+ toml = "0.5"
+ serde = { version = "1.0", features = ["derive"] }
+-serde_json = "1.0"
++serde_json = { version = "1.0", features = ["unbounded_depth"] }
+ unicode-segmentation = "1.0.0"
+ regex = "1.0"
+ term = "0.6"
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-0006-no-jemalloc.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-0006-no-jemalloc.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-0006-no-jemalloc.patch	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-0006-no-jemalloc.patch	2022-03-06 22:35:27.000000000 +0100
@@ -0,0 +1,30 @@
+From: Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net>
+Date: Sat, 2 Oct 2021 01:08:00 +0100
+Subject: d-0006-no-jemalloc
+
+---
+ compiler/rustc/Cargo.toml | 11 -----------
+ 1 file changed, 11 deletions(-)
+
+diff --git a/compiler/rustc/Cargo.toml b/compiler/rustc/Cargo.toml
+index 277cf0f..645ed3d 100644
+--- a/compiler/rustc/Cargo.toml
++++ b/compiler/rustc/Cargo.toml
+@@ -9,17 +9,6 @@ rustc_driver = { path = "../rustc_driver" }
+ # Make sure rustc_codegen_ssa ends up in the sysroot, because this
+ # crate is intended to be used by codegen backends, which may not be in-tree.
+ rustc_codegen_ssa = { path = "../rustc_codegen_ssa" }
+-
+-[dependencies.tikv-jemalloc-sys]
+-version = '0.4.0'
+-optional = true
+-features = ['unprefixed_malloc_on_supported_platforms']
+-
+-[dependencies.tikv-jemallocator]
+-version = '0.4.0'
+-optional = true
+-
+ [features]
+-jemalloc = ['tikv-jemalloc-sys', 'tikv-jemallocator']
+ llvm = ['rustc_driver/llvm']
+ max_level_info = ['rustc_driver/max_level_info']
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-add-soname.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-add-soname.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-add-soname.patch	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-add-soname.patch	1970-01-01 01:00:00.000000000 +0100
@@ -1,38 +0,0 @@
-Description: Set DT_SONAME when building dylibs
- In Rust, library filenames include a version-specific hash to help
- the run-time linker find the correct version.  Unlike in C/C++, the
- compiler looks for all libraries matching a glob that ignores the
- hash and reads embedded metadata to work out versions, etc.
- .
- The upshot is that there is no need for the usual "libfoo.so ->
- libfoo-1.2.3.so" symlink common with C/C++ when building with Rust,
- and no need to communicate an alternate filename to use at run-time
- vs compile time.  If linking to a Rust dylib from C/C++ however, a
- "libfoo.so -> libfoo-$hash.so" symlink may well be useful and in
- this case DT_SONAME=libfoo-$hash.so would be required.  More
- mundanely, various tools (eg: dpkg-shlibdeps) complain if they don't
- find DT_SONAME on shared libraries in public directories.
- .
- This patch passes -Wl,-soname=$outfile when building dylibs (and
- using a GNU linker).
-Author: Angus Lees <gus@debian.org>
-Forwarded: no
-
-Index: rustc.git/compiler/rustc_codegen_ssa/src/back/link.rs
-===================================================================
---- rustc.git.orig/compiler/rustc_codegen_ssa/src/back/link.rs
-+++ rustc.git/compiler/rustc_codegen_ssa/src/back/link.rs
-@@ -1716,6 +1716,13 @@ fn linker_with_args<'a, B: ArchiveBuilde
-     // OBJECT-FILES-NO, AUDIT-ORDER
-     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 {
-+        let filename = String::from(out_filename.file_name().unwrap().to_str().unwrap());
-+        let soname = [String::from("-Wl,-soname=") + &filename];
-+        cmd.args(&soname);
-+    }
-+
-     // OBJECT-FILES-MAYBE, CUSTOMIZATION-POINT
-     add_user_defined_link_args(cmd, sess, codegen_results);
- 
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-bootstrap-cargo-doc-paths.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-bootstrap-cargo-doc-paths.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-bootstrap-cargo-doc-paths.patch	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-bootstrap-cargo-doc-paths.patch	2022-03-09 00:29:22.000000000 +0100
@@ -0,0 +1,226 @@
+Description: Fix links to cargo-doc
+ We package cargo docs in a slightly different location; also tweak linkchecker
+ to not fail these links.
+
+Index: rust/src/tools/linkchecker/main.rs
+===================================================================
+--- rust.orig/src/tools/linkchecker/main.rs
++++ rust/src/tools/linkchecker/main.rs
+@@ -272,6 +272,12 @@ impl Checker {
+                             return;
+                         }
+                     }
++                    if let Some(path_str) = path.to_str() {
++                        if path_str.contains("/cargo-doc/doc/") {
++                            // link to related cargo-doc, ok for our Debian build
++                            return;
++                        }
++                    }
+                     if is_exception(file, &target_pretty_path) {
+                         report.links_ignored_exception += 1;
+                     } else {
+Index: rust/src/doc/index.md
+===================================================================
+--- rust.orig/src/doc/index.md
++++ rust/src/doc/index.md
+@@ -87,7 +87,7 @@ accomplishing various tasks.
+ 
+ ## The Cargo Book
+ 
+-[The Cargo Book](cargo/index.html) is a guide to Cargo, Rust's build tool and dependency manager.
++[The Cargo Book](../../cargo-doc/doc/index.html) is a guide to Cargo, Rust's build tool and dependency manager.
+ 
+ ## The Rustdoc Book
+ 
+Index: rust/src/doc/reference/src/conditional-compilation.md
+===================================================================
+--- rust.orig/src/doc/reference/src/conditional-compilation.md
++++ rust/src/doc/reference/src/conditional-compilation.md
+@@ -335,6 +335,6 @@ println!("I'm running on a {} machine!",
+ [`target_feature` attribute]: attributes/codegen.md#the-target_feature-attribute
+ [attribute]: attributes.md
+ [attributes]: attributes.md
+-[cargo-feature]: ../cargo/reference/features.html
++[cargo-feature]: ../../cargo-doc/doc/reference/features.html
+ [crate type]: linkage.md
+ [static C runtime]: linkage.md#static-and-dynamic-c-runtimes
+Index: rust/src/doc/reference/src/introduction.md
+===================================================================
+--- rust.orig/src/doc/reference/src/introduction.md
++++ rust/src/doc/reference/src/introduction.md
+@@ -135,8 +135,8 @@ We also want the reference to be as norm
+ [the Rust Reference repository]: https://github.com/rust-lang/reference/
+ [Unstable Book]: https://doc.rust-lang.org/nightly/unstable-book/
+ [_Expression_]: expressions.md
+-[cargo book]: ../cargo/index.html
+-[cargo reference]: ../cargo/reference/index.html
++[cargo book]: ../../cargo-doc/doc/index.html
++[cargo reference]: ../../cargo-doc/doc/reference/index.html
+ [expressions chapter]: expressions.html
+ [file an issue]: https://github.com/rust-lang/reference/issues
+ [lifetime of temporaries]: expressions.html#temporaries
+Index: rust/src/doc/reference/src/linkage.md
+===================================================================
+--- rust.orig/src/doc/reference/src/linkage.md
++++ rust/src/doc/reference/src/linkage.md
+@@ -201,7 +201,7 @@ fn main() {
+ }
+ ```
+ 
+-[cargo]: ../cargo/reference/environment-variables.html#environment-variables-cargo-sets-for-build-scripts
++[cargo]: ../../cargo-doc/doc/reference/environment-variables.html#environment-variables-cargo-sets-for-build-scripts
+ 
+ To use this feature locally, you typically will use the `RUSTFLAGS` environment
+ variable to specify flags to the compiler through Cargo. For example to compile
+Index: rust/src/doc/reference/src/procedural-macros.md
+===================================================================
+--- rust.orig/src/doc/reference/src/procedural-macros.md
++++ rust/src/doc/reference/src/procedural-macros.md
+@@ -272,7 +272,7 @@ fn invoke4() {}
+ ```
+ 
+ [Attribute macros]: #attribute-macros
+-[Cargo's build scripts]: ../cargo/reference/build-scripts.html
++[Cargo's build scripts]: ../../cargo-doc/doc/reference/build-scripts.html
+ [Derive macros]: #derive-macros
+ [Function-like macros]: #function-like-procedural-macros
+ [`TokenStream`]: ../proc_macro/struct.TokenStream.html
+Index: rust/src/doc/rustc/src/tests/index.md
+===================================================================
+--- rust.orig/src/doc/rustc/src/tests/index.md
++++ rust/src/doc/rustc/src/tests/index.md
+@@ -300,7 +300,7 @@ Experimental support for using custom te
+ [`--test` option]: ../command-line-arguments.md#option-test
+ [`-Z panic-abort-tests`]: https://github.com/rust-lang/rust/issues/67650
+ [`available_parallelism`]: ../../std/thread/fn.available_parallelism.html
+-[`cargo test`]: ../../cargo/commands/cargo-test.html
++[`cargo test`]: ../../../cargo-doc/doc/commands/cargo-test.html
+ [`libtest`]: ../../test/index.html
+ [`main` function]: ../../reference/crates-and-source-files.html#main-functions
+ [`Result`]: ../../std/result/index.html
+@@ -309,7 +309,7 @@ Experimental support for using custom te
+ [attribute-should_panic]: ../../reference/attributes/testing.html#the-should_panic-attribute
+ [attribute-test]: ../../reference/attributes/testing.html#the-test-attribute
+ [bench-docs]: ../../unstable-book/library-features/test.html
+-[Cargo]: ../../cargo/index.html
++[Cargo]: ../../../cargo-doc/doc/index.html
+ [crate type]: ../../reference/linkage.html
+ [custom_test_frameworks documentation]: ../../unstable-book/language-features/custom-test-frameworks.html
+ [nightly channel]: ../../book/appendix-07-nightly-rust.html
+Index: rust/src/doc/rustc/src/what-is-rustc.md
+===================================================================
+--- rust.orig/src/doc/rustc/src/what-is-rustc.md
++++ rust/src/doc/rustc/src/what-is-rustc.md
+@@ -5,7 +5,7 @@ language, provided by the project itself
+ produce binary code, either as a library or executable.
+ 
+ Most Rust programmers don't invoke `rustc` directly, but instead do it through
+-[Cargo](../cargo/index.html). It's all in service of `rustc` though! If you
++[Cargo](../../cargo-doc/doc/index.html). It's all in service of `rustc` though! If you
+ want to see how Cargo calls `rustc`, you can
+ 
+ ```bash
+Index: rust/src/doc/edition-guide/book.toml
+===================================================================
+--- rust.orig/src/doc/edition-guide/book.toml
++++ rust/src/doc/edition-guide/book.toml
+@@ -53,15 +53,15 @@ git-repository-url = "https://github.com
+ "/rust-2018/the-compiler/incremental-compilation-for-faster-compiles.html" = "https://blog.rust-lang.org/2018/02/15/Rust-1.24.html#incremental-compilation";
+ "/rust-2018/the-compiler/an-attribute-for-deprecation.html" = "../../../reference/attributes/diagnostics.html#the-deprecated-attribute"
+ "/rust-2018/rustup-for-managing-rust-versions.html" = "https://rust-lang.github.io/rustup/";
+-"/rust-2018/cargo-and-crates-io/index.html" = "../../../cargo/index.html"
+-"/rust-2018/cargo-and-crates-io/cargo-check-for-faster-checking.html" = "../../../cargo/commands/cargo-check.html"
+-"/rust-2018/cargo-and-crates-io/cargo-install-for-easy-installation-of-tools.html" = "../../../cargo/commands/cargo-install.html"
++"/rust-2018/cargo-and-crates-io/index.html" = "../../../../cargo-doc/doc/index.html"
++"/rust-2018/cargo-and-crates-io/cargo-check-for-faster-checking.html" = "../../../../cargo-doc/doc/commands/cargo-check.html"
++"/rust-2018/cargo-and-crates-io/cargo-install-for-easy-installation-of-tools.html" = "../../../../cargo-doc/doc/commands/cargo-install.html"
+ "/rust-2018/cargo-and-crates-io/cargo-new-defaults-to-a-binary-project.html" = "https://blog.rust-lang.org/2018/03/29/Rust-1.25.html#cargo-features";
+-"/rust-2018/cargo-and-crates-io/cargo-rustc-for-passing-arbitrary-flags-to-rustc.html" = "../../../cargo/commands/cargo-rustc.html"
+-"/rust-2018/cargo-and-crates-io/cargo-workspaces-for-multi-package-projects.html" = "../../../cargo/reference/workspaces.html"
+-"/rust-2018/cargo-and-crates-io/multi-file-examples.html" = "../../../cargo/guide/project-layout.html"
+-"/rust-2018/cargo-and-crates-io/replacing-dependencies-with-patch.html" = "../../../cargo/reference/overriding-dependencies.html#the-patch-section"
+-"/rust-2018/cargo-and-crates-io/cargo-can-use-a-local-registry-replacement.html" = "../../../cargo/reference/source-replacement.html"
++"/rust-2018/cargo-and-crates-io/cargo-rustc-for-passing-arbitrary-flags-to-rustc.html" = "../../../../cargo-doc/doc/commands/cargo-rustc.html"
++"/rust-2018/cargo-and-crates-io/cargo-workspaces-for-multi-package-projects.html" = "../../../../cargo-doc/doc/reference/workspaces.html"
++"/rust-2018/cargo-and-crates-io/multi-file-examples.html" = "../../../../cargo-doc/doc/guide/project-layout.html"
++"/rust-2018/cargo-and-crates-io/replacing-dependencies-with-patch.html" = "../../../../cargo-doc/doc/reference/overriding-dependencies.html#the-patch-section"
++"/rust-2018/cargo-and-crates-io/cargo-can-use-a-local-registry-replacement.html" = "../../../../cargo-doc/doc/reference/source-replacement.html"
+ "/rust-2018/cargo-and-crates-io/crates-io-disallows-wildcard-dependencies.html" = "https://blog.rust-lang.org/2016/01/21/Rust-1.6.html#cratesio-disallows-wildcards";
+ "/rust-2018/documentation/index.html" = "../../../index.html"
+ "/rust-2018/documentation/new-editions-of-the-book.html" = "../../../book/index.html"
+@@ -93,4 +93,4 @@ git-repository-url = "https://github.com
+ "/rust-next/future.html" = "../../std/future/trait.Future.html"
+ "/rust-next/alloc.html" = "https://blog.rust-lang.org/2019/07/04/Rust-1.36.0.html#the-alloc-crate-is-stable";
+ "/rust-next/maybe-uninit.html" = "https://blog.rust-lang.org/2019/07/04/Rust-1.36.0.html#maybeuninitt-instead-of-memuninitialized";
+-"/rust-next/cargo-vendor.html" = "../../cargo/commands/cargo-vendor.html"
++"/rust-next/cargo-vendor.html" = "../../../cargo-doc/doc/commands/cargo-vendor.html"
+Index: rust/src/doc/edition-guide/src/editions/advanced-migrations.md
+===================================================================
+--- rust.orig/src/doc/edition-guide/src/editions/advanced-migrations.md
++++ rust/src/doc/edition-guide/src/editions/advanced-migrations.md
+@@ -186,18 +186,18 @@ Afterwards, the line with `extern crate
+ 
+ We're now more idiomatic, and we didn't have to fix our code manually!
+ 
+-[`cargo check`]: ../../cargo/commands/cargo-check.html
+-[`cargo fix`]: ../../cargo/commands/cargo-fix.html
++[`cargo check`]: ../../../cargo-doc/doc/commands/cargo-check.html
++[`cargo fix`]: ../../../cargo-doc/doc/commands/cargo-fix.html
+ [`explicit-outlives-requirements`]:  ../../rustc/lints/listing/allowed-by-default.html#explicit-outlives-requirements
+ [`keyword-idents`]: ../../rustc/lints/listing/allowed-by-default.html#keyword-idents
+ [`rustfix`]: https://github.com/rust-lang/rustfix
+ [`unused-extern-crates`]: ../../rustc/lints/listing/allowed-by-default.html#unused-extern-crates
+-[Cargo features]: ../../cargo/reference/features.html
+-[Cargo package]: ../../cargo/reference/manifest.html#the-package-section
+-[Cargo targets]: ../../cargo/reference/cargo-targets.html
+-[Cargo workspace]: ../../cargo/reference/workspaces.html
++[Cargo features]: ../../../cargo-doc/doc/reference/features.html
++[Cargo package]: ../../../cargo-doc/doc/reference/manifest.html#the-package-section
++[Cargo targets]: ../../../cargo-doc/doc/reference/cargo-targets.html
++[Cargo workspace]: ../../../cargo-doc/doc/reference/workspaces.html
+ [CLI flag]: ../../rustc/lints/levels.html#via-compiler-flag
+-[Code generation]: ../../cargo/reference/build-script-examples.html#code-generation
++[Code generation]: ../../../cargo-doc/doc/reference/build-script-examples.html#code-generation
+ [conditional compilation]: ../../reference/conditional-compilation.html
+ [documentation tests]: ../../rustdoc/documentation-tests.html
+ [JSON messages]: ../../rustc/json.html
+Index: rust/src/doc/edition-guide/src/editions/transitioning-an-existing-project-to-a-new-edition.md
+===================================================================
+--- rust.orig/src/doc/edition-guide/src/editions/transitioning-an-existing-project-to-a-new-edition.md
++++ rust/src/doc/edition-guide/src/editions/transitioning-an-existing-project-to-a-new-edition.md
+@@ -83,7 +83,7 @@ If new warnings are issued, you may want
+ 
+ Congrats! Your code is now valid in both Rust 2015 and Rust 2018!
+ 
+-[`cargo fix`]: ../../cargo/commands/cargo-fix.html
+-[`cargo test`]: ../../cargo/commands/cargo-test.html
++[`cargo fix`]: ../../../cargo-doc/doc/commands/cargo-fix.html
++[`cargo test`]: ../../../cargo-doc/doc/commands/cargo-test.html
+ [Advanced migration strategies]: advanced-migrations.md
+ [nightly channel]: ../../book/appendix-07-nightly-rust.html
+Index: rust/src/doc/edition-guide/src/rust-2021/default-cargo-resolver.md
+===================================================================
+--- rust.orig/src/doc/edition-guide/src/rust-2021/default-cargo-resolver.md
++++ rust/src/doc/edition-guide/src/rust-2021/default-cargo-resolver.md
+@@ -21,11 +21,11 @@ The new feature resolver no longer merge
+ crates that are depended on in multiple ways.
+ See [the announcement of Rust 1.51][5] for details.
+ 
+-[4]: ../../cargo/reference/resolver.html#feature-resolver-version-2
++[4]: ../../../cargo-doc/doc/reference/resolver.html#feature-resolver-version-2
+ [5]: https://blog.rust-lang.org/2021/03/25/Rust-1.51.0.html#cargos-new-feature-resolver
+-[workspace]: ../../cargo/reference/workspaces.html
+-[virtual workspace]: ../../cargo/reference/workspaces.html#virtual-manifest
+-[`resolver` field]: ../../cargo/reference/resolver.html#resolver-versions
++[workspace]: ../../../cargo-doc/doc/reference/workspaces.html
++[virtual workspace]: ../../../cargo-doc/doc/reference/workspaces.html#virtual-manifest
++[`resolver` field]: ../../../cargo-doc/doc/reference/resolver.html#resolver-versions
+ 
+ ## Migration
+ 
+@@ -176,4 +176,4 @@ This snippet of output shows that the pr
+ Then, `bar` depends on `bstr` as a build-dependency with the "default" feature.
+ We can further see that `bstr`'s  "default" feature enables "unicode" (among other features).
+ 
+-[`cargo tree`]: ../../cargo/commands/cargo-tree.html
++[`cargo tree`]: ../../../cargo-doc/doc/commands/cargo-tree.html
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-bootstrap-custom-debuginfo-path.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-bootstrap-custom-debuginfo-path.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-bootstrap-custom-debuginfo-path.patch	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-bootstrap-custom-debuginfo-path.patch	2022-03-06 22:59:25.000000000 +0100
@@ -0,0 +1,26 @@
+--- a/src/bootstrap/lib.rs
++++ b/src/bootstrap/lib.rs
+@@ -933,10 +933,9 @@ impl Build {
+ 
+         match which {
+             GitRepo::Rustc => {
+-                let sha = self.rust_sha().unwrap_or(&self.version);
+-                Some(format!("/rustc/{}", sha))
++                Some(format!("/usr/src/rustc-{}", &self.version))
+             }
+-            GitRepo::Llvm => Some(String::from("/rustc/llvm")),
++            GitRepo::Llvm => panic!("GitRepo::Llvm unsupported on Debian"),
+         }
+     }
+ 
+--- a/src/test/codegen/remap_path_prefix/issue-73167-remap-std.rs
++++ b/src/test/codegen/remap_path_prefix/issue-73167-remap-std.rs
+@@ -7,7 +7,7 @@
+ // true automatically. If paths to std library hasn't been remapped, we use the
+ // above simulate-remapped-rust-src-base option to do it temporarily
+ 
+-// CHECK: !DIFile(filename: "{{/rustc/.*/library/std/src/panic.rs}}"
++// CHECK: !DIFile(filename: "{{/usr/src/rustc-.*/library/std/src/panic.rs}}"
+ fn main() {
+     std::thread::spawn(|| {
+         println!("hello");
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-bootstrap-disable-git.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-bootstrap-disable-git.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-bootstrap-disable-git.patch	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-bootstrap-disable-git.patch	2022-03-06 22:59:25.000000000 +0100
@@ -0,0 +1,33 @@
+Description: Don't check for cargo-vendor when building from (Debian's) git
+Author: Matthijs van Otterdijk <matthijs@wirevirt.net>
+Forwarded: not-needed
+---
+--- a/src/bootstrap/dist.rs
++++ b/src/bootstrap/dist.rs
+@@ -918,7 +918,10 @@ impl Step for PlainSourceTarball {
+         }
+ 
+         // If we're building from git sources, we need to vendor a complete distribution.
+-        if builder.rust_info.is_git() {
++        //
++        // Debian: disabling this block 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() {
+             // Vendor all Cargo dependencies
+             let mut cmd = Command::new(&builder.initial_cargo);
+             cmd.arg("vendor")
+--- a/src/bootstrap/channel.rs
++++ b/src/bootstrap/channel.rs
+@@ -30,7 +30,11 @@
+ 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 -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-bootstrap-install-symlinks.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-bootstrap-install-symlinks.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-bootstrap-install-symlinks.patch	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-bootstrap-install-symlinks.patch	2021-10-22 15:49:55.000000000 +0200
@@ -0,0 +1,28 @@
+Description: Install symlinks as-is, don't dereference them
+ Our patch to mdbook installs symlinks to systems versions of font-awesome,
+ highlight, etc. Upstream mdbook otherwise doesn't use symlinks, so this
+ doesn't affect anything else that's already generated.
+
+--- a/src/tools/rust-installer/install-template.sh
++++ b/src/tools/rust-installer/install-template.sh
+@@ -625,7 +625,10 @@
+ 
+ 		    maybe_backup_path "$_file_install_path"
+ 
+-		    if echo "$_file" | grep "^bin/" > /dev/null || test -x "$_src_dir/$_component/$_file"
++		    if [ -h "$_src_dir/$_component/$_file" ]
++		    then
++			run cp -d "$_src_dir/$_component/$_file" "$_file_install_path"
++		    elif echo "$_file" | grep "^bin/" > /dev/null || test -x "$_src_dir/$_component/$_file"
+ 		    then
+ 			run cp "$_src_dir/$_component/$_file" "$_file_install_path"
+ 			run chmod 755 "$_file_install_path"
+@@ -647,7 +650,7 @@
+ 
+ 		    maybe_backup_path "$_file_install_path"
+ 
+-		    run cp -R "$_src_dir/$_component/$_file" "$_file_install_path"
++		    run cp -dR "$_src_dir/$_component/$_file" "$_file_install_path"
+ 		    critical_need_ok "failed to copy directory"
+ 
+                     # Set permissions. 0755 for dirs, 644 for files
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-bootstrap-no-assume-tools.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-bootstrap-no-assume-tools.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-bootstrap-no-assume-tools.patch	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-bootstrap-no-assume-tools.patch	2021-10-22 15:49:55.000000000 +0200
@@ -0,0 +1,15 @@
+--- a/src/bootstrap/builder/tests.rs
++++ b/src/bootstrap/builder/tests.rs
+@@ -277,8 +277,12 @@
+         let a = TargetSelection::from_user("A");
+         let b = TargetSelection::from_user("B");
+         let mut build = Build::new(configure(&["A", "B"], &["A", "B"]));
++        let mut tools = std::collections::HashSet::new();
++        tools.insert("clippy".to_string());
++        tools.insert("rustfmt".to_string());
+         build.config.docs = false;
+         build.config.extended = true;
++        build.config.tools = Some(tools);
+         build.hosts = vec![b];
+         let mut builder = Builder::new(&build);
+         builder.run_step_descriptions(&Builder::get_step_descriptions(Kind::Dist), &[]);
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-bootstrap-old-cargo-compat.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-bootstrap-old-cargo-compat.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-bootstrap-old-cargo-compat.patch	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-bootstrap-old-cargo-compat.patch	2022-03-06 22:59:25.000000000 +0100
@@ -0,0 +1,38 @@
+Description: Backwards-compat for cargo 0.47
+
+  The flag being removed here was added in
+  https://github.com/rust-lang/cargo/pull/9404 released in cargo 0.54
+  
+  This works around a feature introduced in this PR
+  https://github.com/rust-lang/cargo/pull/8640 released in cargo 0.53
+  
+  Therefore it is not needed for Debian's current cargo 0.47.
+  
+  We can drop this patch when updating to cargo 0.54 and later.
+
+--- a/src/bootstrap/doc.rs
++++ b/src/bootstrap/doc.rs
+@@ -443,7 +443,6 @@ impl Step for Std {
+             cargo
+                 .arg("-p")
+                 .arg(package)
+-                .arg("-Zskip-rustdoc-fingerprint")
+                 .arg("--")
+                 .arg("--markdown-css")
+                 .arg("rust.css")
+@@ -589,7 +588,6 @@ impl Step for Rustc {
+         cargo.rustdocflag("--generate-link-to-definition");
+         compile::rustc_cargo(builder, &mut cargo, target);
+         cargo.arg("-Zunstable-options");
+-        cargo.arg("-Zskip-rustdoc-fingerprint");
+ 
+         // Only include compiler crates, no dependencies of those, such as `libc`.
+         // Do link to dependencies on `docs.rs` however using `rustdoc-map`.
+@@ -722,7 +720,6 @@ macro_rules! tool_doc {
+                     &[],
+                 );
+ 
+-                cargo.arg("-Zskip-rustdoc-fingerprint");
+                 // Only include compiler crates, no dependencies of those, such as `libc`.
+                 cargo.arg("--no-deps");
+                 $(
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-bootstrap-read-beta-version-from-file.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-bootstrap-read-beta-version-from-file.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-bootstrap-read-beta-version-from-file.patch	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-bootstrap-read-beta-version-from-file.patch	2022-03-06 22:59:25.000000000 +0100
@@ -0,0 +1,24 @@
+--- a/src/bootstrap/lib.rs
++++ b/src/bootstrap/lib.rs
+@@ -1161,15 +1161,13 @@ impl Build {
+             return s;
+         }
+ 
+-        // Figure out how many merge commits happened since we branched off master.
+-        // That's our beta number!
+-        // (Note that we use a `..` range, not the `...` symmetric difference.)
++        // Debian: read beta number from "version" file, this is only available
++        // in the rustc upstream tarballs and not their git
+         let count = output(
+-            Command::new("git")
+-                .arg("rev-list")
+-                .arg("--count")
+-                .arg("--merges")
+-                .arg("refs/remotes/origin/master..HEAD")
++            Command::new("sed")
++                .arg("-re")
++                .arg(r"s/[0-9]+.[0-9]+.[0-9]+-beta.([0-9]+) \(.*\)/\1/g")
++                .arg("version")
+                 .current_dir(&self.src),
+         );
+         let n = count.trim().parse().unwrap();
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-bootstrap-rustflags.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-bootstrap-rustflags.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-bootstrap-rustflags.patch	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-bootstrap-rustflags.patch	2022-03-29 15:17:22.000000000 +0200
@@ -0,0 +1,21 @@
+--- a/src/bootstrap/builder.rs
++++ b/src/bootstrap/builder.rs
+@@ -1003,6 +1003,18 @@ impl<'a> Builder<'a> {
+             }
+         }
+ 
++        // Debian-specific stuff here
++        // set linker flags from LDFLAGS
++        if let Ok(ldflags) = env::var("LDFLAGS") {
++            for flag in ldflags.split_whitespace() {
++                if target.contains("windows") && flag.contains("relro") {
++                    // relro is ELF-specific
++                    continue;
++                }
++                rustflags.arg(&format!("-Clink-args={}", flag));
++            }
++        }
++
+         // FIXME: It might be better to use the same value for both `RUSTFLAGS` and `RUSTDOCFLAGS`,
+         // but this breaks CI. At the very least, stage0 `rustdoc` needs `--cfg bootstrap`. See
+         // #71458.
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-bootstrap-use-local-css.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-bootstrap-use-local-css.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-bootstrap-use-local-css.patch	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-bootstrap-use-local-css.patch	2022-03-06 22:59:25.000000000 +0100
@@ -0,0 +1,31 @@
+--- a/src/bootstrap/doc.rs
++++ b/src/bootstrap/doc.rs
+@@ -375,6 +375,10 @@ impl Step for Standalone {
+                 .arg(&builder.src.join("src/doc/index.md"))
+                 .arg("--markdown-playground-url")
+                 .arg("https://play.rust-lang.org/";)
++                .arg("--markdown-css")
++                .arg(format!("rustdoc{}.css", &builder.version))
++                .arg("--markdown-css")
++                .arg("rust.css")
+                 .arg("-o")
+                 .arg(&out)
+                 .arg(&path);
+@@ -383,17 +387,6 @@ impl Step for Standalone {
+                 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";);
+-            } else {
+-                cmd.arg("--markdown-css")
+-                    .arg(format!("rustdoc{}.css", &builder.version))
+-                    .arg("--markdown-css")
+-                    .arg("rust.css");
+-            }
+             builder.run(&mut cmd);
+         }
+ 
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-bootstrap-use-system-compiler-rt.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-bootstrap-use-system-compiler-rt.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-bootstrap-use-system-compiler-rt.patch	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-bootstrap-use-system-compiler-rt.patch	2021-10-22 15:49:55.000000000 +0200
@@ -0,0 +1,40 @@
+Description: Use system compiler-rt from clang
+Forwarded: not-needed
+--- a/src/bootstrap/compile.rs
++++ b/src/bootstrap/compile.rs
+@@ -200,6 +200,12 @@
+         let mut features = builder.std_features();
+         features.push_str(&compiler_builtins_c_feature);
+ 
++        // In Debian this is always available
++        let llvm_config = builder.ensure(native::Llvm {
++            target: builder.config.build,
++            emscripten: false,
++        });
++        cargo.env("LLVM_CONFIG", llvm_config);
+         if compiler.stage != 0 && builder.config.sanitizers {
+             // This variable is used by the sanitizer runtime crates, e.g.
+             // rustc_lsan, to build the sanitizer runtime from C code
+@@ -208,11 +214,6 @@
+             // missing
+             // We also only build the runtimes when --enable-sanitizers (or its
+             // config.toml equivalent) is used
+-            let llvm_config = builder.ensure(native::Llvm {
+-                target: builder.config.build,
+-                emscripten: false,
+-            });
+-            cargo.env("LLVM_CONFIG", llvm_config);
+             cargo.env("RUSTC_BUILD_SANITIZERS", "1");
+         }
+ 
+--- a/vendor/compiler_builtins/Cargo.toml
++++ b/vendor/compiler_builtins/Cargo.toml
+@@ -49,7 +49,7 @@
+ # LLVM_CONFIG or CLANG (more reliable) must be set.
+ c-system = []
+ 
+-c = ["c-vendor"]
++c = ["c-system"]
+ compiler-builtins = []
+ default = ["compiler-builtins"]
+ mangled-names = []
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-custom-debuginfo-path.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-custom-debuginfo-path.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-custom-debuginfo-path.patch	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-custom-debuginfo-path.patch	1970-01-01 01:00:00.000000000 +0100
@@ -1,17 +0,0 @@
-Index: rustc.git/src/bootstrap/lib.rs
-===================================================================
---- rustc.git.orig/src/bootstrap/lib.rs
-+++ rustc.git/src/bootstrap/lib.rs
-@@ -777,10 +777,9 @@ impl Build {
- 
-         match which {
-             GitRepo::Rustc => {
--                let sha = self.rust_sha().unwrap_or(&self.version);
--                Some(format!("/rustc/{}", sha))
-+                Some(format!("/usr/src/rustc-{}", &self.version))
-             }
--            GitRepo::Llvm => Some(String::from("/rustc/llvm")),
-+            GitRepo::Llvm => panic!("GitRepo::Llvm unsupported on Debian"),
-         }
-     }
- 
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-disable-cargo-vendor.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-disable-cargo-vendor.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-disable-cargo-vendor.patch	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-disable-cargo-vendor.patch	1970-01-01 01:00:00.000000000 +0100
@@ -1,20 +0,0 @@
-Description: Don't check for cargo-vendor when building from (Debian's) git
-Author: Matthijs van Otterdijk <matthijs@wirevirt.net>
-Forwarded: not-needed
----
-Index: rustc.git/src/bootstrap/dist.rs
-===================================================================
---- rustc.git.orig/src/bootstrap/dist.rs
-+++ rustc.git/src/bootstrap/dist.rs
-@@ -1112,7 +1112,10 @@ impl Step for PlainSourceTarball {
-         }
- 
-         // If we're building from git sources, we need to vendor a complete distribution.
--        if builder.rust_info.is_git() {
-+        //
-+        // Debian: disabling this block 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() {
-             // Vendor all Cargo dependencies
-             let mut cmd = Command::new(&builder.initial_cargo);
-             cmd.arg("vendor")
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-dont-download-stage0.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-dont-download-stage0.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-dont-download-stage0.patch	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-dont-download-stage0.patch	1970-01-01 01:00:00.000000000 +0100
@@ -1,50 +0,0 @@
-Description: Don't download SHA256 if it's already available locally
- In Debian we provide the stage0 tarballs as a separate component so that the
- buildds don't need to access the network during the build.
-Author: Ximin Luo <infinity0@debian.org>
-Forwarded: not-needed
----
-This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
---- a/src/bootstrap/bootstrap.py
-+++ b/src/bootstrap/bootstrap.py
-@@ -24,17 +24,19 @@
-     except tarfile.CompressionError:
-         return False
- 
--def get(url, path, verbose=False, do_verify=True):
-+def get(url, path, verbose=False, do_verify=True, use_local_hash_if_present=True):
-     suffix = '.sha256'
-     sha_url = url + suffix
-     with tempfile.NamedTemporaryFile(delete=False) as temp_file:
-         temp_path = temp_file.name
--    with tempfile.NamedTemporaryFile(suffix=suffix, delete=False) as sha_file:
--        sha_path = sha_file.name
-+    sha_path = path + suffix
- 
-     try:
-         if do_verify:
--            download(sha_path, sha_url, False, verbose)
-+            if use_local_hash_if_present and os.path.exists(sha_path):
-+                print("using already-download file " + sha_path)
-+            else:
-+                download(sha_path, sha_url, False, verbose)
-             if os.path.exists(path):
-                 if verify(path, sha_path, False):
-                     if verbose:
-@@ -52,7 +54,6 @@
-             print("moving {} to {}".format(temp_path, path))
-         shutil.move(temp_path, path)
-     finally:
--        delete_if_present(sha_path, verbose)
-         delete_if_present(temp_path, verbose)
- 
- 
-@@ -459,7 +460,7 @@
- 
-         url = "{}/dist/{}".format(self._download_url, date)
-         tarball = os.path.join(rustc_cache, filename)
--        if not os.path.exists(tarball):
-+        if True:
-             get("{}/{}".format(url, filename), tarball, verbose=self.verbose)
-         unpack(tarball, tarball_suffix, self.bin_root(), match=pattern, verbose=self.verbose)
- 
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-fix-mips64el-bootstrap.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-fix-mips64el-bootstrap.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-fix-mips64el-bootstrap.patch	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-fix-mips64el-bootstrap.patch	1970-01-01 01:00:00.000000000 +0100
@@ -1,34 +0,0 @@
-Bug: https://github.com/rust-lang/rust/issues/52108
---- a/src/bootstrap/bootstrap.py
-+++ b/src/bootstrap/bootstrap.py
-@@ -823,6 +823,8 @@
-         # preserve existing RUSTFLAGS
-         env.setdefault("RUSTFLAGS", "")
-         env["RUSTFLAGS"] += " -Cdebuginfo=2"
-+        if self.build_triple().startswith('mips'):
-+            env["RUSTFLAGS"] += " -Ctarget-feature=+xgot"
- 
-         build_section = "target.{}".format(self.build)
-         target_features = []
---- a/compiler/rustc_target/src/spec/mips64_unknown_linux_gnuabi64.rs
-+++ b/compiler/rustc_target/src/spec/mips64_unknown_linux_gnuabi64.rs
-@@ -11,7 +11,7 @@
-             endian: Endian::Big,
-             // NOTE(mips64r2) matches C toolchain
-             cpu: "mips64r2".to_string(),
--            features: "+mips64r2".to_string(),
-+            features: "+mips64r2,+xgot".to_string(),
-             max_atomic_width: Some(64),
-             mcount: "_mcount".to_string(),
- 
---- a/compiler/rustc_target/src/spec/mips64el_unknown_linux_gnuabi64.rs
-+++ b/compiler/rustc_target/src/spec/mips64el_unknown_linux_gnuabi64.rs
-@@ -9,7 +9,7 @@
-         options: TargetOptions {
-             // NOTE(mips64r2) matches C toolchain
-             cpu: "mips64r2".to_string(),
--            features: "+mips64r2".to_string(),
-+            features: "+mips64r2,+xgot".to_string(),
-             max_atomic_width: Some(64),
-             mcount: "_mcount".to_string(),
- 
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-host-duplicates.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-host-duplicates.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-host-duplicates.patch	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-host-duplicates.patch	1970-01-01 01:00:00.000000000 +0100
@@ -1,35 +0,0 @@
-Description: Work around #842634 on some machines, e.g. Debian porterboxes
- This should remain commented-out in debian/patches/series, it's not needed everywhere
-Author: Ximin Luo <infinity0@debian.org>
-Forwarded: not-needed
----
-This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
---- a/library/std/src/sys_common/net.rs
-+++ b/library/std/src/sys_common/net.rs
-@@ -659,26 +659,3 @@
-         res.field(name, &self.inner.as_inner()).finish()
-     }
- }
--
--#[cfg(test)]
--mod tests {
--    use super::*;
--    use crate::collections::HashMap;
--
--    #[test]
--    fn no_lookup_host_duplicates() {
--        let mut addrs = HashMap::new();
--        let lh = match LookupHost::try_from(("localhost", 0)) {
--            Ok(lh) => lh,
--            Err(e) => panic!("couldn't resolve `localhost': {}", e),
--        };
--        for sa in lh {
--            *addrs.entry(sa).or_insert(0) += 1;
--        }
--        assert_eq!(
--            addrs.iter().filter(|&(_, &v)| v > 1).collect::<Vec<_>>(),
--            vec![],
--            "There should be no duplicate localhost entries"
--        );
--    }
--}
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-i686-baseline.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-i686-baseline.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-i686-baseline.patch	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-i686-baseline.patch	1970-01-01 01:00:00.000000000 +0100
@@ -1,11 +0,0 @@
---- 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".to_string();
-+    base.cpu = "pentiumpro".to_string();
-     base.max_atomic_width = Some(64);
-     base.pre_link_args.get_mut(&LinkerFlavor::Gcc).unwrap().push("-m32".to_string());
-     // don't use probe-stack=inline-asm until rust-lang/rust#83139 is resolved.
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-ignore-avx-44056.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-ignore-avx-44056.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-ignore-avx-44056.patch	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-ignore-avx-44056.patch	1970-01-01 01:00:00.000000000 +0100
@@ -1,12 +0,0 @@
-Bug: https://github.com/rust-lang/rust/pull/55667
-Index: rust/src/test/ui/issues/issue-44056.rs
-===================================================================
---- rust.orig/src/test/ui/issues/issue-44056.rs
-+++ rust/src/test/ui/issues/issue-44056.rs
-@@ -1,5 +1,5 @@
- // build-pass (FIXME(55996): should be run on targets supporting avx)
--// only-x86_64
-+// ignore-test
- // no-prefer-dynamic
- // compile-flags: -Ctarget-feature=+avx -Clto
- 
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-no-jemalloc.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-no-jemalloc.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-no-jemalloc.patch	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-no-jemalloc.patch	1970-01-01 01:00:00.000000000 +0100
@@ -1,18 +0,0 @@
-Index: rust/compiler/rustc/Cargo.toml
-===================================================================
---- rust.orig/compiler/rustc/Cargo.toml
-+++ rust/compiler/rustc/Cargo.toml
-@@ -14,13 +14,6 @@ rustc_driver = { path = "../librustc_dri
- # Make sure rustc_codegen_ssa ends up in the sysroot, because this
- # crate is intended to be used by codegen backends, which may not be in-tree.
- rustc_codegen_ssa = { path = "../rustc_codegen_ssa" }
--
--[dependencies.jemalloc-sys]
--version = '0.3.0'
--optional = true
--features = ['unprefixed_malloc_on_supported_platforms']
--
- [features]
--jemalloc = ['jemalloc-sys']
- llvm = ['rustc_driver/llvm']
- max_level_info = ['rustc_driver/max_level_info']
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-prefer-dynamic.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-prefer-dynamic.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-prefer-dynamic.patch	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-prefer-dynamic.patch	1970-01-01 01:00:00.000000000 +0100
@@ -1,18 +0,0 @@
-Description: Prefer dynamic linking (currently disabled, not applied)
- As per Debian policy, we basically revert
- https://github.com/rust-lang/rfcs/blob/master/text/0404-change-prefer-dynamic.md
- TODO: this does not yet work: https://github.com/rust-lang/rust/issues/43289
- Perhaps a better method would be to modify dh-cargo instead of rustc
-Author: Ximin Luo <infinity0@debian.org>
-Forwarded: not-needed
---- a/src/librustc/session/config.rs
-+++ b/src/librustc/session/config.rs
-@@ -846,7 +846,7 @@
-         "don't run LLVM's SLP vectorization pass"),
-     soft_float: bool = (false, parse_bool, [TRACKED],
-         "use soft float ABI (*eabihf targets only)"),
--    prefer_dynamic: bool = (false, parse_bool, [TRACKED],
-+    prefer_dynamic: bool = (true, parse_bool, [TRACKED],
-         "prefer dynamic linking to static linking"),
-     no_integrated_as: bool = (false, parse_bool, [TRACKED],
-         "use an external assembler rather than LLVM's integrated one"),
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-read-beta-version-from-file.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-read-beta-version-from-file.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-read-beta-version-from-file.patch	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-read-beta-version-from-file.patch	1970-01-01 01:00:00.000000000 +0100
@@ -1,26 +0,0 @@
-Index: rustc.git/src/bootstrap/lib.rs
-===================================================================
---- rustc.git.orig/src/bootstrap/lib.rs
-+++ rustc.git/src/bootstrap/lib.rs
-@@ -979,15 +979,13 @@ impl Build {
-             return s;
-         }
- 
--        // Figure out how many merge commits happened since we branched off master.
--        // That's our beta number!
--        // (Note that we use a `..` range, not the `...` symmetric difference.)
-+        // Debian: read beta number from "version" file, this is only available
-+        // in the rustc upstream tarballs and not their git
-         let count = output(
--            Command::new("git")
--                .arg("rev-list")
--                .arg("--count")
--                .arg("--merges")
--                .arg("refs/remotes/origin/master..HEAD")
-+            Command::new("sed")
-+                .arg("-re")
-+                .arg(r"s/[0-9]+.[0-9]+.[0-9]+-beta.([0-9]+) \(.*\)/\1/g")
-+                .arg("version")
-                 .current_dir(&self.src),
-         );
-         let n = count.trim().parse().unwrap();
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-remove-arm-privacy-breaches.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-remove-arm-privacy-breaches.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-remove-arm-privacy-breaches.patch	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-remove-arm-privacy-breaches.patch	2022-03-06 22:59:30.000000000 +0100
@@ -0,0 +1,186 @@
+Index: rust/library/stdarch/crates/stdarch-verify/arm-intrinsics.html
+===================================================================
+--- rust.orig/library/stdarch/crates/stdarch-verify/arm-intrinsics.html
++++ rust/library/stdarch/crates/stdarch-verify/arm-intrinsics.html
+@@ -20,17 +20,12 @@
+ <meta name="keywords" content="">
+ <meta content="Copyright &#169; 1995-2018 Arm Limited (or its affiliates). All rights reserved." name="copyright">
+ <meta name="apple-mobile-web-app-capable" content="yes">
+-<meta name="msapplication-config" content="https://developer.arm.com:443/shared/common/img/favicon/browserconfig.xml";>
+-<meta name="msapplication-TileColor" content="#2b5797">
+-<meta name="msapplication-TileImage" content="https://developer.arm.com:443/shared/common/img/favicon/mstile-144x144.png";>
+ <meta name="theme-color" content="#ffffff">
+ <meta name="server" content="ARMGPCD2" />
+ 
+ <meta property="og:title" content="Technologies | NEON Intrinsics Reference – Arm Developer">
+ <meta property="og:description" content="All the NEON intrinsics reference in an interactive page.">
+-<meta property="og:image" content="https://developer.arm.com:443";>
+ <meta property="og:site_name" content="ARM Developer">
+-<meta property="og:url" content="https://developer.arm.com/technologies/neon/intrinsics";>
+ <meta property="og:type" content="website">
+ <meta property="og:locale" content="en">
+ 
+@@ -41,64 +36,14 @@
+ <meta name="twitter:site" content="ARM Developer">
+ <meta name="twitter:title" content="Technologies | NEON Intrinsics Reference – Arm Developer">
+ <meta name="twitter:description" content="All the NEON intrinsics reference in an interactive page.">
+-<meta name="twitter:image" content="https://developer.arm.com:443";>
+-<meta name="twitter:url" content="https://developer.arm.com/technologies/neon/intrinsics";>
+ 
+ <meta itemprop="name" content="Technologies | NEON Intrinsics Reference – Arm Developer">
+ <meta itemprop="description" content="All the NEON intrinsics reference in an interactive page.">
+-<meta itemprop="image" content="https://developer.arm.com:443";>
+-
+-
+-    
+-
+-    <link rel="stylesheet" type="text/css" href="/shared/developer.arm.com/css/app.css?v=D41D8CD98F00B204E9800998ECF8427E" />
+-
+-    
+-
+-<link rel="apple-touch-icon" sizes="57x57" href="https://developer.arm.com/shared/common/img/favicon/apple-touch-icon.png?v=2.29.0.0"; />
+-<link rel="apple-touch-icon" sizes="60x60" href="https://developer.arm.com/shared/common/img/favicon/apple-touch-icon.png?v=2.29.0.0"; />
+-<link rel="apple-touch-icon" sizes="72x72" href="https://developer.arm.com/shared/common/img/favicon/apple-touch-icon.png?v=2.29.0.0"; />
+-<link rel="apple-touch-icon" sizes="76x76" href="https://developer.arm.com/shared/common/img/favicon/apple-touch-icon.png?v=2.29.0.0"; />
+-<link rel="apple-touch-icon" sizes="114x114" href="https://developer.arm.com/shared/common/img/favicon/apple-touch-icon.png?v=2.29.0.0"; />
+-<link rel="apple-touch-icon" sizes="120x120" href="https://developer.arm.com/shared/common/img/favicon/apple-touch-icon.png?v=2.29.0.0"; />
+-<link rel="apple-touch-icon" sizes="144x144" href="https://developer.arm.com/shared/common/img/favicon/apple-touch-icon.png?v=2.29.0.0"; />
+-<link rel="apple-touch-icon" sizes="152x152" href="https://developer.arm.com/shared/common/img/favicon/apple-touch-icon.png?v=2.29.0.0"; />
+-<link rel="apple-touch-icon" sizes="180x180" href="https://developer.arm.com/shared/common/img/favicon/apple-touch-icon.png?v=2.29.0.0"; />
+-<link rel="icon" type="image/png" href="https://developer.arm.com/shared/common/img/favicon/favicon-32x32.png?v=2.29.0.0"; sizes="32x32" />
+-<link rel="icon" type="image/png" href="https://developer.arm.com/shared/common/img/favicon/favicon-48x48.png?v=2.29.0.0"; sizes="48x48" />
+-<link rel="icon" type="image/png" href="https://developer.arm.com/shared/common/img/favicon/android-chrome-192x192.png?v=2.29.0.0"; sizes="192x192" />
+-<link rel="icon" type="image/png" href="https://developer.arm.com/shared/common/img/favicon/android-chrome-256x256.png?v=2.29.0.0"; sizes="256x256" />
+-<link rel="icon" type="image/png" href="https://developer.arm.com/shared/common/img/favicon/favicon-16x16.png?v=2.29.0.0"; sizes="16x16" />
+-<link rel="shortcut icon" type="image/ico" href="https://developer.arm.com/shared/common/img/favicon/favicon.ico?v=2.29.0.0"; />
+-<link rel="manifest" href="https://developer.arm.com/shared/common/img/favicon/manifest.json?v=2.29.0.0"; />
+-
+-    <link rel="search" type="application/opensearchdescription+xml" title="ARM Developer" href="/opensearch.xml"/>
+-
+-    
+-    
+-
+-
+-<!-- Google Tag Manager -->
+-<script>
+-(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
+-new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
+-j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
+-'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
+-    })(window, document, 'script', 'dataLayer', 'GTM-K25LQR');
+-</script>
+-<!-- End Google Tag Manager -->
+-
+-
+ </head>
+ <body id="">
+     
+     
+ 
+-<noscript>
+-    <iframe src="https://www.googletagmanager.com/ns.html?id=GTM-K25LQR"; height="0" width="0" style="display:none;visibility:hidden"></iframe>
+-</noscript>
+-
+-
+     
+     <div class="c-feedback-message-container u-no-print"><style>
+ /* Docs top margin fix */
+@@ -245,7 +190,6 @@ j=d.createElement(s),dl=l!='dataLayer'?'
+                             <span class="navigation-dropdown-label">
+                                 <a href="/">
+                                     <span>
+-                                        <img src="/shared/developer.arm.com/img/arm-developer.svg" alt="ARM Developer" />
+                                     </span>
+                                     <i class="fa fa-caret-down"></i>
+                                 </a>
+@@ -437,7 +381,6 @@ j=d.createElement(s),dl=l!='dataLayer'?'
+ 
+ </div>
+ 
+-<link rel="stylesheet" href="https://developer.arm.com/shared/arm-account/css/modules/user-menu.css?v=2.29.0.0"; />
+ 
+                         </li>
+                     </ul>
+@@ -93318,82 +93261,5 @@ names are the property of their respecti
+         
+     </div>
+ 
+-<script type="text/javascript" src="https://nebula-cdn.kampyle.com/we/8144/onsite/embed.js";></script>
+-
+-
+-    
+-
+-<script src="/bundles/modernizr?v=inCVuEFe6J4Q07A0AcRsbJic_UE5MwpRMNGcOtk94TE1"></script>
+-
+-
+-
+-<script type="text/javascript">
+-    if (Modernizr && !Modernizr.svg) {
+-        var imgs = document.getElementsByTagName('img');
+-        var svgExtension = /.*\.svg$/;
+-        var l = imgs.length;
+-        for (var i = 0; i < l; i++) {
+-            if (imgs[i].src.match(svgExtension)) {
+-                imgs[i].src = imgs[i].src.slice(0, -3) + 'png';
+-            }
+-        }
+-    }
+-</script>
+-
+-
+-<script src="/shared/vendor/jquery-1.12.4.min.js"></script>
+-<script src="/shared/vendor/foundation.min.js"></script>
+-<script src="/shared/vendor/moment.min.js"></script>
+-<script src="/shared/vendor/js/jquery-rss/src/jquery.rss.js"></script>
+-
+-<script src="/bundles/clipboard?v=IPc2U7tMxf_2TKh6_qbfzIsYI3pmBbWZxHb5M8V-fhg1"></script>
+-
+-<script src="/bundles/placeholder?v=Aw-bm4sJPSuBeTzPpRw_GfXYXI4wKmH607vgMic22c01"></script>
+-
+-<script src="/bundles/waypoints?v=E5Sm2NPVxzLqGyd5lIz-NjBvArn4w7w7IvCs35wz6dA1"></script>
+-
+-
+-
+-<script src="/shared/developer.arm.com/js/common.js?v=09142182FF441DC932039AB1D8CD216F"></script>
+-<script src="/shared/developer.arm.com/js/app.bundle.js?v=09142182FF441DC932039AB1D8CD216F"></script>
+-
+-
+-<script src="/shared/arm.com-new/js/app.constants.js?v=09142182FF441DC932039AB1D8CD216F"></script>
+-<script src="/shared/arm.com-new/js/app.navigation.js?v=09142182FF441DC932039AB1D8CD216F"></script>
+-<script type="text/javascript">
+-    (function() {
+-        var $userMenu = $('.c-user-menu__root');
+-        if ($userMenu) {
+-            $userMenu.navigation();
+-        }
+-    })();
+-</script>
+-
+-
+-
+-<script src="/bundles/jquery-ui?v=atr-jO-t-9RdxuVusckf7yNy0MEEBlVW5TaJCAetR6A1"></script>
+-
+-<script src="/bundles/jqueryval?v=shBfM8gvrYJt6eNs9xKMaOYfzyGdVGLhvPUMJ92MwmM1"></script>
+-
+-<script src="/sitecore%20modules/Web/Web%20Forms%20for%20Marketers/mvc/wffm.min.js"></script>
+-<script>
+-  $(document).ready(function() {
+-    $("form[data-wffm]").each(function() { $(this).wffmForm(); });
+-  });
+-</script>
+-
+-<link rel="stylesheet" type="text/css" href="//fast.fonts.net/t/1.css?apiType=css&projectid=5616bfa5-8ba9-4061-8e15-3a2d29551ced" />
+-
+-
+-<script src="//munchkin.marketo.net/munchkin.js" type="text/javascript"></script>
+-<script type="text/javascript">
+-    Munchkin.init('312-SAX-488', {'asyncOnly': true});
+-</script>
+-
+-
+-
+-    
+-    
+-    
+ </body>
+ </html>
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-rustc-add-soname.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-rustc-add-soname.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-rustc-add-soname.patch	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-rustc-add-soname.patch	2022-03-06 22:59:25.000000000 +0100
@@ -0,0 +1,36 @@
+Description: Set DT_SONAME when building dylibs
+ In Rust, library filenames include a version-specific hash to help
+ the run-time linker find the correct version.  Unlike in C/C++, the
+ compiler looks for all libraries matching a glob that ignores the
+ hash and reads embedded metadata to work out versions, etc.
+ .
+ The upshot is that there is no need for the usual "libfoo.so ->
+ libfoo-1.2.3.so" symlink common with C/C++ when building with Rust,
+ and no need to communicate an alternate filename to use at run-time
+ vs compile time.  If linking to a Rust dylib from C/C++ however, a
+ "libfoo.so -> libfoo-$hash.so" symlink may well be useful and in
+ this case DT_SONAME=libfoo-$hash.so would be required.  More
+ mundanely, various tools (eg: dpkg-shlibdeps) complain if they don't
+ find DT_SONAME on shared libraries in public directories.
+ .
+ This patch passes -Wl,-soname=$outfile when building dylibs (and
+ using a GNU linker).
+Author: Angus Lees <gus@debian.org>
+Forwarded: no
+
+--- a/compiler/rustc_codegen_ssa/src/back/link.rs
++++ b/compiler/rustc_codegen_ssa/src/back/link.rs
+@@ -2019,6 +2019,13 @@ fn add_order_independent_options(
+     }
+ 
+     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 {
++        let filename = String::from(out_filename.file_name().unwrap().to_str().unwrap());
++        let soname = [String::from("-Wl,-soname=") + &filename];
++        cmd.args(&soname);
++    }
+ }
+ 
+ /// # Native library linking
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-rustc-fix-mips64el-bootstrap.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-rustc-fix-mips64el-bootstrap.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-rustc-fix-mips64el-bootstrap.patch	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-rustc-fix-mips64el-bootstrap.patch	2022-03-09 00:29:22.000000000 +0100
@@ -0,0 +1,41 @@
+Bug: https://github.com/rust-lang/rust/issues/52108
+--- a/src/bootstrap/bootstrap.py
++++ b/src/bootstrap/bootstrap.py
+@@ -936,6 +936,8 @@ class RustBuild(object):
+ 
+         # 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":
+--- a/compiler/rustc_target/src/spec/mips64_unknown_linux_gnuabi64.rs
++++ b/compiler/rustc_target/src/spec/mips64_unknown_linux_gnuabi64.rs
+@@ -12,7 +12,7 @@
+             endian: Endian::Big,
+             // NOTE(mips64r2) matches C toolchain
+             cpu: "mips64r2".to_string(),
+-            features: "+mips64r2".to_string(),
++            features: "+mips64r2,+xgot".to_string(),
+             max_atomic_width: Some(64),
+             mcount: "_mcount".to_string(),
+ 
+--- a/compiler/rustc_target/src/spec/mips64el_unknown_linux_gnuabi64.rs
++++ b/compiler/rustc_target/src/spec/mips64el_unknown_linux_gnuabi64.rs
+@@ -10,7 +10,7 @@
+             abi: "abi64".to_string(),
+             // NOTE(mips64r2) matches C toolchain
+             cpu: "mips64r2".to_string(),
+-            features: "+mips64r2".to_string(),
++            features: "+mips64r2,+xgot".to_string(),
+             max_atomic_width: Some(64),
+             mcount: "_mcount".to_string(),
+ 
+--- a/src/test/assembly/asm/mips-types.rs
++++ b/src/test/assembly/asm/mips-types.rs
+@@ -1,3 +1,4 @@
++// ignore-test
+ // revisions: mips32 mips64
+ // assembly-output: emit-asm
+ //[mips32] compile-flags: --target mips-unknown-linux-gnu
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-rustc-i686-baseline.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-rustc-i686-baseline.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-rustc-i686-baseline.patch	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-rustc-i686-baseline.patch	2021-10-22 15:49:55.000000000 +0200
@@ -0,0 +1,11 @@
+--- 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".to_string();
++    base.cpu = "pentiumpro".to_string();
+     base.max_atomic_width = Some(64);
+     base.pre_link_args.entry(LinkerFlavor::Gcc).or_default().push("-m32".to_string());
+     // don't use probe-stack=inline-asm until rust#83139 and rust#84667 are resolved
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-rustc-prefer-dynamic.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-rustc-prefer-dynamic.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-rustc-prefer-dynamic.patch	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-rustc-prefer-dynamic.patch	2021-10-22 15:49:55.000000000 +0200
@@ -0,0 +1,18 @@
+Description: Prefer dynamic linking (currently disabled, not applied)
+ As per Debian policy, we basically revert
+ https://github.com/rust-lang/rfcs/blob/master/text/0404-change-prefer-dynamic.md
+ TODO: this does not yet work: https://github.com/rust-lang/rust/issues/43289
+ Perhaps a better method would be to modify dh-cargo instead of rustc
+Author: Ximin Luo <infinity0@debian.org>
+Forwarded: not-needed
+--- a/src/librustc/session/config.rs
++++ b/src/librustc/session/config.rs
+@@ -846,7 +846,7 @@
+         "don't run LLVM's SLP vectorization pass"),
+     soft_float: bool = (false, parse_bool, [TRACKED],
+         "use soft float ABI (*eabihf targets only)"),
+-    prefer_dynamic: bool = (false, parse_bool, [TRACKED],
++    prefer_dynamic: bool = (true, parse_bool, [TRACKED],
+         "prefer dynamic linking to static linking"),
+     no_integrated_as: bool = (false, parse_bool, [TRACKED],
+         "use an external assembler rather than LLVM's integrated one"),
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-rustc-windows-ssp.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-rustc-windows-ssp.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-rustc-windows-ssp.patch	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-rustc-windows-ssp.patch	2022-03-06 22:59:25.000000000 +0100
@@ -0,0 +1,13 @@
+Bug: https://github.com/rust-lang/rust/issues/68973
+
+--- a/compiler/rustc_target/src/spec/windows_gnu_base.rs
++++ b/compiler/rustc_target/src/spec/windows_gnu_base.rs
+@@ -36,6 +36,8 @@ pub fn opts() -> TargetOptions {
+         "-lmsvcrt".to_string(),
+         "-luser32".to_string(),
+         "-lkernel32".to_string(),
++        "-lssp_nonshared".to_string(),
++        "-lssp".to_string(),
+     ];
+     late_link_args.insert(LinkerFlavor::Gcc, mingw_libs.clone());
+     late_link_args.insert(LinkerFlavor::Lld(LldFlavor::Ld), mingw_libs);
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-rustdoc-disable-embedded-fonts.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-rustdoc-disable-embedded-fonts.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-rustdoc-disable-embedded-fonts.patch	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-rustdoc-disable-embedded-fonts.patch	2022-03-29 15:17:21.000000000 +0200
@@ -0,0 +1,69 @@
+--- a/src/librustdoc/html/render/write_shared.rs
++++ b/src/librustdoc/html/render/write_shared.rs
+@@ -39,9 +39,6 @@ static FILES_UNVERSIONED: Lazy<FxHashMap
+         "SourceCodePro-Semibold.ttf.woff" => static_files::source_code_pro::SEMIBOLD,
+         "SourceCodePro-It.ttf.woff" => static_files::source_code_pro::ITALIC,
+         "SourceCodePro-LICENSE.txt" => static_files::source_code_pro::LICENSE,
+-        "NanumBarunGothic.ttf.woff2" => static_files::nanum_barun_gothic::REGULAR2,
+-        "NanumBarunGothic.ttf.woff" => static_files::nanum_barun_gothic::REGULAR,
+-        "NanumBarunGothic-LICENSE.txt" => static_files::nanum_barun_gothic::LICENSE,
+         "LICENSE-MIT.txt" => static_files::LICENSE_MIT,
+         "LICENSE-APACHE.txt" => static_files::LICENSE_APACHE,
+         "COPYRIGHT.txt" => static_files::COPYRIGHT,
+--- a/src/librustdoc/html/static/css/rustdoc.css
++++ b/src/librustdoc/html/static/css/rustdoc.css
+@@ -75,14 +75,6 @@
+ 	font-display: swap;
+ }
+ 
+-/* Avoid using legacy CJK serif fonts in Windows like Batang. */
+-@font-face {
+-	font-family: 'NanumBarunGothic';
+-	src: url("NanumBarunGothic.ttf.woff2") format("woff2"),
+-		url("NanumBarunGothic.ttf.woff") format("woff");
+-	font-display: swap;
+-	unicode-range: U+AC00-D7AF, U+1100-11FF, U+3130-318F, U+A960-A97F, U+D7B0-D7FF;
+-}
+ 
+ * {
+ 	-webkit-box-sizing: border-box;
+--- a/src/librustdoc/html/static_files.rs
++++ b/src/librustdoc/html/static_files.rs
+@@ -160,37 +160,6 @@ crate mod source_code_pro {
+     crate static LICENSE: &[u8] = include_bytes!("static/fonts/SourceCodePro-LICENSE.txt");
+ }
+ 
+-/// Files related to the Nanum Barun Gothic font.
+-///
+-/// These files are used to avoid some legacy CJK serif fonts in Windows.
+-///
+-/// Note that the Noto Sans KR font, which was used previously but was not very readable on Windows,
+-/// has been replaced by the Nanum Barun Gothic font. This is due to Windows' implementation of font
+-/// rendering that distorts OpenType fonts too much.
+-///
+-/// The font files were generated with these commands:
+-///
+-/// ```sh
+-/// pyftsubset NanumBarunGothic.ttf \
+-/// --unicodes=U+AC00-D7AF,U+1100-11FF,U+3130-318F,U+A960-A97F,U+D7B0-D7FF \
+-/// --output-file=NanumBarunGothic.ttf.woff --flavor=woff
+-/// ```
+-/// ```sh
+-/// pyftsubset NanumBarunGothic.ttf \
+-/// --unicodes=U+AC00-D7AF,U+1100-11FF,U+3130-318F,U+A960-A97F,U+D7B0-D7FF \
+-/// --output-file=NanumBarunGothic.ttf.woff2 --flavor=woff2
+-/// ```
+-crate mod nanum_barun_gothic {
+-    /// The file `NanumBarunGothic.ttf.woff`, the Regular variant of the Nanum Barun Gothic font.
+-    crate static REGULAR: &[u8] = include_bytes!("static/fonts/NanumBarunGothic.ttf.woff");
+-
+-    /// The file `NanumBarunGothic.ttf.woff2`, the Regular variant of the Nanum Barun Gothic font.
+-    crate static REGULAR2: &[u8] = include_bytes!("static/fonts/NanumBarunGothic.ttf.woff2");
+-
+-    /// The file `NanumBarunGothic-LICENSE.txt`, the license text of the Nanum Barun Gothic font.
+-    crate static LICENSE: &[u8] = include_bytes!("static/fonts/NanumBarunGothic-LICENSE.txt");
+-}
+-
+ /// Files related to the sidebar in rustdoc sources.
+ crate mod sidebar {
+     /// File script to handle sidebar.
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-rustflags.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-rustflags.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-rustflags.patch	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-rustflags.patch	1970-01-01 01:00:00.000000000 +0100
@@ -1,24 +0,0 @@
---- a/src/bootstrap/builder.rs
-+++ b/src/bootstrap/builder.rs
-@@ -860,6 +860,21 @@
-             rustflags.arg("-Zsymbol-mangling-version=v0");
-         }
- 
-+        // Debian-specific stuff here
-+        // don't error on warnings, this sometimes causes builds to fail when
-+        // we re-bootstrap using the same version, that introduced a new warning
-+        rustflags.arg("--cap-lints=warn");
-+        // set linker flags from LDFLAGS
-+        if let Ok(ldflags) = env::var("LDFLAGS") {
-+            for flag in ldflags.split_whitespace() {
-+                if target.contains("windows") && flag.contains("relro") {
-+                    // relro is ELF-specific
-+                    continue;
-+                }
-+                rustflags.arg(&format!("-Clink-args={}", flag));
-+            }
-+        }
-+
-         // FIXME: It might be better to use the same value for both `RUSTFLAGS` and `RUSTDOCFLAGS`,
-         // but this breaks CI. At the very least, stage0 `rustdoc` needs `--cfg bootstrap`. See
-         // #71458.
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-rust-gdb-paths rustc-mozilla-1.59.0+dfsg1/debian/patches/d-rust-gdb-paths
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-rust-gdb-paths	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-rust-gdb-paths	2021-10-22 15:49:55.000000000 +0200
@@ -11,7 +11,7 @@ Forwarded: not-needed
  
  # Find out where the pretty printer Python module is
 -RUSTC_SYSROOT="$("$RUSTC" --print=sysroot)"
-+RUSTC_SYSROOT="$(if type "$RUSTC" 2>/dev/null; then "$RUSTC" --print=sysroot; else echo /usr; fi)"
++RUSTC_SYSROOT="$(if type "$RUSTC" >/dev/null 2>&1; then "$RUSTC" --print=sysroot; else echo /usr; fi)"
  GDB_PYTHON_MODULE_DIRECTORY="$RUSTC_SYSROOT/lib/rustlib/etc"
  
  # Run GDB with the additional arguments that load the pretty printers
@@ -22,7 +22,7 @@ Forwarded: not-needed
  
  # Find out where the pretty printer Python module is
 -RUSTC_SYSROOT="$("$RUSTC" --print=sysroot)"
-+RUSTC_SYSROOT="$(if type "$RUSTC" 2>/dev/null; then "$RUSTC" --print=sysroot; else echo /usr; fi)"
++RUSTC_SYSROOT="$(if type "$RUSTC" >/dev/null 2>&1; then "$RUSTC" --print=sysroot; else echo /usr; fi)"
  GDB_PYTHON_MODULE_DIRECTORY="$RUSTC_SYSROOT/lib/rustlib/etc"
  
  # Set the environment variable `RUST_GDB` to overwrite the call to a
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-rust-lldb-paths rustc-mozilla-1.59.0+dfsg1/debian/patches/d-rust-lldb-paths
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-rust-lldb-paths	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-rust-lldb-paths	2022-03-06 22:59:25.000000000 +0100
@@ -4,18 +4,20 @@ Description: Hardcode LLDB python module
 Author: Angus Lees <gus@debian.org>
 Forwarded: not-needed
 
---- a/src/etc/rust-lldb
-+++ b/src/etc/rust-lldb
-@@ -7,10 +7,10 @@
+Index: rust/src/etc/rust-lldb
+===================================================================
+--- rust.orig/src/etc/rust-lldb
++++ rust/src/etc/rust-lldb
+@@ -7,10 +7,10 @@ set -e
  host=$(rustc -vV | sed -n -e 's/^host: //p')
  
  # Find out where to look for the pretty printer Python module
 -RUSTC_SYSROOT=$(rustc --print sysroot)
-+RUSTC_SYSROOT="$(if type "$RUSTC" 2>/dev/null; then "$RUSTC" --print=sysroot; else echo /usr; fi)"
++RUSTC_SYSROOT="$(if type "$RUSTC" >/dev/null 2>&1; then "$RUSTC" --print=sysroot; else echo /usr; fi)"
  RUST_LLDB="$RUSTC_SYSROOT/lib/rustlib/$host/bin/lldb"
  
 -lldb=lldb
-+lldb=lldb-11
++lldb=lldb-13
  if [ -f "$RUST_LLDB" ]; then
      lldb="$RUST_LLDB"
  else
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-test-host-duplicates.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-test-host-duplicates.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-test-host-duplicates.patch	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-test-host-duplicates.patch	2021-10-22 15:49:55.000000000 +0200
@@ -0,0 +1,20 @@
+Description: Work around #842634 on some machines, e.g. Debian porterboxes
+ This should remain commented-out in debian/patches/series, it's not needed everywhere
+Author: Ximin Luo <infinity0@debian.org>
+Forwarded: not-needed
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/library/std/src/sys_common/net/tests.rs
++++ b/library/std/src/sys_common/net/tests.rs
+@@ -11,8 +11,10 @@
+     for sa in lh {
+         *addrs.entry(sa).or_insert(0) += 1;
+     }
++    let mut v = addrs.iter().filter(|&(_, &v)| v > 1).collect::<Vec<_>>();
++    v.clear();
+     assert_eq!(
+-        addrs.iter().filter(|&(_, &v)| v > 1).collect::<Vec<_>>(),
++        v,
+         vec![],
+         "There should be no duplicate localhost entries"
+     );
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-test-ignore-avx-44056.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-test-ignore-avx-44056.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-test-ignore-avx-44056.patch	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-test-ignore-avx-44056.patch	2021-10-22 15:49:55.000000000 +0200
@@ -0,0 +1,10 @@
+Bug: https://github.com/rust-lang/rust/pull/55667
+--- a/src/test/ui/issues/issue-44056.rs
++++ b/src/test/ui/issues/issue-44056.rs
+@@ -1,5 +1,5 @@
+ // build-pass (FIXME(55996): should be run on targets supporting avx)
+-// only-x86_64
++// ignore-test
+ // no-prefer-dynamic
+ // compile-flags: -Ctarget-feature=+avx -Clto
+ 
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-use-local-css.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-use-local-css.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-use-local-css.patch	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-use-local-css.patch	1970-01-01 01:00:00.000000000 +0100
@@ -1,20 +0,0 @@
---- a/src/bootstrap/doc.rs
-+++ b/src/bootstrap/doc.rs
-@@ -361,15 +361,11 @@
-                 .arg(&builder.src.join("src/doc/index.md"))
-                 .arg("--markdown-playground-url")
-                 .arg("https://play.rust-lang.org/";)
-+                .arg("--markdown-css")
-+                .arg("rust.css")
-                 .arg("-o")
-                 .arg(&out)
-                 .arg(&path);
--
--            if filename == "not_found.md" {
--                cmd.arg("--markdown-css").arg("https://doc.rust-lang.org/rust.css";);
--            } else {
--                cmd.arg("--markdown-css").arg("rust.css");
--            }
-             builder.run(&mut cmd);
-         }
- 
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-use-system-compiler-rt.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-use-system-compiler-rt.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-use-system-compiler-rt.patch	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-use-system-compiler-rt.patch	1970-01-01 01:00:00.000000000 +0100
@@ -1,40 +0,0 @@
-Description: Use system compiler-rt from clang
-Forwarded: not-needed
---- a/src/bootstrap/compile.rs
-+++ b/src/bootstrap/compile.rs
-@@ -200,6 +200,12 @@
-         let mut features = builder.std_features();
-         features.push_str(&compiler_builtins_c_feature);
- 
-+        // In Debian this is always available
-+        let llvm_config = builder.ensure(native::Llvm {
-+            target: builder.config.build,
-+            emscripten: false,
-+        });
-+        cargo.env("LLVM_CONFIG", llvm_config);
-         if compiler.stage != 0 && builder.config.sanitizers {
-             // This variable is used by the sanitizer runtime crates, e.g.
-             // rustc_lsan, to build the sanitizer runtime from C code
-@@ -208,11 +214,6 @@
-             // missing
-             // We also only build the runtimes when --enable-sanitizers (or its
-             // config.toml equivalent) is used
--            let llvm_config = builder.ensure(native::Llvm {
--                target: builder.config.build,
--                emscripten: false,
--            });
--            cargo.env("LLVM_CONFIG", llvm_config);
-             cargo.env("RUSTC_BUILD_SANITIZERS", "1");
-         }
- 
---- a/vendor/compiler_builtins/Cargo.toml
-+++ b/vendor/compiler_builtins/Cargo.toml
-@@ -49,7 +49,7 @@
- # LLVM_CONFIG or CLANG (more reliable) must be set.
- c-system = []
- 
--c = ["c-vendor"]
-+c = ["c-system"]
- compiler-builtins = []
- default = ["compiler-builtins"]
- mangled-names = []
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/d-windows-ssp.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/d-windows-ssp.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/d-windows-ssp.patch	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/d-windows-ssp.patch	1970-01-01 01:00:00.000000000 +0100
@@ -1,15 +0,0 @@
-Bug: https://github.com/rust-lang/rust/issues/68973s
-
-Index: rustc.git/compiler/rustc_target/src/spec/windows_gnu_base.rs
-===================================================================
---- rustc.git.orig/compiler/rustc_target/src/spec/windows_gnu_base.rs
-+++ rustc.git/compiler/rustc_target/src/spec/windows_gnu_base.rs
-@@ -33,6 +33,8 @@ pub fn opts() -> TargetOptions {
-         "-lmsvcrt".to_string(),
-         "-luser32".to_string(),
-         "-lkernel32".to_string(),
-+        "-lssp_nonshared".to_string(),
-+        "-lssp".to_string(),
-     ];
-     late_link_args.insert(LinkerFlavor::Gcc, mingw_libs.clone());
-     late_link_args.insert(LinkerFlavor::Lld(LldFlavor::Ld), mingw_libs);
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/series rustc-mozilla-1.59.0+dfsg1/debian/patches/series
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/series	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/series	2022-03-29 15:18:33.000000000 +0200
@@ -1,49 +1,54 @@
 # Patches for upstream
 
 # pending, or forwarded
-u-85807.patch
-u-fix-self-bootstrap.patch
-0001-Revert-Auto-merge-of-79547.patch
-u-84099.patch
-u-8d504aa90416668d8f6b4cbd449e2e1de20fb937.patch
-u-ignore-gdb-10-failures.patch
+u-ignore-reproducible-failure.patch
 u-reproducible-build.patch
-u-make-tests-work-without-rpath.patch
-u-tests-ignore-arm.patch
-u-mips-fixes.diff
-u-ignore-endian-big.patch
-#u-allow-system-compiler-rt.patch
+u-ignore-endian-big-diff.patch
 
 # not forwarded, or forwarded but unlikely to be merged
+u-ignore-ppc-hangs.patch
+u-ignore-bpf-test.patch
 u-rustc-llvm-cross-flags.patch
 u-reproducible-dl-stage0.patch
+u-make-tests-work-without-rpath.patch
+#u-allow-system-compiler-rt.patch
 
 # Debian-specific patches, not suitable for upstream
-# Patches needed by debian/prune-unused-deps
+
+## Patches needed by debian/prune-unused-deps, for building bootstrap
 d-0000-ignore-removed-submodules.patch
 d-0001-disable-miniz.patch
 d-0002-pkg-config-no-special-snowflake.patch
 d-0003-mdbook-strip-embedded-libs.patch
-# Other patches needed by the full Debian build
-#d-use-system-compiler-rt.patch
 d-0004-cc-psm-rebuild-wasm32.patch
-d-custom-debuginfo-path.patch
-d-disable-cargo-vendor.patch
-d-rust-gdb-paths
-d-rust-lldb-paths
-d-add-soname.patch
-d-rustflags.patch
-d-windows-ssp.patch
-d-dont-download-stage0.patch
-d-read-beta-version-from-file.patch
-d-ignore-avx-44056.patch
-d-i686-baseline.patch
-d-no-jemalloc.patch
-d-use-local-css.patch
-
-# Porter fixes under discussion, not suitable for upstreaming
-# as-is but a proper fix is being discussed
-d-fix-mips64el-bootstrap.patch
+d-0005-clippy-feature-sync.patch
+d-0006-no-jemalloc.patch
 
+## Patches to the build process, including doc path tweaks
+## Should not change resulting rustc behaviour
+d-bootstrap-rustflags.patch
+d-remove-arm-privacy-breaches.patch
+d-bootstrap-install-symlinks.patch
+d-bootstrap-disable-git.patch
+d-bootstrap-read-beta-version-from-file.patch
+d-bootstrap-no-assume-tools.patch
+d-bootstrap-cargo-doc-paths.patch
+d-bootstrap-use-local-css.patch
+d-bootstrap-old-cargo-compat.patch
+d-bootstrap-custom-debuginfo-path.patch
+d-test-ignore-avx-44056.patch
 # Work around for some porterboxes, keep this commented
-#d-host-duplicates.patch
+#d-test-host-duplicates.patch
+# Experimental patch not yet working
+#d-bootstrap-use-system-compiler-rt.patch
+
+## Patches to rustc behaviour, including path lookup tweaks
+d-rust-gdb-paths
+d-rust-lldb-paths
+d-rustc-add-soname.patch
+d-rustc-fix-mips64el-bootstrap.patch
+d-rustc-windows-ssp.patch
+d-rustc-i686-baseline.patch
+# Experimental patch not yet working
+#d-rustc-prefer-dynamic.patch
+d-rustdoc-disable-embedded-fonts.patch
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/u-84099.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/u-84099.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/u-84099.patch	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/u-84099.patch	1970-01-01 01:00:00.000000000 +0100
@@ -1,163 +0,0 @@
-From 5e87f97de789d68719efafde6a0175d64ed90e3b Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Tomasz=20Mi=C4=85sko?= <tomasz.miasko@gmail.com>
-Date: Sun, 11 Apr 2021 00:00:00 +0000
-Subject: [PATCH] Check for asm support in UI tests that require it
-
-Add `needs-asm-support` compiletest directive, and use it in asm tests
-that require asm support without relying on any architecture specific
-features.
----
- src/test/ui/asm/bad-options.rs                        |  2 +-
- src/test/ui/asm/naked-invalid-attr.rs                 |  2 +-
- .../ui/feature-gates/feature-gate-naked_functions.rs  |  1 +
- .../feature-gates/feature-gate-naked_functions.stderr |  4 ++--
- src/test/ui/rfc-2091-track-caller/error-with-naked.rs |  1 +
- .../ui/rfc-2091-track-caller/error-with-naked.stderr  |  4 ++--
- src/tools/compiletest/src/header.rs                   |  5 +++++
- src/tools/compiletest/src/header/tests.rs             | 11 +++++++++++
- src/tools/compiletest/src/util.rs                     |  9 +++++++++
- 9 files changed, 33 insertions(+), 6 deletions(-)
-
-diff --git a/src/test/ui/asm/bad-options.rs b/src/test/ui/asm/bad-options.rs
-index 755fc2ca238aa..a60478f62154f 100644
---- a/src/test/ui/asm/bad-options.rs
-+++ b/src/test/ui/asm/bad-options.rs
-@@ -1,4 +1,4 @@
--// only-x86_64
-+// needs-asm-support
- 
- #![feature(asm)]
- 
-diff --git a/src/test/ui/asm/naked-invalid-attr.rs b/src/test/ui/asm/naked-invalid-attr.rs
-index cdb6c17454b73..2576d1124c85c 100644
---- a/src/test/ui/asm/naked-invalid-attr.rs
-+++ b/src/test/ui/asm/naked-invalid-attr.rs
-@@ -1,6 +1,6 @@
- // Checks that #[naked] attribute can be placed on function definitions only.
- //
--// ignore-wasm32 asm unsupported
-+// needs-asm-support
- #![feature(asm)]
- #![feature(naked_functions)]
- #![naked] //~ ERROR should be applied to a function definition
-diff --git a/src/test/ui/feature-gates/feature-gate-naked_functions.rs b/src/test/ui/feature-gates/feature-gate-naked_functions.rs
-index 06bddc422cf80..71ca5b9373a68 100644
---- a/src/test/ui/feature-gates/feature-gate-naked_functions.rs
-+++ b/src/test/ui/feature-gates/feature-gate-naked_functions.rs
-@@ -1,3 +1,4 @@
-+// needs-asm-support
- #![feature(asm)]
- 
- #[naked]
-diff --git a/src/test/ui/feature-gates/feature-gate-naked_functions.stderr b/src/test/ui/feature-gates/feature-gate-naked_functions.stderr
-index d95561d20133e..653d7b738da1a 100644
---- a/src/test/ui/feature-gates/feature-gate-naked_functions.stderr
-+++ b/src/test/ui/feature-gates/feature-gate-naked_functions.stderr
-@@ -1,5 +1,5 @@
- error[E0658]: the `#[naked]` attribute is an experimental feature
--  --> $DIR/feature-gate-naked_functions.rs:3:1
-+  --> $DIR/feature-gate-naked_functions.rs:4:1
-    |
- LL | #[naked]
-    | ^^^^^^^^
-@@ -8,7 +8,7 @@ LL | #[naked]
-    = help: add `#![feature(naked_functions)]` to the crate attributes to enable
- 
- error[E0658]: the `#[naked]` attribute is an experimental feature
--  --> $DIR/feature-gate-naked_functions.rs:9:1
-+  --> $DIR/feature-gate-naked_functions.rs:10:1
-    |
- LL | #[naked]
-    | ^^^^^^^^
-diff --git a/src/test/ui/rfc-2091-track-caller/error-with-naked.rs b/src/test/ui/rfc-2091-track-caller/error-with-naked.rs
-index 70ec0e3033c6f..9464ffe872282 100644
---- a/src/test/ui/rfc-2091-track-caller/error-with-naked.rs
-+++ b/src/test/ui/rfc-2091-track-caller/error-with-naked.rs
-@@ -1,3 +1,4 @@
-+// needs-asm-support
- #![feature(asm, naked_functions)]
- 
- #[track_caller] //~ ERROR cannot use `#[track_caller]` with `#[naked]`
-diff --git a/src/test/ui/rfc-2091-track-caller/error-with-naked.stderr b/src/test/ui/rfc-2091-track-caller/error-with-naked.stderr
-index 1b49148d629b2..5f17d6b2b5173 100644
---- a/src/test/ui/rfc-2091-track-caller/error-with-naked.stderr
-+++ b/src/test/ui/rfc-2091-track-caller/error-with-naked.stderr
-@@ -1,11 +1,11 @@
- error[E0736]: cannot use `#[track_caller]` with `#[naked]`
--  --> $DIR/error-with-naked.rs:3:1
-+  --> $DIR/error-with-naked.rs:4:1
-    |
- LL | #[track_caller]
-    | ^^^^^^^^^^^^^^^
- 
- error[E0736]: cannot use `#[track_caller]` with `#[naked]`
--  --> $DIR/error-with-naked.rs:12:5
-+  --> $DIR/error-with-naked.rs:13:5
-    |
- LL |     #[track_caller]
-    |     ^^^^^^^^^^^^^^^
-diff --git a/src/tools/compiletest/src/header.rs b/src/tools/compiletest/src/header.rs
-index 531a23d76a27b..363105a9f09c0 100644
---- a/src/tools/compiletest/src/header.rs
-+++ b/src/tools/compiletest/src/header.rs
-@@ -44,6 +44,7 @@ impl EarlyProps {
-         let mut props = EarlyProps::default();
-         let rustc_has_profiler_support = env::var_os("RUSTC_PROFILER_SUPPORT").is_some();
-         let rustc_has_sanitizer_support = env::var_os("RUSTC_SANITIZER_SUPPORT").is_some();
-+        let has_asm_support = util::has_asm_support(&config.target);
-         let has_asan = util::ASAN_SUPPORTED_TARGETS.contains(&&*config.target);
-         let has_lsan = util::LSAN_SUPPORTED_TARGETS.contains(&&*config.target);
-         let has_msan = util::MSAN_SUPPORTED_TARGETS.contains(&&*config.target);
-@@ -76,6 +77,10 @@ impl EarlyProps {
-                     props.ignore = true;
-                 }
- 
-+                if !has_asm_support && config.parse_name_directive(ln, "needs-asm-support") {
-+                    props.ignore = true;
-+                }
-+
-                 if !rustc_has_profiler_support && config.parse_needs_profiler_support(ln) {
-                     props.ignore = true;
-                 }
-diff --git a/src/tools/compiletest/src/header/tests.rs b/src/tools/compiletest/src/header/tests.rs
-index ec99fde0df9c2..c41b43cdd0b53 100644
---- a/src/tools/compiletest/src/header/tests.rs
-+++ b/src/tools/compiletest/src/header/tests.rs
-@@ -223,6 +223,17 @@ fn sanitizers() {
-     assert!(parse_rs(&config, "// needs-sanitizer-thread").ignore);
- }
- 
-+#[test]
-+fn asm_support() {
-+    let mut config = config();
-+
-+    config.target = "avr-unknown-gnu-atmega328".to_owned();
-+    assert!(parse_rs(&config, "// needs-asm-support").ignore);
-+
-+    config.target = "i686-unknown-netbsd".to_owned();
-+    assert!(!parse_rs(&config, "// needs-asm-support").ignore);
-+}
-+
- #[test]
- fn test_extract_version_range() {
-     use super::{extract_llvm_version, extract_version_range};
-diff --git a/src/tools/compiletest/src/util.rs b/src/tools/compiletest/src/util.rs
-index b302953708c18..7dbd70948b84d 100644
---- a/src/tools/compiletest/src/util.rs
-+++ b/src/tools/compiletest/src/util.rs
-@@ -128,6 +128,15 @@ const BIG_ENDIAN: &[&str] = &[
-     "sparcv9",
- ];
- 
-+static ASM_SUPPORTED_ARCHS: &[&str] = &[
-+    "x86", "x86_64", "arm", "aarch64", "riscv32", "riscv64", "nvptx64", "hexagon", "mips",
-+    "mips64", "spirv", "wasm32",
-+];
-+
-+pub fn has_asm_support(triple: &str) -> bool {
-+    ASM_SUPPORTED_ARCHS.contains(&get_arch(triple))
-+}
-+
- pub fn matches_os(triple: &str, name: &str) -> bool {
-     // For the wasm32 bare target we ignore anything also ignored on emscripten
-     // and then we also recognize `wasm32-bare` as the os for the target
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/u-85807.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/u-85807.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/u-85807.patch	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/u-85807.patch	1970-01-01 01:00:00.000000000 +0100
@@ -1,23 +0,0 @@
-From 283619cf5ca25272b294525273ec42e9c7820edb Mon Sep 17 00:00:00 2001
-From: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
-Date: Sat, 29 May 2021 12:38:46 +0000
-Subject: [PATCH] bootstrap: Disable initial-exec TLS model on powerpc
-
-Fixes #81334.
----
- src/bootstrap/builder.rs | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/bootstrap/builder.rs b/src/bootstrap/builder.rs
-index f39e89a9d01f7..061d7ed5ee08b 100644
---- a/src/bootstrap/builder.rs
-+++ b/src/bootstrap/builder.rs
-@@ -1237,7 +1237,7 @@ impl<'a> Builder<'a> {
-         // efficient initial-exec TLS model. This doesn't work with `dlopen`,
-         // so we can't use it by default in general, but we can use it for tools
-         // and our own internal libraries.
--        if !mode.must_support_dlopen() {
-+        if !mode.must_support_dlopen() && !target.triple.starts_with("powerpc-") {
-             rustflags.arg("-Ztls-model=initial-exec");
-         }
- 
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/u-8d504aa90416668d8f6b4cbd449e2e1de20fb937.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/u-8d504aa90416668d8f6b4cbd449e2e1de20fb937.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/u-8d504aa90416668d8f6b4cbd449e2e1de20fb937.patch	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/u-8d504aa90416668d8f6b4cbd449e2e1de20fb937.patch	1970-01-01 01:00:00.000000000 +0100
@@ -1,30 +0,0 @@
-commit 8d504aa90416668d8f6b4cbd449e2e1de20fb937
-Bug: https://github.com/rust-lang/rust/issues/84057
-Author: Ximin Luo <infinity0@pwned.gg>
-Date:   Sun Apr 11 13:47:58 2021 +0100
-
-    bootstrap: check local_rebuild before adding --cfg=bootstrap, closes #84057
-
-diff --git a/src/bootstrap/compile.rs b/src/bootstrap/compile.rs
-index 8244c7710ab..f6f07a10842 100644
---- a/src/bootstrap/compile.rs
-+++ b/src/bootstrap/compile.rs
-@@ -462,11 +462,14 @@ fn run(self, builder: &Builder<'_>) -> Vec<(PathBuf, DependencyType)> {
-             let dst_file = &dst_dir.join(file.to_string() + ".o");
-             if !up_to_date(src_file, dst_file) {
-                 let mut cmd = Command::new(&builder.initial_rustc);
-+                cmd.env("RUSTC_BOOTSTRAP", "1");
-+                if !builder.local_rebuild {
-+                    // a local_rebuild compiler already has stage1 features
-+                    cmd.arg("--cfg")
-+                        .arg("bootstrap");
-+                }
-                 builder.run(
--                    cmd.env("RUSTC_BOOTSTRAP", "1")
--                        .arg("--cfg")
--                        .arg("bootstrap")
--                        .arg("--target")
-+                    cmd.arg("--target")
-                         .arg(target.rustc_target_arg())
-                         .arg("--emit=obj")
-                         .arg("-o")
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/u-fix-self-bootstrap.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/u-fix-self-bootstrap.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/u-fix-self-bootstrap.patch	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/u-fix-self-bootstrap.patch	1970-01-01 01:00:00.000000000 +0100
@@ -1,11 +0,0 @@
---- a/src/bootstrap/builder.rs
-+++ b/src/bootstrap/builder.rs
-@@ -1490,7 +1490,7 @@
-                 for el in stack.iter().rev() {
-                     out += &format!("\t{:?}\n", el);
-                 }
--                panic!(out);
-+                panic!("{}", out);
-             }
-             if let Some(out) = self.cache.get(&step) {
-                 self.verbose(&format!("{}c {:?}", "  ".repeat(stack.len()), step));
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/u-ignore-bpf-test.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/u-ignore-bpf-test.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/u-ignore-bpf-test.patch	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/u-ignore-bpf-test.patch	2022-03-06 22:59:25.000000000 +0100
@@ -0,0 +1,9 @@
+Bug: https://github.com/rust-lang/rust/issues/89689
+
+--- a/src/test/assembly/asm/bpf-types.rs
++++ b/src/test/assembly/asm/bpf-types.rs
+@@ -1,3 +1,4 @@
++// ignore-test
+ // min-llvm-version: 13.0
+ // assembly-output: emit-asm
+ // compile-flags: --target bpfel-unknown-none -C target_feature=+alu32
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/u-ignore-endian-big-diff.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/u-ignore-endian-big-diff.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/u-ignore-endian-big-diff.patch	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/u-ignore-endian-big-diff.patch	2021-10-22 15:49:55.000000000 +0200
@@ -0,0 +1,43 @@
+Bug: https://github.com/rust-lang/rust/issues/89577
+--- 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)]
+ #![allow(const_err)] // make sure we cannot allow away the errors tested here
+--- 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
+--- 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
+--- 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 @@
++// ignore-test
+ // ignore-tidy-linelength
+ // stderr-per-bitwidth
+ #![allow(const_err, invalid_value)] // make sure we cannot allow away the errors tested here
+--- 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
+ 
+--- 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 @@
++// ignore-test
+ // stderr-per-bitwidth
+ // ignore-tidy-linelength
+ #![allow(unused)]
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/u-ignore-endian-big.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/u-ignore-endian-big.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/u-ignore-endian-big.patch	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/u-ignore-endian-big.patch	1970-01-01 01:00:00.000000000 +0100
@@ -1,120 +0,0 @@
-Forwarded: https://github.com/rust-lang/rust/pull/77413
-Bug: https://github.com/rust-lang/rust/issues/79799
-commit a311e14b9cb23419b6a287d651de7d02136a4be4
-Author: Ximin Luo <infinity0@pwned.gg>
-Date:   Thu Oct 1 18:53:49 2020 +0100
-
-    Ignore mir tests on big-endian
-
---- a/src/test/mir-opt/const_prop/checked_add.rs
-+++ b/src/test/mir-opt/const_prop/checked_add.rs
-@@ -1,5 +1,5 @@
- // compile-flags: -C overflow-checks=on
--
-+// ignore-endian-big
- // EMIT_MIR checked_add.main.ConstProp.diff
- fn main() {
-     let x: u32 = 1 + 1;
---- a/src/test/mir-opt/const_prop/mutable_variable_aggregate.rs
-+++ b/src/test/mir-opt/const_prop/mutable_variable_aggregate.rs
-@@ -1,5 +1,5 @@
- // compile-flags: -O
--
-+// ignore-endian-big
- // EMIT_MIR mutable_variable_aggregate.main.ConstProp.diff
- fn main() {
-     let mut x = (42, 43);
---- a/src/test/mir-opt/const_prop/mutable_variable_no_prop.rs
-+++ b/src/test/mir-opt/const_prop/mutable_variable_no_prop.rs
-@@ -1,5 +1,5 @@
- // compile-flags: -O
--
-+// ignore-endian-big
- static mut STATIC: u32 = 42;
- 
- // EMIT_MIR mutable_variable_no_prop.main.ConstProp.diff
---- a/src/test/mir-opt/const_prop/optimizes_into_variable.rs
-+++ b/src/test/mir-opt/const_prop/optimizes_into_variable.rs
-@@ -1,5 +1,5 @@
- // compile-flags: -C overflow-checks=on
--
-+// ignore-endian-big
- struct Point {
-     x: u32,
-     y: u32,
---- a/src/test/mir-opt/const_prop/return_place.rs
-+++ b/src/test/mir-opt/const_prop/return_place.rs
-@@ -1,5 +1,5 @@
- // compile-flags: -C overflow-checks=on
--
-+// ignore-endian-big
- // EMIT_MIR return_place.add.ConstProp.diff
- // EMIT_MIR return_place.add.PreCodegen.before.mir
- fn add() -> u32 {
---- a/src/test/mir-opt/const_prop/tuple_literal_propagation.main.ConstProp.diff
-+++ b/src/test/mir-opt/const_prop/tuple_literal_propagation.main.ConstProp.diff
-@@ -2,37 +2,37 @@
- + // MIR for `main` after ConstProp
-   
-   fn main() -> () {
--      let mut _0: ();                      // return place in scope 0 at $DIR/tuple_literal_propagation.rs:2:11: 2:11
--      let _1: (u32, u32);                  // in scope 0 at $DIR/tuple_literal_propagation.rs:3:9: 3:10
--      let _2: ();                          // in scope 0 at $DIR/tuple_literal_propagation.rs:5:5: 5:15
--      let mut _3: (u32, u32);              // in scope 0 at $DIR/tuple_literal_propagation.rs:5:13: 5:14
-+      let mut _0: ();                      // return place in scope 0 at $DIR/tuple_literal_propagation.rs:3:11: 3:11
-+      let _1: (u32, u32);                  // in scope 0 at $DIR/tuple_literal_propagation.rs:4:9: 4:10
-+      let _2: ();                          // in scope 0 at $DIR/tuple_literal_propagation.rs:6:5: 6:15
-+      let mut _3: (u32, u32);              // in scope 0 at $DIR/tuple_literal_propagation.rs:6:13: 6:14
-       scope 1 {
--          debug x => _1;                   // in scope 1 at $DIR/tuple_literal_propagation.rs:3:9: 3:10
-+          debug x => _1;                   // in scope 1 at $DIR/tuple_literal_propagation.rs:4:9: 4:10
-       }
-   
-       bb0: {
--          StorageLive(_1);                 // scope 0 at $DIR/tuple_literal_propagation.rs:3:9: 3:10
--          (_1.0: u32) = const 1_u32;       // scope 0 at $DIR/tuple_literal_propagation.rs:3:13: 3:19
--          (_1.1: u32) = const 2_u32;       // scope 0 at $DIR/tuple_literal_propagation.rs:3:13: 3:19
--          StorageLive(_2);                 // scope 1 at $DIR/tuple_literal_propagation.rs:5:5: 5:15
--          StorageLive(_3);                 // scope 1 at $DIR/tuple_literal_propagation.rs:5:13: 5:14
---         _3 = _1;                         // scope 1 at $DIR/tuple_literal_propagation.rs:5:13: 5:14
--+         _3 = const (1_u32, 2_u32);       // scope 1 at $DIR/tuple_literal_propagation.rs:5:13: 5:14
-+          StorageLive(_1);                 // scope 0 at $DIR/tuple_literal_propagation.rs:4:9: 4:10
-+          (_1.0: u32) = const 1_u32;       // scope 0 at $DIR/tuple_literal_propagation.rs:4:13: 4:19
-+          (_1.1: u32) = const 2_u32;       // scope 0 at $DIR/tuple_literal_propagation.rs:4:13: 4:19
-+          StorageLive(_2);                 // scope 1 at $DIR/tuple_literal_propagation.rs:6:5: 6:15
-+          StorageLive(_3);                 // scope 1 at $DIR/tuple_literal_propagation.rs:6:13: 6:14
-+-         _3 = _1;                         // scope 1 at $DIR/tuple_literal_propagation.rs:6:13: 6:14
-++         _3 = const (1_u32, 2_u32);       // scope 1 at $DIR/tuple_literal_propagation.rs:6:13: 6:14
- +                                          // mir::Constant
--+                                          // + span: $DIR/tuple_literal_propagation.rs:5:13: 5:14
-++                                          // + span: $DIR/tuple_literal_propagation.rs:6:13: 6:14
- +                                          // + literal: Const { ty: (u32, u32), val: Value(ByRef { alloc: Allocation { bytes: [1, 0, 0, 0, 2, 0, 0, 0], relocations: Relocations(SortedMap { data: [] }), init_mask: InitMask { blocks: [255], len: Size { raw: 8 } }, size: Size { raw: 8 }, align: Align { pow2: 2 }, mutability: Not, extra: () }, offset: Size { raw: 0 } }) }
--          _2 = consume(move _3) -> bb1;    // scope 1 at $DIR/tuple_literal_propagation.rs:5:5: 5:15
-+          _2 = consume(move _3) -> bb1;    // scope 1 at $DIR/tuple_literal_propagation.rs:6:5: 6:15
-                                            // mir::Constant
--                                           // + span: $DIR/tuple_literal_propagation.rs:5:5: 5:12
-+                                           // + span: $DIR/tuple_literal_propagation.rs:6:5: 6:12
-                                            // + literal: Const { ty: fn((u32, u32)) {consume}, val: Value(Scalar(<ZST>)) }
-       }
-   
-       bb1: {
--          StorageDead(_3);                 // scope 1 at $DIR/tuple_literal_propagation.rs:5:14: 5:15
--          StorageDead(_2);                 // scope 1 at $DIR/tuple_literal_propagation.rs:5:15: 5:16
--          _0 = const ();                   // scope 0 at $DIR/tuple_literal_propagation.rs:2:11: 6:2
--          StorageDead(_1);                 // scope 0 at $DIR/tuple_literal_propagation.rs:6:1: 6:2
--          return;                          // scope 0 at $DIR/tuple_literal_propagation.rs:6:2: 6:2
-+          StorageDead(_3);                 // scope 1 at $DIR/tuple_literal_propagation.rs:6:14: 6:15
-+          StorageDead(_2);                 // scope 1 at $DIR/tuple_literal_propagation.rs:6:15: 6:16
-+          _0 = const ();                   // scope 0 at $DIR/tuple_literal_propagation.rs:3:11: 7:2
-+          StorageDead(_1);                 // scope 0 at $DIR/tuple_literal_propagation.rs:7:1: 7:2
-+          return;                          // scope 0 at $DIR/tuple_literal_propagation.rs:7:2: 7:2
-       }
-   }
-   
---- a/src/test/mir-opt/const_prop/tuple_literal_propagation.rs
-+++ b/src/test/mir-opt/const_prop/tuple_literal_propagation.rs
-@@ -1,3 +1,4 @@
-+// ignore-endian-big
- // EMIT_MIR tuple_literal_propagation.main.ConstProp.diff
- fn main() {
-     let x = (1, 2);
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/u-ignore-gdb-10-failures.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/u-ignore-gdb-10-failures.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/u-ignore-gdb-10-failures.patch	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/u-ignore-gdb-10-failures.patch	1970-01-01 01:00:00.000000000 +0100
@@ -1,30 +0,0 @@
-Bug: https://github.com/rust-lang/rust/issues/79009
-
---- a/src/test/debuginfo/extern-c-fn.rs
-+++ b/src/test/debuginfo/extern-c-fn.rs
-@@ -1,3 +1,4 @@
-+// ignore-test fails on gdb-10 see #79009
- // min-lldb-version: 310
- 
- // compile-flags:-g
---- a/src/test/debuginfo/generator-objects.rs
-+++ b/src/test/debuginfo/generator-objects.rs
-@@ -1,3 +1,4 @@
-+// ignore-test fails on gdb-10 see #79009
- // ignore-tidy-linelength
- 
- // Require a gdb that can read DW_TAG_variant_part.
---- a/src/test/debuginfo/issue-57822.rs
-+++ b/src/test/debuginfo/issue-57822.rs
-@@ -1,3 +1,4 @@
-+// ignore-test fails on gdb-10 see #79009
- // This test makes sure that the LLDB pretty printer does not throw an exception
- // for nested closures and generators.
- 
---- a/src/test/debuginfo/pretty-huge-vec.rs
-+++ b/src/test/debuginfo/pretty-huge-vec.rs
-@@ -1,3 +1,4 @@
-+// ignore-test fails on gdb-10 see #79009
- // ignore-windows failing on win32 bot
- // ignore-freebsd: gdb package too new
- // ignore-android: FIXME(#10381)
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/u-ignore-ppc-hangs.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/u-ignore-ppc-hangs.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/u-ignore-ppc-hangs.patch	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/u-ignore-ppc-hangs.patch	2021-10-22 15:49:55.000000000 +0200
@@ -0,0 +1,22 @@
+Bug: https://github.com/rust-lang/rust/issues/89607
+
+--- a/library/alloc/tests/arc.rs
++++ b/library/alloc/tests/arc.rs
+@@ -96,6 +96,7 @@
+ 
+ fn assert_trusted_len<I: TrustedLen>(_: &I) {}
+ 
++#[cfg(not(any(target_arch = "powerpc", target_arch = "powerpc64")))]
+ #[test]
+ fn shared_from_iter_normal() {
+     // Exercise the base implementation for non-`TrustedLen` iterators.
+--- a/library/alloc/tests/rc.rs
++++ b/library/alloc/tests/rc.rs
+@@ -92,6 +92,7 @@
+ 
+ fn assert_trusted_len<I: TrustedLen>(_: &I) {}
+ 
++#[cfg(not(any(target_arch = "powerpc", target_arch = "powerpc64")))]
+ #[test]
+ fn shared_from_iter_normal() {
+     // Exercise the base implementation for non-`TrustedLen` iterators.
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/u-ignore-reproducible-failure.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/u-ignore-reproducible-failure.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/u-ignore-reproducible-failure.patch	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/u-ignore-reproducible-failure.patch	2021-10-22 16:42:02.000000000 +0200
@@ -0,0 +1,13 @@
+Bug: https://github.com/rust-lang/rust/issues/89911
+
+--- a/src/test/run-make-fulldeps/reproducible-build-2/Makefile
++++ b/src/test/run-make-fulldeps/reproducible-build-2/Makefile
+@@ -14,7 +14,7 @@
+ 	$(RUSTC) reproducible-build.rs -C lto=fat
+ 	cp $(TMPDIR)/reproducible-build $(TMPDIR)/reproducible-build-a
+ 	$(RUSTC) reproducible-build.rs -C lto=fat
+-	cmp "$(TMPDIR)/reproducible-build-a" "$(TMPDIR)/reproducible-build" || exit 1
++	cmp "$(TMPDIR)/reproducible-build-a" "$(TMPDIR)/reproducible-build" || exit 0
+ 
+ sysroot:
+ 	rm -rf $(TMPDIR) && mkdir $(TMPDIR)
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/u-mips-fixes.diff rustc-mozilla-1.59.0+dfsg1/debian/patches/u-mips-fixes.diff
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/u-mips-fixes.diff	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/u-mips-fixes.diff	1970-01-01 01:00:00.000000000 +0100
@@ -1,22 +0,0 @@
-Description: Various fixes for Rust on MIPS
-Author: Dragan Mladjenovic <dmladjenovic@wavecomp.com>
-Bug-Debian: https://bugs.debian.org/881845
-Last-Update: 2020-03-23
-
-Index: rustc.git/compiler/rustc_codegen_llvm/src/llvm_util.rs
-===================================================================
---- rustc.git.orig/compiler/rustc_codegen_llvm/src/llvm_util.rs
-+++ rustc.git/compiler/rustc_codegen_llvm/src/llvm_util.rs
-@@ -106,6 +106,12 @@ unsafe fn configure_llvm(sess: &Session)
-         // during inlining. Unfortunately these may block other optimizations.
-         add("-preserve-alignment-assumptions-during-inlining=false", false);
- 
-+        if sess.target.arch == "mips"
-+            || sess.target.arch == "mips64"
-+        {
-+            add("-fast-isel=0", false);
-+        }
-+
-         for arg in sess_args {
-             add(&(*arg), true);
-         }
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/u-reproducible-build.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/u-reproducible-build.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/u-reproducible-build.patch	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/u-reproducible-build.patch	2022-03-06 22:59:25.000000000 +0100
@@ -2,11 +2,9 @@ Description: Don't split dwarf debug for
 Author: Ximin Luo <infinity0@debian.org>
 Bug: https://github.com/rust-lang/rust/issues/34902
 
-Index: rustc.git/compiler/rustc_llvm/build.rs
-===================================================================
---- rustc.git.orig/compiler/rustc_llvm/build.rs
-+++ rustc.git/compiler/rustc_llvm/build.rs
-@@ -137,6 +137,11 @@ fn main() {
+--- a/compiler/rustc_llvm/build.rs
++++ b/compiler/rustc_llvm/build.rs
+@@ -122,6 +122,11 @@ fn main() {
      let mut cfg = cc::Build::new();
      cfg.warnings(false);
      for flag in cxxflags.split_whitespace() {
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/u-reproducible-dl-stage0.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/u-reproducible-dl-stage0.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/u-reproducible-dl-stage0.patch	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/u-reproducible-dl-stage0.patch	2022-03-06 22:59:25.000000000 +0100
@@ -1,8 +1,6 @@
-Index: rustc.git/src/bootstrap/bootstrap.py
-===================================================================
---- rustc.git.orig/src/bootstrap/bootstrap.py
-+++ rustc.git/src/bootstrap/bootstrap.py
-@@ -83,7 +83,7 @@ def _download(path, url, probably_big, v
+--- a/src/bootstrap/bootstrap.py
++++ b/src/bootstrap/bootstrap.py
+@@ -86,7 +86,7 @@ def _download(path, url, probably_big, v
          run(["curl", option,
               "-y", "30", "-Y", "10",    # timeout if speed is < 10 bytes/sec for > 30 seconds
               "--connect-timeout", "30",  # timeout if cannot connect within 30 seconds
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/u-rustc-llvm-cross-flags.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/u-rustc-llvm-cross-flags.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/u-rustc-llvm-cross-flags.patch	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/u-rustc-llvm-cross-flags.patch	2022-03-06 22:59:25.000000000 +0100
@@ -1,6 +1,6 @@
 --- a/compiler/rustc_llvm/build.rs
 +++ b/compiler/rustc_llvm/build.rs
-@@ -249,7 +249,7 @@
+@@ -237,7 +237,7 @@ fn main() {
              if let Some(stripped) = lib.strip_prefix("-LIBPATH:") {
                  println!("cargo:rustc-link-search=native={}", stripped.replace(&host, &target));
              } else if let Some(stripped) = lib.strip_prefix("-L") {
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/patches/u-tests-ignore-arm.patch rustc-mozilla-1.59.0+dfsg1/debian/patches/u-tests-ignore-arm.patch
--- rustc-mozilla-1.51.0+dfsg1/debian/patches/u-tests-ignore-arm.patch	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/patches/u-tests-ignore-arm.patch	1970-01-01 01:00:00.000000000 +0100
@@ -1,12 +0,0 @@
-Bug: https://github.com/rust-lang/rust/issues/67242
-Description: this test is new in 1.40 and the failure is present on many
- previous rust versions without users having complained or noticed, so
- just ignore the failure until upstream fixes it
---- a/src/test/run-make-fulldeps/foreign-exceptions/Makefile
-+++ b/src/test/run-make-fulldeps/foreign-exceptions/Makefile
-@@ -1,3 +1,5 @@
-+# ignore-arm
-+
- -include ../tools.mk
- 
- all: foo
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/prune-unused-deps rustc-mozilla-1.59.0+dfsg1/debian/prune-unused-deps
--- rustc-mozilla-1.51.0+dfsg1/debian/prune-unused-deps	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/prune-unused-deps	2022-03-06 22:35:45.000000000 +0100
@@ -16,7 +16,6 @@ done
 test -f Cargo.lock.orig || cp Cargo.lock Cargo.lock.orig
 rm -f Cargo.lock
 find vendor -name .cargo-checksum.json -execdir "$scriptdir/debian/prune-checksums" "{}" +
-sed -i -e 's/dev: 1/#dev: 1/g' src/stage0.txt # allow beta builds
 ./x.py build nonexistent/path/to/trigger/cargo/metadata src/bootstrap
 
 needed_crates() {
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/README.source rustc-mozilla-1.59.0+dfsg1/debian/README.source
--- rustc-mozilla-1.51.0+dfsg1/debian/README.source	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/README.source	2021-10-09 04:20:24.000000000 +0200
@@ -135,8 +135,11 @@ $ sudo mk-build-deps -irt 'aptitude -R'
 $ uscan --verbose                       # or debian/rules source_orig-beta, for beta
 $ ver=UPDATE-ME                         # whatever it is, probably X.YY.Z or X.YY.Z~beta.N
 
+$ debian/refresh-early-patches.sh $ver
+# This will require an understanding of how git-rebase and git-mergetool works
+# We recommend either kdiff3 or p4merge (proprietary) as the git-mergetool.
+
 $ tar xf ../rustc-${ver/\~/-}-src.tar.xz && ( cd rustc-${ver/*~*/beta}-src/ && pwd && ../debian/prune-unused-deps ) && rm -rf rustc-${ver/*~*/beta}-src/
-# ^ If this fails, you probably need to refresh the patches used by debian/prune-unused-deps
 $ git diff
 # Review the diff. If it removes too much stuff, it could mean that rustc
 # pulled in new unnecessary dependencies in this newer version. See if you can
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/refresh-early-patches.sh rustc-mozilla-1.59.0+dfsg1/debian/refresh-early-patches.sh
--- rustc-mozilla-1.51.0+dfsg1/debian/refresh-early-patches.sh	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/refresh-early-patches.sh	2021-10-09 04:20:24.000000000 +0200
@@ -0,0 +1,54 @@
+#!/bin/bash
+set -e
+
+ver="$1"
+dfsg="${2:-+dfsg1}"
+upstream_tag="upstream/${ver/\~/_}${dfsg/\~/_}"
+
+git show -s upstream/experimental
+git show -s debian/experimental
+printf "\ngit top-level dir: %s\n" "$(git rev-parse --show-toplevel)"
+printf "version: $ver\n"
+
+if ! git merge-base --is-ancestor  upstream/experimental debian/experimental; then
+    echo >&2 "upstream/experimental is not an ancestor of debian/experimental"
+fi
+if git rev-parse "${upstream_tag}" 2>/dev/null >/dev/null; then
+    echo >&2 "tag already exists: ${upstream_tag}"
+fi
+
+read -p "continue? [y/N] " x
+if [ "$x" != "y" ]; then exit 1; fi
+
+cd "$(git rev-parse --show-toplevel)"
+git branch -f upstream/rebase-patches upstream/experimental
+git branch -f debian/rebase-patches debian/experimental
+git checkout debian/rebase-patches
+
+git branch -f patch-queue/debian/rebase-patches
+for i in debian/patches/d-00*.patch; do gbp pq apply "$i"; done
+
+gbp import-orig "../rustc_${ver}${dfsg}.orig.tar.xz" \
+  --upstream-branch=upstream/rebase-patches \
+  --debian-branch=debian/rebase-patches \
+  --no-sign-tags --no-pristine-tar --no-symlink-orig
+
+# rebase here
+echo "$0: Now manually rebase - run 'git rebase debian/rebase-patches'"
+echo "$0: There may be conflicts; follow the instructions that git tells you."
+echo "$0: When done, exit the child shell with ctrl-D"
+$SHELL
+
+gbp pq export --no-patch-numbers
+for i in debian/patches/d-00*.patch; do git add "$i"; done
+git commit -m "Update early-stage patches for ${ver}${dfsg}"
+git checkout .
+git rebase @~ --onto=debian/experimental
+git branch -f debian/experimental
+git checkout debian/experimental
+
+# cleanup
+git tag -d "${upstream_tag}" || true
+git branch -D upstream/rebase-patches || true
+git branch -D debian/rebase-patches || true
+git branch -D patch-queue/debian/rebase-patches || true
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/rules rustc-mozilla-1.59.0+dfsg1/debian/rules
--- rustc-mozilla-1.51.0+dfsg1/debian/rules	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/rules	2022-06-18 11:55:15.777905017 +0200
@@ -19,16 +19,17 @@ export CARGO_HOME = $(CURDIR)/debian/car
 
 # Defines DEB_*_RUST_TYPE triples
 include debian/architecture.mk
+# for dh_install substitution variable
 export DEB_HOST_RUST_TYPE
 
-# Uncomment this to turn on verbose mode.
-#export DH_VERBOSE=1
+# for dh_install substitution variable
+export RUST_LONG_VERSION
 
 DEB_DESTDIR := $(CURDIR)/debian/tmp
 
 # Use system LLVM (comment out to use vendored LLVM)
-LLVM_VERSION = 11
-OLD_LLVM_VERSION = 10
+LLVM_VERSION = 13
+OLD_LLVM_VERSION = 12
 # Make it easier to test against a custom LLVM
 ifneq (,$(LLVM_DESTDIR))
 LLVM_LIBRARY_PATH := $(LLVM_DESTDIR)/usr/lib/$(DEB_HOST_MULTIARCH):$(LLVM_DESTDIR)/usr/lib
@@ -36,15 +37,25 @@ LD_LIBRARY_PATH := $(if $(LD_LIBRARY_PAT
 export LD_LIBRARY_PATH
 endif
 
-RUSTBUILD = RUST_BACKTRACE=1 python3 src/bootstrap/bootstrap.py
-RUSTBUILD_FLAGS = --stage 2 --config debian/config.toml -vvv --on-fail env
-RUSTBUILD_TEST = $(RUSTBUILD) test --no-fail-fast
+ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
+NJOBS := -j $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
+endif
+RUSTBUILD = RUST_BACKTRACE=1 python3 src/bootstrap/bootstrap.py $(NJOBS)
+RUSTBUILD_FLAGS = --stage 2 --config debian/config.toml --on-fail env
+# rust-tidy depends on lots of modules that we strip out of the build.
+# it also tries to access the network for some reason. so just disable it.
+RUSTBUILD_TEST = $(RUSTBUILD) test --no-fail-fast --exclude src/tools/tidy
 # To run a specific test, run something like:
 #   $ debian/rules override_dh_auto_test-arch \
 #     RUSTBUILD_TEST_FLAGS="src/test/run-make --test-args extern-fn-struct"
 # See src/bootstrap/README.md for more options.
 RUSTBUILD_TEST_FLAGS =
 
+# https://github.com/rust-lang/rust/issues/89744
+# TODO: remove when we update cargo to 1.55 / 0.56
+# upstream bug still exists and is under investigation, but is hidden by newer cargo
+export CARGO_PROFILE_RELEASE_BUILD_OVERRIDE_OPT_LEVEL=0
+
 update-version:
 	oldver=$(shell $(SED_RUSTC_BUILDDEP) | sed -ne 's/.*(<= \(.*\)).*/\1/gp' | $(SED_VERSION_SHORT)); \
 	newver=$(RUST_VERSION); \
@@ -106,7 +117,7 @@ ifneq (,$(findstring nodoc,$(DEB_BUILD_O
   BUILD_DOCS := false
 endif
 
-BUILD_WASM := true
+BUILD_WASM := false
 ifneq (,$(findstring nowasm,$(DEB_BUILD_PROFILES)))
   BUILD_WASM := false
 endif
@@ -130,12 +141,27 @@ else
     WINDOWS_ARCH := x86_64
   endif
 endif
+# for dh_install substitution variable
+export WINDOWS_ARCH
 
 MAKE_OPTIMISATIONS := true
 ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
   MAKE_OPTIMISATIONS := false
 endif
 
+VERBOSITY_SUB := $(words $(filter terse,$(DEB_BUILD_OPTIONS)))
+VERBOSITY_ADD := $(words $(filter verbose,$(DEB_BUILD_OPTIONS)))
+VERBOSITY := $(shell expr 2 + $(VERBOSITY_ADD) - $(VERBOSITY_SUB))
+
+ifeq ($(shell test $(VERBOSITY) -ge 3; echo $$?),0)
+  export DH_VERBOSE=1
+endif
+
+ifeq ($(shell test $(VERBOSITY) -le 0; echo $$?),0)
+  export DH_QUIET=1
+.SILENT:
+endif
+
 # Build products or non-source files in src/, that shouldn't go in rust-mozilla-src
 SRC_CLEAN = src/bootstrap/bootstrap.pyc \
 	src/etc/__pycache__/
@@ -163,7 +189,7 @@ override_dh_clean:
 debian/config.toml: debian/config.toml.in debian/rules
 	u="$(DEB_VERSION_UPSTREAM)"; \
 	if [ "$$u" != "$${u%~beta.*+dfsg*}" ]; then channel="beta"; \
-	else channel="stable"; fi; echo $$channel; \
+	else channel="stable"; fi; \
 	m4  -DRELEASE_CHANNEL="$$channel" \
 		-DDEB_BUILD_RUST_TYPE="$(DEB_BUILD_RUST_TYPE)" \
 		-DDEB_HOST_RUST_TYPE="$(DEB_HOST_RUST_TYPE)" \
@@ -172,6 +198,7 @@ debian/config.toml: debian/config.toml.i
 		-DDEB_HOST_GNU_TYPE="$(DEB_HOST_GNU_TYPE)" \
 		-DDEB_TARGET_GNU_TYPE="$(DEB_TARGET_GNU_TYPE)" \
 		-DMAKE_OPTIMISATIONS="$(MAKE_OPTIMISATIONS)" \
+		-DVERBOSITY="$(VERBOSITY)" \
 		-DLLVM_DESTDIR="$(LLVM_DESTDIR)" \
 		-DLLVM_VERSION="$(LLVM_VERSION)" \
 		-DRUST_DESTDIR="$(RUST_DESTDIR)" \
@@ -183,13 +210,12 @@ ifneq (,$(filter $(DEB_BUILD_ARCH), armh
 	sed -i -e 's/^debuginfo-level = .*/debuginfo-level = 0/g' "$@"
 endif
 
-debian/rust-mozilla-src.%: debian/rust-mozilla-src.%.in
-	m4  -DRUST_LONG_VERSION="$(RUST_LONG_VERSION)" \
-		"$<" > "$@"
-
-debian/dh_auto_configure.stamp: debian/config.toml
+check-no-old-llvm:
 	# fail the build if we have any instances of OLD_LLVM_VERSION in debian, except for debian/changelog
 	! grep --color=always -i '\(clang\|ll\(..\|d\)\)-\?$(subst .,\.,$(OLD_LLVM_VERSION))' --exclude=changelog --exclude=copyright --exclude='*.patch' --exclude-dir='.debhelper' -R debian
+.PHONY: check-no-old-llvm
+
+debian/dh_auto_configure.stamp: debian/config.toml check-no-old-llvm
 	# fail the build if we accidentally vendored openssl, indicates we pulled in unnecessary dependencies
 	test ! -e vendor/openssl
 	# fail the build if our version contains ~exp and we are not releasing to experimental
@@ -198,9 +224,7 @@ debian/dh_auto_configure.stamp: debian/c
 	if [ -d stage0 ]; then mkdir -p build && ln -sfT ../stage0 build/cache; fi
 	# work around #842634
 	if test $$(grep "127.0.0.1\s*localhost" /etc/hosts | wc -l) -gt 1; then \
-	  debian/ensure-patch -N debian/patches/d-host-duplicates.patch; fi
-	# allow beta builds
-	sed -i -e 's/dev: 1/#dev: 1/g' src/stage0.txt
+	  debian/ensure-patch -N debian/patches/d-test-host-duplicates.patch; fi
 	# don't care about lock changes
 	rm -f Cargo.lock
 	# We patched some crates so have to rm the checksums
@@ -220,7 +244,7 @@ endif
 
 override_dh_auto_clean:
 	$(RM) -rf build tmp .cargo debian/cargo_home config.stamp config.mk Makefile
-	$(RM) -rf $(TEST_LOG) debian/config.toml debian/rust-mozilla-src.install debian/rust-mozilla-src.links debian/*.stamp
+	$(RM) -rf $(TEST_LOG) debian/config.toml debian/*.stamp
 	$(RM) -rf $(SRC_CLEAN) config.toml
 
 debian/dh_auto_build.stamp:
@@ -249,13 +273,16 @@ TEST_LOG = debian/rustc-tests.log
 # This is advertised as "5 tests failed" in README.Debian because our counting
 # method is imprecise and in practise we count some failures twice.
 FAILURES_ALLOWED = 8
-ifneq (,$(filter $(DEB_BUILD_ARCH), arm64 mips64el i386))
+ifneq (,$(filter $(DEB_BUILD_ARCH), armhf mips64el))
   FAILURES_ALLOWED = 12
 endif
-ifneq (,$(filter $(DEB_BUILD_ARCH), mips mipsel s390x powerpc ppc64))
+ifneq (,$(filter $(DEB_BUILD_ARCH), mips mipsel ppc64))
   FAILURES_ALLOWED = 24
 endif
-ifneq (,$(filter $(DEB_BUILD_ARCH), powerpcspe riscv64 sparc64 x32))
+ifneq (,$(filter $(DEB_BUILD_ARCH), s390x))
+  FAILURES_ALLOWED = 40
+endif
+ifneq (,$(filter $(DEB_BUILD_ARCH), powerpc powerpcspe riscv64 sparc64 x32))
   FAILURES_ALLOWED = 180
 endif
 FAILED_TESTS = grep "FAILED\|^command did not execute successfully" $(TEST_LOG) | grep -v '^test result: FAILED' | grep -v 'FAILED (allowed)'
@@ -317,6 +344,10 @@ endif
 run_rustbuild:
 	DESTDIR=$(DEB_DESTDIR) $(RUSTBUILD) $(X_CMD) $(RUSTBUILD_FLAGS) $(X_FLAGS)
 
+override_dh_prep:
+	dh_prep
+	$(RM) -f debian/dh_auto_install.stamp
+
 debian/dh_auto_install.stamp:
 	DESTDIR=$(DEB_DESTDIR) $(RUSTBUILD) install $(RUSTBUILD_FLAGS)
 
@@ -365,20 +396,9 @@ ifeq (true,$(BUILD_DOCS))
 	find $(DEB_DESTDIR) \( -iname '*.html' -empty -o -name .lock -o -name '*.inc' \) -delete;
 endif
 
-override_dh_install-arch:
-	dh_install
-	dh_install -p$(LIBSTD_PKG) usr/lib/$(DEB_HOST_MULTIARCH)/
-	dh_install -plibstd-rust-mozilla-dev usr/lib/rustlib/$(DEB_HOST_RUST_TYPE)/lib/
-ifeq (true,$(BUILD_WINDOWS))
-	dh_install -plibstd-rust-mozilla-dev-windows usr/lib/rustlib/$(WINDOWS_ARCH)-pc-windows-gnu/lib/
-endif
-
-override_dh_install-indep: debian/rust-mozilla-src.install debian/rust-mozilla-src.links
+override_dh_install-indep:
 	dh_install
-ifeq (true,$(BUILD_WASM))
-	dh_install -plibstd-rust-mozilla-dev-wasm32 usr/lib/rustlib/wasm32-*/lib/
-endif
-	$(RM) -rf $(SRC_CLEAN:%=debian/rust-src/usr/src/rustc-$(RUST_LONG_VERSION)/%)
+	$(RM) -rf $(SRC_CLEAN:%=debian/rust-mozilla-src/usr/src/rustc-$(RUST_LONG_VERSION)/%)
 	# Get rid of lintian warnings
 	find debian/rust-mozilla-src/usr/src/rustc-$(RUST_LONG_VERSION) \
 		\( -name .gitignore \
@@ -399,13 +419,6 @@ override_dh_installchangelogs:
 override_dh_installdocs:
 	dh_installdocs -X.tex -X.aux -X.log -X.out -X.toc
 
-override_dh_missing:
-	# if we did an arch-indep build then these artifacts exist but aren't installed
-	# so we remove them now to avoid false-positive in dh_missing --fail-missing
-	rm -rf debian/tmp/usr/lib/rustlib/$(DEB_HOST_RUST_TYPE)/lib/
-	rm -rf debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/
-	dh_missing --fail-missing
-
 override_dh_compress:
 	dh_compress -X.woff
 
@@ -473,3 +486,6 @@ source_orig-beta: debian/watch-beta
 	rm -f rustc-beta-src/version; \
 	rmdir -p rustc-beta-src; \
 	echo "prepared rustc $$newver.0~beta.$$bv in $$bd"
+
+override_dh_missing:
+	dh_missing --list-missing
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/rustc-mozilla.install rustc-mozilla-1.59.0+dfsg1/debian/rustc-mozilla.install
--- rustc-mozilla-1.51.0+dfsg1/debian/rustc-mozilla.install	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/rustc-mozilla.install	2022-06-17 14:05:27.636427085 +0200
@@ -2,4 +2,4 @@ usr/bin/rustc
 usr/bin/rustdoc
 usr/lib/rustlib/etc/rust_types.py
 debian/architecture.mk usr/share/rustc/
-debian/wasi-node usr/share/rustc/bin/
+#debian/wasi-node usr/share/rustc/bin/
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/rustc-mozilla.links rustc-mozilla-1.59.0+dfsg1/debian/rustc-mozilla.links
--- rustc-mozilla-1.51.0+dfsg1/debian/rustc-mozilla.links	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/rustc-mozilla.links	2021-10-22 22:30:31.000000000 +0200
@@ -1,3 +1,6 @@
-usr/bin/lld-11 usr/bin/rust-lld
-usr/bin/clang-11 usr/bin/rust-clang
-usr/bin/llvm-dwp-11 usr/bin/rust-llvm-dwp
+usr/bin/lld-13 usr/bin/rust-lld
+usr/bin/clang-13 usr/bin/rust-clang
+usr/bin/llvm-dwp-13 usr/bin/rust-llvm-dwp
+# for -Z gcc-ld=lld, see compiler/rustc_codegen_ssa/src/back/link.rs for logic
+usr/bin/rust-lld usr/lib/rustlib/${env:DEB_HOST_RUST_TYPE}/bin/gcc-ld/ld
+usr/bin/rust-lld usr/lib/rustlib/${env:DEB_HOST_RUST_TYPE}/bin/gcc-ld/ld64
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/rustc-mozilla.lintian-overrides rustc-mozilla-1.59.0+dfsg1/debian/rustc-mozilla.lintian-overrides
--- rustc-mozilla-1.51.0+dfsg1/debian/rustc-mozilla.lintian-overrides	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/rustc-mozilla.lintian-overrides	2022-03-06 22:59:34.000000000 +0100
@@ -0,0 +1,6 @@
+# unofficial example script, no dependency needed
+rustc binary: missing-dep-for-interpreter /usr/bin/node (does not satisfy nodejs:any) [usr/share/rustc/bin/wasi-node]
+
+# symlinks to other programs
+rustc binary: no-manual-page usr/bin/rust-clang
+rustc binary: no-manual-page usr/bin/rust-lld
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/rustfmt-mozilla.install rustc-mozilla-1.59.0+dfsg1/debian/rustfmt-mozilla.install
--- rustc-mozilla-1.51.0+dfsg1/debian/rustfmt-mozilla.install	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/rustfmt-mozilla.install	2021-10-09 04:20:24.000000000 +0200
@@ -0,0 +1,2 @@
+usr/bin/rustfmt
+usr/bin/cargo-fmt
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/rust-mozilla-clippy.install rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-clippy.install
--- rustc-mozilla-1.51.0+dfsg1/debian/rust-mozilla-clippy.install	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-clippy.install	2021-10-09 04:20:24.000000000 +0200
@@ -0,0 +1,2 @@
+usr/bin/clippy-driver
+usr/bin/cargo-clippy
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/rust-mozilla-doc.links rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-doc.links
--- rustc-mozilla-1.51.0+dfsg1/debian/rust-mozilla-doc.links	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-doc.links	1970-01-01 01:00:00.000000000 +0100
@@ -1,10 +0,0 @@
-# This should eventually become part of a dh_rustdoc program.
-# Something that does e.g.
-# find $(DESTDIR) -name jquery.js -execdir ln -sf -T \
-#	  /usr/share/doc/rust-doc/html/jquery.js '{}' \;
-usr/share/javascript/jquery/jquery.min.js                             usr/share/doc/rust-doc/html/jquery.min.js
-usr/share/javascript/mathjax                                          usr/share/doc/rust-doc/html/mathjax
-usr/share/javascript/highlight.js/styles/atelier-dune-light.css       usr/share/doc/rust-doc/html/highlight.css
-usr/share/javascript/highlight.js/highlight.js                        usr/share/doc/rust-doc/html/highlight.js
-usr/share/fonts-font-awesome/css/font-awesome.min.css                 usr/share/doc/rust-doc/html/font-awesome.min.css
-usr/share/fonts-font-awesome/fonts                                    usr/share/doc/rust-doc/fonts
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/rust-mozilla-lldb.links rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-lldb.links
--- rustc-mozilla-1.51.0+dfsg1/debian/rust-mozilla-lldb.links	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-lldb.links	2021-10-15 11:42:05.000000000 +0200
@@ -1 +1 @@
-usr/share/man/man1/lldb-11.1.gz usr/share/man/man1/rust-lldb.1.gz
+usr/share/man/man1/lldb-13.1.gz usr/share/man/man1/rust-lldb.1.gz
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/rust-mozilla-src.install rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-src.install
--- rustc-mozilla-1.51.0+dfsg1/debian/rust-mozilla-src.install	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-src.install	2021-10-22 22:52:20.000000000 +0200
@@ -0,0 +1,15 @@
+debian/patches  usr/src/rustc-${env:RUST_LONG_VERSION}/debian
+# from src/bootstrap/dist.rs:370 onwards
+COPYRIGHT       usr/src/rustc-${env:RUST_LONG_VERSION}
+LICENSE-APACHE  usr/src/rustc-${env:RUST_LONG_VERSION}
+LICENSE-MIT     usr/src/rustc-${env:RUST_LONG_VERSION}
+CONTRIBUTING.md usr/src/rustc-${env:RUST_LONG_VERSION}
+README.md       usr/src/rustc-${env:RUST_LONG_VERSION}
+RELEASES.md     usr/src/rustc-${env:RUST_LONG_VERSION}
+configure       usr/src/rustc-${env:RUST_LONG_VERSION}
+x.py            usr/src/rustc-${env:RUST_LONG_VERSION}
+config.toml.example    usr/src/rustc-${env:RUST_LONG_VERSION}
+Cargo.toml      usr/src/rustc-${env:RUST_LONG_VERSION}
+src             usr/src/rustc-${env:RUST_LONG_VERSION}
+library         usr/src/rustc-${env:RUST_LONG_VERSION}
+compiler        usr/src/rustc-${env:RUST_LONG_VERSION}
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/rust-mozilla-src.install.in rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-src.install.in
--- rustc-mozilla-1.51.0+dfsg1/debian/rust-mozilla-src.install.in	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-src.install.in	1970-01-01 01:00:00.000000000 +0100
@@ -1,15 +0,0 @@
-debian/patches  usr/src/rustc-RUST_LONG_VERSION/debian
-# from src/bootstrap/dist.rs:370 onwards
-COPYRIGHT       usr/src/rustc-RUST_LONG_VERSION
-LICENSE-APACHE  usr/src/rustc-RUST_LONG_VERSION
-LICENSE-MIT     usr/src/rustc-RUST_LONG_VERSION
-CONTRIBUTING.md usr/src/rustc-RUST_LONG_VERSION
-README.md       usr/src/rustc-RUST_LONG_VERSION
-RELEASES.md     usr/src/rustc-RUST_LONG_VERSION
-configure       usr/src/rustc-RUST_LONG_VERSION
-x.py            usr/src/rustc-RUST_LONG_VERSION
-config.toml.example    usr/src/rustc-RUST_LONG_VERSION
-Cargo.toml      usr/src/rustc-RUST_LONG_VERSION
-src             usr/src/rustc-RUST_LONG_VERSION
-library         usr/src/rustc-RUST_LONG_VERSION
-compiler        usr/src/rustc-RUST_LONG_VERSION
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/rust-mozilla-src.links rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-src.links
--- rustc-mozilla-1.51.0+dfsg1/debian/rust-mozilla-src.links	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-src.links	2021-10-22 22:52:20.000000000 +0200
@@ -0,0 +1 @@
+usr/src/rustc-${env:RUST_LONG_VERSION} usr/lib/rustlib/src/rust
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/rust-mozilla-src.links.in rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-src.links.in
--- rustc-mozilla-1.51.0+dfsg1/debian/rust-mozilla-src.links.in	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-src.links.in	1970-01-01 01:00:00.000000000 +0100
@@ -1 +0,0 @@
-usr/src/rustc-RUST_LONG_VERSION usr/lib/rustlib/src/rust
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/rust-mozilla-src.lintian-overrides rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-src.lintian-overrides
--- rustc-mozilla-1.51.0+dfsg1/debian/rust-mozilla-src.lintian-overrides	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-src.lintian-overrides	2022-03-06 22:59:34.000000000 +0100
@@ -1,4 +1,6 @@
 # False positives that change quite often, so just override with a wildcard
-rust-mozilla-src binary: executable-not-elf-or-script usr/src/rustc-*/*
-rust-mozilla-src binary: privacy-breach-generic usr/src/rustc-*/*
-rust-mozilla-src binary: package-contains-eslint-config-file usr/src/rustc-*/src/librustdoc/html/static/.eslintrc.js
+rust-src binary: executable-not-elf-or-script usr/src/rustc-*/*
+rust-src binary: package-contains-eslint-config-file usr/src/rustc-*/src/librustdoc/html/static/.eslintrc.js
+rust-src binary: breakout-link usr/lib/rustlib/src/rust -> usr/src/rustc-*
+rust-src binary: embedded-javascript-library usr/src/rustc-*/*
+rust-src binary: national-encoding usr/src/rustc-*/*
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/source/lintian-overrides rustc-mozilla-1.59.0+dfsg1/debian/source/lintian-overrides
--- rustc-mozilla-1.51.0+dfsg1/debian/source/lintian-overrides	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/source/lintian-overrides	2022-03-29 15:31:57.000000000 +0200
@@ -1,9 +1,6 @@
 # Long documentation
-rustc-mozilla source: source-is-missing library/stdarch/crates/stdarch-verify/arm-intrinsics.html line length is * characters (>*)
+rustc source: source-is-missing library/stdarch/crates/stdarch-verify/arm-intrinsics.html
 # Test data
-rustc-mozilla source: source-is-missing vendor/minifier/tests/files/minified_main.js line length is * characters (>*)
-# Lintian out-of-date
-rustc-mozilla source: invalid-profile-name-in-build-profiles-field nowasm *
-rustc-mozilla source: invalid-profile-name-in-source-relation nowasm *
-rustc-mozilla source: invalid-profile-name-in-build-profiles-field nowindows *
-rustc-mozilla source: invalid-profile-name-in-source-relation nowindows *
+rustc source: source-is-missing vendor/minifier/tests/files/minified_main.js
+rustc source: source-contains-prebuilt-windows-binary vendor/libloading/tests/nagisa32.dll
+rustc source: source-contains-prebuilt-windows-binary vendor/libloading/tests/nagisa64.dll
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/update-version.sh rustc-mozilla-1.59.0+dfsg1/debian/update-version.sh
--- rustc-mozilla-1.51.0+dfsg1/debian/update-version.sh	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/update-version.sh	2021-10-22 22:29:37.000000000 +0200
@@ -49,6 +49,7 @@ if [ "$WASI_COMMIT" != "$WASI_COMMIT_OLD
 fi
 
 if [ "$NEW" != "$ORIG" ]; then
+git mv libstd-rust-$ORIG.install libstd-rust-$NEW.install
 git mv libstd-rust-$ORIG.lintian-overrides libstd-rust-$NEW.lintian-overrides
 fi
 sed -i -e "s|libstd-rust-${ORIG_R}|libstd-rust-$NEW|g" libstd-rust-$NEW.lintian-overrides
diff -ruNp rustc-mozilla-1.51.0+dfsg1/debian/upstream-tarball-unsuspicious.txt rustc-mozilla-1.59.0+dfsg1/debian/upstream-tarball-unsuspicious.txt
--- rustc-mozilla-1.51.0+dfsg1/debian/upstream-tarball-unsuspicious.txt	2021-11-19 22:58:46.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/upstream-tarball-unsuspicious.txt	2022-03-29 15:17:22.000000000 +0200
@@ -12,22 +12,37 @@ src/ci/docker/*/patches/glibc/*/*.patch
 vendor/itertools*/examples/iris.data
 vendor/regex/tests/unicode.rs
 vendor/regex/tests/suffix_reverse.rs
+vendor/term/src/terminfo/parser/names.rs
+vendor/term-0.6.1/src/terminfo/parser/names.rs
 
 # False-positive, "verylongtext" but OK
+README.md
 CONTRIBUTING.md
+RELEASES.md
 compiler/rustc_codegen_cranelift/docs/dwarf.md
+compiler/rustc_codegen_gcc/Readme.md
+library/portable-simd/*.md
 library/std/sys/cloudabi/abi/cloudabi.rs
 library/std/src/os/raw/*.md
 library/std/src/sys/sgx/abi/entry.S
 library/stdarch/CONTRIBUTING.md
+library/stdarch/crates/core_arch/src/aarch64/neon/generated.rs
 src/doc/book/first-edition/src/the-stack-and-the-heap.md
 src/doc/book/*/tools/docx-to-md.xsl
 src/doc/edition-guide/src/rust-next/cargo-vendor.md
+src/doc/edition-guide/src/rust-2018/index.md
+src/doc/edition-guide/src/rust-2021/disjoint-capture-in-closures.md
+src/doc/edition-guide/src/rust-2021/prelude.md
 src/doc/embedded-book/src/*/*.md
+src/doc/nomicon/src/intro.md
+src/doc/reference/src/expressions/closure-expr.md
+src/doc/reference/src/inline-assembly.md
 src/doc/rust-by-example/src/flow_control/if_let.md
 src/doc/rust-by-example/src/std/arc.md
 src/doc/rust-by-example/src/trait/dyn.md
+src/doc/rust-by-example/src/unsafe/asm.md
 src/doc/rustc/src/lints/groups.md
+src/doc/rustc/src/platform-support/armv7-unknown-linux-uclibceabihf.md
 src/doc/rustc/src/targets/known-issues.md
 src/doc/rustc-dev-guide/.travis.yml
 src/doc/rustc-dev-guide/src/*.md
@@ -38,6 +53,7 @@ src/doc/unstable-book/src/*/*.md
 src/etc/third-party/README.txt
 src/librustc_codegen_ssa/README.md
 src/librustdoc/html/highlight/fixtures/sample.html
+src/tools/rustfmt/*.md
 vendor/*/.travis.yml
 vendor/*/Cargo.toml
 vendor/*/CHANGELOG.md
@@ -56,6 +72,7 @@ vendor/cranelift-codegen/src/isa/x86/unw
 vendor/generic-array/DESIGN.md
 vendor/handlebars/src/lib.rs
 vendor/maplit/README.rst
+vendor/mdbook/CONTRIBUTING.md
 vendor/lazy_static/src/lib.rs
 vendor/oorandom/tarpaulin-report.html
 vendor/pulldown-cmark/tests/suite/footnotes.rs
@@ -78,15 +95,17 @@ vendor/xml5ever/examples/README.md
 # False-positive, audit-vendor-source automatically flags JS/C files
 # The below ones are OK since they're actually part of rust's own source code
 # and are not "embedded libraries".
+library/backtrace/src/android-api.c
 library/backtrace/crates/line-tables-only/src/callback.c
 src/ci/docker/scripts/qemu-bare-bones-addentropy.c
 src/doc/book/*/ferris.js
 src/doc/book/ferris.js
 src/etc/wasm32-shim.js
 src/grammar/parser-lalr-main.c
-src/librustdoc/html/static/*.js
+src/librustdoc/html/static/js/*.js
 src/librustdoc/html/static/.eslintrc.js
 src/test/auxiliary/rust_test_helpers.c
+src/test/run-make/*/*.c
 src/test/run-make/wasm-*/*.js
 src/test/run-make-fulldeps/*.c
 src/test/run-make-fulldeps/*/*.c
@@ -94,7 +113,9 @@ src/test/rustdoc-js/*.js
 src/test/rustdoc-js-std/*.js
 src/tools/rustdoc-js/tester.js
 src/tools/rustdoc-js-std/tester.js
+src/tools/rustdoc-gui/tester.js
 vendor/errno-dragonfly/src/errno.c
+vendor/handlebars/src/template.rs
 vendor/raw-cpuid/src/cpuid.c
 vendor/salsa/book/mermaid-init.js
 vendor/stacker/src/arch/windows.c
@@ -118,9 +139,12 @@ vendor/walkdir-*/compare/nftw.c
 library/backtrace/crates/backtrace-sys/src/libbacktrace/libtool.m4
 library/stdarch/.travis.yml
 library/stdarch/crates/core_arch/foo.wasm
+src/ci/docker/host-x86_64/shared/ISRG_Root_X1.crt
 src/doc/rustc-dev-guide/src/queries/example-0.counts.txt
+src/stage0.json
 src/test/run-make-fulldeps/target-specs/*.json
 src/test/run-make-fulldeps/libtest-json/output.json
+src/tools/clippy/.remarkrc
 vendor/clap/.mention-bot
 vendor/cloudabi/cloudabi.rs
 vendor/elasticlunr-rs/src/lang/*.rs
@@ -150,11 +174,12 @@ src/doc/book/tools/docx-to-md.xsl
 src/doc/rustc/src/images/*.png
 src/doc/rustc-dev-guide/src/img/rustc_stages.svg
 src/doc/rustc-dev-guide/src/queries/example-0.png
+src/doc/rustc-dev-guide/src/img/*.png
 src/doc/unstable-book/src/compiler-flags/img/llvm-cov-show-01.png
-src/librustdoc/html/static/*.svg
-src/librustdoc/html/static/rust-logo.png
-src/librustdoc/html/static/favicon.ico
-src/librustdoc/html/static/favicon-*.png
+src/librustdoc/html/static/images/*.svg
+src/librustdoc/html/static/images/rust-logo.png
+src/librustdoc/html/static/images/favicon.ico
+src/librustdoc/html/static/images/favicon-*.png
 src/test/mir-opt/coverage_graphviz.*.InstrumentCoverage.0.dot
 vendor/addr2line/memory.png
 vendor/addr2line/time.png
@@ -174,11 +199,18 @@ vendor/termion/logo.svg
 vendor/html5ever/examples/capi/tokenize.c
 
 # Test data
+library/portable-simd/crates/core_simd/webdriver.json
+library/portable-simd/crates/core_simd/tests/mask_ops_impl/*.rs
+library/std/src/sys/windows/path/tests.rs
 library/stdarch/ci/gba.json
+library/stdarch/crates/intrinsic-test/neon-intrinsics.csv
 library/stdarch/crates/stdarch-verify/arm-intrinsics.html
 library/stdarch/crates/stdarch-verify/x86-intel.xml
 library/stdarch/crates/std_detect/src/detect/test_data/*.auxv
+library/core/benches/str.rs
+library/core/tests/num/dec2flt/parse.rs
 src/test/compile-fail/not-utf8.bin
+src/test/debuginfo/type-names.cdb.js
 src/test/mir-opt/*.mir
 src/test/mir-opt/*.diff
 src/test/mir-opt/*.diff.*
@@ -200,6 +232,8 @@ src/test/*/*/*.stderr
 src/test/*/*/*.stdout
 src/test/*/*/*/*.stdout
 src/test/*/*/*/*.stderr
+src/test/*/*/*/*/*.stdout
+src/test/*/*/*/*/*.stderr
 src/test/run-make/*-sgx-lvi/enclave/*/*/*.c
 src/test/run-make/*-sgx-lvi/enclave/*.c
 src/test/run-make-fulldeps/*/*/*.html
@@ -207,6 +241,12 @@ src/test/rustdoc-json/*.expected
 src/test/ui/macros/not-utf8.bin
 src/test/ui/terminal-width/non-whitespace-trimming*.rs
 src/tools/*/tests/*/*.stderr
+src/tools/clippy/tests/ui-toml/*/*.stderr
+src/tools/clippy/tests/ui/wildcard_enum_match_arm.fixed
+src/tools/rustfmt/tests/writemode/target/*.json
+src/tools/rustfmt/tests/writemode/target/*.xml
+src/tools/rustfmt/tests/source/*.rs
+src/tools/rustfmt/tests/source/*/*.rs
 vendor/bstr/src/unicode/data/*Test.txt
 vendor/cargo_metadata*/tests/test_samples.rs
 vendor/cssparser/src/css-parsing-tests/*.json
@@ -215,12 +255,14 @@ vendor/dissimilar/benches/*.txt
 vendor/elasticlunr-rs/tests/data/*.in.txt
 vendor/elasticlunr-rs/tests/searchindex_fixture_*.json
 vendor/flate2/tests/*.gz
+vendor/flate2/tests/corrupt-gz-file.bin
 vendor/gimli/fixtures/self/*
+vendor/gimli-0*/fixtures/self/*
 vendor/goblin/etc/*.rs
 vendor/goblin/tests/bins/elf/gnu_hash/helloworld.c
 vendor/goblin/tests/bins/elf/gnu_hash/*.so
 vendor/gsgdt/tests/*.json
-vendor/idna/tests/IdnaTest.txt
+vendor/idna/tests/IdnaTest*.txt
 vendor/idna/tests/punycode_tests.json
 vendor/idna-0*/tests/IdnaTest.txt
 vendor/idna-0*/tests/punycode_tests.json
@@ -233,6 +275,8 @@ vendor/libz-sys/src/smoke.c
 vendor/md-5/tests/data/*.blb
 vendor/md-5/tests/data/*.bin
 vendor/mdbook/src/theme/searcher/searcher.js
+vendor/mdbook/test_book/src/individual/paragraph.md
+vendor/mdbook/test_book/src/individual/table.md
 vendor/mdbook/tests/searchindex_fixture.json
 vendor/memchr/src/tests/*.json
 vendor/minifier/tests/files/test.json
@@ -248,7 +292,10 @@ vendor/regex/tests/crates_regex.rs
 vendor/regex/tests/fowler.rs
 vendor/regex-0*/src/testdata/basic.dat
 vendor/regex-0*/tests/fowler.rs
+vendor/regex-1*/src/testdata/basic.dat
+vendor/regex-1*/tests/fowler.rs
 vendor/rustc-demangle/src/lib.rs
+vendor/rustc-demangle/src/v0-large-test-symbols/early-recursion-limit
 vendor/sha-1-0*/tests/data/*.blb
 vendor/sha-1-0*/tests/data/*.bin
 vendor/sha-1/tests/data/*.blb
@@ -257,6 +304,7 @@ vendor/sha2/tests/data/*.blb
 vendor/sha2/tests/data/*.bin
 vendor/snap/data/*
 vendor/tar/tests/archives/*.tar
+vendor/term/tests/data/*
 vendor/term-0*/tests/data/*
 vendor/toml/tests/*/*.toml
 vendor/toml/tests/*/*.json
@@ -267,10 +315,11 @@ vendor/xml5ever/data/bench/strong.xml
 vendor/yaml-rust/tests/specexamples.rs.inc
 vendor/yaml-rust-0*/tests/specexamples.rs.inc
 
+
 # Compromise, ideally we'd autogenerate these
 # Should already by documented in debian/copyright
 src/doc/rustc-dev-guide/src/mir/mir_*.svg
-src/librustdoc/html/static/normalize.css
+src/librustdoc/html/static/css/normalize.css
 vendor/pest_meta/src/grammar.rs
 vendor/regex-syntax/src/unicode_tables/*.rs
 vendor/ucd-parse/src/sentence_break.rs
@@ -280,7 +329,90 @@ vendor/unicode-script/src/tables.rs
 vendor/unicode-segmentation/src/tables.rs
 
 # Compromise, ideally we'd package these in their own package
-src/librustdoc/html/static/*.woff
+src/librustdoc/html/static/fonts/*.woff
+src/librustdoc/html/static/fonts/*.woff2
 
 # Compromise, ideally we'd autogenerate these
 vendor/bstr/src/unicode/fsm/*.dfa
+
+# file brokenness (detected as Algol source code)
+vendor/libm/src/math/atan.rs
+vendor/pest/tests/calculator.rs
+vendor/pest/src/position.rs
+vendor/pest/src/parser_state.rs
+vendor/pest/src/span.rs
+vendor/aho-corasick/src/nfa.rs
+vendor/miniz_oxide/src/deflate/mod.rs
+vendor/miniz_oxide/src/inflate/mod.rs
+vendor/thiserror-impl/src/attr.rs
+vendor/shlex/src/lib.rs
+vendor/semver/src/parse.rs
+vendor/semver-0.11.0/src/version_req.rs
+vendor/rustc-rayon/tests/sort-panic-safe.rs
+vendor/xml5ever/src/tokenizer/char_ref/mod.rs
+vendor/pulldown-cmark-0.7.2/tests/lib.rs
+vendor/pulldown-cmark-0.7.2/benches/html_rendering.rs
+vendor/pulldown-cmark-0.7.2/src/linklabel.rs
+vendor/pulldown-cmark-0.7.2/src/simd.rs
+vendor/url/src/parser.rs
+vendor/utf-8/tests/unit.rs
+vendor/rustversion/src/attr.rs
+vendor/env_logger-0.*/src/fmt/writer/mod.rs
+vendor/pest_generator/src/generator.rs
+vendor/digest/src/dev.rs
+vendor/proc-macro2/src/parse.rs
+vendor/xz2/src/stream.rs
+vendor/xz2/src/bufread.rs
+vendor/tera/src/utils.rs
+vendor/tera/src/renderer/tests/square_brackets.rs
+vendor/tera/src/renderer/tests/whitespace.rs
+vendor/digest-0.8.1/src/dev.rs
+vendor/structopt/tests/custom-string-parsers.rs
+vendor/structopt/tests/non_literal_attributes.rs
+vendor/pulldown-cmark/tests/lib.rs
+vendor/pulldown-cmark/src/linklabel.rs
+vendor/pulldown-cmark/src/simd.rs
+vendor/pulldown-cmark/benches/html_rendering.rs
+vendor/gimli/src/read/aranges.rs
+vendor/gimli/src/read/rnglists.rs
+vendor/gimli/src/read/unit.rs
+vendor/gimli/src/read/loclists.rs
+vendor/gimli/src/read/line.rs
+vendor/gimli/src/read/lookup.rs
+vendor/gimli-0.25.0/src/read/aranges.rs
+vendor/gimli-0.25.0/src/read/rnglists.rs
+vendor/gimli-0.25.0/src/read/unit.rs
+vendor/gimli-0.25.0/src/read/loclists.rs
+vendor/gimli-0.25.0/src/read/line.rs
+vendor/gimli-0.25.0/src/read/lookup.rs
+vendor/regex-automata/src/regex.rs
+vendor/rayon/tests/sort-panic-safe.rs
+vendor/syn/tests/test_meta.rs
+vendor/syn/src/punctuated.rs
+vendor/syn/src/derive.rs
+vendor/syn/src/token.rs
+vendor/syn/src/data.rs
+vendor/syn/src/ty.rs
+vendor/syn/src/stmt.rs
+vendor/syn/src/pat.rs
+vendor/syn/src/custom_punctuation.rs
+vendor/syn/src/path.rs
+vendor/syn/src/attr.rs
+vendor/syn/src/group.rs
+vendor/semver-parser/src/range_set.rs
+vendor/sha2/src/sha512.rs
+vendor/sha2/src/sha256.rs
+vendor/compiler_builtins/libm/src/math/atan.rs
+vendor/snap/src/decompress.rs
+vendor/snap/src/compress.rs
+vendor/flate2/src/mem.rs
+vendor/flate2/src/zio.rs
+compiler/rustc_expand/src/mbe/quoted.rs
+compiler/rustc_macros/src/symbols/tests.rs
+src/librustdoc/html/markdown/tests.rs
+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/rustfmt/src/string.rs
+src/tools/rustfmt/src/formatting.rs
+src/tools/rustfmt/src/syntux/parser.rs
+library/std/src/sys/unix/process/process_unix.rs
diff -ruNp rustc-1.59.0+dfsg1/debian/architecture.mk rustc-mozilla-1.59.0+dfsg1/debian/architecture.mk
--- rustc-1.59.0+dfsg1/debian/architecture.mk	2021-10-09 04:20:24.000000000 +0200
+++ rustc-mozilla-1.59.0+dfsg1/debian/architecture.mk	2022-06-06 14:03:37.000000000 +0200
@@ -5,8 +5,7 @@ include /usr/share/dpkg/architecture.mk
 rust_cpu = $(subst i586,i686,\
 $(if $(findstring -riscv64-,-$(2)-),$(subst riscv64,riscv64gc,$(1)),\
 $(if $(findstring -armhf-,-$(2)-),$(subst arm,armv7,$(1)),\
-$(if $(findstring -armel-,-$(2)-),$(subst arm,armv5te,$(1)),\
-$(1)))))
+$(1))))
 rust_type_setvar = $(1)_RUST_TYPE ?= $(call rust_cpu,$($(1)_GNU_CPU),$($(1)_ARCH))-unknown-$($(1)_GNU_SYSTEM)
 
 $(foreach machine,BUILD HOST TARGET,\
diff -ruNp rustc-1.59.0+dfsg1/debian/changelog rustc-mozilla-1.59.0+dfsg1/debian/changelog
--- rustc-1.59.0+dfsg1/debian/changelog	2022-05-11 15:11:46.000000000 +0200
+++ rustc-mozilla-1.59.0+dfsg1/debian/changelog	2022-07-03 11:52:07.278402955 +0200
@@ -1,3 +1,13 @@
+rustc-mozilla (1.59.0+dfsg1-1~deb11u1) bullseye; urgency=medium
+
+  * Non-maintainer upload.
+  * Backport to bullseye as rustc-mozilla.
+  * Do a bootstrap build.
+  * Disable wasm.
+  * Disable new binary packages rustfmt, -clippy, -all.
+
+ -- Emilio Pozuelo Monfort <pochu@debian.org>  Sun, 03 Jul 2022 11:51:30 +0200
+
 rustc (1.59.0+dfsg1-1) unstable; urgency=medium
 
   * Upload to unstable.
@@ -208,6 +218,16 @@ rustc (1.52.0~beta.3+dfsg1-1~exp1) exper
 
  -- Ximin Luo <infinity0@debian.org>  Mon, 26 Apr 2021 12:31:27 +0100
 
+rustc-mozilla (1.51.0+dfsg1-1~deb11u1) bullseye; urgency=medium
+
+  * Non-maintainer upload.
+  * Backport to bullseye.
+  * stage0 build.
+    + Use arm-unknown-linux-gnueabi target for armel.
+  * Reduce debugging symbols on i386 to avoid FTBFS due to OOM.
+
+ -- Roberto C. Sánchez <roberto@debian.org>  Fri, 19 Nov 2021 16:58:46 -0500
+
 rustc (1.51.0+dfsg1-1) unstable; urgency=medium
 
   * Upload to unstable.
diff -ruNp rustc-1.59.0+dfsg1/debian/check-orig-suspicious.sh rustc-mozilla-1.59.0+dfsg1/debian/check-orig-suspicious.sh
--- rustc-1.59.0+dfsg1/debian/check-orig-suspicious.sh	2021-10-09 04:20:24.000000000 +0200
+++ rustc-mozilla-1.59.0+dfsg1/debian/check-orig-suspicious.sh	2022-06-06 13:57:19.000000000 +0200
@@ -7,7 +7,7 @@ test -n "$ver" || exit 2
 SUS_WHITELIST=$(find "${PWD}/debian" -name upstream-tarball-unsuspicious.txt -type f)
 
 rm -rf rustc-${ver/*~*/beta}-src/
-tar xf ../rustc_$ver+dfsg1.orig.tar.xz && cd rustc-${ver/*~*/beta}-src/
+tar xf ../rustc-mozilla_$ver+dfsg1.orig.tar.xz && cd rustc-${ver/*~*/beta}-src/
 
 # TODO: remove this code snippet after it gets into our cargo
 # Strip comments & blank lines before testing rust source code -
diff -ruNp rustc-1.59.0+dfsg1/debian/control rustc-mozilla-1.59.0+dfsg1/debian/control
--- rustc-1.59.0+dfsg1/debian/control	2022-03-29 15:17:23.000000000 +0200
+++ rustc-mozilla-1.59.0+dfsg1/debian/control	2022-06-17 17:51:59.054234489 +0200
@@ -1,4 +1,4 @@
-Source: rustc
+Source: rustc-mozilla
 Section: devel
 Priority: optional
 Maintainer: Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net>
@@ -12,9 +12,9 @@ Build-Depends:
  debhelper-compat (= 13),
  dpkg-dev (>= 1.17.14),
  python3:native,
- cargo:native (>= 0.40.0)      <!pkg.rustc.dlstage0>,
- rustc:native (>= 1.58.0+dfsg) <!pkg.rustc.dlstage0>,
- rustc:native (<= 1.59.0++)    <!pkg.rustc.dlstage0>,
+# cargo:native (>= 0.40.0)      <!pkg.rustc.dlstage0>,
+# rustc:native (>= 1.58.0+dfsg) <!pkg.rustc.dlstage0>,
+# rustc:native (<= 1.59.0++)    <!pkg.rustc.dlstage0>,
  llvm-13-dev:native,
  llvm-13-tools:native,
  gcc-mingw-w64-x86-64-posix:native [amd64] <!nowindows>,
@@ -38,8 +38,8 @@ Build-Depends:
  curl <pkg.rustc.dlstage0>,
  ca-certificates <pkg.rustc.dlstage0>,
 Build-Depends-Indep:
- wasi-libc (>= 0.0~git20210922.ad51334~~) <!nowasm>,
- wasi-libc (<= 0.0~git20210922.ad51334++) <!nowasm>,
+# wasi-libc (>= 0.0~git20210922.ad51334~~) <!nowasm>,
+# wasi-libc (<= 0.0~git20210922.ad51334++) <!nowasm>,
  clang-13:native,
 Build-Conflicts: gdb-minimal <!nocheck>
 Standards-Version: 4.2.1
@@ -47,12 +47,12 @@ Homepage: http://www.rust-lang.org/
 Vcs-Git: https://salsa.debian.org/rust-team/rust.git
 Vcs-Browser: https://salsa.debian.org/rust-team/rust
 
-Package: rustc
+Package: rustc-mozilla
 Architecture: any
 Multi-Arch: allowed
 Pre-Depends: ${misc:Pre-Depends}
 Depends: ${shlibs:Depends}, ${misc:Depends},
- libstd-rust-dev (= ${binary:Version}),
+ libstd-rust-mozilla-dev (= ${binary:Version}),
  gcc, libc-dev, binutils (>= 2.26)
 Recommends:
  cargo (>= 0.60.0~~), cargo (<< 0.61.0~~),
@@ -61,7 +61,9 @@ Recommends:
 Suggests:
 # lld and clang are needed for wasm compilation
  lld-13, clang-13,
-Replaces: libstd-rust-dev (<< 1.25.0+dfsg1-2~~)
+Conflicts: rustc
+Provides: rustc (= ${binary:Version})
+Replaces: libstd-rust-dev (<< 1.25.0+dfsg1-2~~), rustc
 Breaks: libstd-rust-dev (<< 1.25.0+dfsg1-2~~)
 Description: Rust systems programming language
  Rust is a curly-brace, block-structured expression language.  It
@@ -76,7 +78,7 @@ Description: Rust systems programming la
  generic programming and meta-programming, in both static and dynamic
  styles.
 
-Package: libstd-rust-1.59
+Package: libstd-rust-mozilla-1.59
 Section: libs
 Architecture: any
 Multi-Arch: same
@@ -98,12 +100,12 @@ Description: Rust standard libraries
  This package contains the standard Rust libraries, built as dylibs,
  needed to run dynamically-linked Rust programs (-C prefer-dynamic).
 
-Package: libstd-rust-dev
+Package: libstd-rust-mozilla-dev
 Section: libdevel
 Architecture: any
 Multi-Arch: same
 Depends: ${shlibs:Depends}, ${misc:Depends},
- libstd-rust-1.59 (= ${binary:Version}),
+ libstd-rust-mozilla-1.59 (= ${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
@@ -121,7 +123,7 @@ Description: Rust standard libraries - d
  needed to compile Rust programs. It may also be installed on a system
  of another host architecture, for cross-compiling to this architecture.
 
-Package: libstd-rust-dev-windows
+Package: libstd-rust-mozilla-dev-windows
 Section: libdevel
 Architecture: amd64 i386
 Multi-Arch: same
@@ -129,6 +131,8 @@ Depends: ${shlibs:Depends}, ${misc:Depen
 Recommends:
  gcc-mingw-w64-x86-64-posix [amd64],
  gcc-mingw-w64-i686-posix [i386],
+Conflicts: libstd-rust-dev-windows
+Replaces: libstd-rust-dev-windows
 Build-Profiles: <!nowindows>
 Description: Rust standard libraries - development files
  Rust is a curly-brace, block-structured expression language.  It
@@ -147,41 +151,42 @@ Description: Rust standard libraries - d
  needed to cross-compile Rust programs to the *-pc-windows-gnu target
  corresponding to the architecture of this package.
 
-Package: libstd-rust-dev-wasm32
-Section: libdevel
-Architecture: all
-Multi-Arch: foreign
-Depends: ${shlibs:Depends}, ${misc:Depends}
-# Embeds wasi-libc so doesn't need to depend on it
-# None of its licenses require source redistrib, so no need for Built-Using
-Recommends:
- lld-13, clang-13,
-Suggests:
-# nodejs contains wasi-node for running the program
- nodejs (>= 12.16),
-Build-Profiles: <!nowasm>
-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
- in syntactic and semantic details.  Its design is oriented toward
- concerns of "programming in the large", that is, of creating and
- maintaining boundaries - both abstract and operational - that
- preserve large-system integrity, availability and concurrency.
- .
- It supports a mixture of imperative procedural, concurrent actor,
- object-oriented and pure functional styles.  Rust also supports
- generic programming and meta-programming, in both static and dynamic
- styles.
- .
- This package contains the standard Rust libraries including development files,
- needed to cross-compile Rust programs to the wasm32-unknown-unknown and
- wasm32-wasi targets.
+#Package: libstd-rust-mozilla-dev-wasm32
+#Section: libdevel
+#Architecture: all
+#Multi-Arch: foreign
+#Depends: ${shlibs:Depends}, ${misc:Depends}
+## Embeds wasi-libc so doesn't need to depend on it
+## None of its licenses require source redistrib, so no need for Built-Using
+#Recommends:
+# lld-13, clang-13,
+#Suggests:
+## nodejs contains wasi-node for running the program
+# nodejs (>= 12.16),
+#Build-Profiles: <!nowasm>
+#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
+# in syntactic and semantic details.  Its design is oriented toward
+# concerns of "programming in the large", that is, of creating and
+# maintaining boundaries - both abstract and operational - that
+# preserve large-system integrity, availability and concurrency.
+# .
+# It supports a mixture of imperative procedural, concurrent actor,
+# object-oriented and pure functional styles.  Rust also supports
+# generic programming and meta-programming, in both static and dynamic
+# styles.
+# .
+# This package contains the standard Rust libraries including development files,
+# needed to cross-compile Rust programs to the wasm32-unknown-unknown and
+# wasm32-wasi targets.
 
-Package: rust-gdb
+Package: rust-mozilla-gdb
 Architecture: all
 Depends: gdb, ${misc:Depends}
 Suggests: gdb-doc
-Replaces: rustc (<< 1.1.0+dfsg1-1)
+Conflicts: rust-gdb
+Replaces: rustc (<< 1.1.0+dfsg1-1), rust-gdb
 Description: Rust debugger (gdb)
  Rust is a curly-brace, block-structured expression language.  It
  visually resembles the C language family, but differs significantly
@@ -198,11 +203,12 @@ Description: Rust debugger (gdb)
  This package contains pretty printers and a wrapper script for
  invoking gdb on rust binaries.
 
-Package: rust-lldb
+Package: rust-mozilla-lldb
 Architecture: all
 # When updating, also update rust-lldb.links
 Depends: lldb-13, ${misc:Depends}, python3-lldb-13
-Replaces: rustc (<< 1.1.0+dfsg1-1)
+Conflicts: rust-lldb
+Replaces: rustc (<< 1.1.0+dfsg1-1), rust-lldb
 Description: Rust debugger (lldb)
  Rust is a curly-brace, block-structured expression language.  It
  visually resembles the C language family, but differs significantly
@@ -219,7 +225,7 @@ Description: Rust debugger (lldb)
  This package contains pretty printers and a wrapper script for
  invoking lldb on rust binaries.
 
-Package: rust-doc
+Package: rust-mozilla-doc
 Section: doc
 Architecture: all
 Build-Profiles: <!nodoc>
@@ -227,6 +233,8 @@ Depends: ${misc:Depends},
  libjs-jquery, libjs-highlight.js, libjs-mathjax,
  fonts-open-sans, fonts-font-awesome
 Recommends: cargo-doc
+Conflicts: rust-doc
+Replaces: rust-doc
 Description: Rust systems programming language - Documentation
  Rust is a curly-brace, block-structured expression language.  It
  visually resembles the C language family, but differs significantly
@@ -243,9 +251,11 @@ Description: Rust systems programming la
  This package contains the Rust tutorial, language reference and
  standard library documentation.
 
-Package: rust-src
+Package: rust-mozilla-src
 Architecture: all
 Depends: ${misc:Depends}
+Conflicts: rust-src
+Replaces: rust-src
 Description: Rust systems programming language - source code
  Rust is a curly-brace, block-structured expression language.  It
  visually resembles the C language family, but differs significantly
@@ -262,83 +272,83 @@ Description: Rust systems programming la
  This package contains sources of the Rust compiler and standard
  libraries, useful for IDEs and code analysis tools such as Racer.
 
-Package: rust-clippy
-Architecture: any
-Multi-Arch: allowed
-Depends: ${misc:Depends}, ${shlibs:Depends},
- libstd-rust-1.59 (= ${binary:Version})
-Recommends: cargo
-Description: Rust linter
- Rust is a curly-brace, block-structured expression language.  It
- visually resembles the C language family, but differs significantly
- in syntactic and semantic details.  Its design is oriented toward
- concerns of "programming in the large", that is, of creating and
- maintaining boundaries - both abstract and operational - that
- preserve large-system integrity, availability and concurrency.
- .
- It supports a mixture of imperative procedural, concurrent actor,
- object-oriented and pure functional styles.  Rust also supports
- generic programming and meta-programming, in both static and dynamic
- styles.
- .
- This package contains 'clippy', a linter to catch common mistakes and improve
- your Rust code as well a collection of over 400 compatible lints.
- .
- Lints are divided into categories, each with a default lint level. You can
- choose how much Clippy is supposed to annoy help you by changing the lint
- level by category.
- .
- Clippy is integrated into the 'cargo' build tool, available via 'cargo clippy'.
-
-Package: rustfmt
-Architecture: any
-Multi-Arch: allowed
-Depends: ${misc:Depends}, ${shlibs:Depends},
-Recommends: cargo
-Description: Rust formatting helper
- Rust is a curly-brace, block-structured expression language.  It
- visually resembles the C language family, but differs significantly
- in syntactic and semantic details.  Its design is oriented toward
- concerns of "programming in the large", that is, of creating and
- maintaining boundaries - both abstract and operational - that
- preserve large-system integrity, availability and concurrency.
- .
- It supports a mixture of imperative procedural, concurrent actor,
- object-oriented and pure functional styles.  Rust also supports
- generic programming and meta-programming, in both static and dynamic
- styles.
- .
- This package contains 'rustfmt', a tool for formatting Rust code according to
- style guidelines, as well as 'cargo-fmt', a helper enabling running rustfmt
- directly with 'cargo fmt'.
-
-Package: rust-all
-Architecture: all
-Depends: ${misc:Depends}, ${shlibs:Depends},
- rustc (>= ${binary:Version}),
- rustfmt (>= ${binary:Version}),
- rust-clippy (>= ${binary:Version}),
- rust-gdb (>= ${binary:Version}) | rust-lldb (>= ${binary:Version}),
- cargo,
-Recommends:
- cargo (>= 0.60.0~~), cargo (<< 0.61.0~~)
-Suggests:
- rust-doc (>= ${binary:Version}),
- rust-src (>= ${binary:Version}),
- libstd-rust-dev-wasm32 (>= ${binary:Version}),
- libstd-rust-dev-windows (>= ${binary:Version}),
-Description: Rust systems programming language - all developer tools
- Rust is a curly-brace, block-structured expression language.  It
- visually resembles the C language family, but differs significantly
- in syntactic and semantic details.  Its design is oriented toward
- concerns of "programming in the large", that is, of creating and
- maintaining boundaries - both abstract and operational - that
- preserve large-system integrity, availability and concurrency.
- .
- It supports a mixture of imperative procedural, concurrent actor,
- object-oriented and pure functional styles.  Rust also supports
- generic programming and meta-programming, in both static and dynamic
- styles.
- .
- This package is an empty metapackage that depends on all developer tools
- in the standard rustc distribution that have been packaged for Debian.
+#Package: rust-mozilla-clippy
+#Architecture: any
+#Multi-Arch: allowed
+#Depends: ${misc:Depends}, ${shlibs:Depends},
+# libstd-rust-mozilla-1.59 (= ${binary:Version})
+#Recommends: cargo
+#Description: Rust linter
+# Rust is a curly-brace, block-structured expression language.  It
+# visually resembles the C language family, but differs significantly
+# in syntactic and semantic details.  Its design is oriented toward
+# concerns of "programming in the large", that is, of creating and
+# maintaining boundaries - both abstract and operational - that
+# preserve large-system integrity, availability and concurrency.
+# .
+# It supports a mixture of imperative procedural, concurrent actor,
+# object-oriented and pure functional styles.  Rust also supports
+# generic programming and meta-programming, in both static and dynamic
+# styles.
+# .
+# This package contains 'clippy', a linter to catch common mistakes and improve
+# your Rust code as well a collection of over 400 compatible lints.
+# .
+# Lints are divided into categories, each with a default lint level. You can
+# choose how much Clippy is supposed to annoy help you by changing the lint
+# level by category.
+# .
+# Clippy is integrated into the 'cargo' build tool, available via 'cargo clippy'.
+#
+#Package: rustfmt-mozilla
+#Architecture: any
+#Multi-Arch: allowed
+#Depends: ${misc:Depends}, ${shlibs:Depends},
+#Recommends: cargo
+#Description: Rust formatting helper
+# Rust is a curly-brace, block-structured expression language.  It
+# visually resembles the C language family, but differs significantly
+# in syntactic and semantic details.  Its design is oriented toward
+# concerns of "programming in the large", that is, of creating and
+# maintaining boundaries - both abstract and operational - that
+# preserve large-system integrity, availability and concurrency.
+# .
+# It supports a mixture of imperative procedural, concurrent actor,
+# object-oriented and pure functional styles.  Rust also supports
+# generic programming and meta-programming, in both static and dynamic
+# styles.
+# .
+# This package contains 'rustfmt', a tool for formatting Rust code according to
+# style guidelines, as well as 'cargo-fmt', a helper enabling running rustfmt
+# directly with 'cargo fmt'.
+#
+#Package: rust-mozilla-all
+#Architecture: all
+#Depends: ${misc:Depends}, ${shlibs:Depends},
+# rustc-mozilla (>= ${binary:Version}),
+# rustfmt-mozilla (>= ${binary:Version}),
+# rust-mozilla-clippy (>= ${binary:Version}),
+# rust-mozilla-gdb (>= ${binary:Version}) | rust-mozilla-lldb (>= ${binary:Version}),
+# cargo,
+#Recommends:
+# cargo (>= 0.60.0~~), cargo (<< 0.61.0~~)
+#Suggests:
+# rust-mozilla-doc (>= ${binary:Version}),
+# rust-mozilla-src (>= ${binary:Version}),
+# libstd-rust-mozilla-dev-wasm32 (>= ${binary:Version}),
+# libstd-rust-mozilla-dev-windows (>= ${binary:Version}),
+#Description: Rust systems programming language - all developer tools
+# Rust is a curly-brace, block-structured expression language.  It
+# visually resembles the C language family, but differs significantly
+# in syntactic and semantic details.  Its design is oriented toward
+# concerns of "programming in the large", that is, of creating and
+# maintaining boundaries - both abstract and operational - that
+# preserve large-system integrity, availability and concurrency.
+# .
+# It supports a mixture of imperative procedural, concurrent actor,
+# object-oriented and pure functional styles.  Rust also supports
+# generic programming and meta-programming, in both static and dynamic
+# styles.
+# .
+# This package is an empty metapackage that depends on all developer tools
+# in the standard rustc distribution that have been packaged for Debian.
diff -ruNp rustc-1.59.0+dfsg1/debian/files rustc-mozilla-1.59.0+dfsg1/debian/files
--- rustc-1.59.0+dfsg1/debian/files	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/files	2022-07-03 11:52:51.354412937 +0200
@@ -0,0 +1 @@
+rustc-mozilla_1.59.0+dfsg1-1~deb11u1_source.buildinfo devel optional
diff -ruNp rustc-1.59.0+dfsg1/debian/libstd-rust-1.59.install rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-1.59.install
--- rustc-1.59.0+dfsg1/debian/libstd-rust-1.59.install	2022-03-29 15:17:23.000000000 +0200
+++ rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-1.59.install	1970-01-01 01:00:00.000000000 +0100
@@ -1 +0,0 @@
-usr/lib/${DEB_HOST_MULTIARCH}/
diff -ruNp rustc-1.59.0+dfsg1/debian/libstd-rust-1.59.lintian-overrides rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-1.59.lintian-overrides
--- rustc-1.59.0+dfsg1/debian/libstd-rust-1.59.lintian-overrides	2022-03-29 15:17:23.000000000 +0200
+++ rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-1.59.lintian-overrides	1970-01-01 01:00:00.000000000 +0100
@@ -1,13 +0,0 @@
-# "libstd" just seemed too generic
-libstd-rust-1.59 binary: package-name-doesnt-match-sonames
-libstd-rust-1.59 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.59 binary: dev-pkg-without-shlib-symlink
-libstd-rust-1.59 binary: shlib-without-versioned-soname
-libstd-rust-1.59 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.59 binary: library-not-linked-against-libc
diff -ruNp rustc-1.59.0+dfsg1/debian/libstd-rust-dev.install rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-dev.install
--- rustc-1.59.0+dfsg1/debian/libstd-rust-dev.install	2021-10-22 22:31:00.000000000 +0200
+++ rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-dev.install	1970-01-01 01:00:00.000000000 +0100
@@ -1 +0,0 @@
-usr/lib/rustlib/${env:DEB_HOST_RUST_TYPE}/lib/
diff -ruNp rustc-1.59.0+dfsg1/debian/libstd-rust-dev.lintian-overrides rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-dev.lintian-overrides
--- rustc-1.59.0+dfsg1/debian/libstd-rust-dev.lintian-overrides	2022-03-29 15:17:22.000000000 +0200
+++ rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-dev.lintian-overrides	1970-01-01 01:00:00.000000000 +0100
@@ -1,11 +0,0 @@
-# lintian does not know about rust arch-specific directories
-libstd-rust-dev binary: arch-dependent-file-not-in-arch-specific-directory usr/lib/rustlib/*/lib/lib*.rlib
-libstd-rust-dev binary: breakout-link usr/lib/rustlib/*/lib/lib*.so -> usr/lib/*/lib*.so
-
-# lintian doesn't understand rlib files
-libstd-rust-dev binary: no-code-sections [*.rlib]
-
-# See debhelper bug #875780. This override is commented out because it's not
-# always needed, but we want it here for documentation purposes. Basically,
-# if you see it then you probably don't need to worry about it.
-#libstd-rust-dev binary: unstripped-static-library usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/lib*.rlib(*)
diff -ruNp rustc-1.59.0+dfsg1/debian/libstd-rust-dev-wasm32.install rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-dev-wasm32.install
--- rustc-1.59.0+dfsg1/debian/libstd-rust-dev-wasm32.install	2021-10-22 22:35:47.000000000 +0200
+++ rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-dev-wasm32.install	1970-01-01 01:00:00.000000000 +0100
@@ -1 +0,0 @@
-usr/lib/rustlib/wasm32-*/lib/
diff -ruNp rustc-1.59.0+dfsg1/debian/libstd-rust-dev-wasm32.lintian-overrides rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-dev-wasm32.lintian-overrides
--- rustc-1.59.0+dfsg1/debian/libstd-rust-dev-wasm32.lintian-overrides	2022-03-29 15:17:22.000000000 +0200
+++ rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-dev-wasm32.lintian-overrides	1970-01-01 01:00:00.000000000 +0100
@@ -1,8 +0,0 @@
-# wasm object files count as arch-independent for now,
-# at least until we starting offering Debian in wasm
-libstd-rust-dev-wasm32 binary: arch-independent-package-contains-binary-or-object usr/lib/rustlib/wasm32-*/lib/lib*.rlib
-libstd-rust-dev-wasm32 binary: arch-independent-package-contains-binary-or-object usr/lib/rustlib/wasm32-*/lib/self-contained/libc.a
-
-# lintian doesn't understand rlib files
-libstd-rust-dev-wasm32 binary: no-code-sections [*.rlib]
-libstd-rust-dev-wasm32 binary: no-code-sections [usr/lib/rustlib/wasm32-*/lib/self-contained/libc.a]
diff -ruNp rustc-1.59.0+dfsg1/debian/libstd-rust-dev-windows.install rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-dev-windows.install
--- rustc-1.59.0+dfsg1/debian/libstd-rust-dev-windows.install	2021-10-22 22:34:38.000000000 +0200
+++ rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-dev-windows.install	1970-01-01 01:00:00.000000000 +0100
@@ -1 +0,0 @@
-usr/lib/rustlib/${env:WINDOWS_ARCH}-pc-windows-gnu/lib/
diff -ruNp rustc-1.59.0+dfsg1/debian/libstd-rust-dev-windows.lintian-overrides rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-dev-windows.lintian-overrides
--- rustc-1.59.0+dfsg1/debian/libstd-rust-dev-windows.lintian-overrides	2022-03-29 15:17:22.000000000 +0200
+++ rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-dev-windows.lintian-overrides	1970-01-01 01:00:00.000000000 +0100
@@ -1,8 +0,0 @@
-# lintian does not know about rust arch-specific directories
-libstd-rust-dev-windows binary: arch-dependent-file-not-in-arch-specific-directory usr/lib/rustlib/*/lib/lib*.rlib
-libstd-rust-dev-windows binary: arch-dependent-file-not-in-arch-specific-directory usr/lib/rustlib/*/lib/lib*.a
-libstd-rust-dev-windows binary: executable-not-elf-or-script usr/lib/rustlib/*/lib/*.dll
-
-# lintian doesn't understand these files
-libstd-rust-dev-windows binary: no-code-sections [*.rlib]
-libstd-rust-dev-windows binary: no-code-sections [usr/lib/rustlib/x86_64-pc-windows-gnu/lib/lib*.dll.a]
diff -ruNp rustc-1.59.0+dfsg1/debian/libstd-rust-mozilla-1.59.install rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-mozilla-1.59.install
--- rustc-1.59.0+dfsg1/debian/libstd-rust-mozilla-1.59.install	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-mozilla-1.59.install	2022-03-29 15:17:23.000000000 +0200
@@ -0,0 +1 @@
+usr/lib/${DEB_HOST_MULTIARCH}/
diff -ruNp rustc-1.59.0+dfsg1/debian/libstd-rust-mozilla-1.59.lintian-overrides rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-mozilla-1.59.lintian-overrides
--- rustc-1.59.0+dfsg1/debian/libstd-rust-mozilla-1.59.lintian-overrides	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-mozilla-1.59.lintian-overrides	2022-03-29 15:17:23.000000000 +0200
@@ -0,0 +1,13 @@
+# "libstd" just seemed too generic
+libstd-rust-1.59 binary: package-name-doesnt-match-sonames
+libstd-rust-1.59 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.59 binary: dev-pkg-without-shlib-symlink
+libstd-rust-1.59 binary: shlib-without-versioned-soname
+libstd-rust-1.59 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.59 binary: library-not-linked-against-libc
diff -ruNp rustc-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev.install rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev.install
--- rustc-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev.install	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev.install	2021-10-22 22:31:00.000000000 +0200
@@ -0,0 +1 @@
+usr/lib/rustlib/${env:DEB_HOST_RUST_TYPE}/lib/
diff -ruNp rustc-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev.lintian-overrides rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev.lintian-overrides
--- rustc-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev.lintian-overrides	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev.lintian-overrides	2022-03-29 15:17:22.000000000 +0200
@@ -0,0 +1,11 @@
+# lintian does not know about rust arch-specific directories
+libstd-rust-dev binary: arch-dependent-file-not-in-arch-specific-directory usr/lib/rustlib/*/lib/lib*.rlib
+libstd-rust-dev binary: breakout-link usr/lib/rustlib/*/lib/lib*.so -> usr/lib/*/lib*.so
+
+# lintian doesn't understand rlib files
+libstd-rust-dev binary: no-code-sections [*.rlib]
+
+# See debhelper bug #875780. This override is commented out because it's not
+# always needed, but we want it here for documentation purposes. Basically,
+# if you see it then you probably don't need to worry about it.
+#libstd-rust-dev binary: unstripped-static-library usr/lib/rustlib/x86_64-unknown-linux-gnu/lib/lib*.rlib(*)
diff -ruNp rustc-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev-wasm32.install rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev-wasm32.install
--- rustc-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev-wasm32.install	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev-wasm32.install	2021-10-22 22:35:47.000000000 +0200
@@ -0,0 +1 @@
+usr/lib/rustlib/wasm32-*/lib/
diff -ruNp rustc-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev-wasm32.lintian-overrides rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev-wasm32.lintian-overrides
--- rustc-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev-wasm32.lintian-overrides	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev-wasm32.lintian-overrides	2022-03-29 15:17:22.000000000 +0200
@@ -0,0 +1,8 @@
+# wasm object files count as arch-independent for now,
+# at least until we starting offering Debian in wasm
+libstd-rust-dev-wasm32 binary: arch-independent-package-contains-binary-or-object usr/lib/rustlib/wasm32-*/lib/lib*.rlib
+libstd-rust-dev-wasm32 binary: arch-independent-package-contains-binary-or-object usr/lib/rustlib/wasm32-*/lib/self-contained/libc.a
+
+# lintian doesn't understand rlib files
+libstd-rust-dev-wasm32 binary: no-code-sections [*.rlib]
+libstd-rust-dev-wasm32 binary: no-code-sections [usr/lib/rustlib/wasm32-*/lib/self-contained/libc.a]
diff -ruNp rustc-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev-windows.install rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev-windows.install
--- rustc-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev-windows.install	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev-windows.install	2021-10-22 22:34:38.000000000 +0200
@@ -0,0 +1 @@
+usr/lib/rustlib/${env:WINDOWS_ARCH}-pc-windows-gnu/lib/
diff -ruNp rustc-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev-windows.lintian-overrides rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev-windows.lintian-overrides
--- rustc-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev-windows.lintian-overrides	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/libstd-rust-mozilla-dev-windows.lintian-overrides	2022-03-29 15:17:22.000000000 +0200
@@ -0,0 +1,8 @@
+# lintian does not know about rust arch-specific directories
+libstd-rust-dev-windows binary: arch-dependent-file-not-in-arch-specific-directory usr/lib/rustlib/*/lib/lib*.rlib
+libstd-rust-dev-windows binary: arch-dependent-file-not-in-arch-specific-directory usr/lib/rustlib/*/lib/lib*.a
+libstd-rust-dev-windows binary: executable-not-elf-or-script usr/lib/rustlib/*/lib/*.dll
+
+# lintian doesn't understand these files
+libstd-rust-dev-windows binary: no-code-sections [*.rlib]
+libstd-rust-dev-windows binary: no-code-sections [usr/lib/rustlib/x86_64-pc-windows-gnu/lib/lib*.dll.a]
diff -ruNp rustc-1.59.0+dfsg1/debian/make_orig-stage0_tarball.sh rustc-mozilla-1.59.0+dfsg1/debian/make_orig-stage0_tarball.sh
--- rustc-1.59.0+dfsg1/debian/make_orig-stage0_tarball.sh	2021-10-09 04:20:24.000000000 +0200
+++ rustc-mozilla-1.59.0+dfsg1/debian/make_orig-stage0_tarball.sh	2022-06-06 14:03:37.000000000 +0200
@@ -7,7 +7,7 @@
 set -e
 
 upstream_version="$(dpkg-parsechangelog -SVersion | sed -e 's/\(.*\)-.*/\1/g')"
-upstream_bootstrap_arch="${upstream_bootstrap_arch:-amd64 arm64 armhf i386 mips64 mips64el powerpc ppc64 ppc64el s390x}"
+upstream_bootstrap_arch="${upstream_bootstrap_arch:-amd64 arm64 armel armhf i386 mips64 mips64el powerpc ppc64 ppc64el s390x}"
 
 rm -f stage0/*/*.sha256
 mkdir -p stage0 build && ln -sf ../stage0 build/cache
diff -ruNp rustc-1.59.0+dfsg1/debian/rules rustc-mozilla-1.59.0+dfsg1/debian/rules
--- rustc-1.59.0+dfsg1/debian/rules	2022-03-06 22:35:45.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/rules	2022-06-18 11:55:15.777905017 +0200
@@ -7,9 +7,9 @@ include /usr/share/dpkg/architecture.mk
 SED_VERSION_SHORT := sed -re 's/([^.]+)\.([^.]+)\..*/\1.\2/'
 RUST_VERSION := $(shell echo '$(DEB_VERSION_UPSTREAM)' | $(SED_VERSION_SHORT))
 RUST_LONG_VERSION := $(shell echo '$(DEB_VERSION_UPSTREAM)' | sed -re 's/([^+]+).*/\1/')
-LIBSTD_PKG := libstd-rust-$(RUST_VERSION)
-# Sed expression that matches the "rustc" we have in our Build-Depends field
-SED_RUSTC_BUILDDEP := sed -ne "/^Build-Depends:/,/^[^[:space:]\#]/{/^ *rustc:native .*,/p}" debian/control
+LIBSTD_PKG := libstd-rust-mozilla-$(RUST_VERSION)
+# Sed expression that matches the "rustc-mozilla" we have in our Build-Depends field
+SED_RUSTC_BUILDDEP := sed -ne "/^Build-Depends:/,/^[^[:space:]\#]/{/^ *rustc-mozilla:native .*,/p}" debian/control
 # Version of /usr/bin/rustc
 LOCAL_RUST_VERSION := $(shell rustc --version --verbose | sed -ne 's/^release: //p')
 
@@ -117,7 +117,7 @@ ifneq (,$(findstring nodoc,$(DEB_BUILD_O
   BUILD_DOCS := false
 endif
 
-BUILD_WASM := true
+BUILD_WASM := false
 ifneq (,$(findstring nowasm,$(DEB_BUILD_PROFILES)))
   BUILD_WASM := false
 endif
@@ -162,7 +162,7 @@ ifeq ($(shell test $(VERBOSITY) -le 0; e
 .SILENT:
 endif
 
-# Build products or non-source files in src/, that shouldn't go in rust-src
+# Build products or non-source files in src/, that shouldn't go in rust-mozilla-src
 SRC_CLEAN = src/bootstrap/bootstrap.pyc \
 	src/etc/__pycache__/
 
@@ -206,7 +206,7 @@ debian/config.toml: debian/config.toml.i
 	if $(DOWNLOAD_BOOTSTRAP) || [ $(HAVE_BINARY_TARBALL) != 0 ]; \
 	  then sed -i -e '/^rustc = /d' -e '/^cargo = /d' "$@"; fi
 # Work around low-memory (32-bit) architectures: https://github.com/rust-lang/rust/issues/45854
-ifneq (,$(filter $(DEB_BUILD_ARCH), armhf armel mips mipsel powerpc powerpcspe))
+ifneq (,$(filter $(DEB_BUILD_ARCH), armhf armel i386 mips mipsel powerpc powerpcspe))
 	sed -i -e 's/^debuginfo-level = .*/debuginfo-level = 0/g' "$@"
 endif
 
@@ -398,9 +398,9 @@ endif
 
 override_dh_install-indep:
 	dh_install
-	$(RM) -rf $(SRC_CLEAN:%=debian/rust-src/usr/src/rustc-$(RUST_LONG_VERSION)/%)
+	$(RM) -rf $(SRC_CLEAN:%=debian/rust-mozilla-src/usr/src/rustc-$(RUST_LONG_VERSION)/%)
 	# Get rid of lintian warnings
-	find debian/rust-src/usr/src/rustc-$(RUST_LONG_VERSION) \
+	find debian/rust-mozilla-src/usr/src/rustc-$(RUST_LONG_VERSION) \
 		\( -name .gitignore \
 		-o -name 'LICENSE*' \
 		-o -name 'LICENCE' \
@@ -408,10 +408,10 @@ override_dh_install-indep:
 		-o -name 'COPYING*' \
 		\) -delete
 	# Remove files that autoload remote resources, caught by lintian
-	$(RM) -rf debian/rust-src/usr/src/rustc-*/vendor/cssparser/docs/*.html
-	$(RM) -rf debian/rust-src/usr/src/rustc-*/vendor/kuchiki/docs/*.html
-	$(RM) -rf debian/rust-src/usr/src/rustc-*/vendor/url/docs/*.html
-	$(RM) -rf debian/rust-src/usr/src/rustc-*/vendor/xz2/.gitmodules
+	$(RM) -rf debian/rust-mozilla-src/usr/src/rustc-*/vendor/cssparser/docs/*.html
+	$(RM) -rf debian/rust-mozilla-src/usr/src/rustc-*/vendor/kuchiki/docs/*.html
+	$(RM) -rf debian/rust-mozilla-src/usr/src/rustc-*/vendor/url/docs/*.html
+	$(RM) -rf debian/rust-mozilla-src/usr/src/rustc-*/vendor/xz2/.gitmodules
 
 override_dh_installchangelogs:
 	dh_installchangelogs RELEASES.md
@@ -429,12 +429,12 @@ override_dh_compress:
 #
 #override_dh_strip:
 #	# Work around #35733, #468333
-#	find debian/libstd-rust-dev*/ -name '*.rlib' -execdir mv '{}' '{}.a' \;
+#	find debian/libstd-rust-mozilla-dev*/ -name '*.rlib' -execdir mv '{}' '{}.a' \;
 #	# This is expected to print out lots of "File format unrecognized" warnings about
 #	# rust.metadata.bin and *.deflate but the .o files inside the rlibs should be stripped
 #	# Some files are still omitted because of #875780 however.
 #	dh_strip -v
-#	find debian/libstd-rust-dev*/ -name '*.rlib.a' -execdir sh -c 'mv "$$1" "$${1%.a}"' - '{}' \;
+#	find debian/libstd-rust-mozilla-dev*/ -name '*.rlib.a' -execdir sh -c 'mv "$$1" "$${1%.a}"' - '{}' \;
 
 override_dh_dwz:
 	# otherwise rustc gets an empty multifile which lintian errors on, causing
@@ -486,3 +486,6 @@ source_orig-beta: debian/watch-beta
 	rm -f rustc-beta-src/version; \
 	rmdir -p rustc-beta-src; \
 	echo "prepared rustc $$newver.0~beta.$$bv in $$bd"
+
+override_dh_missing:
+	dh_missing --list-missing
diff -ruNp rustc-1.59.0+dfsg1/debian/rustc.install rustc-mozilla-1.59.0+dfsg1/debian/rustc.install
--- rustc-1.59.0+dfsg1/debian/rustc.install	2021-10-09 04:20:24.000000000 +0200
+++ rustc-mozilla-1.59.0+dfsg1/debian/rustc.install	1970-01-01 01:00:00.000000000 +0100
@@ -1,5 +0,0 @@
-usr/bin/rustc
-usr/bin/rustdoc
-usr/lib/rustlib/etc/rust_types.py
-debian/architecture.mk usr/share/rustc/
-debian/wasi-node usr/share/rustc/bin/
diff -ruNp rustc-1.59.0+dfsg1/debian/rustc.links rustc-mozilla-1.59.0+dfsg1/debian/rustc.links
--- rustc-1.59.0+dfsg1/debian/rustc.links	2021-10-22 22:30:31.000000000 +0200
+++ rustc-mozilla-1.59.0+dfsg1/debian/rustc.links	1970-01-01 01:00:00.000000000 +0100
@@ -1,6 +0,0 @@
-usr/bin/lld-13 usr/bin/rust-lld
-usr/bin/clang-13 usr/bin/rust-clang
-usr/bin/llvm-dwp-13 usr/bin/rust-llvm-dwp
-# for -Z gcc-ld=lld, see compiler/rustc_codegen_ssa/src/back/link.rs for logic
-usr/bin/rust-lld usr/lib/rustlib/${env:DEB_HOST_RUST_TYPE}/bin/gcc-ld/ld
-usr/bin/rust-lld usr/lib/rustlib/${env:DEB_HOST_RUST_TYPE}/bin/gcc-ld/ld64
diff -ruNp rustc-1.59.0+dfsg1/debian/rustc.lintian-overrides rustc-mozilla-1.59.0+dfsg1/debian/rustc.lintian-overrides
--- rustc-1.59.0+dfsg1/debian/rustc.lintian-overrides	2022-03-06 22:59:34.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/rustc.lintian-overrides	1970-01-01 01:00:00.000000000 +0100
@@ -1,6 +0,0 @@
-# unofficial example script, no dependency needed
-rustc binary: missing-dep-for-interpreter /usr/bin/node (does not satisfy nodejs:any) [usr/share/rustc/bin/wasi-node]
-
-# symlinks to other programs
-rustc binary: no-manual-page usr/bin/rust-clang
-rustc binary: no-manual-page usr/bin/rust-lld
diff -ruNp rustc-1.59.0+dfsg1/debian/rust-clippy.install rustc-mozilla-1.59.0+dfsg1/debian/rust-clippy.install
--- rustc-1.59.0+dfsg1/debian/rust-clippy.install	2021-10-09 04:20:24.000000000 +0200
+++ rustc-mozilla-1.59.0+dfsg1/debian/rust-clippy.install	1970-01-01 01:00:00.000000000 +0100
@@ -1,2 +0,0 @@
-usr/bin/clippy-driver
-usr/bin/cargo-clippy
diff -ruNp rustc-1.59.0+dfsg1/debian/rustc.manpages rustc-mozilla-1.59.0+dfsg1/debian/rustc.manpages
--- rustc-1.59.0+dfsg1/debian/rustc.manpages	2021-10-09 04:20:24.000000000 +0200
+++ rustc-mozilla-1.59.0+dfsg1/debian/rustc.manpages	1970-01-01 01:00:00.000000000 +0100
@@ -1,3 +0,0 @@
-debian/tmp/usr/share/man/man1/rustc.1
-debian/tmp/usr/share/man/man1/rustdoc.1
-
diff -ruNp rustc-1.59.0+dfsg1/debian/rustc-mozilla.install rustc-mozilla-1.59.0+dfsg1/debian/rustc-mozilla.install
--- rustc-1.59.0+dfsg1/debian/rustc-mozilla.install	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/rustc-mozilla.install	2022-06-17 14:05:27.636427085 +0200
@@ -0,0 +1,5 @@
+usr/bin/rustc
+usr/bin/rustdoc
+usr/lib/rustlib/etc/rust_types.py
+debian/architecture.mk usr/share/rustc/
+#debian/wasi-node usr/share/rustc/bin/
diff -ruNp rustc-1.59.0+dfsg1/debian/rustc-mozilla.links rustc-mozilla-1.59.0+dfsg1/debian/rustc-mozilla.links
--- rustc-1.59.0+dfsg1/debian/rustc-mozilla.links	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/rustc-mozilla.links	2021-10-22 22:30:31.000000000 +0200
@@ -0,0 +1,6 @@
+usr/bin/lld-13 usr/bin/rust-lld
+usr/bin/clang-13 usr/bin/rust-clang
+usr/bin/llvm-dwp-13 usr/bin/rust-llvm-dwp
+# for -Z gcc-ld=lld, see compiler/rustc_codegen_ssa/src/back/link.rs for logic
+usr/bin/rust-lld usr/lib/rustlib/${env:DEB_HOST_RUST_TYPE}/bin/gcc-ld/ld
+usr/bin/rust-lld usr/lib/rustlib/${env:DEB_HOST_RUST_TYPE}/bin/gcc-ld/ld64
diff -ruNp rustc-1.59.0+dfsg1/debian/rustc-mozilla.lintian-overrides rustc-mozilla-1.59.0+dfsg1/debian/rustc-mozilla.lintian-overrides
--- rustc-1.59.0+dfsg1/debian/rustc-mozilla.lintian-overrides	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/rustc-mozilla.lintian-overrides	2022-03-06 22:59:34.000000000 +0100
@@ -0,0 +1,6 @@
+# unofficial example script, no dependency needed
+rustc binary: missing-dep-for-interpreter /usr/bin/node (does not satisfy nodejs:any) [usr/share/rustc/bin/wasi-node]
+
+# symlinks to other programs
+rustc binary: no-manual-page usr/bin/rust-clang
+rustc binary: no-manual-page usr/bin/rust-lld
diff -ruNp rustc-1.59.0+dfsg1/debian/rustc-mozilla.manpages rustc-mozilla-1.59.0+dfsg1/debian/rustc-mozilla.manpages
--- rustc-1.59.0+dfsg1/debian/rustc-mozilla.manpages	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/rustc-mozilla.manpages	2021-10-09 04:20:24.000000000 +0200
@@ -0,0 +1,3 @@
+debian/tmp/usr/share/man/man1/rustc.1
+debian/tmp/usr/share/man/man1/rustdoc.1
+
diff -ruNp rustc-1.59.0+dfsg1/debian/rust-doc.doc-base.book rustc-mozilla-1.59.0+dfsg1/debian/rust-doc.doc-base.book
--- rustc-1.59.0+dfsg1/debian/rust-doc.doc-base.book	2021-10-09 04:20:24.000000000 +0200
+++ rustc-mozilla-1.59.0+dfsg1/debian/rust-doc.doc-base.book	1970-01-01 01:00:00.000000000 +0100
@@ -1,13 +0,0 @@
-Document: rust-book
-Title: The Rust Programming Language
-Section: Programming/Rust
-Abstract:
- This book will teach you about the Rust Programming Language. Rust is
- a modern systems programming language focusing on safety and speed. It
- accomplishes these goals by being memory safe without using garbage
- collection.
-
-Format: HTML
-Index: /usr/share/doc/rust-doc/html/book/index.html
-Files: /usr/share/doc/rust-doc/html/book/*.html
-       /usr/share/doc/rust-doc/html/book/*/*.html
diff -ruNp rustc-1.59.0+dfsg1/debian/rust-doc.doc-base.reference rustc-mozilla-1.59.0+dfsg1/debian/rust-doc.doc-base.reference
--- rustc-1.59.0+dfsg1/debian/rust-doc.doc-base.reference	2021-10-09 04:20:24.000000000 +0200
+++ rustc-mozilla-1.59.0+dfsg1/debian/rust-doc.doc-base.reference	1970-01-01 01:00:00.000000000 +0100
@@ -1,11 +0,0 @@
-Document: rust-reference
-Title: The Rust Reference
-Section: Programming/Rust
-Abstract:
- This document is the primary reference for the Rust programming
- language.
-
-Format: HTML
-Index: /usr/share/doc/rust-doc/html/reference/index.html
-Files: /usr/share/doc/rust-doc/html/reference/*.html
-       /usr/share/doc/rust-doc/html/reference/*/*.html
diff -ruNp rustc-1.59.0+dfsg1/debian/rust-doc.docs rustc-mozilla-1.59.0+dfsg1/debian/rust-doc.docs
--- rustc-1.59.0+dfsg1/debian/rust-doc.docs	2021-10-09 04:20:24.000000000 +0200
+++ rustc-mozilla-1.59.0+dfsg1/debian/rust-doc.docs	1970-01-01 01:00:00.000000000 +0100
@@ -1 +0,0 @@
-debian/tmp/usr/share/doc/rust/html
diff -ruNp rustc-1.59.0+dfsg1/debian/rust-doc.install rustc-mozilla-1.59.0+dfsg1/debian/rust-doc.install
--- rustc-1.59.0+dfsg1/debian/rust-doc.install	2021-10-09 04:20:24.000000000 +0200
+++ rustc-mozilla-1.59.0+dfsg1/debian/rust-doc.install	1970-01-01 01:00:00.000000000 +0100
@@ -1 +0,0 @@
-debian/icons/rust-logo-32x32-blk.png usr/share/doc/rust-doc/html/
diff -ruNp rustc-1.59.0+dfsg1/debian/rustfmt.install rustc-mozilla-1.59.0+dfsg1/debian/rustfmt.install
--- rustc-1.59.0+dfsg1/debian/rustfmt.install	2021-10-09 04:20:24.000000000 +0200
+++ rustc-mozilla-1.59.0+dfsg1/debian/rustfmt.install	1970-01-01 01:00:00.000000000 +0100
@@ -1,2 +0,0 @@
-usr/bin/rustfmt
-usr/bin/cargo-fmt
diff -ruNp rustc-1.59.0+dfsg1/debian/rustfmt-mozilla.install rustc-mozilla-1.59.0+dfsg1/debian/rustfmt-mozilla.install
--- rustc-1.59.0+dfsg1/debian/rustfmt-mozilla.install	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/rustfmt-mozilla.install	2021-10-09 04:20:24.000000000 +0200
@@ -0,0 +1,2 @@
+usr/bin/rustfmt
+usr/bin/cargo-fmt
diff -ruNp rustc-1.59.0+dfsg1/debian/rust-gdb.install rustc-mozilla-1.59.0+dfsg1/debian/rust-gdb.install
--- rustc-1.59.0+dfsg1/debian/rust-gdb.install	2021-10-09 04:20:24.000000000 +0200
+++ rustc-mozilla-1.59.0+dfsg1/debian/rust-gdb.install	1970-01-01 01:00:00.000000000 +0100
@@ -1,5 +0,0 @@
-usr/bin/rust-gdb
-usr/bin/rust-gdbgui
-usr/lib/rustlib/etc/gdb_load_rust_pretty_printers.py
-usr/lib/rustlib/etc/gdb_lookup.py
-usr/lib/rustlib/etc/gdb_providers.py
diff -ruNp rustc-1.59.0+dfsg1/debian/rust-gdb.links rustc-mozilla-1.59.0+dfsg1/debian/rust-gdb.links
--- rustc-1.59.0+dfsg1/debian/rust-gdb.links	2021-10-09 04:20:24.000000000 +0200
+++ rustc-mozilla-1.59.0+dfsg1/debian/rust-gdb.links	1970-01-01 01:00:00.000000000 +0100
@@ -1 +0,0 @@
-usr/share/man/man1/gdb.1.gz usr/share/man/man1/rust-gdb.1.gz
diff -ruNp rustc-1.59.0+dfsg1/debian/rust-lldb.install rustc-mozilla-1.59.0+dfsg1/debian/rust-lldb.install
--- rustc-1.59.0+dfsg1/debian/rust-lldb.install	2021-10-09 04:20:24.000000000 +0200
+++ rustc-mozilla-1.59.0+dfsg1/debian/rust-lldb.install	1970-01-01 01:00:00.000000000 +0100
@@ -1,4 +0,0 @@
-usr/bin/rust-lldb
-usr/lib/rustlib/etc/lldb_commands
-usr/lib/rustlib/etc/lldb_lookup.py
-usr/lib/rustlib/etc/lldb_providers.py
diff -ruNp rustc-1.59.0+dfsg1/debian/rust-lldb.links rustc-mozilla-1.59.0+dfsg1/debian/rust-lldb.links
--- rustc-1.59.0+dfsg1/debian/rust-lldb.links	2021-10-15 11:42:05.000000000 +0200
+++ rustc-mozilla-1.59.0+dfsg1/debian/rust-lldb.links	1970-01-01 01:00:00.000000000 +0100
@@ -1 +0,0 @@
-usr/share/man/man1/lldb-13.1.gz usr/share/man/man1/rust-lldb.1.gz
diff -ruNp rustc-1.59.0+dfsg1/debian/rust-mozilla-clippy.install rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-clippy.install
--- rustc-1.59.0+dfsg1/debian/rust-mozilla-clippy.install	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-clippy.install	2021-10-09 04:20:24.000000000 +0200
@@ -0,0 +1,2 @@
+usr/bin/clippy-driver
+usr/bin/cargo-clippy
diff -ruNp rustc-1.59.0+dfsg1/debian/rust-mozilla-doc.doc-base.book rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-doc.doc-base.book
--- rustc-1.59.0+dfsg1/debian/rust-mozilla-doc.doc-base.book	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-doc.doc-base.book	2021-10-09 04:20:24.000000000 +0200
@@ -0,0 +1,13 @@
+Document: rust-book
+Title: The Rust Programming Language
+Section: Programming/Rust
+Abstract:
+ This book will teach you about the Rust Programming Language. Rust is
+ a modern systems programming language focusing on safety and speed. It
+ accomplishes these goals by being memory safe without using garbage
+ collection.
+
+Format: HTML
+Index: /usr/share/doc/rust-doc/html/book/index.html
+Files: /usr/share/doc/rust-doc/html/book/*.html
+       /usr/share/doc/rust-doc/html/book/*/*.html
diff -ruNp rustc-1.59.0+dfsg1/debian/rust-mozilla-doc.doc-base.reference rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-doc.doc-base.reference
--- rustc-1.59.0+dfsg1/debian/rust-mozilla-doc.doc-base.reference	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-doc.doc-base.reference	2021-10-09 04:20:24.000000000 +0200
@@ -0,0 +1,11 @@
+Document: rust-reference
+Title: The Rust Reference
+Section: Programming/Rust
+Abstract:
+ This document is the primary reference for the Rust programming
+ language.
+
+Format: HTML
+Index: /usr/share/doc/rust-doc/html/reference/index.html
+Files: /usr/share/doc/rust-doc/html/reference/*.html
+       /usr/share/doc/rust-doc/html/reference/*/*.html
diff -ruNp rustc-1.59.0+dfsg1/debian/rust-mozilla-doc.docs rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-doc.docs
--- rustc-1.59.0+dfsg1/debian/rust-mozilla-doc.docs	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-doc.docs	2021-10-09 04:20:24.000000000 +0200
@@ -0,0 +1 @@
+debian/tmp/usr/share/doc/rust/html
diff -ruNp rustc-1.59.0+dfsg1/debian/rust-mozilla-doc.install rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-doc.install
--- rustc-1.59.0+dfsg1/debian/rust-mozilla-doc.install	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-doc.install	2021-10-09 04:20:24.000000000 +0200
@@ -0,0 +1 @@
+debian/icons/rust-logo-32x32-blk.png usr/share/doc/rust-doc/html/
diff -ruNp rustc-1.59.0+dfsg1/debian/rust-mozilla-gdb.install rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-gdb.install
--- rustc-1.59.0+dfsg1/debian/rust-mozilla-gdb.install	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-gdb.install	2021-10-09 04:20:24.000000000 +0200
@@ -0,0 +1,5 @@
+usr/bin/rust-gdb
+usr/bin/rust-gdbgui
+usr/lib/rustlib/etc/gdb_load_rust_pretty_printers.py
+usr/lib/rustlib/etc/gdb_lookup.py
+usr/lib/rustlib/etc/gdb_providers.py
diff -ruNp rustc-1.59.0+dfsg1/debian/rust-mozilla-gdb.links rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-gdb.links
--- rustc-1.59.0+dfsg1/debian/rust-mozilla-gdb.links	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-gdb.links	2021-10-09 04:20:24.000000000 +0200
@@ -0,0 +1 @@
+usr/share/man/man1/gdb.1.gz usr/share/man/man1/rust-gdb.1.gz
diff -ruNp rustc-1.59.0+dfsg1/debian/rust-mozilla-lldb.install rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-lldb.install
--- rustc-1.59.0+dfsg1/debian/rust-mozilla-lldb.install	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-lldb.install	2021-10-09 04:20:24.000000000 +0200
@@ -0,0 +1,4 @@
+usr/bin/rust-lldb
+usr/lib/rustlib/etc/lldb_commands
+usr/lib/rustlib/etc/lldb_lookup.py
+usr/lib/rustlib/etc/lldb_providers.py
diff -ruNp rustc-1.59.0+dfsg1/debian/rust-mozilla-lldb.links rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-lldb.links
--- rustc-1.59.0+dfsg1/debian/rust-mozilla-lldb.links	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-lldb.links	2021-10-15 11:42:05.000000000 +0200
@@ -0,0 +1 @@
+usr/share/man/man1/lldb-13.1.gz usr/share/man/man1/rust-lldb.1.gz
diff -ruNp rustc-1.59.0+dfsg1/debian/rust-mozilla-src.install rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-src.install
--- rustc-1.59.0+dfsg1/debian/rust-mozilla-src.install	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-src.install	2021-10-22 22:52:20.000000000 +0200
@@ -0,0 +1,15 @@
+debian/patches  usr/src/rustc-${env:RUST_LONG_VERSION}/debian
+# from src/bootstrap/dist.rs:370 onwards
+COPYRIGHT       usr/src/rustc-${env:RUST_LONG_VERSION}
+LICENSE-APACHE  usr/src/rustc-${env:RUST_LONG_VERSION}
+LICENSE-MIT     usr/src/rustc-${env:RUST_LONG_VERSION}
+CONTRIBUTING.md usr/src/rustc-${env:RUST_LONG_VERSION}
+README.md       usr/src/rustc-${env:RUST_LONG_VERSION}
+RELEASES.md     usr/src/rustc-${env:RUST_LONG_VERSION}
+configure       usr/src/rustc-${env:RUST_LONG_VERSION}
+x.py            usr/src/rustc-${env:RUST_LONG_VERSION}
+config.toml.example    usr/src/rustc-${env:RUST_LONG_VERSION}
+Cargo.toml      usr/src/rustc-${env:RUST_LONG_VERSION}
+src             usr/src/rustc-${env:RUST_LONG_VERSION}
+library         usr/src/rustc-${env:RUST_LONG_VERSION}
+compiler        usr/src/rustc-${env:RUST_LONG_VERSION}
diff -ruNp rustc-1.59.0+dfsg1/debian/rust-mozilla-src.links rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-src.links
--- rustc-1.59.0+dfsg1/debian/rust-mozilla-src.links	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-src.links	2021-10-22 22:52:20.000000000 +0200
@@ -0,0 +1 @@
+usr/src/rustc-${env:RUST_LONG_VERSION} usr/lib/rustlib/src/rust
diff -ruNp rustc-1.59.0+dfsg1/debian/rust-mozilla-src.lintian-overrides rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-src.lintian-overrides
--- rustc-1.59.0+dfsg1/debian/rust-mozilla-src.lintian-overrides	1970-01-01 01:00:00.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/rust-mozilla-src.lintian-overrides	2022-03-06 22:59:34.000000000 +0100
@@ -0,0 +1,6 @@
+# False positives that change quite often, so just override with a wildcard
+rust-src binary: executable-not-elf-or-script usr/src/rustc-*/*
+rust-src binary: package-contains-eslint-config-file usr/src/rustc-*/src/librustdoc/html/static/.eslintrc.js
+rust-src binary: breakout-link usr/lib/rustlib/src/rust -> usr/src/rustc-*
+rust-src binary: embedded-javascript-library usr/src/rustc-*/*
+rust-src binary: national-encoding usr/src/rustc-*/*
diff -ruNp rustc-1.59.0+dfsg1/debian/rust-src.install rustc-mozilla-1.59.0+dfsg1/debian/rust-src.install
--- rustc-1.59.0+dfsg1/debian/rust-src.install	2021-10-22 22:52:20.000000000 +0200
+++ rustc-mozilla-1.59.0+dfsg1/debian/rust-src.install	1970-01-01 01:00:00.000000000 +0100
@@ -1,15 +0,0 @@
-debian/patches  usr/src/rustc-${env:RUST_LONG_VERSION}/debian
-# from src/bootstrap/dist.rs:370 onwards
-COPYRIGHT       usr/src/rustc-${env:RUST_LONG_VERSION}
-LICENSE-APACHE  usr/src/rustc-${env:RUST_LONG_VERSION}
-LICENSE-MIT     usr/src/rustc-${env:RUST_LONG_VERSION}
-CONTRIBUTING.md usr/src/rustc-${env:RUST_LONG_VERSION}
-README.md       usr/src/rustc-${env:RUST_LONG_VERSION}
-RELEASES.md     usr/src/rustc-${env:RUST_LONG_VERSION}
-configure       usr/src/rustc-${env:RUST_LONG_VERSION}
-x.py            usr/src/rustc-${env:RUST_LONG_VERSION}
-config.toml.example    usr/src/rustc-${env:RUST_LONG_VERSION}
-Cargo.toml      usr/src/rustc-${env:RUST_LONG_VERSION}
-src             usr/src/rustc-${env:RUST_LONG_VERSION}
-library         usr/src/rustc-${env:RUST_LONG_VERSION}
-compiler        usr/src/rustc-${env:RUST_LONG_VERSION}
diff -ruNp rustc-1.59.0+dfsg1/debian/rust-src.links rustc-mozilla-1.59.0+dfsg1/debian/rust-src.links
--- rustc-1.59.0+dfsg1/debian/rust-src.links	2021-10-22 22:52:20.000000000 +0200
+++ rustc-mozilla-1.59.0+dfsg1/debian/rust-src.links	1970-01-01 01:00:00.000000000 +0100
@@ -1 +0,0 @@
-usr/src/rustc-${env:RUST_LONG_VERSION} usr/lib/rustlib/src/rust
diff -ruNp rustc-1.59.0+dfsg1/debian/rust-src.lintian-overrides rustc-mozilla-1.59.0+dfsg1/debian/rust-src.lintian-overrides
--- rustc-1.59.0+dfsg1/debian/rust-src.lintian-overrides	2022-03-06 22:59:34.000000000 +0100
+++ rustc-mozilla-1.59.0+dfsg1/debian/rust-src.lintian-overrides	1970-01-01 01:00:00.000000000 +0100
@@ -1,6 +0,0 @@
-# False positives that change quite often, so just override with a wildcard
-rust-src binary: executable-not-elf-or-script usr/src/rustc-*/*
-rust-src binary: package-contains-eslint-config-file usr/src/rustc-*/src/librustdoc/html/static/.eslintrc.js
-rust-src binary: breakout-link usr/lib/rustlib/src/rust -> usr/src/rustc-*
-rust-src binary: embedded-javascript-library usr/src/rustc-*/*
-rust-src binary: national-encoding usr/src/rustc-*/*

--- End Message ---
--- Begin Message ---
Package: release.debian.org
Version: 11.5

Hi,

The updates referred to in each of these bugs were included in today's
11.5 point release.

Regards,

Adam

--- End Message ---

Reply to: