Module dist

Source
Expand description

Implementation of the various distribution aspects of the compiler.

This module is responsible for creating tarballs of the standard library, compiler, and documentation. This ends up being what we distribute to everyone as well.

No tarball is actually created literally in this file, but rather we shell out to rust-installer still. This may one day be replaced with bits and pieces of rustup.rs!

Structs§

Analysis
Bootstrap
Tarball intended for internal consumption to ease rustc/std development.
BuildManifest
Tarball containing a prebuilt version of the build-manifest tool, intended to be used by the release process to avoid cloning the monorepo and building stuff.
Cargo
Clippy
CodegenBackend
DebuggerScripts
Docs
Extended
JsonDocs
LlvmBitcodeLinker
LlvmTools
Mingw
Miri
PlainSourceTarball
ReproducibleArtifacts
Tarball containing artifacts necessary to reproduce the build of rustc.
Rls
RustAnalyzer
RustDev
Tarball intended for internal consumption to ease rustc/std development.
Rustc
RustcDev
Tarball containing the compiler that gets downloaded and used by rust.download-rustc.
RustcDocs
Rustfmt
Src
Std

Functions§

add_env 🔒
copy_src_dirs 🔒
Use the builder to make a filtered copy of base/X for X in (src_dirs - exclude_dirs) to dst_dir.
copy_target_libs 🔒
Copy stamped files into an image’s target/lib directory.
distdir 🔒
find_files 🔒
install_llvm_file 🔒
make_win_dist 🔒
maybe_install_llvm 🔒
Maybe add LLVM object files to the given destination lib-dir. Allows either static or dynamic linking.
maybe_install_llvm_runtime
Maybe add libLLVM.so to the runtime lib-dir for rustc itself.
maybe_install_llvm_target
Maybe add libLLVM.so to the target lib-dir for linking.
pkgname
should_build_extended_tool 🔒
skip_host_target_lib 🔒
tmpdir
verify_uefi_rlib_format 🔒
Check that all objects in rlibs for UEFI targets are COFF. This ensures that the C compiler isn’t producing ELF objects, which would not link correctly with the COFF objects.