Modules§
- raw_
dylib π
Structs§
- Linker
Output π - Translating this is kind of useless. We donβt pass translation flags to the linker, so weβd just end up with inconsistent languages within the same diagnostic.
Enums§
- Rlib
Flavor π
Functions§
- add_
apple_ πlink_ args - We need to communicate five things to the linker on Apple/Darwin targets:
- add_
apple_ πsdk - add_
dynamic_ πcrate - add_
late_ πlink_ args - Add arbitrary βlate linkβ args defined by the target spec. FIXME: Determine where exactly these args need to be inserted.
- add_
library_ πsearch_ dirs - Add sysroot and other globally set directories to the directory search list.
- add_
link_ πscript - Add a link script embedded in the target, if applicable.
- add_
linked_ πsymbol_ object - Add a synthetic object file that contains reference to all symbols that we want to expose to the linker.
- add_
lld_ πargs - When using the linker flavors opting in to
lld
, add the necessary paths and arguments to invoke it: - add_
local_ πcrate_ allocator_ objects - Add object files for allocator code linked once for the whole crate tree.
- add_
local_ πcrate_ metadata_ objects - Add object files containing metadata for the current crate.
- add_
local_ πcrate_ regular_ objects - Add object files containing code from the current crate.
- add_
local_ πnative_ libraries - add_
native_ πlibs_ from_ crate - add_
order_ πindependent_ options - add_
post_ πlink_ args - Add arbitrary βpost-linkβ args defined by the target spec. FIXME: Determine where exactly these args need to be inserted.
- add_
post_ πlink_ objects - Add post-link object files defined by the target spec.
- add_
pre_ πlink_ args - Add arbitrary βpre-linkβ args defined by the target spec or from command line. FIXME: Determine where exactly these args need to be inserted.
- add_
pre_ πlink_ objects - Add pre-link object files defined by the target spec.
- add_
relro_ πargs - Add options making relocation sections in the produced ELF files read-only and suppressing lazy binding.
- add_
rpath_ πargs - Add library search paths used at runtime by dynamic linkers.
- add_
sanitizer_ πlibraries - add_
static_ πcrate - add_
upstream_ πnative_ libraries - add_
upstream_ πrust_ crates - add_
user_ πdefined_ link_ args - Add arbitrary βuser definedβ args defined from command line. FIXME: Determine where exactly these args need to be inserted.
- are_
upstream_ πrust_ objects_ already_ included - collect_
natvis_ πvisualizers - detect_
self_ πcontained_ mingw - each_
linked_ rlib - ensure_
removed - escape_
linker_ πoutput - escape_
string π - exec_
linker π - get_
apple_ πsdk_ root - get_
object_ πfile_ path - ignored_
for_ lto - Returns a boolean indicating whether the specified crate should be ignored during LTO.
- link_
binary - Performs the linkage portion of the compilation phase. This will generate all of the requested outputs for this compilation session.
- link_
dwarf_ πobject - Use
thorin
(rust implementation of a dwarf packaging utility) to link DWARF objects into a DWARF package. - link_
natively π - Create a dynamic library or executable.
- link_
output_ πkind - link_
rlib π - Create an βrlibβ.
- link_
sanitizer_ πruntime - link_
staticlib π - Create a static archive.
- linker_
and_ flavor - This functions tries to determine the appropriate linker (and corresponding LinkerFlavor) to use
- linker_
with_ πargs - Produce the linker command line containing linker path and arguments.
- preserve_
objects_ πfor_ their_ debuginfo - Returns a pair of boolean indicating whether we should preserve the object and dwarf object files on the filesystem for their debug information. This is often useful with split-dwarf like schemes.
- print_
native_ πstatic_ libs - rehome_
lib_ πpath - rehome_
sysroot_ πlib_ dir - relevant_
lib π - self_
contained_ πcomponents - Various toolchain components used during linking are used from rustc distribution instead of being found somewhere on the host system. We only provide such support for a very limited number of targets.
- strip_
with_ πexternal_ utility