From 249e07b237bd3049eb7fd94afe450b7c09b6a3d9 Mon Sep 17 00:00:00 2001 From: Alexis Bourget Date: Wed, 24 Jun 2020 14:53:52 +0200 Subject: [PATCH 1/9] Short documentation for the false keyword --- src/libstd/keyword_docs.rs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/libstd/keyword_docs.rs b/src/libstd/keyword_docs.rs index a4996d9eee810..cd722458a90b8 100644 --- a/src/libstd/keyword_docs.rs +++ b/src/libstd/keyword_docs.rs @@ -387,10 +387,12 @@ mod extern_keyword {} // /// A value of type [`bool`] representing logical **false**. /// -/// The documentation for this keyword is [not yet complete]. Pull requests welcome! +/// Logically `false` is not equal to [`true`]. +/// +/// See the documentation for [`true`] for more information. /// +/// [`true`]: keyword.true.html /// [`bool`]: primitive.bool.html -/// [not yet complete]: https://github.com/rust-lang/rust/issues/34601 mod false_keyword {} #[doc(keyword = "fn")] From b7bf3c83c408c18465bc3a1ea9c98a0023b90d93 Mon Sep 17 00:00:00 2001 From: Alexis Bourget Date: Sun, 19 Jul 2020 15:58:41 +0200 Subject: [PATCH 2/9] Remove useless link to bool primitive --- src/libstd/keyword_docs.rs | 1 - 1 file changed, 1 deletion(-) diff --git a/src/libstd/keyword_docs.rs b/src/libstd/keyword_docs.rs index cd722458a90b8..139b402c3357b 100644 --- a/src/libstd/keyword_docs.rs +++ b/src/libstd/keyword_docs.rs @@ -392,7 +392,6 @@ mod extern_keyword {} /// See the documentation for [`true`] for more information. /// /// [`true`]: keyword.true.html -/// [`bool`]: primitive.bool.html mod false_keyword {} #[doc(keyword = "fn")] From ce338046c8b40e3284707d2ab725e9f076592959 Mon Sep 17 00:00:00 2001 From: Lukas Kalbertodt Date: Sun, 19 Jul 2020 13:45:51 +0200 Subject: [PATCH 3/9] Fix panic message when `RangeFrom` index is out of bounds Before, the `Range` method was called with `end = slice.len()`. Unfortunately, because `Range::index` first checks the order of the indices (start has to be smaller than end), an out of bounds index leads to `core::slice::slice_index_order_fail` being called. This prints the message 'slice index starts at 27 but ends at 10', which is worse than 'index 27 out of range for slice of length 10'. This is not only useful to normal users reading panic messages, but also for people inspecting assembly and being confused by `slice_index_order_fail` calls. --- src/libcore/slice/mod.rs | 10 ++++++++-- src/libcore/tests/slice.rs | 2 +- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/libcore/slice/mod.rs b/src/libcore/slice/mod.rs index 20b2c3d3c965a..52babaf9f72e6 100644 --- a/src/libcore/slice/mod.rs +++ b/src/libcore/slice/mod.rs @@ -3241,12 +3241,18 @@ unsafe impl SliceIndex<[T]> for ops::RangeFrom { #[inline] fn index(self, slice: &[T]) -> &[T] { - (self.start..slice.len()).index(slice) + if self.start > slice.len() { + slice_index_len_fail(self.start, slice.len()); + } + unsafe { &*self.get_unchecked(slice) } } #[inline] fn index_mut(self, slice: &mut [T]) -> &mut [T] { - (self.start..slice.len()).index_mut(slice) + if self.start > slice.len() { + slice_index_len_fail(self.start, slice.len()); + } + unsafe { &mut *self.get_unchecked_mut(slice) } } } diff --git a/src/libcore/tests/slice.rs b/src/libcore/tests/slice.rs index fba73be92be09..8e240832c13b8 100644 --- a/src/libcore/tests/slice.rs +++ b/src/libcore/tests/slice.rs @@ -1088,7 +1088,7 @@ mod slice_index { good: data[6..] == []; bad: data[7..]; - message: "but ends at"; // perhaps not ideal + message: "out of range"; } in mod rangeto_len { From a459fc4e3140cd89457f973045d9c82ef2928698 Mon Sep 17 00:00:00 2001 From: Poliorcetics Date: Sun, 19 Jul 2020 16:28:18 +0200 Subject: [PATCH 4/9] Apply suggestions from review Co-authored-by: Joshua Nelson --- src/libstd/keyword_docs.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/libstd/keyword_docs.rs b/src/libstd/keyword_docs.rs index 139b402c3357b..a3f5a820d6769 100644 --- a/src/libstd/keyword_docs.rs +++ b/src/libstd/keyword_docs.rs @@ -387,7 +387,7 @@ mod extern_keyword {} // /// A value of type [`bool`] representing logical **false**. /// -/// Logically `false` is not equal to [`true`]. +/// `false` is the logical opposite of [`true`]. /// /// See the documentation for [`true`] for more information. /// From ea74e7d6b662bb451b72e8ff298e24f3dd2c2c3c Mon Sep 17 00:00:00 2001 From: Lukas Kalbertodt Date: Sun, 19 Jul 2020 16:12:50 +0200 Subject: [PATCH 5/9] Slightly improve panic messages when range indices are out of bounds --- src/libcore/slice/mod.rs | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/src/libcore/slice/mod.rs b/src/libcore/slice/mod.rs index 52babaf9f72e6..64d218c3650ac 100644 --- a/src/libcore/slice/mod.rs +++ b/src/libcore/slice/mod.rs @@ -2974,8 +2974,15 @@ where #[inline(never)] #[cold] #[track_caller] -fn slice_index_len_fail(index: usize, len: usize) -> ! { - panic!("index {} out of range for slice of length {}", index, len); +fn slice_start_index_len_fail(index: usize, len: usize) -> ! { + panic!("range start index {} out of range for slice of length {}", index, len); +} + +#[inline(never)] +#[cold] +#[track_caller] +fn slice_end_index_len_fail(index: usize, len: usize) -> ! { + panic!("range end index {} out of range for slice of length {}", index, len); } #[inline(never)] @@ -3160,7 +3167,7 @@ unsafe impl SliceIndex<[T]> for ops::Range { if self.start > self.end { slice_index_order_fail(self.start, self.end); } else if self.end > slice.len() { - slice_index_len_fail(self.end, slice.len()); + slice_end_index_len_fail(self.end, slice.len()); } unsafe { &*self.get_unchecked(slice) } } @@ -3170,7 +3177,7 @@ unsafe impl SliceIndex<[T]> for ops::Range { if self.start > self.end { slice_index_order_fail(self.start, self.end); } else if self.end > slice.len() { - slice_index_len_fail(self.end, slice.len()); + slice_end_index_len_fail(self.end, slice.len()); } unsafe { &mut *self.get_unchecked_mut(slice) } } @@ -3242,7 +3249,7 @@ unsafe impl SliceIndex<[T]> for ops::RangeFrom { #[inline] fn index(self, slice: &[T]) -> &[T] { if self.start > slice.len() { - slice_index_len_fail(self.start, slice.len()); + slice_start_index_len_fail(self.start, slice.len()); } unsafe { &*self.get_unchecked(slice) } } @@ -3250,7 +3257,7 @@ unsafe impl SliceIndex<[T]> for ops::RangeFrom { #[inline] fn index_mut(self, slice: &mut [T]) -> &mut [T] { if self.start > slice.len() { - slice_index_len_fail(self.start, slice.len()); + slice_start_index_len_fail(self.start, slice.len()); } unsafe { &mut *self.get_unchecked_mut(slice) } } From be43319b174589f61ce5d8a7b00c0567eb8cff35 Mon Sep 17 00:00:00 2001 From: Mark Rousskov Date: Sun, 19 Jul 2020 09:18:32 -0400 Subject: [PATCH 6/9] Do not clobber RUSTDOCFLAGS We were setting these in both Builder::cargo and here, which ended up only setting the first of the two. --- src/bootstrap/builder.rs | 7 +++++++ src/bootstrap/doc.rs | 10 ++++------ 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/src/bootstrap/builder.rs b/src/bootstrap/builder.rs index 70e5f6ac26fc1..737176c48f878 100644 --- a/src/bootstrap/builder.rs +++ b/src/bootstrap/builder.rs @@ -1444,6 +1444,10 @@ pub struct Cargo { } impl Cargo { + pub fn rustdocflag(&mut self, arg: &str) -> &mut Cargo { + self.rustdocflags.arg(arg); + self + } pub fn rustflag(&mut self, arg: &str) -> &mut Cargo { self.rustflags.arg(arg); self @@ -1466,6 +1470,9 @@ impl Cargo { } pub fn env(&mut self, key: impl AsRef, value: impl AsRef) -> &mut Cargo { + // These are managed through rustflag/rustdocflag interfaces. + assert_ne!(key.as_ref(), "RUSTFLAGS"); + assert_ne!(key.as_ref(), "RUSTDOCFLAGS"); self.command.env(key.as_ref(), value.as_ref()); self } diff --git a/src/bootstrap/doc.rs b/src/bootstrap/doc.rs index b051390fc2671..f8a549afc88fb 100644 --- a/src/bootstrap/doc.rs +++ b/src/bootstrap/doc.rs @@ -527,11 +527,9 @@ impl Step for Rustc { // Build cargo command. let mut cargo = builder.cargo(compiler, Mode::Rustc, SourceType::InTree, target, "doc"); - cargo.env( - "RUSTDOCFLAGS", - "--document-private-items \ - --enable-index-page -Zunstable-options", - ); + cargo.rustdocflag("--document-private-items"); + cargo.rustdocflag("--enable-index-page"); + cargo.rustdocflag("-Zunstable-options"); compile::rustc_cargo(builder, &mut cargo, target); // Only include compiler crates, no dependencies of those, such as `libc`. @@ -624,7 +622,7 @@ impl Step for Rustdoc { cargo.arg("--no-deps"); cargo.arg("-p").arg("rustdoc"); - cargo.env("RUSTDOCFLAGS", "--document-private-items"); + cargo.rustdocflag("--document-private-items"); builder.run(&mut cargo.into()); } } From a462e7c1d08ba0babd18a4a71d1833839c3cd52d Mon Sep 17 00:00:00 2001 From: Solomon Ucko Date: Sun, 19 Jul 2020 11:10:03 -0400 Subject: [PATCH 7/9] Document `core::fmt::rt::v1::Count` --- src/libcore/fmt/rt/v1.rs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/libcore/fmt/rt/v1.rs b/src/libcore/fmt/rt/v1.rs index f6460470bfe18..37202b2774dc6 100644 --- a/src/libcore/fmt/rt/v1.rs +++ b/src/libcore/fmt/rt/v1.rs @@ -33,9 +33,13 @@ pub enum Alignment { Unknown, } +/// Used by [width](https://doc.rust-lang.org/std/fmt/#width) and [precision](https://doc.rust-lang.org/std/fmt/#precision) specifiers. #[derive(Copy, Clone)] pub enum Count { + /// Specified with a literal number, stores the value Is(usize), + /// Specified using `$` and `*` syntaxes, stores the index into `args` Param(usize), + /// Not specified Implied, } From 57614da71560281c50c228a0028946f0389d8803 Mon Sep 17 00:00:00 2001 From: Jake Goulding Date: Sat, 18 Jul 2020 14:06:20 -0400 Subject: [PATCH 8/9] Teach bootstrap install and dist commands about TargetSelection With this, we can now use a target JSON file to build a cross-compiler: ``` x.py install --host ../aarch64-apple-darwin.json --target aarch64-apple-darwin ``` --- src/bootstrap/dist.rs | 104 ++++++++++++++++++++------------------- src/bootstrap/install.rs | 2 +- 2 files changed, 55 insertions(+), 51 deletions(-) diff --git a/src/bootstrap/dist.rs b/src/bootstrap/dist.rs index af30747a9592e..c64934cd6c9de 100644 --- a/src/bootstrap/dist.rs +++ b/src/bootstrap/dist.rs @@ -91,7 +91,7 @@ impl Step for Docs { let name = pkgname(builder, "rust-docs"); if !builder.config.docs { - return distdir(builder).join(format!("{}-{}.tar.gz", name, host)); + return distdir(builder).join(format!("{}-{}.tar.gz", name, host.triple)); } builder.default_doc(None); @@ -99,7 +99,7 @@ impl Step for Docs { builder.info(&format!("Dist docs ({})", host)); let _time = timeit(builder); - let image = tmpdir(builder).join(format!("{}-{}-image", name, host)); + let image = tmpdir(builder).join(format!("{}-{}-image", name, host.triple)); let _ = fs::remove_dir_all(&image); let dst = image.join("share/doc/rust/html"); @@ -119,14 +119,14 @@ impl Step for Docs { .arg(&tmpdir(builder)) .arg("--output-dir") .arg(&distdir(builder)) - .arg(format!("--package-name={}-{}", name, host)) + .arg(format!("--package-name={}-{}", name, host.triple)) .arg("--component-name=rust-docs") .arg("--legacy-manifest-dirs=rustlib,cargo") .arg("--bulk-dirs=share/doc/rust/html"); builder.run(&mut cmd); builder.remove_dir(&image); - distdir(builder).join(format!("{}-{}.tar.gz", name, host)) + distdir(builder).join(format!("{}-{}.tar.gz", name, host.triple)) } } @@ -154,12 +154,12 @@ impl Step for RustcDocs { let name = pkgname(builder, "rustc-docs"); if !builder.config.compiler_docs { - return distdir(builder).join(format!("{}-{}.tar.gz", name, host)); + return distdir(builder).join(format!("{}-{}.tar.gz", name, host.triple)); } builder.default_doc(None); - let image = tmpdir(builder).join(format!("{}-{}-image", name, host)); + let image = tmpdir(builder).join(format!("{}-{}-image", name, host.triple)); let _ = fs::remove_dir_all(&image); let dst = image.join("share/doc/rust/html"); @@ -178,7 +178,7 @@ impl Step for RustcDocs { .arg(&tmpdir(builder)) .arg("--output-dir") .arg(&distdir(builder)) - .arg(format!("--package-name={}-{}", name, host)) + .arg(format!("--package-name={}-{}", name, host.triple)) .arg("--component-name=rustc-docs") .arg("--legacy-manifest-dirs=rustlib,cargo") .arg("--bulk-dirs=share/doc/rust/html"); @@ -188,7 +188,7 @@ impl Step for RustcDocs { builder.run(&mut cmd); builder.remove_dir(&image); - distdir(builder).join(format!("{}-{}.tar.gz", name, host)) + distdir(builder).join(format!("{}-{}.tar.gz", name, host.triple)) } } @@ -372,7 +372,7 @@ impl Step for Mingw { builder.info(&format!("Dist mingw ({})", host)); let _time = timeit(builder); let name = pkgname(builder, "rust-mingw"); - let image = tmpdir(builder).join(format!("{}-{}-image", name, host)); + let image = tmpdir(builder).join(format!("{}-{}-image", name, host.triple)); let _ = fs::remove_dir_all(&image); t!(fs::create_dir_all(&image)); @@ -393,12 +393,12 @@ impl Step for Mingw { .arg(&tmpdir(builder)) .arg("--output-dir") .arg(&distdir(builder)) - .arg(format!("--package-name={}-{}", name, host)) + .arg(format!("--package-name={}-{}", name, host.triple)) .arg("--component-name=rust-mingw") .arg("--legacy-manifest-dirs=rustlib,cargo"); builder.run(&mut cmd); t!(fs::remove_dir_all(&image)); - Some(distdir(builder).join(format!("{}-{}.tar.gz", name, host))) + Some(distdir(builder).join(format!("{}-{}.tar.gz", name, host.triple))) } } @@ -427,9 +427,9 @@ impl Step for Rustc { let host = self.compiler.host; let name = pkgname(builder, "rustc"); - let image = tmpdir(builder).join(format!("{}-{}-image", name, host)); + let image = tmpdir(builder).join(format!("{}-{}-image", name, host.triple)); let _ = fs::remove_dir_all(&image); - let overlay = tmpdir(builder).join(format!("{}-{}-overlay", name, host)); + let overlay = tmpdir(builder).join(format!("{}-{}-overlay", name, host.triple)); let _ = fs::remove_dir_all(&overlay); // Prepare the rustc "image", what will actually end up getting installed @@ -483,17 +483,17 @@ impl Step for Rustc { .arg(&distdir(builder)) .arg("--non-installed-overlay") .arg(&overlay) - .arg(format!("--package-name={}-{}", name, host)) + .arg(format!("--package-name={}-{}", name, host.triple)) .arg("--component-name=rustc") .arg("--legacy-manifest-dirs=rustlib,cargo"); - builder.info(&format!("Dist rustc stage{} ({})", compiler.stage, host)); + builder.info(&format!("Dist rustc stage{} ({})", compiler.stage, host.triple)); let _time = timeit(builder); builder.run(&mut cmd); builder.remove_dir(&image); builder.remove_dir(&overlay); - return distdir(builder).join(format!("{}-{}.tar.gz", name, host)); + return distdir(builder).join(format!("{}-{}.tar.gz", name, host.triple)); fn prepare_image(builder: &Builder<'_>, compiler: Compiler, image: &Path) { let host = compiler.host; @@ -707,14 +707,14 @@ impl Step for Std { let target = self.target; let name = pkgname(builder, "rust-std"); - let archive = distdir(builder).join(format!("{}-{}.tar.gz", name, target)); + let archive = distdir(builder).join(format!("{}-{}.tar.gz", name, target.triple)); if skip_host_target_lib(builder, compiler) { return archive; } builder.ensure(compile::Std { compiler, target }); - let image = tmpdir(builder).join(format!("{}-{}-image", name, target)); + let image = tmpdir(builder).join(format!("{}-{}-image", name, target.triple)); let _ = fs::remove_dir_all(&image); let compiler_to_use = builder.compiler_for(compiler.stage, compiler.host, target); @@ -732,8 +732,8 @@ impl Step for Std { .arg(&tmpdir(builder)) .arg("--output-dir") .arg(&distdir(builder)) - .arg(format!("--package-name={}-{}", name, target)) - .arg(format!("--component-name=rust-std-{}", target)) + .arg(format!("--package-name={}-{}", name, target.triple)) + .arg(format!("--component-name=rust-std-{}", target.triple)) .arg("--legacy-manifest-dirs=rustlib,cargo"); builder @@ -776,14 +776,14 @@ impl Step for RustcDev { let target = self.target; let name = pkgname(builder, "rustc-dev"); - let archive = distdir(builder).join(format!("{}-{}.tar.gz", name, target)); + let archive = distdir(builder).join(format!("{}-{}.tar.gz", name, target.triple)); if skip_host_target_lib(builder, compiler) { return archive; } builder.ensure(compile::Rustc { compiler, target }); - let image = tmpdir(builder).join(format!("{}-{}-image", name, target)); + let image = tmpdir(builder).join(format!("{}-{}-image", name, target.triple)); let _ = fs::remove_dir_all(&image); let compiler_to_use = builder.compiler_for(compiler.stage, compiler.host, target); @@ -801,8 +801,8 @@ impl Step for RustcDev { .arg(&tmpdir(builder)) .arg("--output-dir") .arg(&distdir(builder)) - .arg(format!("--package-name={}-{}", name, target)) - .arg(format!("--component-name=rustc-dev-{}", target)) + .arg(format!("--package-name={}-{}", name, target.triple)) + .arg(format!("--component-name=rustc-dev-{}", target.triple)) .arg("--legacy-manifest-dirs=rustlib,cargo"); builder.info(&format!( @@ -853,12 +853,12 @@ impl Step for Analysis { let name = pkgname(builder, "rust-analysis"); if compiler.host != builder.config.build { - return distdir(builder).join(format!("{}-{}.tar.gz", name, target)); + return distdir(builder).join(format!("{}-{}.tar.gz", name, target.triple)); } builder.ensure(compile::Std { compiler, target }); - let image = tmpdir(builder).join(format!("{}-{}-image", name, target)); + let image = tmpdir(builder).join(format!("{}-{}-image", name, target.triple)); let src = builder .stage_out(compiler, Mode::Std) @@ -883,15 +883,15 @@ impl Step for Analysis { .arg(&tmpdir(builder)) .arg("--output-dir") .arg(&distdir(builder)) - .arg(format!("--package-name={}-{}", name, target)) - .arg(format!("--component-name=rust-analysis-{}", target)) + .arg(format!("--package-name={}-{}", name, target.triple)) + .arg(format!("--component-name=rust-analysis-{}", target.triple)) .arg("--legacy-manifest-dirs=rustlib,cargo"); builder.info("Dist analysis"); let _time = timeit(builder); builder.run(&mut cmd); builder.remove_dir(&image); - distdir(builder).join(format!("{}-{}.tar.gz", name, target)) + distdir(builder).join(format!("{}-{}.tar.gz", name, target.triple)) } } @@ -1242,14 +1242,14 @@ impl Step for Cargo { .arg(&distdir(builder)) .arg("--non-installed-overlay") .arg(&overlay) - .arg(format!("--package-name={}-{}", name, target)) + .arg(format!("--package-name={}-{}", name, target.triple)) .arg("--component-name=cargo") .arg("--legacy-manifest-dirs=rustlib,cargo"); builder.info(&format!("Dist cargo stage{} ({})", compiler.stage, target)); let _time = timeit(builder); builder.run(&mut cmd); - distdir(builder).join(format!("{}-{}.tar.gz", name, target)) + distdir(builder).join(format!("{}-{}.tar.gz", name, target.triple)) } } @@ -1332,14 +1332,14 @@ impl Step for Rls { .arg(&distdir(builder)) .arg("--non-installed-overlay") .arg(&overlay) - .arg(format!("--package-name={}-{}", name, target)) + .arg(format!("--package-name={}-{}", name, target.triple)) .arg("--legacy-manifest-dirs=rustlib,cargo") .arg("--component-name=rls-preview"); - builder.info(&format!("Dist RLS stage{} ({})", compiler.stage, target)); + builder.info(&format!("Dist RLS stage{} ({})", compiler.stage, target.triple)); let _time = timeit(builder); builder.run(&mut cmd); - Some(distdir(builder).join(format!("{}-{}.tar.gz", name, target))) + Some(distdir(builder).join(format!("{}-{}.tar.gz", name, target.triple))) } } @@ -1419,14 +1419,14 @@ impl Step for RustAnalyzer { .arg(&distdir(builder)) .arg("--non-installed-overlay") .arg(&overlay) - .arg(format!("--package-name={}-{}", name, target)) + .arg(format!("--package-name={}-{}", name, target.triple)) .arg("--legacy-manifest-dirs=rustlib,cargo") .arg("--component-name=rust-analyzer-preview"); builder.info(&format!("Dist rust-analyzer stage{} ({})", compiler.stage, target)); let _time = timeit(builder); builder.run(&mut cmd); - distdir(builder).join(format!("{}-{}.tar.gz", name, target)) + distdir(builder).join(format!("{}-{}.tar.gz", name, target.triple)) } } @@ -1510,14 +1510,14 @@ impl Step for Clippy { .arg(&distdir(builder)) .arg("--non-installed-overlay") .arg(&overlay) - .arg(format!("--package-name={}-{}", name, target)) + .arg(format!("--package-name={}-{}", name, target.triple)) .arg("--legacy-manifest-dirs=rustlib,cargo") .arg("--component-name=clippy-preview"); builder.info(&format!("Dist clippy stage{} ({})", compiler.stage, target)); let _time = timeit(builder); builder.run(&mut cmd); - distdir(builder).join(format!("{}-{}.tar.gz", name, target)) + distdir(builder).join(format!("{}-{}.tar.gz", name, target.triple)) } } @@ -1607,14 +1607,14 @@ impl Step for Miri { .arg(&distdir(builder)) .arg("--non-installed-overlay") .arg(&overlay) - .arg(format!("--package-name={}-{}", name, target)) + .arg(format!("--package-name={}-{}", name, target.triple)) .arg("--legacy-manifest-dirs=rustlib,cargo") .arg("--component-name=miri-preview"); builder.info(&format!("Dist miri stage{} ({})", compiler.stage, target)); let _time = timeit(builder); builder.run(&mut cmd); - Some(distdir(builder).join(format!("{}-{}.tar.gz", name, target))) + Some(distdir(builder).join(format!("{}-{}.tar.gz", name, target.triple))) } } @@ -1701,14 +1701,14 @@ impl Step for Rustfmt { .arg(&distdir(builder)) .arg("--non-installed-overlay") .arg(&overlay) - .arg(format!("--package-name={}-{}", name, target)) + .arg(format!("--package-name={}-{}", name, target.triple)) .arg("--legacy-manifest-dirs=rustlib,cargo") .arg("--component-name=rustfmt-preview"); builder.info(&format!("Dist Rustfmt stage{} ({})", compiler.stage, target)); let _time = timeit(builder); builder.run(&mut cmd); - Some(distdir(builder).join(format!("{}-{}.tar.gz", name, target))) + Some(distdir(builder).join(format!("{}-{}.tar.gz", name, target.triple))) } } @@ -1813,7 +1813,7 @@ impl Step for Extended { .arg(&work) .arg("--output-dir") .arg(&distdir(builder)) - .arg(format!("--package-name={}-{}", pkgname(builder, "rust"), target)) + .arg(format!("--package-name={}-{}", pkgname(builder, "rust"), target.triple)) .arg("--legacy-manifest-dirs=rustlib,cargo") .arg("--input-tarballs") .arg(input_tarballs) @@ -1893,7 +1893,7 @@ impl Step for Extended { let prepare = |name: &str| { builder.create_dir(&pkg.join(name)); builder.cp_r( - &work.join(&format!("{}-{}", pkgname(builder, name), target)), + &work.join(&format!("{}-{}", pkgname(builder, name), target.triple)), &pkg.join(name), ); builder.install(&etc.join("pkg/postinstall"), &pkg.join(name), 0o755); @@ -1926,7 +1926,11 @@ impl Step for Extended { .arg(xform(&etc.join("pkg/Distribution.xml"))) .arg("--resources") .arg(pkg.join("res")) - .arg(distdir(builder).join(format!("{}-{}.pkg", pkgname(builder, "rust"), target))) + .arg(distdir(builder).join(format!( + "{}-{}.pkg", + pkgname(builder, "rust"), + target.triple + ))) .arg("--package-path") .arg(&pkg); let _time = timeit(builder); @@ -1940,7 +1944,7 @@ impl Step for Extended { let prepare = |name: &str| { builder.create_dir(&exe.join(name)); let dir = if name == "rust-std" || name == "rust-analysis" { - format!("{}-{}", name, target) + format!("{}-{}", name, target.triple) } else if name == "rls" { "rls-preview".to_string() } else if name == "rust-analyzer" { @@ -1953,7 +1957,7 @@ impl Step for Extended { name.to_string() }; builder.cp_r( - &work.join(&format!("{}-{}", pkgname(builder, name), target)).join(dir), + &work.join(&format!("{}-{}", pkgname(builder, name), target.triple)).join(dir), &exe.join(name), ); builder.remove(&exe.join(name).join("manifest.in")); @@ -2212,7 +2216,7 @@ impl Step for Extended { builder.install(&etc.join("gfx/dialogbg.bmp"), &exe, 0o644); builder.info(&format!("building `msi` installer with {:?}", light)); - let filename = format!("{}-{}.msi", pkgname(builder, "rust"), target); + let filename = format!("{}-{}.msi", pkgname(builder, "rust"), target.triple); let mut cmd = Command::new(&light); cmd.arg("-nologo") .arg("-ext") @@ -2461,11 +2465,11 @@ impl Step for LlvmTools { .arg(&distdir(builder)) .arg("--non-installed-overlay") .arg(&overlay) - .arg(format!("--package-name={}-{}", name, target)) + .arg(format!("--package-name={}-{}", name, target.triple)) .arg("--legacy-manifest-dirs=rustlib,cargo") .arg("--component-name=llvm-tools-preview"); builder.run(&mut cmd); - Some(distdir(builder).join(format!("{}-{}.tar.gz", name, target))) + Some(distdir(builder).join(format!("{}-{}.tar.gz", name, target.triple))) } } diff --git a/src/bootstrap/install.rs b/src/bootstrap/install.rs index 7266625ff39f8..e0bf17124f84b 100644 --- a/src/bootstrap/install.rs +++ b/src/bootstrap/install.rs @@ -107,7 +107,7 @@ fn install_sh( t!(fs::create_dir_all(&empty_dir)); let package_name = if let Some(host) = host { - format!("{}-{}", pkgname(builder, name), host) + format!("{}-{}", pkgname(builder, name), host.triple) } else { pkgname(builder, name) }; From 7dba34fd6b9a837300157608a90ce8d65d1490e5 Mon Sep 17 00:00:00 2001 From: Caleb Cartwright Date: Sun, 19 Jul 2020 13:10:38 -0500 Subject: [PATCH 9/9] tools: update rustfmt toolstate maintainers --- src/tools/publish_toolstate.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/tools/publish_toolstate.py b/src/tools/publish_toolstate.py index 72437e070044c..c0631fcedd349 100755 --- a/src/tools/publish_toolstate.py +++ b/src/tools/publish_toolstate.py @@ -26,7 +26,7 @@ MAINTAINERS = { 'miri': {'oli-obk', 'RalfJung', 'eddyb'}, 'rls': {'Xanewok'}, - 'rustfmt': {'topecongiro'}, + 'rustfmt': {'topecongiro', 'calebcartwright'}, 'book': {'carols10cents', 'steveklabnik'}, 'nomicon': {'frewsxcv', 'Gankra'}, 'reference': {'steveklabnik', 'Havvy', 'matthewjasper', 'ehuss'},