Expand description
Compilation of native dependencies like GCC.
Native projects like GCC unfortunately aren’t suited just yet for compilation in build scripts that Cargo has. This is because the compilation takes a very long time but also because we don’t want to compile GCC 3 times as part of a normal bootstrap (we want it cached).
GCC and compiler-rt are essentially just wired up to everything else to ensure that they’re always in place if needed.
Structs§
Enums§
Functions§
- add_
cg_ gcc_ cargo_ flags - Configures a Cargo invocation so that it can build the GCC codegen backend.
- build_
gcc 🔒 - ci_
gcc_ 🔒root - The absolute path to the downloaded GCC artifacts.
- create_
lib_ 🔒alias - Creates a libgccjit.so.0 alias next to libgccjit.so if it does not already exist
- detect_
gcc_ 🔒sha - This retrieves the GCC sha we want to use, according to git history.
- get_
gcc_ build_ status - This returns information about whether GCC should be built or if it’s already built. It transparently handles downloading GCC from CI if needed.
- libgccjit_
built_ 🔒path - Returns the path to a libgccjit.so file in the install directory of GCC.
- try_
download_ 🔒gcc - Tries to download GCC from CI if it is enabled and GCC artifacts are available for the given target. Returns a path to the libgccjit.so file.