bootstrap::core::config

Module config

Source
Expand description

Serialized configuration of a build.

This module implements parsing config.toml configuration files to tweak how the build runs.

Re-exports§

Macros§

Structs§

  • Build πŸ”’
    TOML representation of various global build decisions.
  • ChangeIdWrapper πŸ”’
    Since we use #[serde(deny_unknown_fields)] on TomlConfig, we need a wrapper type for the β€œchange-id” field to parse it even if other fields are invalid. This ensures that if deserialization fails due to other fields, we can still provide the changelogs to allow developers to potentially find the reason for the failure in the logs..
  • Global configuration for the entire build and/or bootstrap.
  • Dist πŸ”’
  • Install πŸ”’
    TOML representation of various global install decisions.
  • Llvm πŸ”’
    TOML representation of how the LLVM build is configured.
  • OptimizeVisitor πŸ”’
  • Rust πŸ”’
    TOML representation of how the Rust build is configured.
  • Per-target configuration stored in the global configuration structure.
  • Newtype over Vec<TargetSelection> so we can implement custom parsing logic
  • TomlConfig πŸ”’
    Structure of the config.toml file that configuration is read from.
  • TomlTarget πŸ”’
    TOML representation of how each build target is configured.

Enums§

Constants§

  • This file is embedded in the overlay directory of the tarball sources. It is useful in scenarios where developers want to see how the tarball sources were generated.
  • Each path in this list is considered β€œallowed” in the download-rustc="if-unchanged" logic. This means they can be modified and changes to these paths should never trigger a compiler build when β€œif-unchanged” is set.

Traits§

Functions§