diff options
35 files changed, 977 insertions, 417 deletions
diff --git a/debian/architecture-test.mk b/debian/architecture-test.mk index e7aeabade..071f63aa2 100644 --- a/debian/architecture-test.mk +++ b/debian/architecture-test.mk @@ -8,7 +8,7 @@ include debian/architecture.mk deb_arch_setvars = $(foreach var,ARCH ARCH_OS ARCH_CPU ARCH_BITS ARCH_ENDIAN GNU_CPU GNU_SYSTEM GNU_TYPE MULTIARCH,\ - $(eval DEB_$(1)_$(var) = $(shell dpkg-architecture -a$(1) -qDEB_HOST_$(var) 2>/dev/null))) + $(eval DEB_$(1)_$(var) = $(shell dpkg-architecture -f -a$(1) -qDEB_HOST_$(var) 2>/dev/null))) rust-for-deb_%: $(eval $(call deb_arch_setvars,$*)) diff --git a/debian/bin/rust-lld b/debian/bin/rust-lld index 285f1b0da..b3880d793 100755 --- a/debian/bin/rust-lld +++ b/debian/bin/rust-lld @@ -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-15 "${@/#-Wl,/}" +exec /usr/bin/lld-16 "${@/#-Wl,/}" diff --git a/debian/changelog b/debian/changelog index 12e74af57..95198acc5 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,91 @@ +rustc (1.70.0+dfsg1-7) unstable; urgency=medium + + * profiler: disable on mips64el for now, it's buggy + + -- Fabian Grünbichler <debian@fabian.gruenbichler.email> Thu, 15 Feb 2024 06:52:19 +0100 + +rustc (1.70.0+dfsg1-6) unstable; urgency=medium + + [ Fabian Grünbichler ] + * fix bootstrap helpers (Closes: #1060808) + * rustix: patch both versions to fix racy build + + [ Andres Salomon ] + * Fix source_orig-stage0 bootstrapping process to actually include all + architectures (closes: #1021711). + * Run 'd/rules clean' after running make_orig-stage0_tarball.sh so that the + suggestion to rebuild the .dsc actually works. + * Don't allow upstream's bootstrap.py to delete .cargo/ directory. + + [ Fabian Grünbichler ] + * stage0: use current release architectures as default + * disable LLVM profiler support on sparc64 (Closes: #1061125) + + -- Fabian Grünbichler <debian@fabian.gruenbichler.email> Sun, 11 Feb 2024 20:59:19 +0100 + +rustc (1.70.0+dfsg1-5) unstable; urgency=medium + + * adapt LLVM_PROFILER_RT_LIB path + + -- Fabian Grünbichler <debian@fabian.gruenbichler.email> Mon, 15 Jan 2024 08:16:35 +0100 + +rustc (1.70.0+dfsg1-4) unstable; urgency=medium + + * fix libclang-rt-16-dev Build-dep + + -- Fabian Grünbichler <debian@fabian.gruenbichler.email> Mon, 15 Jan 2024 07:00:08 +0100 + +rustc (1.70.0+dfsg1-3) unstable; urgency=medium + + [ Andres Salomon ] + * Enable profiler builtin and backport u-profiler.patch (closes: #1043311). + * Build-dep on libclang-rt-16-dev. + + -- Fabian Grünbichler <debian@fabian.gruenbichler.email> Sun, 14 Jan 2024 20:06:29 +0100 + +rustc (1.70.0+dfsg1-2) unstable; urgency=medium + + * Upload to unstable + + -- Fabian Grünbichler <debian@fabian.gruenbichler.email> Sat, 30 Dec 2023 14:52:00 +0100 + +rustc (1.70.0+dfsg1-2~exp1) experimental; urgency=medium + + * riscv: disable split debuginfo support + + -- Fabian Grünbichler <debian@fabian.gruenbichler.email> Sat, 02 Dec 2023 11:19:31 +0100 + +rustc (1.70.0+dfsg1-1) unstable; urgency=medium + + * Upload to unstable + + -- Fabian Grünbichler <debian@fabian.gruenbichler.email> Wed, 20 Sep 2023 20:18:40 +0200 + +rustc (1.70.0+dfsg1-1~exp3) experimental; urgency=medium + + * more test fixes + + -- Fabian Grünbichler <debian@fabian.gruenbichler.email> Fri, 15 Sep 2023 15:07:01 +0200 + +rustc (1.70.0+dfsg1-1~exp2) experimental; urgency=medium + + * don't remove replace-version-placeholder from workspace + * disable download tests + * fix x86 tests checking for SSE2 + + -- Fabian Grünbichler <debian@fabian.gruenbichler.email> Fri, 15 Sep 2023 10:10:52 +0200 + +rustc (1.70.0+dfsg1-1~exp1) experimental; urgency=medium + + * New upstream release + * switch to LLVM 16 + * properly drop more components + * rust-src: fix path of installed example config + * fix lintian overrides + * update d/copyright + + -- Fabian Grünbichler <debian@fabian.gruenbichler.email> Thu, 14 Sep 2023 09:07:26 +0200 + rustc (1.69.0+dfsg1-1) unstable; urgency=medium * Upload to unstable diff --git a/debian/config.toml.in b/debian/config.toml.in index f896f97dc..c61d582c1 100644 --- a/debian/config.toml.in +++ b/debian/config.toml.in @@ -5,6 +5,7 @@ submodules = false vendor = true locked-deps = false verbose = VERBOSITY +profiler = PROFILER rustc = "RUST_DESTDIR/usr/bin/rustc" cargo = "RUST_DESTDIR/usr/bin/cargo" diff --git a/debian/control b/debian/control index 4beb71c2f..112547e10 100644 --- a/debian/control +++ b/debian/control @@ -14,13 +14,14 @@ Build-Depends: dpkg-dev (>= 1.17.14), python3:native, cargo:native (>= 0.60.0) <!pkg.rustc.dlstage0>, - rustc:native (>= 1.68.0+dfsg) <!pkg.rustc.dlstage0>, - rustc:native (<= 1.69.0++) <!pkg.rustc.dlstage0>, - llvm-15-dev:native, - llvm-15-tools:native, + rustc:native (>= 1.69.0+dfsg) <!pkg.rustc.dlstage0>, + rustc:native (<= 1.70.0++) <!pkg.rustc.dlstage0>, + llvm-16-dev:native, + llvm-16-tools:native, gcc-mingw-w64-x86-64-posix:native [amd64] <!nowindows>, gcc-mingw-w64-i686-posix:native [i386] <!nowindows>, - libllvm15 (>= 1:15.0.0), + libllvm16 (>= 1:16.0.0), + libclang-rt-16-dev:native, cmake (>= 3.0) | cmake3, # needed by some vendor crates pkg-config, @@ -41,7 +42,7 @@ Build-Depends: Build-Depends-Indep: wasi-libc (>= 0.0~git20230113.4362b18-2~) <!nowasm>, wasi-libc (<= 0.0~git20230113.4362b18++) <!nowasm>, - clang-15:native, + clang-16:native, Build-Conflicts: gdb-minimal <!nocheck> Standards-Version: 4.6.2 Homepage: http://www.rust-lang.org/ @@ -56,12 +57,12 @@ Depends: ${shlibs:Depends}, ${misc:Depends}, libstd-rust-dev (= ${binary:Version}), gcc, libc-dev, binutils (>= 2.26) Recommends: - cargo (>= 0.70.0~~), cargo (<< 0.71.0~~), + cargo (>= 0.71.0~~), cargo (<< 0.72.0~~), # llvm is needed for llvm-dwp for -C split-debuginfo=packed - llvm-15, + llvm-16, Suggests: # lld and clang are needed for wasm compilation - lld-15, clang-15, + lld-16, clang-16, Replaces: libstd-rust-dev (<< 1.25.0+dfsg1-2~~) Breaks: libstd-rust-dev (<< 1.25.0+dfsg1-2~~) Description: Rust systems programming language @@ -77,7 +78,7 @@ Description: Rust systems programming language generic programming and meta-programming, in both static and dynamic styles. -Package: libstd-rust-1.69 +Package: libstd-rust-1.70 Section: libs Architecture: any Multi-Arch: same @@ -104,7 +105,7 @@ Section: libdevel Architecture: any Multi-Arch: same Depends: ${shlibs:Depends}, ${misc:Depends}, - libstd-rust-1.69 (= ${binary:Version}), + libstd-rust-1.70 (= ${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 @@ -156,7 +157,7 @@ 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-15, clang-15, + lld-16, clang-16, Suggests: # nodejs contains wasi-node for running the program nodejs (>= 12.16), @@ -202,7 +203,7 @@ Description: Rust debugger (gdb) Package: rust-lldb Architecture: all # When updating, also update rust-lldb.links -Depends: lldb-15, ${misc:Depends}, python3-lldb-15 +Depends: lldb-16, ${misc:Depends}, python3-lldb-16 Replaces: rustc (<< 1.1.0+dfsg1-1) Description: Rust debugger (lldb) Rust is a curly-brace, block-structured expression language. It @@ -267,7 +268,7 @@ Package: rust-clippy Architecture: any Multi-Arch: allowed Depends: ${misc:Depends}, ${shlibs:Depends}, - libstd-rust-1.69 (= ${binary:Version}) + libstd-rust-1.70 (= ${binary:Version}) Recommends: cargo Description: Rust linter Rust is a curly-brace, block-structured expression language. It @@ -322,7 +323,7 @@ Depends: ${misc:Depends}, ${shlibs:Depends}, rust-gdb (>= ${binary:Version}) | rust-lldb (>= ${binary:Version}), cargo, Recommends: - cargo (>= 0.70.0~~), cargo (<< 0.71.0~~) + cargo (>= 0.71.0~~), cargo (<< 0.72.0~~) Suggests: rust-doc (>= ${binary:Version}), rust-src (>= ${binary:Version}), diff --git a/debian/copyright b/debian/copyright index dab084da3..edf1cc050 100644 --- a/debian/copyright +++ b/debian/copyright @@ -21,6 +21,7 @@ Files-Excluded: # check that certain popular crates continue to compile. It is not the same as # cargo's own test suite (in its own package) also called cargotest. # NB: don't exclude rust-installer, it's needed for "install" functionality + .gitmodules src/tools/cargo src/tools/rls src/tools/remote-test-client @@ -38,11 +39,10 @@ Files-Excluded: vendor/mdbook/src/theme/playground_editor vendor/psm/src/arch/wasm32.o vendor/rustix/src/backend/linux_raw/arch/outline/*/*.a + vendor/rustix-0.*/src/backend/linux_raw/arch/outline/*/*.a vendor/winapi-*/*/*.a # Embedded submodule used for CI library/stdarch/crates/intrinsic-test/acle -# .profraw file, probably imported by mistake - src/tools/rust-analyzer/crates/rust-analyzer/default_12483297303756020505_0.profraw # unused dependencies, generated by debian/prune-unused-deps # DO NOT EDIT below, AUTOGENERATED vendor/ahash-0.7.4 @@ -51,6 +51,7 @@ Files-Excluded: vendor/anyhow-1.0.66 vendor/anymap vendor/arbitrary + vendor/arc-swap vendor/arrayvec-0.5.2 vendor/arrayvec-0.7.0 vendor/backtrace-0.3.66 @@ -59,6 +60,7 @@ Files-Excluded: vendor/base64ct vendor/bitmaps vendor/bstr + vendor/btoi vendor/bumpalo vendor/bytesize vendor/camino-1.0.9 @@ -69,13 +71,12 @@ Files-Excluded: vendor/chalk-ir vendor/chalk-recursive vendor/chalk-solve + vendor/clru vendor/color-eyre vendor/color-spantrace vendor/command-group - vendor/commoncrypto - vendor/commoncrypto-sys vendor/concolor - vendor/concolor-query + vendor/concolor-query-0.1.0 vendor/const-oid vendor/content_inspector vendor/core-foundation @@ -93,7 +94,6 @@ Files-Excluded: vendor/cranelift-object vendor/crypto-bigint vendor/crypto-common-0.1.3 - vendor/crypto-hash vendor/ct-codecs vendor/ctor-0.1.22 vendor/curl @@ -115,14 +115,13 @@ Files-Excluded: vendor/eyre vendor/ff vendor/fiat-crypto - vendor/filetime-0.2.14 vendor/filetime-0.2.16 + vendor/filetime-0.2.19 vendor/flate2-1.0.23 vendor/foreign-types vendor/foreign-types-shared vendor/form_urlencoded-1.0.1 vendor/fsevent-sys - vendor/fs_extra-1.1.0 vendor/fs_extra vendor/fst vendor/fwdansi @@ -130,11 +129,48 @@ Files-Excluded: vendor/generic-array-0.14.4 vendor/git2 vendor/git2-curl + vendor/gix-actor + vendor/gix-attributes + vendor/gix-bitmap + vendor/gix + vendor/gix-chunk + vendor/gix-command + vendor/gix-config + vendor/gix-config-value + vendor/gix-credentials + vendor/gix-date + vendor/gix-diff + vendor/gix-discover + vendor/gix-features + vendor/gix-glob + vendor/gix-hash + vendor/gix-hashtable + vendor/gix-index + vendor/gix-lock + vendor/gix-mailmap + vendor/gix-object + vendor/gix-odb + vendor/gix-pack + vendor/gix-packetline + vendor/gix-path + vendor/gix-prompt + vendor/gix-protocol + vendor/gix-quote + vendor/gix-ref + vendor/gix-refspec + vendor/gix-revision + vendor/gix-sec + vendor/gix-tempfile + vendor/gix-transport + vendor/gix-traverse + vendor/gix-url + vendor/gix-validate + vendor/gix-worktree vendor/globset-0.4.8 vendor/group vendor/handlebars-3.5.5 vendor/heck-0.3.3 - vendor/hex-0.3.2 + vendor/hermit-abi-0.3.0 vendor/hex-0.4.2 vendor/hkalbasi-rustc-ap-rustc_abi vendor/hkalbasi-rustc-ap-rustc_index @@ -143,19 +179,24 @@ Files-Excluded: vendor/home-0.5.3 vendor/http-auth vendor/idna-0.2.0 + vendor/imara-diff vendor/im-rc vendor/indenter + vendor/indexmap-1.9.2 vendor/inotify vendor/inotify-sys - vendor/io-lifetimes-1.0.1 + vendor/io-close + vendor/io-lifetimes-1.0.3 + vendor/is-terminal-0.4.4 vendor/itoa-1.0.2 + vendor/itoa-1.0.5 vendor/jemalloc-sys vendor/jod-thread vendor/js-sys vendor/kqueue vendor/kqueue-sys - vendor/libc-0.2.137 vendor/libc-0.2.138 + vendor/libc-0.2.139 vendor/libffi vendor/libffi-sys vendor/libgit2-sys @@ -165,12 +206,13 @@ Files-Excluded: vendor/libssh2-sys vendor/libz-sys vendor/linked-hash-map - vendor/linux-raw-sys-0.1.3 vendor/lock_api-0.4.7 vendor/log-0.4.14 vendor/lzma-sys-0.1.16 vendor/mach vendor/matches + vendor/maybe-async + vendor/memmap2-0.5.8 vendor/mimalloc vendor/mio vendor/nix @@ -178,11 +220,14 @@ Files-Excluded: vendor/normalize-line-endings vendor/notify vendor/num_cpus-1.13.1 + vendor/num_threads vendor/object-0.30.1 vendor/once_cell-1.12.0 vendor/once_cell-1.16.0 + vendor/once_cell-1.17.0 vendor/oorandom vendor/openssl + vendor/openssl-macros vendor/openssl-probe vendor/openssl-src vendor/openssl-sys @@ -201,12 +246,14 @@ Files-Excluded: vendor/pkcs8 vendor/pretty_env_logger vendor/proc-macro2-1.0.46 + vendor/proc-macro2-1.0.50 + vendor/prodash vendor/protobuf vendor/protobuf-support vendor/pulldown-cmark-to-cmark vendor/quick-error vendor/quote-1.0.18 - vendor/quote-1.0.21 + vendor/quote-1.0.23 vendor/rayon-1.5.3 vendor/rayon-1.6.0 vendor/rayon-core-1.9.3 @@ -218,7 +265,6 @@ Files-Excluded: vendor/region vendor/rfc6979 vendor/rustc-build-sysroot - vendor/rustix-0.36.3 vendor/ryu-1.0.10 vendor/ryu-1.0.5 vendor/salsa @@ -231,21 +277,23 @@ Files-Excluded: vendor/security-framework-sys vendor/semver-1.0.12 vendor/serde-1.0.137 - vendor/serde-1.0.147 + vendor/serde-1.0.152 vendor/serde_derive-1.0.137 - vendor/serde_derive-1.0.147 + vendor/serde_derive-1.0.152 vendor/serde_ignored vendor/serde_json-1.0.81 vendor/serde_json-1.0.85 vendor/serde_spanned vendor/serde-value + vendor/sha1_smol vendor/sha2-0.10.2 vendor/sharded-slab-0.1.1 + vendor/signal-hook + vendor/signal-hook-registry vendor/signature vendor/similar vendor/sized-chunks vendor/slice-group-by - vendor/smallvec-1.8.1 vendor/snapbox vendor/snapbox-macros vendor/socket2 @@ -254,7 +302,7 @@ Files-Excluded: vendor/subtle vendor/syn-1.0.102 vendor/target-lexicon - vendor/threadpool + vendor/termcolor-1.1.3 vendor/tikv-jemallocator vendor/tikv-jemalloc-ctl vendor/tikv-jemalloc-sys @@ -274,11 +322,11 @@ Files-Excluded: vendor/typenum-1.15.0 vendor/ui_test vendor/unicode-bidi-0.3.4 + vendor/unicode-bom vendor/unicode-ident-1.0.0 vendor/unicode-ident-1.0.5 vendor/unicode-width-0.1.9 vendor/url-2.2.2 - vendor/utf8parse vendor/vcpkg vendor/vte vendor/vte_generate_state_changes @@ -288,13 +336,21 @@ Files-Excluded: vendor/wasm-bindgen-macro-support vendor/wasm-bindgen-shared vendor/wasmtime-jit-icache-coherence + vendor/windows-0.43.0 vendor/windows_aarch64_gnullvm-0.42.0 + vendor/windows_aarch64_gnullvm-0.42.1 vendor/windows_aarch64_msvc-0.42.0 + vendor/windows_aarch64_msvc-0.42.1 vendor/windows_i686_gnu-0.42.0 + vendor/windows_i686_gnu-0.42.1 vendor/windows_i686_msvc-0.42.0 + vendor/windows_i686_msvc-0.42.1 vendor/windows_x86_64_gnu-0.42.0 + vendor/windows_x86_64_gnu-0.42.1 vendor/windows_x86_64_gnullvm-0.42.0 + vendor/windows_x86_64_gnullvm-0.42.1 vendor/windows_x86_64_msvc-0.42.0 + vendor/windows_x86_64_msvc-0.42.1 vendor/xattr-0.2.2 vendor/yaml-merge-keys vendor/yaml-rust @@ -309,7 +365,7 @@ Files: C*.md LICENSE* compiler/* configure - config.toml.example + config.example.toml git-commit-hash git-commit-info library/* @@ -322,8 +378,8 @@ Files: C*.md src/rust* src/stage0.json src/tools/* - tests/* src/version + tests/* version x.py .cargo/config.toml @@ -367,6 +423,14 @@ Copyright: 2019-2022 Tom Kaitchuck <Tom.Kaitchuck@gmail.com> License: MIT OR Apache-2.0 Comment: see https://github.com/tkaitchuck/ahash +Files: + vendor/anstream/* + vendor/anstyle/* + vendor/anstyle-parse/* + vendor/anstyle-wincon/* +Copyright: 2023 Ed Page <eopage@gmail.com> +License: MIT or Apache-2.0 + Files: vendor/ar_archive_writer/* Copyright: 2003-2017 University of Illinois at Urbana-Champaign. License: Apache-2.0 with LLVM exception @@ -542,6 +606,12 @@ Copyright: 2015-2022 The Rust Project Developers License: MIT or Apache-2.0 Comment: see https://github.com/rust-lang/backtrace-rs +Files: vendor/basic-toml/* +Copyright: 2014-2023 Alex Crichton <alex@alexcrichton.com> + 2014-2023 David Tolnay <dtolnay@gmail.com> +License: MIT OR Apache-2.0 +Comment: see https://github.com/dtolnay/basic-toml + Files: vendor/block-buffer/* vendor/digest/* @@ -633,6 +703,7 @@ Comment: see https://github.com/chronotope/chrono Files: vendor/clap/* vendor/clap-3.*/* + vendor/clap_builder/* vendor/clap_complete/* vendor/clap_derive/* vendor/clap_derive-3.*/* @@ -647,6 +718,13 @@ Copyright: 2016-2020 Thomas Wickham <mackwic@gmail.com> License: MPL-2.0 Comment: see https://github.com/mackwic/colored +Files: + vendor/concolor-override/* + vendor/concolor-query/* +Copyright: 2021-2022 Ed Page <eopage@gmail.com> +License: MIT OR Apache-2.0 +Comment: see https://github.com/rust-cli/concolor + Files: vendor/convert_case/* Copyright: 2020-2022 David Purdum <purdum41@gmail.com> License: MIT @@ -722,6 +800,7 @@ Files: vendor/itoa/* vendor/quote/* vendor/syn/* + vendor/syn-1.*/* vendor/unicode-ident/* Copyright: 2016-2022 David Tolnay <dtolnay@gmail.com> License: MIT or Apache-2.0 @@ -792,7 +871,9 @@ Copyright: 2015-2020 Niko Matsakis <niko@alum.mit.edu> License: MIT or Apache-2.0 Comment: see https://github.com/nikomatsakis/ena -Files: vendor/errno/* +Files: + vendor/errno/* + vendor/errno-*/* Copyright: 2015-2022 Chris Wong <lambda.fairy@gmail.com> License: MIT or Apache-2.0 Comment: see https://github.com/lambda-fairy/rust-errno @@ -971,6 +1052,11 @@ Copyright: 2018-2021 Changseok Han <freestrings@gmail.com> License: MIT Comment: see https://github.com/freestrings/jsonpath +Files: vendor/junction/* +Copyright: 2019-2023 Lzu Tao <taolzu@gmail.com> +License: MIT +Comment: see https://github.com/lzutao/junction + Files: vendor/lazycell/* Copyright: 2016-2020 Alex Crichton <alex@alexcrichton.com> 2016-2020 Nikita Pekin <contact@nikitapek.in> @@ -994,7 +1080,9 @@ Copyright: 2018-2021 Jorge Aparicio <jorge@japaric.io> License: MIT OR Apache-2.0 Comment: see https://github.com/rust-lang-nursery/libm -Files: vendor/linux-raw-sys/* +Files: + vendor/linux-raw-sys/* + vendor/linux-raw-sys-0.*/* Copyright: 2021-2022 Dan Gohman <dev@sunfishcode.online> License: Apache-2.0 with LLVM exception OR Apache-2.0 OR MIT Comment: see https://github.com/sunfishcode/linux-raw-sys @@ -1042,6 +1130,16 @@ Copyright: 2017-2019 Gilad Naaman <gilad.naaman@gmail.com> License: MIT Comment: see https://github.com/Gilnaa/memoffset +Files: vendor/mime/* +Copyright: 2014-2019 Sean McArthur <sean@seanmonstar.com> +License: MIT or Apache-2.0 +Comment: see https://github.com/hyperium/mime + +Files: vendor/mime_guess/* +Copyright: 2015-2023 Austin Bonander <austin.bonander@gmail.com> +License: MIT +Comment: see https://github.com/abonander/mime_guess + Files: vendor/minifier/* Copyright: 2017-2018 Guillaume Gomez <guillaume1.gomez@gmail.com> License: MIT @@ -1318,9 +1416,11 @@ Copyright: License: Apache-2.0 or MIT Comment: see https://github.com/killercup/rustfix -Files: vendor/rustix/* -Copyright: 2020-2022 Dan Gohman <dev@sunfishcode.online> - 2020-2022 Jakub Konka <kubkon@jakubkonka.com> +Files: + vendor/rustix/* + vendor/rustix-0.*/* +Copyright: 2020-2023 Dan Gohman <dev@sunfishcode.online> + 2020-2023 Jakub Konka <kubkon@jakubkonka.com> License: Apache-2.0 with LLVM exception OR Apache-2.0 OR MIT Comment: see https://github.com/bytecodealliance/rustix @@ -1439,9 +1539,11 @@ Copyright: 2017-2023 Peter Glotfelty <peter.glotfelty@microsoft.com> License: MIT Comment: see https://github.com/Peternator7/strum -Files: vendor/synstructure/* +Files: + vendor/synstructure/* + vendor/synstructure-0.*/* Copyright: - 2016-2019 Nika Layzell <nika@thelayzells.com> + 2016-2023 Nika Layzell <nika@thelayzells.com> License: MIT Comment: see https://github.com/mystor/synstructure @@ -1510,6 +1612,13 @@ Copyright: 2021-2022 David Wood <david.wood@huawei.com> License: MIT OR Apache-2.0 Comment: see https://github.com/davidtwco/thorin +Files: vendor/threadpool/* +Copyright: 2015-2021 The Rust Project Developers + 2015-2021 Corey Farwell <coreyf@rwell.org> + 2015-2021 Stefan Schindler <dns2utf8@estada.ch> +License: MIT or Apache-2.0 +Comment: see https://github.com/rust-threadpool/rust-threadpool + Files: vendor/tinystr/* Copyright: 2019-2022 Raph Levien <raph.levien@gmail.com> 2019-2022 Zibi Braniecki <zibi@braniecki.net> @@ -1639,6 +1748,12 @@ 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/utf8parse/* +Copyright: 2016-2023 Joe Wilm <joe@jwilm.com> + 2016-2023 Christian Duerr <contact@christianduerr.com> +License: Apache-2.0 OR MIT +Comment: see https://github.com/alacritty/vte + Files: vendor/uuid/* Copyright: 2014-2023 Ashley Mannix<ashleymannix@live.com.au> 2014-2023 Christopher Armstrong @@ -1749,6 +1864,7 @@ License: MIT Comment: see https://github.com/tokio-rs/valuable Files: + vendor/windows/* vendor/windows-sys/* vendor/windows-sys-0.*/* vendor/windows-targets/* diff --git a/debian/get-stage0.py b/debian/get-stage0.py index 1f55c53a2..49f8066ca 100755 --- a/debian/get-stage0.py +++ b/debian/get-stage0.py @@ -3,6 +3,7 @@ # In that case, you probably just need to override the failing step in our # DownloadOnlyRustBuild class below. +import shutil import sys import bootstrap @@ -10,7 +11,7 @@ from bootstrap import RustBuild class DownloadOnlyRustBuild(RustBuild): triple = None - def build_bootstrap(self): + def build_bootstrap(self, color, verbose_count): pass def run(self, *args): pass @@ -25,7 +26,13 @@ def main(argv): triple = argv.pop(1) DownloadOnlyRustBuild.triple = triple bootstrap.RustBuild = DownloadOnlyRustBuild - bootstrap.bootstrap(False) + args = bootstrap.parse_args() + # bootstrap.py likes to delete our .cargo directory out from under us + shutil.move(".cargo", ".cargo-bak") + try: + bootstrap.bootstrap(args) + finally: + shutil.move(".cargo-bak", ".cargo") if __name__ == '__main__': main(sys.argv) diff --git a/debian/libstd-rust-1.69.lintian-overrides b/debian/libstd-rust-1.69.lintian-overrides deleted file mode 100644 index f5bc02afc..000000000 --- a/debian/libstd-rust-1.69.lintian-overrides +++ /dev/null @@ -1,13 +0,0 @@ -# "libstd" just seemed too generic -libstd-rust-1.69 binary: package-name-doesnt-match-sonames -libstd-rust-1.69 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.69 binary: dev-pkg-without-shlib-symlink -libstd-rust-1.69 binary: shlib-without-versioned-soname -libstd-rust-1.69 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.69 binary: library-not-linked-against-libc diff --git a/debian/libstd-rust-1.69.install b/debian/libstd-rust-1.70.install index cd4545cca..cd4545cca 100644 --- a/debian/libstd-rust-1.69.install +++ b/debian/libstd-rust-1.70.install diff --git a/debian/libstd-rust-1.70.lintian-overrides b/debian/libstd-rust-1.70.lintian-overrides new file mode 100644 index 000000000..cfb4b9186 --- /dev/null +++ b/debian/libstd-rust-1.70.lintian-overrides @@ -0,0 +1,13 @@ +# "libstd" just seemed too generic +libstd-rust-1.70 binary: package-name-doesnt-match-sonames +libstd-rust-1.70 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.70 binary: dev-pkg-without-shlib-symlink +libstd-rust-1.70 binary: shlib-without-versioned-soname +libstd-rust-1.70 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.70 binary: library-not-linked-against-libc diff --git a/debian/make_orig-stage0_tarball.sh b/debian/make_orig-stage0_tarball.sh index c6593f25b..d3f6ee38f 100755 --- a/debian/make_orig-stage0_tarball.sh +++ b/debian/make_orig-stage0_tarball.sh @@ -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 armhf i386 mips64el ppc64el riscv64 s390x}" rm -f stage0/*/*.sha256 mkdir -p stage0 build && ln -sf ../stage0 build/cache diff --git a/debian/patches/d-0000-ignore-removed-submodules.patch b/debian/patches/d-0000-ignore-removed-submodules.patch index 2f1c323c3..588e53b3b 100644 --- a/debian/patches/d-0000-ignore-removed-submodules.patch +++ b/debian/patches/d-0000-ignore-removed-submodules.patch @@ -14,11 +14,11 @@ Subject: d-0000-ignore-removed-submodules src/tools/tidy/src/deps.rs | 4 +++- 9 files changed, 15 insertions(+), 62 deletions(-) -diff --git a/Cargo.toml b/Cargo.toml -index 15cbb26..c012319 100644 ---- a/Cargo.toml -+++ b/Cargo.toml -@@ -18,29 +18,15 @@ members = [ +Index: rust/Cargo.toml +=================================================================== +--- rust.orig/Cargo.toml ++++ rust/Cargo.toml +@@ -18,28 +18,15 @@ members = [ "src/tools/tidy", "src/tools/tier-check", "src/tools/build-manifest", @@ -44,11 +44,10 @@ index 15cbb26..c012319 100644 "src/tools/jsondoclint", "src/tools/html-checker", - "src/tools/bump-stage0", -- "src/tools/replace-version-placeholder", + "src/tools/replace-version-placeholder", "src/tools/lld-wrapper", "src/tools/collect-license-metadata", - "src/tools/generate-copyright", -@@ -105,9 +91,6 @@ miniz_oxide.debug = 0 +@@ -106,9 +93,6 @@ miniz_oxide.debug = 0 object.debug = 0 [patch.crates-io] @@ -58,11 +57,11 @@ index 15cbb26..c012319 100644 # See comments in `library/rustc-std-workspace-core/README.md` for what's going on # here -diff --git a/src/bootstrap/bootstrap.py b/src/bootstrap/bootstrap.py -index 013d1ab..f6fd37b 100644 ---- a/src/bootstrap/bootstrap.py -+++ b/src/bootstrap/bootstrap.py -@@ -777,10 +777,6 @@ class RustBuild(object): +Index: rust/src/bootstrap/bootstrap.py +=================================================================== +--- rust.orig/src/bootstrap/bootstrap.py ++++ rust/src/bootstrap/bootstrap.py +@@ -781,10 +781,6 @@ class RustBuild(object): args = [self.cargo(), "build", "--manifest-path", os.path.join(self.rust_root, "src/bootstrap/Cargo.toml")] args.extend("--verbose" for _ in range(verbose_count)) @@ -73,23 +72,73 @@ index 013d1ab..f6fd37b 100644 if self.get_toml("metrics", "build"): args.append("--features") args.append("build-metrics") -diff --git a/src/bootstrap/builder.rs b/src/bootstrap/builder.rs -index b33fc02..4492577 100644 ---- a/src/bootstrap/builder.rs -+++ b/src/bootstrap/builder.rs -@@ -629,8 +629,6 @@ impl<'a> Builder<'a> { - tool::RemoteTestClient, +Index: rust/src/bootstrap/builder.rs +=================================================================== +--- rust.orig/src/bootstrap/builder.rs ++++ rust/src/bootstrap/builder.rs +@@ -491,20 +491,20 @@ impl<'a> ShouldRun<'a> { + static SUBMODULES_PATHS: OnceCell<Vec<String>> = OnceCell::new(); + + let init_submodules_paths = |src: &PathBuf| { +- let file = File::open(src.join(".gitmodules")).unwrap(); ++ //let file = File::open(src.join(".gitmodules")).unwrap(); + + let mut submodules_paths = vec![]; +- for line in BufReader::new(file).lines() { +- if let Ok(line) = line { +- let line = line.trim(); +- +- if line.starts_with("path") { +- let actual_path = +- line.split(' ').last().expect("Couldn't get value of path"); +- submodules_paths.push(actual_path.to_owned()); +- } +- } +- } ++ //for line in BufReader::new(file).lines() { ++ // if let Ok(line) = line { ++ // let line = line.trim(); ++ ++ // if line.starts_with("path") { ++ // let actual_path = ++ // line.split(' ').last().expect("Couldn't get value of path"); ++ // submodules_paths.push(actual_path.to_owned()); ++ // } ++ // } ++ //} + + submodules_paths + }; +@@ -658,24 +658,13 @@ impl<'a> Builder<'a> { + tool::Linkchecker, + tool::CargoTest, + tool::Compiletest, +- tool::RemoteTestServer, +- tool::RemoteTestClient, tool::RustInstaller, - tool::Cargo, +- tool::Cargo, - tool::Rls, - tool::RustAnalyzer, tool::RustAnalyzerProcMacroSrv, tool::RustDemangler, tool::Rustdoc, -@@ -651,10 +649,6 @@ impl<'a> Builder<'a> { + tool::Clippy, + tool::CargoClippy, +- llvm::Llvm, +- llvm::Sanitizers, + tool::Rustfmt, +- tool::Miri, +- tool::CargoMiri, +- llvm::Lld, +- llvm::CrtBeginEnd + ), + Kind::Check | Kind::Clippy | Kind::Fix => describe!( + check::Std, +@@ -683,11 +672,6 @@ impl<'a> Builder<'a> { + check::Rustdoc, check::CodegenBackend, check::Clippy, - check::Miri, +- check::Miri, - check::CargoMiri, - check::MiroptTestTools, - check::Rls, @@ -97,15 +146,24 @@ index b33fc02..4492577 100644 check::Rustfmt, check::Bootstrap ), -@@ -684,7 +678,6 @@ impl<'a> Builder<'a> { +@@ -717,8 +701,6 @@ impl<'a> Builder<'a> { + test::TierCheck, test::ReplacePlaceholderTest, test::Cargotest, - test::Cargo, +- test::Cargo, - test::RustAnalyzer, test::ErrorIndex, test::Distcheck, test::RunMakeFullDeps, -@@ -732,11 +725,8 @@ impl<'a> Builder<'a> { +@@ -734,7 +716,6 @@ impl<'a> Builder<'a> { + test::EmbeddedBook, + test::EditionGuide, + test::Rustfmt, +- test::Miri, + test::Clippy, + test::RustDemangler, + test::CompiletestTest, +@@ -767,11 +748,8 @@ impl<'a> Builder<'a> { doc::RustdocBook, doc::RustByExample, doc::RustcBook, @@ -117,24 +175,42 @@ index b33fc02..4492577 100644 doc::EmbeddedBook, doc::EditionGuide, doc::StyleGuide, -@@ -752,8 +742,6 @@ impl<'a> Builder<'a> { +@@ -787,13 +765,9 @@ impl<'a> Builder<'a> { + dist::RustcDev, dist::Analysis, dist::Src, - dist::Cargo, +- dist::Cargo, - dist::Rls, - dist::RustAnalyzer, dist::Rustfmt, dist::RustDemangler, dist::Clippy, -@@ -774,7 +762,6 @@ impl<'a> Builder<'a> { +- dist::Miri, + dist::LlvmTools, + dist::RustDev, + dist::Bootstrap, +@@ -809,12 +783,9 @@ impl<'a> Builder<'a> { + Kind::Install => describe!( install::Docs, install::Std, - install::Cargo, +- install::Cargo, - install::RustAnalyzer, install::Rustfmt, install::RustDemangler, install::Clippy, -@@ -1878,10 +1865,7 @@ impl<'a> Builder<'a> { +- install::Miri, + install::LlvmTools, + install::Src, + install::Rustc +@@ -824,7 +795,6 @@ impl<'a> Builder<'a> { + run::BuildManifest, + run::BumpStage0, + run::ReplaceVersionPlaceholder, +- run::Miri, + run::CollectLicenseMetadata, + run::GenerateCopyright, + ), +@@ -1949,10 +1919,7 @@ impl<'a> Builder<'a> { } } @@ -146,10 +222,10 @@ index b33fc02..4492577 100644 cargo.arg("--frozen"); } -diff --git a/src/bootstrap/doc.rs b/src/bootstrap/doc.rs -index cc80763..19754a2 100644 ---- a/src/bootstrap/doc.rs -+++ b/src/bootstrap/doc.rs +Index: rust/src/bootstrap/doc.rs +=================================================================== +--- rust.orig/src/bootstrap/doc.rs ++++ rust/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?). @@ -158,11 +234,11 @@ index cc80763..19754a2 100644 ClippyBook, "src/tools/clippy/book", "clippy"; EditionGuide, "src/doc/edition-guide", "edition-guide", submodule; EmbeddedBook, "src/doc/embedded-book", "embedded-book", submodule; -diff --git a/src/bootstrap/test.rs b/src/bootstrap/test.rs -index b4f1506..27236f3 100644 ---- a/src/bootstrap/test.rs -+++ b/src/bootstrap/test.rs -@@ -2024,17 +2024,7 @@ impl Step for RustcGuide { +Index: rust/src/bootstrap/test.rs +=================================================================== +--- rust.orig/src/bootstrap/test.rs ++++ rust/src/bootstrap/test.rs +@@ -2070,17 +2070,7 @@ impl Step for RustcGuide { } fn run(self, builder: &Builder<'_>) { @@ -181,10 +257,10 @@ index b4f1506..27236f3 100644 } } -diff --git a/src/tools/clippy/Cargo.toml b/src/tools/clippy/Cargo.toml -index 70d1268..c7c6c3e 100644 ---- a/src/tools/clippy/Cargo.toml -+++ b/src/tools/clippy/Cargo.toml +Index: rust/src/tools/clippy/Cargo.toml +=================================================================== +--- rust.orig/src/tools/clippy/Cargo.toml ++++ rust/src/tools/clippy/Cargo.toml @@ -36,11 +36,6 @@ walkdir = "2.3" # This is used by the `collect-metadata` alias. filetime = "0.2" @@ -197,10 +273,10 @@ index 70d1268..c7c6c3e 100644 # UI test dependencies clap = { version = "4.1.4", features = ["derive"] } clippy_utils = { path = "clippy_utils" } -diff --git a/src/tools/rust-analyzer/Cargo.toml b/src/tools/rust-analyzer/Cargo.toml -index 333f03c..2a0faa2 100644 ---- a/src/tools/rust-analyzer/Cargo.toml -+++ b/src/tools/rust-analyzer/Cargo.toml +Index: rust/src/tools/rust-analyzer/Cargo.toml +=================================================================== +--- rust.orig/src/tools/rust-analyzer/Cargo.toml ++++ rust/src/tools/rust-analyzer/Cargo.toml @@ -1,5 +1,14 @@ [workspace] -members = ["xtask/", "lib/*", "crates/*"] @@ -217,10 +293,10 @@ index 333f03c..2a0faa2 100644 exclude = ["crates/proc-macro-test/imp"] [workspace.package] -diff --git a/src/tools/rustfmt/Cargo.toml b/src/tools/rustfmt/Cargo.toml -index 87ce59d..12ed654 100644 ---- a/src/tools/rustfmt/Cargo.toml -+++ b/src/tools/rustfmt/Cargo.toml +Index: rust/src/tools/rustfmt/Cargo.toml +=================================================================== +--- rust.orig/src/tools/rustfmt/Cargo.toml ++++ rust/src/tools/rustfmt/Cargo.toml @@ -59,11 +59,6 @@ unicode_categories = "0.1" rustfmt-config_proc_macro = { version = "0.3", path = "config_proc_macro" } @@ -233,11 +309,11 @@ index 87ce59d..12ed654 100644 # Rustc dependencies are loaded from the sysroot, Cargo doesn't know about them. [package.metadata.rust-analyzer] -diff --git a/src/tools/tidy/src/deps.rs b/src/tools/tidy/src/deps.rs -index bddfdcf..9bac4b7 100644 ---- a/src/tools/tidy/src/deps.rs -+++ b/src/tools/tidy/src/deps.rs -@@ -333,7 +333,7 @@ const FORBIDDEN_TO_HAVE_DUPLICATES: &[&str] = &[ +Index: rust/src/tools/tidy/src/deps.rs +=================================================================== +--- rust.orig/src/tools/tidy/src/deps.rs ++++ rust/src/tools/tidy/src/deps.rs +@@ -337,7 +337,7 @@ const FORBIDDEN_TO_HAVE_DUPLICATES: &[&s // This crate takes quite a long time to build, so don't allow two versions of them // to accidentally sneak into our dependency graph, in order to ensure we keep our CI times // under control. @@ -246,7 +322,7 @@ index bddfdcf..9bac4b7 100644 ]; /// Dependency checks. -@@ -609,6 +609,8 @@ fn direct_deps_of<'a>(metadata: &'a Metadata, pkg_id: &'a PackageId) -> Vec<&'a +@@ -613,6 +613,8 @@ fn direct_deps_of<'a>(metadata: &'a Meta } fn check_rustfix(metadata: &Metadata, bad: &mut bool) { diff --git a/debian/patches/d-0002-mdbook-strip-embedded-libs.patch b/debian/patches/d-0002-mdbook-strip-embedded-libs.patch index cd17dc2e6..81a0e2792 100644 --- a/debian/patches/d-0002-mdbook-strip-embedded-libs.patch +++ b/debian/patches/d-0002-mdbook-strip-embedded-libs.patch @@ -4,14 +4,14 @@ Subject: d-0002-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 --- - src/tools/linkchecker/main.rs | 28 ++++++- - 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 | 97 +--------------------- - vendor/mdbook/src/theme/mod.rs | 27 ------ - vendor/mdbook/src/theme/searcher/mod.rs | 2 - - 7 files changed, 37 insertions(+), 205 deletions(-) + src/tools/linkchecker/main.rs | 28 +++++- + vendor/mdbook/src/book/init.rs | 19 ---- + .../src/renderer/html_handlebars/hbs_renderer.rs | 110 ++++----------------- + .../mdbook/src/renderer/html_handlebars/search.rs | 2 - + vendor/mdbook/src/theme/index.hbs | 99 +------------------ + vendor/mdbook/src/theme/mod.rs | 27 ----- + vendor/mdbook/src/theme/searcher/mod.rs | 2 - + 7 files changed, 47 insertions(+), 240 deletions(-) diff --git a/src/tools/linkchecker/main.rs b/src/tools/linkchecker/main.rs index 4170c32..d7dcda7 100644 @@ -67,10 +67,10 @@ index 4170c32..d7dcda7 100644 report.links_ignored_exception += 1; } else { diff --git a/vendor/mdbook/src/book/init.rs b/vendor/mdbook/src/book/init.rs -index dd3fa8b..a088517 100644 +index ebcdd93..41dab42 100644 --- a/vendor/mdbook/src/book/init.rs +++ b/vendor/mdbook/src/book/init.rs -@@ -152,12 +152,6 @@ impl BookBuilder { +@@ -153,25 +153,6 @@ impl BookBuilder { let mut js = File::create(themedir.join("book.js"))?; js.write_all(theme::JS)?; @@ -80,14 +80,27 @@ index dd3fa8b..a088517 100644 - let mut highlight_js = File::create(themedir.join("highlight.js"))?; - highlight_js.write_all(theme::HIGHLIGHT_JS)?; - +- write_file(&themedir.join("fonts"), "fonts.css", theme::fonts::CSS)?; +- for (file_name, contents) in theme::fonts::LICENSES { +- write_file(&themedir, file_name, contents)?; +- } +- for (file_name, contents) in theme::fonts::OPEN_SANS.iter() { +- write_file(&themedir, file_name, contents)?; +- } +- write_file( +- &themedir, +- theme::fonts::SOURCE_CODE_PRO.0, +- theme::fonts::SOURCE_CODE_PRO.1, +- )?; +- Ok(()) } diff --git a/vendor/mdbook/src/renderer/html_handlebars/hbs_renderer.rs b/vendor/mdbook/src/renderer/html_handlebars/hbs_renderer.rs -index 1b648da..5fe813c 100644 +index e170e2f..caa2eff 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}; +@@ -3,13 +3,14 @@ use crate::config::{BookConfig, Config, HtmlConfig, Playground, RustEdition}; use crate::errors::*; use crate::renderer::html_handlebars::helpers; use crate::renderer::{RenderContext, Renderer}; @@ -96,15 +109,14 @@ index 1b648da..5fe813c 100644 use crate::utils; use std::borrow::Cow; -@@ -11,6 +11,7 @@ use std::collections::BTreeMap; + 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 std::path::{Path, PathBuf}; use crate::utils::fs::get_404_output_file; - use handlebars::Handlebars; -@@ -235,80 +236,13 @@ impl HtmlHandlebars { +@@ -235,105 +236,28 @@ impl HtmlHandlebars { if let Some(contents) = &theme.favicon_svg { write_file(destination, "favicon.svg", contents)?; } @@ -127,27 +139,42 @@ index 1b648da..5fe813c 100644 - destination, - "FontAwesome/fonts/fontawesome-webfont.svg", - theme::FONT_AWESOME_SVG, -- )?; ++ symlink( ++ "/usr/share/fonts-font-awesome/css/font-awesome.min.css", ++ destination.join("css/font-awesome.min.css"), + )?; - write_file( - destination, - "FontAwesome/fonts/fontawesome-webfont.ttf", - theme::FONT_AWESOME_TTF, -- )?; ++ symlink( ++ "/usr/share/fonts-font-awesome/fonts", ++ destination.join("fonts"), + )?; - write_file( - destination, - "FontAwesome/fonts/fontawesome-webfont.woff", - theme::FONT_AWESOME_WOFF, -- )?; ++ symlink( ++ "/usr/share/javascript/highlight.js/styles/atelier-dune-light.css", ++ destination.join("highlight.css"), + )?; - write_file( - destination, - "FontAwesome/fonts/fontawesome-webfont.woff2", - theme::FONT_AWESOME_WOFF2, -- )?; ++ symlink( ++ "/usr/share/javascript/highlight.js/highlight.js", ++ destination.join("highlight.js"), + )?; - write_file( - destination, - "FontAwesome/fonts/FontAwesome.ttf", - theme::FONT_AWESOME_TTF, -- )?; ++ symlink( ++ "/usr/share/javascript/mathjax/MathJax.js", ++ destination.join("MathJax.js"), + )?; - if html_config.copy_fonts { - write_file(destination, "fonts/fonts.css", theme::fonts::CSS)?; - for (file_name, contents) in theme::fonts::LICENSES.iter() { @@ -162,6 +189,31 @@ index 1b648da..5fe813c 100644 - theme::fonts::SOURCE_CODE_PRO.1, - )?; - } +- if let Some(fonts_css) = &theme.fonts_css { +- if !fonts_css.is_empty() { +- if html_config.copy_fonts { +- warn!( +- "output.html.copy_fonts is deprecated.\n\ +- Set copy_fonts=false and ensure the fonts you want are in \ +- the `theme/fonts/` directory." +- ); +- } +- write_file(destination, "fonts/fonts.css", &fonts_css)?; +- } +- } +- if !html_config.copy_fonts && theme.fonts_css.is_none() { +- warn!( +- "output.html.copy_fonts is deprecated.\n\ +- This book appears to have copy_fonts=false without a fonts.css file.\n\ +- Add an empty `theme/fonts/fonts.css` file to squelch this warning." +- ); +- } +- for font_file in &theme.font_files { +- let contents = fs::read(font_file)?; +- let filename = font_file.file_name().unwrap(); +- let filename = Path::new("fonts").join(filename); +- write_file(destination, filename, &contents)?; +- } - - let playground_config = &html_config.playground; - @@ -182,11 +234,6 @@ index 1b648da..5fe813c 100644 - 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(()) } @@ -204,7 +251,7 @@ index a9e2f5c..3e3f69c 100644 } diff --git a/vendor/mdbook/src/theme/index.hbs b/vendor/mdbook/src/theme/index.hbs -index 147eb9a..27d358b 100644 +index 6f3948c..7e5c54c 100644 --- a/vendor/mdbook/src/theme/index.hbs +++ b/vendor/mdbook/src/theme/index.hbs @@ -33,10 +33,7 @@ @@ -228,7 +275,7 @@ index 147eb9a..27d358b 100644 {{/if}} </head> <body> -@@ -60,46 +57,6 @@ +@@ -61,48 +58,6 @@ var default_theme = window.matchMedia("(prefers-color-scheme: dark)").matches ? "{{ preferred_dark_theme }}" : "{{ default_theme }}"; </script> @@ -263,10 +310,12 @@ index 147eb9a..27d358b 100644 - <!-- Hide / unhide sidebar before it is displayed --> - <script> - var html = document.querySelector('html'); -- var sidebar = 'hidden'; +- var sidebar = null; - if (document.body.clientWidth >= 1080) { - try { sidebar = localStorage.getItem('mdbook-sidebar'); } catch(e) { } - sidebar = sidebar || 'visible'; +- } else { +- sidebar = 'hidden'; - } - html.classList.remove('sidebar-visible'); - html.classList.add("sidebar-" + sidebar); @@ -275,7 +324,7 @@ index 147eb9a..27d358b 100644 <nav id="sidebar" class="sidebar" aria-label="Table of contents"> <div class="sidebar-scrollbox"> {{#toc}}{{/toc}} -@@ -237,54 +194,8 @@ +@@ -240,54 +195,8 @@ </script> {{/if}} @@ -333,7 +382,7 @@ index 147eb9a..27d358b 100644 <!-- Custom JS scripts --> {{#each additional_js}} diff --git a/vendor/mdbook/src/theme/mod.rs b/vendor/mdbook/src/theme/mod.rs -index 7af5e2b..3086fcf 100644 +index 6e6b509..ef8886b 100644 --- a/vendor/mdbook/src/theme/mod.rs +++ b/vendor/mdbook/src/theme/mod.rs @@ -1,9 +1,5 @@ @@ -366,7 +415,7 @@ index 7af5e2b..3086fcf 100644 /// The `Theme` struct should be used instead of the static variables because /// the `new()` method will look if the user has a theme directory in their -@@ -57,11 +42,8 @@ pub struct Theme { +@@ -59,11 +44,8 @@ pub struct Theme { pub favicon_png: Option<Vec<u8>>, pub favicon_svg: Option<Vec<u8>>, pub js: Vec<u8>, @@ -378,7 +427,7 @@ index 7af5e2b..3086fcf 100644 } impl Theme { -@@ -91,9 +73,6 @@ impl Theme { +@@ -93,9 +75,6 @@ impl Theme { theme_dir.join("css/variables.css"), &mut theme.variables_css, ), @@ -388,7 +437,7 @@ index 7af5e2b..3086fcf 100644 ( theme_dir.join("tomorrow-night.css"), &mut theme.tomorrow_night_css, -@@ -156,11 +135,8 @@ impl Default for Theme { +@@ -183,11 +162,8 @@ impl Default for Theme { favicon_png: Some(FAVICON_PNG.to_owned()), favicon_svg: Some(FAVICON_SVG.to_owned()), js: JS.to_owned(), @@ -400,7 +449,7 @@ index 7af5e2b..3086fcf 100644 } } } -@@ -243,11 +219,8 @@ mod tests { +@@ -273,11 +249,8 @@ mod tests { favicon_png: Some(Vec::new()), favicon_svg: Some(Vec::new()), js: Vec::new(), diff --git a/debian/patches/d-0004-clippy-feature-sync.patch b/debian/patches/d-0004-clippy-feature-sync.patch index 23667ffde..f4a863a8e 100644 --- a/debian/patches/d-0004-clippy-feature-sync.patch +++ b/debian/patches/d-0004-clippy-feature-sync.patch @@ -10,7 +10,7 @@ this is what rustc_workspace_hack does in the upstream build. 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/tools/clippy/Cargo.toml b/src/tools/clippy/Cargo.toml -index c7c6c3e..7e453c7 100644 +index a24d2f4..3681c85 100644 --- a/src/tools/clippy/Cargo.toml +++ b/src/tools/clippy/Cargo.toml @@ -44,7 +44,7 @@ if_chain = "1.0" diff --git a/debian/patches/d-bootstrap-disable-git.patch b/debian/patches/d-bootstrap-disable-git.patch index 3e744b599..6f7f3f2e4 100644 --- a/debian/patches/d-bootstrap-disable-git.patch +++ b/debian/patches/d-bootstrap-disable-git.patch @@ -15,7 +15,7 @@ Forwarded: not-needed @@ -36,6 +36,12 @@ impl GitInfo { - pub fn new(ignore_git: bool, dir: &Path) -> GitInfo { + pub fn new(omit_git_hash: bool, dir: &Path) -> GitInfo { + // + // Debian: returning early because the Debian package is also in a git + // repository, but we don't want to parse gitinfo. This is @@ -27,7 +27,7 @@ Forwarded: not-needed match read_commit_info_file(dir) { --- a/src/bootstrap/dist.rs +++ b/src/bootstrap/dist.rs -@@ -968,7 +968,10 @@ +@@ -995,7 +995,10 @@ } // If we're building from git sources, we need to vendor a complete distribution. diff --git a/debian/patches/d-bootstrap-old-cargo-compat.patch b/debian/patches/d-bootstrap-old-cargo-compat.patch index 463e70369..a077e0c8f 100644 --- a/debian/patches/d-bootstrap-old-cargo-compat.patch +++ b/debian/patches/d-bootstrap-old-cargo-compat.patch @@ -17,7 +17,7 @@ Subject: Backwards-compat for cargo 0.47 --- a/src/bootstrap/doc.rs +++ b/src/bootstrap/doc.rs -@@ -598,7 +598,6 @@ +@@ -612,7 +612,6 @@ .arg(&*target_dir.to_string_lossy()) .arg("-p") .arg(package) @@ -25,15 +25,15 @@ Subject: Backwards-compat for cargo 0.47 .arg("--") .arg("-Z") .arg("unstable-options") -@@ -695,7 +694,6 @@ +@@ -712,7 +711,6 @@ cargo.rustdocflag("--generate-link-to-definition"); - compile::rustc_cargo(builder, &mut cargo, target); + compile::rustc_cargo(builder, &mut cargo, target, compiler.stage); 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`. -@@ -811,7 +809,6 @@ +@@ -845,7 +843,6 @@ &[], ); diff --git a/debian/patches/d-disable-download-tests.patch b/debian/patches/d-disable-download-tests.patch new file mode 100644 index 000000000..41531a87f --- /dev/null +++ b/debian/patches/d-disable-download-tests.patch @@ -0,0 +1,26 @@ +Index: rust/src/bootstrap/config/tests.rs +=================================================================== +--- rust.orig/src/bootstrap/config/tests.rs ++++ rust/src/bootstrap/config/tests.rs +@@ -11,6 +11,9 @@ fn parse(config: &str) -> Config { + + #[test] + fn download_ci_llvm() { ++ // Debian: this will attempt to download LLVM ++ return; ++ + if crate::llvm::is_ci_llvm_modified(&parse("")) { + eprintln!("Detected LLVM as non-available: running in CI and modified LLVM in this change"); + return; +@@ -39,7 +42,11 @@ fn download_ci_llvm() { + // - https://github.com/rust-lang/rust/pull/109162#issuecomment-1496782487 + #[test] + fn detect_src_and_out() { ++ // Debian: this will attempt to download a toolchain ++ return; ++ + fn test(cfg: Config, build_dir: Option<&str>) { ++ + // This will bring absolute form of `src/bootstrap` path + let current_dir = std::env::current_dir().unwrap(); + diff --git a/debian/patches/d-fix-rustix-outline.patch b/debian/patches/d-fix-rustix-outline.patch index 91b8530de..f141bad58 100644 --- a/debian/patches/d-fix-rustix-outline.patch +++ b/debian/patches/d-fix-rustix-outline.patch @@ -5,9 +5,9 @@ outline asm. --- a/vendor/rustix/Cargo.toml +++ b/vendor/rustix/Cargo.toml -@@ -115,9 +115,9 @@ +@@ -125,9 +125,9 @@ [dev-dependencies.tempfile] - version = "3.2.0" + version = "3.4.0" -[build-dependencies.cc] +[build-dependencies.cc_dep] @@ -17,7 +17,7 @@ outline asm. [features] all-apis = [ -@@ -230,6 +230,7 @@ +@@ -242,6 +242,7 @@ "Win32_NetworkManagement_IpHelper", "Win32_System_Threading", ] @@ -34,6 +34,57 @@ outline asm. use std::env::var; use std::io::Write; +@@ -158,16 +157,16 @@ + println!("cargo:rerun-if-changed={}", to); + + // If "cc" is not enabled, use a pre-built library. +- #[cfg(not(feature = "cc"))] ++ /*#[cfg(not(feature = "cc"))] + { + let _ = asm_name; + println!("cargo:rustc-link-search={}/{}", OUTLINE_PATH, profile); + println!("cargo:rustc-link-lib=static={}", name); +- } ++ }*/ + + // If "cc" is enabled, build the library from source, update the pre-built + // version, and assert that the pre-built version is checked in. +- #[cfg(feature = "cc")] ++ //#[cfg(feature = "cc")] + { + let out_dir = var("OUT_DIR").unwrap(); + // Add `-gdwarf-3` so that we always get the same output, regardless of +--- a/vendor/rustix-0.36.5/Cargo.toml ++++ b/vendor/rustix-0.36.5/Cargo.toml +@@ -116,9 +116,9 @@ + [dev-dependencies.tempfile] + version = "3.2.0" + +-[build-dependencies.cc] ++[build-dependencies.cc_dep] + version = "1.0.68" +-optional = true ++package = "cc" + + [features] + all-apis = [ +@@ -231,6 +231,7 @@ + "Win32_NetworkManagement_IpHelper", + "Win32_System_Threading", + ] ++cc = [] + + [target."cfg(windows)".dev-dependencies.ctor] + version = "0.1.21" +--- a/vendor/rustix-0.36.5/build.rs ++++ b/vendor/rustix-0.36.5/build.rs +@@ -1,5 +1,4 @@ +-#[cfg(feature = "cc")] +-use cc::Build; ++use cc_dep::Build; + use std::env::var; + use std::io::Write; + @@ -118,16 +117,16 @@ println!("cargo:rerun-if-changed={}", to); diff --git a/debian/patches/d-rust-gdb-paths b/debian/patches/d-rust-gdb-paths index 4be3024ea..119365af3 100644 --- a/debian/patches/d-rust-gdb-paths +++ b/debian/patches/d-rust-gdb-paths @@ -13,19 +13,6 @@ just hardcode path in wrapper script. diff --git a/src/etc/rust-gdb b/src/etc/rust-gdb index b950cea..5ec8752 100755 ---- a/src/etc/rust-gdb -+++ b/src/etc/rust-gdb -@@ -11,7 +11,7 @@ else - fi - - # Find out where the pretty printer Python module is --RUSTC_SYSROOT="$("$RUSTC" --print=sysroot)" -+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 -diff --git a/src/etc/rust-gdbgui b/src/etc/rust-gdbgui -index 9744913..613737d 100755 --- a/src/etc/rust-gdbgui +++ b/src/etc/rust-gdbgui @@ -40,7 +40,7 @@ else @@ -35,5 +22,5 @@ index 9744913..613737d 100755 -RUSTC_SYSROOT="$("$RUSTC" --print=sysroot)" +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 + # Get the commit hash for path remapping + RUSTC_COMMIT_HASH="$("$RUSTC" -vV | sed -n 's/commit-hash: \([a-zA-Z0-9_]*\)/\1/p')" diff --git a/debian/patches/d-rust-lldb-paths b/debian/patches/d-rust-lldb-paths index bea7a3844..41f3b87b4 100644 --- a/debian/patches/d-rust-lldb-paths +++ b/debian/patches/d-rust-lldb-paths @@ -23,7 +23,7 @@ index bce72f1..793f593 100755 RUST_LLDB="$RUSTC_SYSROOT/lib/rustlib/$host/bin/lldb" -lldb=lldb -+lldb=lldb-15 ++lldb=lldb-16 if [ -f "$RUST_LLDB" ]; then lldb="$RUST_LLDB" else diff --git a/debian/patches/d-rustc-i686-baseline.patch b/debian/patches/d-rustc-i686-baseline.patch index b856d9391..bc1e55d91 100644 --- a/debian/patches/d-rustc-i686-baseline.patch +++ b/debian/patches/d-rustc-i686-baseline.patch @@ -7,9 +7,11 @@ Subject: d-rustc-i686-baseline compiler/rustc_target/src/spec/i686_unknown_linux_gnu.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) ---- 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 @@ +Index: rust/compiler/rustc_target/src/spec/i686_unknown_linux_gnu.rs +=================================================================== +--- rust.orig/compiler/rustc_target/src/spec/i686_unknown_linux_gnu.rs ++++ rust/compiler/rustc_target/src/spec/i686_unknown_linux_gnu.rs +@@ -2,7 +2,7 @@ use crate::spec::{Cc, LinkerFlavor, Lld, pub fn target() -> Target { let mut base = super::linux_gnu_base::opts(); @@ -18,3 +20,30 @@ Subject: d-rustc-i686-baseline base.max_atomic_width = Some(64); base.supported_sanitizers = SanitizerSet::ADDRESS; base.add_pre_link_args(LinkerFlavor::Gnu(Cc::Yes, Lld::No), &["-m32"]); +Index: rust/tests/ui/sse2.rs +=================================================================== +--- rust.orig/tests/ui/sse2.rs ++++ rust/tests/ui/sse2.rs +@@ -15,7 +15,7 @@ fn main() { + } + Err(_) => return, + } +- if cfg!(any(target_arch = "x86", target_arch = "x86_64")) { ++ if cfg!(any(target_arch = "x86_64")) { + assert!(cfg!(target_feature = "sse2"), + "SSE2 was not detected as available on an x86 platform"); + } +Index: rust/tests/ui/abi/homogenous-floats-target-feature-mixup.rs +=================================================================== +--- rust.orig/tests/ui/abi/homogenous-floats-target-feature-mixup.rs ++++ rust/tests/ui/abi/homogenous-floats-target-feature-mixup.rs +@@ -24,7 +24,8 @@ fn main() { + match std::env::var("TARGET") { + Ok(s) => { + // Skip this tests on i586-unknown-linux-gnu where sse2 is disabled +- if s.contains("i586") { ++ // Debian: our i686 doesn't have SSE 2.. ++ if s.contains("i586") || s.contains("i686") { + return + } + } diff --git a/debian/patches/series b/debian/patches/series index c848c82e1..855cac4b6 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,24 +1,22 @@ # Patches for upstream # pending, or forwarded -u-ignore-reproducible-failure.patch u-reproducible-build.patch u-ignore-endian-big-diff.patch u-fix-get-toml-when-test.patch -u-fix-sysroot-detection-logic.patch - -# can be dropped once upstream updates rustix -u-fix-rustix-for-sparc64.patch +u-disable-fp-precision-test-on-i386.patch +u-riscv-disable-unpacked-split-debuginfo.patch +u-profiler.patch # not forwarded, or forwarded but unlikely to be merged u-ignore-ppc-hangs.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 d-fix-rustix-outline.patch +d-disable-download-tests.patch ## Patches needed by debian/prune-unused-deps, for building bootstrap d-0000-ignore-removed-submodules.patch diff --git a/debian/patches/u-disable-fp-precision-test-on-i386.patch b/debian/patches/u-disable-fp-precision-test-on-i386.patch new file mode 100644 index 000000000..cb6144650 --- /dev/null +++ b/debian/patches/u-disable-fp-precision-test-on-i386.patch @@ -0,0 +1,26 @@ +From: liushuyu <liushuyu011@gmail.com> +Date: Tue, 25 Jul 2023 09:48:12 +0800 +Subject: [PATCH] core library: Disable fpmath tests for i386 ... + +This patch disables the floating-point epsilon test for i386 since +x87 registers are too imprecise and can't produce the expected +results. + +Forwarded: https://github.com/rust-lang/rust/pull/114042 +--- + library/core/src/num/f32.rs | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/library/core/src/num/f32.rs b/library/core/src/num/f32.rs +index d050d21c8c57..f5c2d1c6bf68 100644 +--- a/library/core/src/num/f32.rs ++++ b/library/core/src/num/f32.rs +@@ -800,7 +800,7 @@ impl f32 { + /// let angle = std::f32::consts::PI; + /// + /// let abs_difference = (angle.to_degrees() - 180.0).abs(); +- /// ++ /// # #[cfg(not(target_arch = "x86"))] + /// assert!(abs_difference <= f32::EPSILON); + /// ``` + #[must_use = "this returns the result of the operation, \ diff --git a/debian/patches/u-fix-rustix-for-sparc64.patch b/debian/patches/u-fix-rustix-for-sparc64.patch deleted file mode 100644 index d0c636e3b..000000000 --- a/debian/patches/u-fix-rustix-for-sparc64.patch +++ /dev/null @@ -1,103 +0,0 @@ ---- a/vendor/rustix/src/termios/constants.rs -+++ b/vendor/rustix/src/termios/constants.rs -@@ -33,6 +33,8 @@ - )))] - pub use backend::termios::types::B1500000; - #[cfg(not(any( -+ target_arch = "sparc", -+ target_arch = "sparc64", - target_os = "dragonfly", - target_os = "freebsd", - target_os = "haiku", -@@ -96,6 +98,8 @@ - )))] - pub use backend::termios::types::B4000000; - #[cfg(not(any( -+ target_arch = "sparc", -+ target_arch = "sparc64", - target_os = "dragonfly", - target_os = "haiku", - target_os = "ios", -@@ -104,6 +108,8 @@ - )))] - pub use backend::termios::types::B460800; - #[cfg(not(any( -+ target_arch = "sparc", -+ target_arch = "sparc64", - target_os = "dragonfly", - target_os = "freebsd", - target_os = "haiku", -@@ -116,6 +122,8 @@ - )))] - pub use backend::termios::types::B500000; - #[cfg(not(any( -+ target_arch = "sparc", -+ target_arch = "sparc64", - target_os = "dragonfly", - target_os = "freebsd", - target_os = "haiku", -@@ -732,6 +740,8 @@ - )))] - backend::termios::types::B500000 => Some(500_000), - #[cfg(not(any( -+ target_arch = "sparc", -+ target_arch = "sparc64", - target_os = "dragonfly", - target_os = "freebsd", - target_os = "haiku", -@@ -744,6 +754,8 @@ - )))] - backend::termios::types::B576000 => Some(576_000), - #[cfg(not(any( -+ target_arch = "sparc", -+ target_arch = "sparc64", - target_os = "dragonfly", - target_os = "haiku", - target_os = "ios", -@@ -752,6 +764,8 @@ - )))] - backend::termios::types::B921600 => Some(921_600), - #[cfg(not(any( -+ target_arch = "sparc", -+ target_arch = "sparc64", - target_os = "dragonfly", - target_os = "freebsd", - target_os = "haiku", ---- a/vendor/rustix/src/termios/mod.rs -+++ b/vendor/rustix/src/termios/mod.rs -@@ -41,6 +41,8 @@ - )))] - pub use constants::B1500000; - #[cfg(not(any( -+ target_arch = "sparc", -+ target_arch = "sparc64", - target_os = "dragonfly", - target_os = "freebsd", - target_os = "haiku", -@@ -104,6 +106,8 @@ - )))] - pub use constants::B4000000; - #[cfg(not(any( -+ target_arch = "sparc", -+ target_arch = "sparc64", - target_os = "dragonfly", - target_os = "haiku", - target_os = "ios", -@@ -112,6 +116,8 @@ - )))] - pub use constants::B460800; - #[cfg(not(any( -+ target_arch = "sparc", -+ target_arch = "sparc64", - target_os = "dragonfly", - target_os = "freebsd", - target_os = "haiku", -@@ -124,6 +130,8 @@ - )))] - pub use constants::B500000; - #[cfg(not(any( -+ target_arch = "sparc", -+ target_arch = "sparc64", - target_os = "dragonfly", - target_os = "freebsd", - target_os = "haiku", diff --git a/debian/patches/u-fix-sysroot-detection-logic.patch b/debian/patches/u-fix-sysroot-detection-logic.patch deleted file mode 100644 index 64cc291f7..000000000 --- a/debian/patches/u-fix-sysroot-detection-logic.patch +++ /dev/null @@ -1,46 +0,0 @@ -Description: Fix sysroot detection which would result in /usr/lib/lib/rustlib - This patch is a mixture of two upstream fix attempts. The first from - https://github.com/rust-lang/rust/pull/108376 didn't actually solve the - problem in Debian's case. After reporting that in $Bug, a second attempt is - made at https://github.com/rust-lang/rust/pull/110281, which worked. -Bug: https://github.com/rust-lang/rust/issues/109994 ---- a/compiler/rustc_session/src/filesearch.rs -+++ b/compiler/rustc_session/src/filesearch.rs -@@ -179,7 +179,7 @@ - ))?; - - // if `dir` points target's dir, move up to the sysroot -- if dir.ends_with(crate::config::host_triple()) { -+ let mut sysroot_dir = if dir.ends_with(crate::config::host_triple()) { - dir.parent() // chop off `$target` - .and_then(|p| p.parent()) // chop off `rustlib` - .and_then(|p| { -@@ -194,13 +194,25 @@ - } - }) - .map(|s| s.to_owned()) -- .ok_or(format!( -+ .ok_or_else(|| format!( - "Could not move 3 levels upper using `parent()` on {}", - dir.display() -- )) -+ ))? - } else { -- Ok(dir.to_owned()) -+ dir.to_owned() -+ }; -+ -+ // On multiarch linux systems, there will be multiarch directory named -+ // with the architecture(e.g `x86_64-linux-gnu`) under the `lib` directory. -+ // Which cause us to mistakenly end up in the lib directory instead of the sysroot directory. -+ if sysroot_dir.ends_with("lib") { -+ sysroot_dir = -+ sysroot_dir.parent().map(|real_sysroot| real_sysroot.to_owned()).ok_or_else( -+ || format!("Could not move to parent path of {}", sysroot_dir.display()), -+ )? - } -+ -+ Ok(sysroot_dir) - } - - // Use env::args().next() to get the path of the executable without diff --git a/debian/patches/u-ignore-reproducible-failure.patch b/debian/patches/u-ignore-reproducible-failure.patch deleted file mode 100644 index 6ea14023d..000000000 --- a/debian/patches/u-ignore-reproducible-failure.patch +++ /dev/null @@ -1,22 +0,0 @@ -From: Debian Rust Maintainers <pkg-rust-maintainers@alioth-lists.debian.net> -Date: Thu, 14 Jul 2022 13:17:37 +0200 -Subject: u-ignore-reproducible-failure - -Bug: https://github.com/rust-lang/rust/issues/89911 ---- - src/test/run-make-fulldeps/reproducible-build-2/Makefile | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/tests/run-make-fulldeps/reproducible-build-2/Makefile b/tests/run-make-fulldeps/reproducible-build-2/Makefile -index fd94516..957e1f4 100644 ---- a/tests/run-make-fulldeps/reproducible-build-2/Makefile -+++ b/tests/run-make-fulldeps/reproducible-build-2/Makefile -@@ -14,7 +14,7 @@ fat_lto: - $(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 --git a/debian/patches/u-make-tests-work-without-rpath.patch b/debian/patches/u-make-tests-work-without-rpath.patch deleted file mode 100644 index edd2127a9..000000000 --- a/debian/patches/u-make-tests-work-without-rpath.patch +++ /dev/null @@ -1,23 +0,0 @@ -From: Chris Coulson <chris.coulson@canonical.com> -Date: Thu, 14 Jul 2022 13:17:38 +0200 -Subject: u-make-tests-work-without-rpath - -Forwarded: TODO - -=================================================================== ---- - src/test/run-make-fulldeps/sysroot-crates-are-unstable/Makefile | 6 +++++- - 1 file changed, 5 insertions(+), 1 deletion(-) - -diff --git a/tests/run-make-fulldeps/sysroot-crates-are-unstable/Makefile b/tests/run-make-fulldeps/sysroot-crates-are-unstable/Makefile -index 1e267fb..ac46c24 100644 ---- a/tests/run-make-fulldeps/sysroot-crates-are-unstable/Makefile -+++ b/tests/run-make-fulldeps/sysroot-crates-are-unstable/Makefile -@@ -1,2 +1,6 @@ -+include ../tools.mk -+ -+RUSTC := $(RUSTC_ORIGINAL) -+ - all: -- '$(PYTHON)' test.py -+ $(HOST_RPATH_ENV) '$(PYTHON)' test.py diff --git a/debian/patches/u-profiler.patch b/debian/patches/u-profiler.patch new file mode 100644 index 000000000..37f63af69 --- /dev/null +++ b/debian/patches/u-profiler.patch @@ -0,0 +1,131 @@ +From d0b58f40a0e669897fafb614299d2a989997eda7 Mon Sep 17 00:00:00 2001 +From: Josh Stone <jistone@redhat.com> +Date: Tue, 25 Jul 2023 13:11:50 -0700 +Subject: [PATCH] Allow using external builds of the compiler-rt profile lib + +This changes the bootstrap config `target.*.profiler` from a plain bool +to also allow a string, which will be used as a path to the pre-built +profiling runtime for that target. Then `profiler_builtins/build.rs` +reads that in a `LLVM_PROFILER_RT_LIB` environment variable. +--- + config.example.toml | 6 ++++-- + library/profiler_builtins/build.rs | 6 ++++++ + src/bootstrap/compile.rs | 4 ++++ + src/bootstrap/config.rs | 30 ++++++++++++++++++++++++------ + 4 files changed, 38 insertions(+), 8 deletions(-) + +--- a/config.example.toml ++++ b/config.example.toml +@@ -745,8 +745,10 @@ changelog-seen = 2 + # This option will override the same option under [build] section. + #sanitizers = build.sanitizers (bool) + +-# Build the profiler runtime for this target(required when compiling with options that depend +-# on this runtime, such as `-C profile-generate` or `-C instrument-coverage`). ++# When true, build the profiler runtime for this target(required when compiling ++# with options that depend on this runtime, such as `-C profile-generate` or ++# `-C instrument-coverage`). This may also be given a path to an existing build ++# of the profiling runtime library from LLVM's compiler-rt. + # This option will override the same option under [build] section. + #profiler = build.profiler (bool) + +--- a/library/profiler_builtins/build.rs ++++ b/library/profiler_builtins/build.rs +@@ -6,6 +6,12 @@ use std::env; + use std::path::Path; + + fn main() { ++ println!("cargo:rerun-if-env-changed=LLVM_PROFILER_RT_LIB"); ++ if let Ok(rt) = env::var("LLVM_PROFILER_RT_LIB") { ++ println!("cargo:rustc-link-lib=static:+verbatim={rt}"); ++ return; ++ } ++ + let target = env::var("TARGET").expect("TARGET was not set"); + let cfg = &mut cc::Build::new(); + +--- a/src/bootstrap/compile.rs ++++ b/src/bootstrap/compile.rs +@@ -314,6 +314,10 @@ pub fn std_cargo(builder: &Builder<'_>, + cargo.env("MACOSX_DEPLOYMENT_TARGET", target); + } + ++ if let Some(path) = builder.config.profiler_path(target) { ++ cargo.env("LLVM_PROFILER_RT_LIB", path); ++ } ++ + // Determine if we're going to compile in optimized C intrinsics to + // the `compiler-builtins` crate. These intrinsics live in LLVM's + // `compiler-rt` repository, but our `src/llvm-project` submodule isn't +--- a/src/bootstrap/config.rs ++++ b/src/bootstrap/config.rs +@@ -454,7 +454,7 @@ pub struct Target { + pub linker: Option<PathBuf>, + pub ndk: Option<PathBuf>, + pub sanitizers: Option<bool>, +- pub profiler: Option<bool>, ++ pub profiler: Option<StringOrBool>, + pub crt_static: Option<bool>, + pub musl_root: Option<PathBuf>, + pub musl_libdir: Option<PathBuf>, +@@ -715,9 +715,9 @@ define_config! { + } + } + +-#[derive(Debug, Deserialize)] ++#[derive(Clone, Debug, Deserialize)] + #[serde(untagged)] +-enum StringOrBool { ++pub enum StringOrBool { + String(String), + Bool(bool), + } +@@ -728,6 +728,12 @@ impl Default for StringOrBool { + } + } + ++impl StringOrBool { ++ fn is_string_or_true(&self) -> bool { ++ matches!(self, Self::String(_) | Self::Bool(true)) ++ } ++} ++ + define_config! { + /// TOML representation of how the Rust build is configured. + struct Rust { +@@ -799,7 +805,7 @@ define_config! { + llvm_libunwind: Option<String> = "llvm-libunwind", + android_ndk: Option<String> = "android-ndk", + sanitizers: Option<bool> = "sanitizers", +- profiler: Option<bool> = "profiler", ++ profiler: Option<StringOrBool> = "profiler", + crt_static: Option<bool> = "crt-static", + musl_root: Option<String> = "musl-root", + musl_libdir: Option<String> = "musl-libdir", +@@ -1616,12 +1622,24 @@ impl Config { + self.target_config.values().any(|t| t.sanitizers == Some(true)) || self.sanitizers + } + ++ pub fn profiler_path(&self, target: TargetSelection) -> Option<&str> { ++ match self.target_config.get(&target)?.profiler.as_ref()? { ++ StringOrBool::String(s) => Some(s), ++ StringOrBool::Bool(_) => None, ++ } ++ } ++ + pub fn profiler_enabled(&self, target: TargetSelection) -> bool { +- self.target_config.get(&target).map(|t| t.profiler).flatten().unwrap_or(self.profiler) ++ self.target_config ++ .get(&target) ++ .and_then(|t| t.profiler.as_ref()) ++ .map(StringOrBool::is_string_or_true) ++ .unwrap_or(self.profiler) + } + + pub fn any_profiler_enabled(&self) -> bool { +- self.target_config.values().any(|t| t.profiler == Some(true)) || self.profiler ++ self.target_config.values().any(|t| matches!(&t.profiler, Some(p) if p.is_string_or_true())) ++ || self.profiler + } + + pub fn llvm_enabled(&self) -> bool { diff --git a/debian/patches/u-riscv-disable-unpacked-split-debuginfo.patch b/debian/patches/u-riscv-disable-unpacked-split-debuginfo.patch new file mode 100644 index 000000000..429501b39 --- /dev/null +++ b/debian/patches/u-riscv-disable-unpacked-split-debuginfo.patch @@ -0,0 +1,140 @@ +Description: explicitly disable split unpacked debuginfo for now on riscv64, + it's broken and we don't want cargo to auto-enable it.. + https://github.com/llvm/llvm-project/issues/56642 + https://github.com/rust-lang/rust/issues/110224Z + +diff --git a/compiler/rustc_target/src/spec/riscv64gc_unknown_freebsd.rs b/compiler/rustc_target/src/spec/riscv64gc_unknown_freebsd.rs +index 8281bac10f..ad1fc624ad 100644 +--- a/compiler/rustc_target/src/spec/riscv64gc_unknown_freebsd.rs ++++ b/compiler/rustc_target/src/spec/riscv64gc_unknown_freebsd.rs +@@ -1,4 +1,5 @@ +-use crate::spec::{CodeModel, Target, TargetOptions}; ++use crate::spec::{CodeModel, SplitDebuginfo, Target, TargetOptions}; ++use std::borrow::Cow; + + pub fn target() -> Target { + Target { +@@ -12,6 +13,7 @@ pub fn target() -> Target { + features: "+m,+a,+f,+d,+c".into(), + llvm_abiname: "lp64d".into(), + max_atomic_width: Some(64), ++ supported_split_debuginfo: Cow::Borrowed(&[SplitDebuginfo::Off]), + ..super::freebsd_base::opts() + }, + } +diff --git a/compiler/rustc_target/src/spec/riscv64gc_unknown_fuchsia.rs b/compiler/rustc_target/src/spec/riscv64gc_unknown_fuchsia.rs +index 0585ed76fe..69d11081ac 100644 +--- a/compiler/rustc_target/src/spec/riscv64gc_unknown_fuchsia.rs ++++ b/compiler/rustc_target/src/spec/riscv64gc_unknown_fuchsia.rs +@@ -1,4 +1,5 @@ +-use crate::spec::{CodeModel, SanitizerSet, Target, TargetOptions}; ++use crate::spec::{CodeModel, SanitizerSet, SplitDebuginfo, Target, TargetOptions}; ++use std::borrow::Cow; + + pub fn target() -> Target { + Target { +@@ -13,6 +14,7 @@ pub fn target() -> Target { + llvm_abiname: "lp64d".into(), + max_atomic_width: Some(64), + supported_sanitizers: SanitizerSet::SHADOWCALLSTACK, ++ supported_split_debuginfo: Cow::Borrowed(&[SplitDebuginfo::Off]), + ..super::fuchsia_base::opts() + }, + } +diff --git a/compiler/rustc_target/src/spec/riscv64gc_unknown_linux_gnu.rs b/compiler/rustc_target/src/spec/riscv64gc_unknown_linux_gnu.rs +index 90dccb2806..8114e024d1 100644 +--- a/compiler/rustc_target/src/spec/riscv64gc_unknown_linux_gnu.rs ++++ b/compiler/rustc_target/src/spec/riscv64gc_unknown_linux_gnu.rs +@@ -1,4 +1,5 @@ +-use crate::spec::{CodeModel, Target, TargetOptions}; ++use crate::spec::{CodeModel, SplitDebuginfo, Target, TargetOptions}; ++use std::borrow::Cow; + + pub fn target() -> Target { + Target { +@@ -12,6 +13,7 @@ pub fn target() -> Target { + features: "+m,+a,+f,+d,+c".into(), + llvm_abiname: "lp64d".into(), + max_atomic_width: Some(64), ++ supported_split_debuginfo: Cow::Borrowed(&[SplitDebuginfo::Off]), + ..super::linux_gnu_base::opts() + }, + } +diff --git a/compiler/rustc_target/src/spec/riscv64gc_unknown_linux_musl.rs b/compiler/rustc_target/src/spec/riscv64gc_unknown_linux_musl.rs +index 1a56c78e68..67dbd2f740 100644 +--- a/compiler/rustc_target/src/spec/riscv64gc_unknown_linux_musl.rs ++++ b/compiler/rustc_target/src/spec/riscv64gc_unknown_linux_musl.rs +@@ -1,4 +1,5 @@ +-use crate::spec::{CodeModel, Target, TargetOptions}; ++use crate::spec::{CodeModel, SplitDebuginfo, Target, TargetOptions}; ++use std::borrow::Cow; + + pub fn target() -> Target { + Target { +@@ -12,6 +13,7 @@ pub fn target() -> Target { + features: "+m,+a,+f,+d,+c".into(), + llvm_abiname: "lp64d".into(), + max_atomic_width: Some(64), ++ supported_split_debuginfo: Cow::Borrowed(&[SplitDebuginfo::Off]), + ..super::linux_musl_base::opts() + }, + } +diff --git a/compiler/rustc_target/src/spec/riscv64gc_unknown_none_elf.rs b/compiler/rustc_target/src/spec/riscv64gc_unknown_none_elf.rs +index ab3c14e3fe..a47b63dc94 100644 +--- a/compiler/rustc_target/src/spec/riscv64gc_unknown_none_elf.rs ++++ b/compiler/rustc_target/src/spec/riscv64gc_unknown_none_elf.rs +@@ -1,5 +1,6 @@ + use crate::spec::{Cc, CodeModel, LinkerFlavor, Lld, PanicStrategy}; +-use crate::spec::{RelocModel, Target, TargetOptions}; ++use crate::spec::{RelocModel, SplitDebuginfo, Target, TargetOptions}; ++use std::borrow::Cow; + + use super::SanitizerSet; + +@@ -23,6 +24,7 @@ pub fn target() -> Target { + emit_debug_gdb_scripts: false, + eh_frame_header: false, + supported_sanitizers: SanitizerSet::KERNELADDRESS, ++ supported_split_debuginfo: Cow::Borrowed(&[SplitDebuginfo::Off]), + ..Default::default() + }, + } +diff --git a/compiler/rustc_target/src/spec/riscv64gc_unknown_openbsd.rs b/compiler/rustc_target/src/spec/riscv64gc_unknown_openbsd.rs +index ade9d77624..b04cea8850 100644 +--- a/compiler/rustc_target/src/spec/riscv64gc_unknown_openbsd.rs ++++ b/compiler/rustc_target/src/spec/riscv64gc_unknown_openbsd.rs +@@ -1,4 +1,5 @@ +-use crate::spec::{CodeModel, Target, TargetOptions}; ++use crate::spec::{CodeModel, SplitDebuginfo, Target, TargetOptions}; ++use std::borrow::Cow; + + pub fn target() -> Target { + Target { +@@ -12,6 +13,7 @@ pub fn target() -> Target { + features: "+m,+a,+f,+d,+c".into(), + llvm_abiname: "lp64d".into(), + max_atomic_width: Some(64), ++ supported_split_debuginfo: Cow::Borrowed(&[SplitDebuginfo::Off]), + ..super::openbsd_base::opts() + }, + } +diff --git a/compiler/rustc_target/src/spec/riscv64imac_unknown_none_elf.rs b/compiler/rustc_target/src/spec/riscv64imac_unknown_none_elf.rs +index 0f1821c998..1bec356dcd 100644 +--- a/compiler/rustc_target/src/spec/riscv64imac_unknown_none_elf.rs ++++ b/compiler/rustc_target/src/spec/riscv64imac_unknown_none_elf.rs +@@ -1,5 +1,6 @@ + use crate::spec::{Cc, CodeModel, LinkerFlavor, Lld, PanicStrategy}; +-use crate::spec::{RelocModel, SanitizerSet, Target, TargetOptions}; ++use crate::spec::{RelocModel, SanitizerSet, SplitDebuginfo, Target, TargetOptions}; ++use std::borrow::Cow; + + pub fn target() -> Target { + Target { +@@ -20,6 +21,7 @@ pub fn target() -> Target { + emit_debug_gdb_scripts: false, + eh_frame_header: false, + supported_sanitizers: SanitizerSet::KERNELADDRESS, ++ supported_split_debuginfo: Cow::Borrowed(&[SplitDebuginfo::Off]), + ..Default::default() + }, + } diff --git a/debian/rules b/debian/rules index 460e55720..8384119b3 100755 --- a/debian/rules +++ b/debian/rules @@ -34,8 +34,8 @@ export RUST_LONG_VERSION DEB_DESTDIR := $(CURDIR)/debian/tmp # Use system LLVM (comment out to use vendored LLVM) -LLVM_VERSION = 15 -OLD_LLVM_VERSION = 14 +LLVM_VERSION = 16 +OLD_LLVM_VERSION = 15 # 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 @@ -43,6 +43,25 @@ LD_LIBRARY_PATH := $(if $(LD_LIBRARY_PATH),$(LD_LIBRARY_PATH):$(LLVM_LIBRARY_PAT export LD_LIBRARY_PATH endif +# Required for profiler builtin +CLANG_RT_ARCH := $(DEB_TARGET_GNU_CPU) +ifeq (i386,$(DEB_TARGET_ARCH)) +CLANG_RT_ARCH = i386 +endif +ifeq (armhf,$(DEB_TARGET_ARCH)) +CLANG_RT_ARCH = armhf +endif + +ifneq (,$(filter $(DEB_TARGET_ARCH), sparc64 mips64el))) +# sparc64: see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1061125 +# mips64el: has profiler, but buggy atm (32-bit overflow in some counter?) +CLANG_RT_ARCH = +PROFILER = "false" +else +export LLVM_PROFILER_RT_LIB=/usr/lib/llvm-$(LLVM_VERSION)/lib/clang/$(LLVM_VERSION)/lib/linux/libclang_rt.profile-$(CLANG_RT_ARCH).a +PROFILER = "true" +endif + ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) NJOBS := -j $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) endif @@ -209,6 +228,7 @@ debian/config.toml: debian/config.toml.in debian/rules -DLLVM_DESTDIR="$(LLVM_DESTDIR)" \ -DLLVM_VERSION="$(LLVM_VERSION)" \ -DRUST_DESTDIR="$(RUST_DESTDIR)" \ + -DPROFILER="$(PROFILER)" \ "$<" > "$@" if $(DOWNLOAD_BOOTSTRAP) || [ $(HAVE_BINARY_TARBALL) != 0 ]; \ then sed -i -e '/^rustc = /d' -e '/^cargo = /d' "$@"; fi @@ -481,6 +501,7 @@ source_orig-stage0: QUILT_PATCHES=debian/patches quilt push -aq; $(QUILT_SPECIAL_SNOWFLAKE_RETURN_CODE) $(MAKE) -f debian/rules clean debian/make_orig-stage0_tarball.sh + $(MAKE) -f debian/rules clean QUILT_PATCHES=debian/patches quilt pop -aq; $(QUILT_SPECIAL_SNOWFLAKE_RETURN_CODE) rm -rf .pc diff --git a/debian/rust-lldb.links b/debian/rust-lldb.links index 561aff8b5..e82fca912 100644 --- a/debian/rust-lldb.links +++ b/debian/rust-lldb.links @@ -1 +1 @@ -usr/share/man/man1/lldb-15.1.gz usr/share/man/man1/rust-lldb.1.gz +usr/share/man/man1/lldb-16.1.gz usr/share/man/man1/rust-lldb.1.gz diff --git a/debian/rust-src.install b/debian/rust-src.install index b4b93ffcb..ea9961ce1 100644 --- a/debian/rust-src.install +++ b/debian/rust-src.install @@ -8,7 +8,7 @@ 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} +config.example.toml 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} diff --git a/debian/rustc.links b/debian/rustc.links index 10826e2ef..d77996a8e 100644 --- a/debian/rustc.links +++ b/debian/rustc.links @@ -1,6 +1,6 @@ -usr/bin/lld-15 usr/bin/rust-lld -usr/bin/clang-15 usr/bin/rust-clang -usr/bin/llvm-dwp-15 usr/bin/rust-llvm-dwp +usr/bin/lld-16 usr/bin/rust-lld +usr/bin/clang-16 usr/bin/rust-clang +usr/bin/llvm-dwp-16 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 --git a/debian/source/lintian-overrides b/debian/source/lintian-overrides index c64e38e30..b2dad2655 100644 --- a/debian/source/lintian-overrides +++ b/debian/source/lintian-overrides @@ -2,8 +2,8 @@ rustc source: source-is-missing [library/stdarch/crates/stdarch-verify/arm-intrinsics.html] # Test data rustc source: source-is-missing [src/tools/rust-analyzer/crates/ide/src/syntax_highlighting/test_data/*.html] -rustc source: source-is-missing [tests/rustdoc/doc-notable_trait*.html] -rustc source: source-is-missing [tests/rustdoc/spotlight*.html] +rustc source: source-is-missing [tests/rustdoc/notable-trait/doc-notable_trait*.html] +rustc source: source-is-missing [tests/rustdoc/notable-trait/spotlight*.html] rustc source: source-is-missing [vendor/html5ever/data/bench/*.html] rustc source: source-is-missing [vendor/minifier/tests/files/minified_main.js] rustc source: source-contains-prebuilt-windows-binary [vendor/libloading/tests/nagisa32.dll] diff --git a/debian/upstream-tarball-unsuspicious.txt b/debian/upstream-tarball-unsuspicious.txt index 4a769ceee..8b316de8b 100644 --- a/debian/upstream-tarball-unsuspicious.txt +++ b/debian/upstream-tarball-unsuspicious.txt @@ -19,16 +19,18 @@ vendor/regex/tests/unicode.rs vendor/term/src/terminfo/parser/names.rs # False-positive, "verylongtext" but OK -README.md CONTRIBUTING.md +README.md RELEASES.md compiler/rustc_codegen_cranelift/docs/dwarf.md compiler/rustc_codegen_gcc/Readme.md compiler/rustc_codegen_ssa/locales/en-US.ftl +compiler/rustc_codegen_ssa/messages.ftl library/core/src/ffi/c_*.md library/portable-simd/*.md library/stdarch/CONTRIBUTING.md library/stdarch/crates/core_arch/src/aarch64/neon/generated.rs +library/stdarch/crates/std_detect/README.md library/std/src/sys/sgx/abi/entry.S src/bootstrap/CHANGELOG.md src/doc/book/first-edition/src/the-stack-and-the-heap.md @@ -66,12 +68,14 @@ tests/mir-opt/building/*.mir tests/mir-opt/coverage_graphviz.*.InstrumentCoverage.0.dot tests/mir-opt/inline/inline_generator.main.Inline.diff tests/rustdoc/inline_cross/assoc_item_trait_bounds.out*.html -tests/rustdoc-ui/z-help.stdout +tests/rustdoc/notable-trait/doc-notable_trait*.html +tests/rustdoc/notable-trait/spotlight-from-dependency.odd.html tests/ui/lint/redundant-semicolon/redundant-semi-proc-macro.stderr tests/ui/parser/raw/too-many-hash.stderr vendor/ahash-0.7.6/FAQ.md vendor/ahash/FAQ.md vendor/ammonia/src/lib.rs +vendor/anstyle-parse/src/state/table.rs vendor/*/Cargo.toml vendor/*/CHANGELOG.md vendor/clap-*/examples/demo.md @@ -104,15 +108,13 @@ vendor/tracing-subscriber/src/fmt/format/json.rs vendor/unicase/src/lib.rs vendor/unicode-normalization/src/stream_safe.rs vendor/winapi/src/lib.rs -vendor/windows-sys-0.*/src/Windows/Win32/*.rs -vendor/windows-sys-0.*/src/Windows/Win32/*/*.rs -vendor/windows-sys-0.*/src/Windows/Win32/*/*/*.rs -vendor/windows-sys-0.*/src/Windows/Win32/*/*/*/*.rs -vendor/windows-sys*/readme.md -vendor/windows-sys/src/Windows/Win32/*.rs -vendor/windows-sys/src/Windows/Win32/*/*.rs -vendor/windows-sys/src/Windows/Win32/*/*/*.rs -vendor/windows-sys/src/Windows/Win32/*/*/*/*.rs +vendor/windows*/readme.md +vendor/windows*/src/Windows/*.rs +vendor/windows*/src/Windows/*/*.rs +vendor/windows*/src/Windows/*/*/*.rs +vendor/windows*/src/Windows/*/*/*/*.rs +vendor/windows*/src/Windows/*/*/*/*/*.rs +vendor/windows*/src/Windows/*/*/*/*/*/*.rs vendor/zerovec/src/map2d/map.rs # False-positive, audit-vendor-source automatically flags JS/C files @@ -128,7 +130,9 @@ src/librustdoc/html/static/.eslintrc.js src/librustdoc/html/static/js/*.js src/tools/error_index_generator/*.js src/tools/rustdoc-gui/tester.js +src/tools/rustdoc-gui/.eslintrc.js src/tools/rustdoc-js/tester.js +src/tools/rustdoc-js/.eslintrc.js # Embedded libraries, justified in README.source vendor/dlmalloc/src/dlmalloc.c @@ -146,8 +150,9 @@ vendor/errno-dragonfly/src/errno.c vendor/stacker/src/arch/windows.c # False-positive, misc +src/ci/github-actions/problem_matchers.json src/doc/rustc-dev-guide/src/queries/example-0.counts.txt -src/etc/vscode_settings.json +src/etc/rust_analyzer_settings.json src/stage0.json src/tools/clippy/.remarkrc vendor/elasticlunr-rs/src/lang/*.rs @@ -217,7 +222,6 @@ tests/*/*.rs tests/*/*/*.rs tests/*/*/*/*.rs tests/run-make/*/*.c -tests/run-make-fulldeps/*/*.c tests/run-make/x86_64-fortanix-unknown-sgx-lvi/enclave/foo.c tests/run-make/x86_64-fortanix-unknown-sgx-lvi/enclave/libcmake_foo/src/foo.c tests/rustdoc-gui/src/huge_logo/src/lib.rs @@ -232,6 +236,9 @@ tests/ui/nll/*/*.stderr tests/ui/parser/issues/*.stderr tests/ui/proc-macro/debug/*.stderr vendor/annotate-snippets/tests/fixtures/no-color/strip_line_non_ws.toml +vendor/basic-toml/tests/valid/*.json +vendor/basic-toml/tests/valid/table-whitespace.toml +vendor/basic-toml/tests/invalid-encoder/array-mixed-types-ints-and-floats.json vendor/bstr-0.2.17/src/unicode/fsm/*.dfa vendor/cargo_metadata*/tests/test_samples.rs vendor/diff/tests/data/gitignores.chars.diff @@ -326,7 +333,6 @@ vendor/ahash/src/fallback_hash.rs vendor/ahash/src/hash_quality_test.rs vendor/ahash/src/lib.rs vendor/aho-corasick/src/nfa.rs -vendor/askama_shared/src/generator.rs vendor/block-buffer/tests/mod.rs vendor/clap*/src/derive.rs vendor/clap_derive/src/derives/args.rs @@ -401,18 +407,19 @@ vendor/sha2/src/sha512.rs vendor/shlex/src/lib.rs vendor/snap/src/compress.rs vendor/snap/src/decompress.rs -vendor/syn/src/attr.rs -vendor/syn/src/custom_punctuation.rs -vendor/syn/src/data.rs -vendor/syn/src/derive.rs -vendor/syn/src/group.rs -vendor/syn/src/path.rs -vendor/syn/src/pat.rs -vendor/syn/src/punctuated.rs -vendor/syn/src/stmt.rs -vendor/syn/src/token.rs -vendor/syn/src/ty.rs -vendor/syn/tests/test_meta.rs +vendor/syn*/src/attr.rs +vendor/syn*/src/custom_punctuation.rs +vendor/syn*/src/data.rs +vendor/syn*/src/derive.rs +vendor/syn*/src/group.rs +vendor/syn*/src/meta.rs +vendor/syn*/src/path.rs +vendor/syn*/src/pat.rs +vendor/syn*/src/punctuated.rs +vendor/syn*/src/stmt.rs +vendor/syn*/src/token.rs +vendor/syn*/src/ty.rs +vendor/syn*/tests/test_meta.rs vendor/thiserror-impl/src/attr.rs vendor/time/src/parsing/combinator/mod.rs vendor/time/src/parsing/combinator/rfc/*.rs |