Skip to content

Latest commit

 

History

History
13 lines (12 loc) · 1.04 KB

File metadata and controls

13 lines (12 loc) · 1.04 KB

sccache includes support for caching Rust compilation. This includes many caveats, and is primarily focused on caching rustc invocations as produced by cargo. A (possibly-incomplete) list follows:

  • --emit is required.
  • --crate-name is required.
  • Only link, metadata and dep-info are supported as --emit values, and link must be present.
  • --out-dir is required.
  • -o file is not supported.
  • Compilation from stdin is not supported, a source file must be provided.
  • Values from env! require Rust >= 1.46 to be tracked in caching.
  • Procedural macros that read files from the filesystem may not be cached properly.
  • rustc's incremental compilation needs to be disabled. See The Cargo Book
  • Crates that invoke the system linker cannot be cached. Examples are bin, dylib, cdylib, and proc-macro crates.

If you are using Rust 1.18 or later, you can ask cargo to wrap all compilation with sccache by setting RUSTC_WRAPPER=sccache in your build environment.