forked from rust-lang/rust
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Document the compiler a bit. Not installed yet as I don't understand automake very well. Signed-off-by: Elly Jones <[email protected]>
- Loading branch information
Elly Jones
committed
Oct 26, 2011
1 parent
7ae7575
commit 2a5ad77
Showing
1 changed file
with
103 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,103 @@ | ||
.TH RUSTC "1" "October 2011" "Rust" "User Commands" | ||
.SH NAME | ||
rustc \- rust compiler | ||
.SH SYNOPSIS | ||
rustc [\fB-h\fR] [\fB-v\fR] [\fB-o\fR \fIoutfile\fR] | ||
[\fB--lib\fR] [\fB--static\fR] [\fB-L\fR \fIpath\fR] | ||
[\fB-g\fR] [\fB-S\fR] [\fB-c\fR] <\fIinput\fR> | ||
.PP | ||
Only the most commonly-used options are listed here. All options are listed and | ||
described below. | ||
.SH DESCRIPTION | ||
This program is a compiler for the Rust language, available at | ||
<\fBhttps://github.com/graydon/rust\fR>. | ||
.SH OPTIONS | ||
.TP | ||
\fB-h, --help\fR: Display help. | ||
.TP | ||
\fB-v, --version\fR: Display version information. | ||
.TP | ||
\fB-o\fR \fIfilename\fR: Write output to \fIfilename\fR. The default output | ||
filename for \fBfoo.rs\fR is otherwise \fBfoo\fR (when compiling a binary), | ||
\fBfoo\fR (when compiling a library), \fBfoo.o\fR (when using \fB-c\fR), | ||
\fBfoo.s\fR (when using \fB-S\fR) or \fBfoo.bc\fR (when using | ||
\fB--emit-llvm\fR). | ||
.TP | ||
\fB--lib\fR: Compile and link a library crate into a shared object. | ||
.TP | ||
\fB--static\fR: Produce a statically-linked binary, or generate a static | ||
library. | ||
.TP | ||
\fB--pretty\fR \fItype\fR: Pretty-print the input. Valid \fItype\fRs are: | ||
.RS | ||
.TP | ||
\fBnormal\fR: Un-annotated source. | ||
.TP | ||
\fBexpanded\fR: Crates expanded. | ||
.TP | ||
\fBtyped\fR: Crates expanded, all expressions annotated with types. | ||
.TP | ||
\fBidentified\fR: Fully parenthesized, ast nodes and blocks annotated with IDs. | ||
.RE | ||
.TP | ||
\fB--ls\fR: Lists symbols defined by the specified \fBcompiled\fR library. | ||
.TP | ||
\fB-L\fR \fIpath\fR: Adds \fIpath\fR to the library search path. | ||
.TP | ||
\fB--noverify\fR: Disables LLVM verification pass, which does sanity checking of | ||
bitcode generated by rustc. Using this option gives a slight speedup, at the | ||
cost of vastly reduced ability to catch rustc bugs. See | ||
<\fBhttp://llvm.org/docs/Passes.html\fR> for a list of properties checked. | ||
.TP | ||
\fB--parse-only\fR: Run the parse phase only. If parsing succeeds, produces no | ||
output. | ||
.TP | ||
\fB--no-trans\fR: Run all passes except translation. Produces no output. | ||
.TP | ||
\fB-g\fR: Produce debug info. | ||
.TP | ||
\fB--OptLevel\fR=\fIlevel\fR: Set optimization level to \fIlevel\fR. | ||
.TP | ||
\fB-O\fR: Equal to --OptLevel=2 | ||
.TP | ||
\fB-S\fR: Compile to assembly, but do not assemble or link. | ||
.TP | ||
\fB-c\fR: Compile and assemble, but do not link. | ||
.TP | ||
\fB--emit-llvm\fR: Generate llvm bitcode. | ||
.TP | ||
\fB--save-temps\fR: For foo.rs, save generated bitcode before optimization to | ||
\fBfoo.bc\fR, bitcode after optimization to \fBfoo.opt.bc\fR, and the generated | ||
object file to \fBfoo.o\fR. | ||
.TP | ||
\fB--stats\fR: Print statistics about compilation. | ||
.TP | ||
\fB--cfg\fR \fIcfgspec\fR: Provide a crate config spec. | ||
.TP | ||
\fB--time-passes\fR: Print runtimes of compilation phases. | ||
.TP | ||
\fB--time-llvm-passes\fR: Print runtimes of llvm phases. | ||
.TP | ||
\fB--sysroot\fR \fIpath\fR: Set the system root. Default is rustc's directory. | ||
.TP | ||
\fB--target\fR \fIgnu-config-name\fR: Set the compilation target, which is a | ||
string of the form \fBcpu\fR-\fBmanufacturer\fR-\fBkernel\fR[-\fBos\fR]. Example | ||
values include "i686-unknown-linux-gnu" and "mips-idt-ecoff"; see | ||
<\fBhttp://sources.redhat.com/autobook/autobook/autobook_17.html\fR>. If not | ||
supplied, the host triple is used (see \fB--version\fR output). | ||
.TP | ||
\fB--no-typestate\fR: Disable the typestate pass. This breaks some safety | ||
guarantees of the language and is quite dangerous. | ||
.TP | ||
\fB--test\fR: Build a test harness. | ||
.TP | ||
\fB--gc\fR: \fBEXPERIMENTAL\fR. Garbage-collect shared data. | ||
.TP | ||
\fB--stack-growth\fR: \fBEXPERIMENTAL\fR. Perform stack growth checks. | ||
.SH "BUGS" | ||
See \fBhttps://github.com/graydon/rust/issues\fR for a list of known bugs. | ||
.SH "AUTHOR" | ||
See \fBAUTHORS.txt\fR in the rust source distribution. Graydon Hoare | ||
<\fI[email protected]\fR> is the project leader. | ||
.SH "COPYRIGHT" | ||
See \fBLICENSE.txt\fR in the rust source distribution. |