Commit Graph

66 Commits

Author SHA1 Message Date
Simonas Kazlauskas
deccd93531 Tweak manpage’s emit section 2015-12-04 21:11:04 +02:00
Alex Crichton
8c963c07a8 rustc: Support output filenames for each emit type
Currently the compiler supports the ability to emit multiple output types as
part of one compilation (e.g. asm, LLVM IR, bytecode, link, dep-info, etc). It
does not, however, support the ability to customize the output filename for each
of these output types. The `-o` flag is ignored if multiple emit types are
specified (and the compiler emits a warning about this).

Normally this doesn't matter too much, but in the case of `dep-info` it can lead
to a number of problems (e.g. see ). By allowing customization of the
output filename for each emit type we're able to solve the problems in that
issue.

This commit adds support for the `--emit` option to the compiler to look like:

    rustc foo.rs --emit dep-info=.deps/foo.d,link

This indicates that the `dep-info` output type will be placed at `.deps/foo.d`
and the `link` output type will otherwise be determined via the `--out-dir` and
`-o` flags.

Closes 
2015-09-30 11:12:30 -07:00
Steve Klabnik
b2dc2ef709 Make distinction between -l and --extern more clear
Fixes 
2015-08-18 13:59:18 -04:00
Ralph Giles
bb61b0b8bb Update rustc manpage.
rustc -C target-cpu=help is no longer supported. Recommend the
llc tool intead like 'rustc --help'.
2015-05-26 16:29:32 -07:00
Ralph Giles
ea5c8eb2c9 Bump manpage date and version for 1.2.0-dev.
Estimating August as the release date for 1.2.0.
2015-05-26 16:29:12 -07:00
Steve Klabnik
8f0de740f8 environment variables -> environment
As @sanxiyn says,
https://github.com/rust-lang/rust/pull/23527#issuecomment-83835448
2015-03-20 10:53:51 -04:00
Steve Klabnik
b4a72a403a Document environment variables
Fixes 
2015-03-19 19:19:29 -04:00
Angus Lees
9093e23973 rustc.1: lowercase codegen replaceable options
This is more consistent with `rustc -C help` output.
2015-02-26 22:50:16 +00:00
Angus Lees
4b00e87103 Standardize manpage markup
Use consistent markup between rust and rustdoc manpages.  Avoid use of
the troublesome unquoted '-' troff character.
2015-02-26 09:39:27 +00:00
Alex Crichton
6c62839a7f rustc: Recognize -L framework=foo
On OSX the linker has a separate framework lookup path which is specified via
the `-F` flag. This adds a new kind of `-L` path recognized by the compiler for
frameworks to be passed through to the linker.

Closes 
2015-02-04 13:54:49 -08:00
Ivan Petkov
eebe7360de Man page/--help dialog fix
* Running rustc with the --print option will accept "file-names" but
  not "output-file-names"
2015-01-03 11:34:01 -08:00
Simonas Kazlauskas
faa00949d9 Update man page with the new options
This pull request updates the rustc manual page to represent post-#19900
state of rustc options better.

A bit unrelatedly, --help output is changed to fix some issues too:
  * -g and -O descriptions were changed from deprected flags to the new
    codegen flags.
  * dep-info value was moved from crate-type to emit flag.

Fixes 
Fixes 
2014-12-22 19:32:20 +02:00
bors
78a7676898 auto merge of : simias/rust/master, r=huonw
The man page stated that the list of features was space-separated when
it's actually comma-separated.
2014-10-10 14:57:03 +00:00
Brian Anderson
afc1b20d8e Bump version to 0.13.0 2014-10-09 10:41:23 -07:00
Lionel Flandrin
db087de079 Fix target-feature codegen option syntax in rustc man page.
The man page stated that the list of features was space-separated when
it's actually comma-separated.
2014-10-05 13:06:33 +02:00
Brian Anderson
a3c27ea3c6 mk: Update how the build deals with version labels.
Adds a new configure flag, --release-channel, which determines how the version
number should be augmented with a release label, as well as how the distribution
artifacts will be named. This is entirely for use by the build automation.

--release-channel can be either 'source', 'nightly', 'beta', or 'stable'.

Here's a summary of the affect of these values on version number and
artifact naming, respectively:

* source - '0.12.0-pre', 'rust-0.12.0-pre-...'
* nightly - '0.12.0-nightly', 'rust-nightly-...'
* beta - '0.12.0-beta', 'rust-beta-...'
* stable - '0.12.0', 'rust-0.12.0-...'

Per http://discuss.rust-lang.org/t/rfc-impending-changes-to-the-release-process/508/1
2014-09-15 16:25:20 -07:00
Philipp Gesang
be1fe29ec4
rustc.1: fix typo
Uses the same wording as ``config.rs`` now.
2014-07-16 08:01:59 +02:00
bors
f2d251d12e auto merge of : brson/rust/0.12.0, r=alexcrichton 2014-07-12 18:06:36 +00:00
bors
350f3aa856 auto merge of : lucidd/rust/master, r=pnkfelix
I used the same description rustc --help outputs.
2014-07-12 16:21:36 +00:00
Brian Anderson
a9cf3233f7 Bump version to 0.12.0-pre 2014-07-11 11:26:58 -07:00
Kevin Walter
8fab111e79 Add rustc --pretty flowgraph to man page 2014-07-11 15:51:01 +02:00
Yuri Albuquerque
175d215eb6 Some documentation fixes and improvements 2014-07-10 19:51:11 -04:00
bors
206dd91742 auto merge of : alexcrichton/rust/no-rpath, r=brson
This commit disables rustc's emission of rpath attributes into dynamic libraries
and executables by default. The functionality is still preserved, but it must
now be manually enabled via a `-C rpath` flag.

This involved a few changes to the local build system:

* --disable-rpath is now the default configure option
* Makefiles now prefer our own LD_LIBRARY_PATH over the user's LD_LIBRARY_PATH
  in order to support building rust with rust already installed.
* The compiletest program was taught to correctly pass through the aux dir as a
  component of LD_LIBRARY_PATH in more situations.

The major impact of this change is that neither rustdoc nor rustc will work
out-of-the-box in all situations because they are dynamically linked. It must be
arranged to ensure that the libraries of a rust installation are part of the
LD_LIBRARY_PATH. The default installation paths for all platforms ensure this,
but if an installation is in a nonstandard location, then configuration may be
necessary.

Additionally, for all developers of rustc, it will no longer be possible to run
$target/stageN/bin/rustc out-of-the-box. The old behavior can be regained
through the `--enable-rpath` option to the configure script.

This change brings linux/mac installations in line with windows installations
where rpath is not possible.

Closes 
[breaking-change]
2014-07-08 22:51:39 +00:00
Alex Crichton
aa1163b92d Update to 0.11.0 2014-06-27 12:50:16 -07:00
Alex Crichton
a0546ded10 rustc: Disable rpath settings by default
This commit disables rustc's emission of rpath attributes into dynamic libraries
and executables by default. The functionality is still preserved, but it must
now be manually enabled via a `-C rpath` flag.

This involved a few changes to the local build system:

* --disable-rpath is now the default configure option
* Makefiles now prefer our own LD_LIBRARY_PATH over the user's LD_LIBRARY_PATH
  in order to support building rust with rust already installed.
* The compiletest program was taught to correctly pass through the aux dir as a
  component of LD_LIBRARY_PATH in more situations.

The major impact of this change is that neither rustdoc nor rustc will work
out-of-the-box in all situations because they are dynamically linked. It must be
arranged to ensure that the libraries of a rust installation are part of the
LD_LIBRARY_PATH. The default installation paths for all platforms ensure this,
but if an installation is in a nonstandard location, then configuration may be
necessary.

Additionally, for all developers of rustc, it will no longer be possible to run
$target/stageN/bin/rustc out-of-the-box. The old behavior can be regained
through the `--enable-rpath` option to the configure script.

This change brings linux/mac installations in line with windows installations
where rpath is not possible.

Closes 
[breaking-change]
2014-06-16 21:55:38 -07:00
Brian Anderson
f4ae8a83f9 Update repo location 2014-06-16 18:16:36 -07:00
Luqman Aden
d0d800f125 Get rid of the android-cross-path flag to rustc.
There's no need to include this specific flag just for android. We can
already deal with what it tries to solve by using -C linker=/path/to/cc
and -C ar=/path/to/ar. The Makefiles for rustc already set this up when
we're crosscompiling.

I did add the flag to compiletest though so it can find gdb. Though, I'm
pretty sure we don't run debuginfo tests on android anyways right now.

[breaking-change]
2014-05-14 02:16:14 -04:00
Alexandre Gagnon
3e9f66fc9f Fix typos in rustc manpage 2014-05-12 19:52:28 -07:00
bors
18536190e1 auto merge of : FlaPer87/rust/ls-behind-z, r=brson
Closes 
2014-04-17 01:31:27 -07:00
bors
787f4151e3 auto merge of : brson/rust/man, r=alexcrichton
--no-analysis, --dep-info, -C relocation-model, remove --gen-crate-map
2014-04-16 21:56:22 -07:00
Brian Anderson
45e4fad5d0 man: Add missing options to rustc.1 2014-04-16 11:30:33 -07:00
Flavio Percoco
fcdc36b142 Move --ls behind -Z ls
Closes 
2014-04-16 17:45:06 +02:00
Tobias Bucher
efc285b7e6 Change AUTHORS section in the man pages
The man pages no longer contain Graydon Hoare as the project lead.

Fix .
2014-04-15 19:45:00 -07:00
Brian Anderson
0875ffcbff Bump version to 0.11-pre
This also changes some of the download links in the documentation
to 'nightly'.
2014-04-03 16:28:46 -07:00
Alex Crichton
a5681d2590 Bump version to 0.10 2014-03-31 14:40:44 -07:00
Eduard Bopp
a27501112a Update version and date info in man pages
Both for rustc and rustdoc the man pages contained out-of-date version info.
2014-03-05 11:22:58 +01:00
Alex Crichton
071ee96277 Consolidate codegen-related compiler flags
Move them all behind a new -C switch. This migrates some -Z flags and some
top-level flags behind this -C codegen option.

The -C flag takes values of the form "-C name=value" where the "=value" is
optional for some flags.

Flags affected:

* --llvm-args           => -C llvm-args
* --passes              => -C passes
* --ar                  => -C ar
* --linker              => -C linker
* --link-args           => -C link-args
* --target-cpu          => -C target-cpu
* --target-feature      => -C target-fature
* --android-cross-path  => -C android-cross-path
* --save-temps          => -C save-temps
* --no-rpath            => -C no-rpath
* -Z no-prepopulate     => -C no-prepopulate-passes
* -Z no-vectorize-loops => -C no-vectorize-loops
* -Z no-vectorize-slp   => -C no-vectorize-slp
* -Z soft-float         => -C soft-float
* -Z gen-crate-map      => -C gen-crate-map
* -Z prefer-dynamic     => -C prefer-dynamic
* -Z no-integrated-as   => -C no-integrated-as

As a bonus, this also promotes the -Z extra-debug-info flag to a first class -g
or --debuginfo flag.

* -Z debug-info         => removed
* -Z extra-debug-info   => -g or --debuginfo

Closes 
Closes 
2014-02-10 00:50:39 -08:00
Alex Crichton
6e7968b10a Redesign output flags for rustc
This commit removes the -c, --emit-llvm, -s, --rlib, --dylib, --staticlib,
--lib, and --bin flags from rustc, adding the following flags:

* --emit=[asm,ir,bc,obj,link]
* --crate-type=[dylib,rlib,staticlib,bin,lib]

The -o option has also been redefined to be used for *all* flavors of outputs.
This means that we no longer ignore it for libraries. The --out-dir remains the
same as before.

The new logic for files that rustc emits is as follows:

1. Output types are dictated by the --emit flag. The default value is
   --emit=link, and this option can be passed multiple times and have all
   options stacked on one another.
2. Crate types are dictated by the --crate-type flag and the #[crate_type]
   attribute. The flags can be passed many times and stack with the crate
   attribute.
3. If the -o flag is specified, and only one output type is specified, the
   output will be emitted at this location. If more than one output type is
   specified, then the filename of -o is ignored, and all output goes in the
   directory that -o specifies. The -o option always ignores the --out-dir
   option.
4. If the --out-dir flag is specified, all output goes in this directory.
5. If -o and --out-dir are both not present, all output goes in the current
   directory of the process.
6. When multiple output types are specified, the filestem of all output is the
   same as the name of the CrateId (derived from a crate attribute or from the
   filestem of the crate file).

Closes 
Closes 
Closes 
2014-02-06 11:14:13 -08:00
Corey Richardson
25fe2cadb1 Remove rustpkg.
I'm sorry :'(

Closes 
2014-02-02 03:08:56 -05:00
Daniel Micay
a2dab3c46e remove old rc extension from detection files 2014-01-22 20:39:32 -05:00
Daniel Micay
7c92435f8f remove the rusti command
Closes 
Closes 
Closes 
Closes 
Closes 
Closes 
Closes 
Closes 
2013-10-16 22:54:38 -04:00
Gavin Baker
4f2ee0ef3a Create man pages for rust tools 2013-07-07 14:45:39 +10:00
Brian Anderson
3fbea16107 Update man page 2013-06-28 00:31:58 -04:00
Luca Bruno
a5c931cc61 Update license terms in manpage 2013-04-08 10:19:16 +02:00
hansjorg
afe73ccad9 Update manpage based on current usage message 2013-02-15 01:29:14 +01:00
Kevin Cantu
ae8e6781d2 Move the description of -(W|A|D|F) into the -W help message 2012-10-10 16:48:23 -07:00
Kevin Cantu
194d3786a7 A simple update to the manpage based on the usage message 2012-10-10 15:29:01 -07:00
Orphée Lafond-Lummis
ae4f8fb87a rustc man page and usage text update.
* Mark --static as experimental;
* Remove --stats, as the option isn't implemented.
* Bold and surround by pointy brackets (<>) all the URLs of rustc man page, for
  consistency.
2012-10-03 20:19:20 -04:00
Graydon Hoare
df8481a9c3 Update version on man page. 2012-07-12 12:43:20 -07:00
Brian Anderson
9fe22a4ab7 Mark -g as experimental () 2012-07-02 17:22:49 -07:00