blob: 75b2e2a2a43f4b54bb347e2075b6d835f8b6f749 [file] [log] [blame]
-C ar=val -- this option is deprecated and does nothing
-C code-model=val -- choose the code model to use (`rustc --print code-models` for details)
-C codegen-units=val -- divide crate into N units to optimize in parallel
-C control-flow-guard=val -- use Windows Control Flow Guard (default: no)
-C debug-assertions=val -- explicitly enable the `cfg(debug_assertions)` directive
-C debuginfo=val -- debug info emission level (0 = no debug info, 1 = line tables only, 2 = full debug info with variable and type information; default: 0)
-C default-linker-libraries=val -- allow the linker to link its default libraries (default: no)
-C embed-bitcode=val -- emit bitcode in rlibs (default: yes)
-C extra-filename=val -- extra data to put in each output filename
-C force-frame-pointers=val -- force use of the frame pointers
-C force-unwind-tables=val -- force use of unwind tables
-C incremental=val -- enable incremental compilation
-C inline-threshold=val -- set the threshold for inlining a function
-C instrument-coverage=val -- instrument the generated code to support LLVM source-based code coverage reports (note, the compiler build config must include `profiler = true`); implies `-C symbol-mangling-version=v0`. Optional values are:
`=all` (implicit value)
`=except-unused-generics`
`=except-unused-functions`
`=off` (default)
-C link-arg=val -- a single extra argument to append to the linker invocation (can be used several times)
-C link-args=val -- extra arguments to append to the linker invocation (space separated)
-C link-dead-code=val -- keep dead code at link time (useful for code coverage) (default: no)
-C link-self-contained=val -- control whether to link Rust provided C objects/libraries or rely
on C toolchain installed in the system
-C linker=val -- system linker to link outputs with
-C linker-flavor=val -- linker flavor
-C linker-plugin-lto=val -- generate build artifacts that are compatible with linker-based LTO
-C llvm-args=val -- a list of arguments to pass to LLVM (space separated)
-C lto=val -- perform LLVM link-time optimizations
-C metadata=val -- metadata to mangle symbol names with
-C no-prepopulate-passes=val -- give an empty list of passes to the pass manager
-C no-redzone=val -- disable the use of the redzone
-C no-stack-check=val -- this option is deprecated and does nothing
-C no-vectorize-loops=val -- disable loop vectorization optimization passes
-C no-vectorize-slp=val -- disable LLVM's SLP vectorization pass
-C opt-level=val -- optimization level (0-3, s, or z; default: 0)
-C overflow-checks=val -- use overflow checks for integer arithmetic
-C panic=val -- panic strategy to compile crate with
-C passes=val -- a list of extra LLVM passes to run (space separated)
-C prefer-dynamic=val -- prefer dynamic linking to static linking (default: no)
-C profile-generate=val -- compile the program with profiling instrumentation
-C profile-use=val -- use the given `.profdata` file for profile-guided optimization
-C relocation-model=val -- control generation of position-independent code (PIC) (`rustc --print relocation-models` for details)
-C remark=val -- print remarks for these optimization passes (space separated, or "all")
-C rpath=val -- set rpath values in libs/exes (default: no)
-C save-temps=val -- save all temporary output files during compilation (default: no)
-C soft-float=val -- use soft float ABI (*eabihf targets only) (default: no)
-C split-debuginfo=val -- how to handle split-debuginfo, a platform-specific option
-C strip=val -- tell the linker which information to strip (`none` (default), `debuginfo` or `symbols`)
-C symbol-mangling-version=val -- which mangling version to use for symbol names ('legacy' (default) or 'v0')
-C target-cpu=val -- select target processor (`rustc --print target-cpus` for details)
-C target-feature=val -- target specific attributes. (`rustc --print target-features` for details). This feature is unsafe.