Commit Graph

156 Commits

Author SHA1 Message Date
=
ea347b619e
linux -> Linux 2019-09-28 14:18:29 -06:00
=
b3907fd3c6
add pkg-config to dependencies 2019-09-28 14:17:09 -06:00
Mazdak Farrokhzad
d2b555eef3
Rollup merge of #63630 - andjo403:bump_compiler, r=nikomatsakis
Update installed compiler dependencies

As llvm have updated the minimum toolchain
https://reviews.llvm.org/D66188
2019-09-19 04:53:07 +02:00
Andreas Jonson
166719ad9f Update installed compiler dependencies
there is a soft-error for older toolchains
from https://reviews.llvm.org/D57264 in preparation for the
hard error in https://reviews.llvm.org/D66188
2019-09-14 10:49:56 +02:00
Aditya Atluri
7dd5c66108
Added more prereqs and note about default directory 2019-09-06 12:54:42 -07:00
Martin Finkel
54e268cf55 Fix README MSVC URI 2019-07-31 16:39:38 +07:00
Alex Touchet
4e02a1f7c5
Change "OSX" to "macOS" 2019-07-22 16:16:59 -07:00
Eric Huss
06c3256a6b Update cargo-vendor usage 2019-07-09 16:12:41 -07:00
Mark Brooks
f4b30f4bae
Update README.md 2019-07-04 17:35:26 -04:00
Sunreal
3d6070db77
Neutralize link 2019-06-08 00:14:52 +08:00
Sunreal
1cf662e2cc
rephrase 2019-06-07 22:08:22 +08:00
Sunreal
36601f6e1c
Windows 10 SDK is also required now. 2019-06-05 23:58:36 +08:00
Scott McMurray
67ee2862ad Remove the incorrect warning from README.md
My problem was user error; thanks to @Zoxc for fixing me!

r? @alexcrichton
2019-05-23 23:40:07 -07:00
Scott McMurray
7171bd1f69 README: Mention MSVC 2017+, not 2013(!)
LLVM will soon require 2017+ [1] (and our in-tree version just rejected the version of 2015 I was using), so update the mention and provide a link.

[1]: https://llvm.org/docs/GettingStarted.html#host-c-toolchain-both-compiler-and-standard-library
2019-05-13 23:17:54 -07:00
Andrew Xu
98beb12706 Add a link to the licenses page 2019-04-12 22:14:21 +08:00
Andrew Xu
8ffb6fd8e4 Add summary and reference to Rust trademark guide 2019-04-06 18:04:06 +08:00
Eddie Kovsky
71dfb01e8f Update build instructions in README.md
Add additional instructions when `sudo ./x.py install` fails to
complete the build.

This resolves issues #40108 and #49269.
2019-03-20 22:21:53 -06:00
Who? Me?!
0c4602aaef
Update README.md
Point contributors to the rustc-guide...
2019-01-18 15:28:23 -06:00
Nick Cameron
27989ec30b
Remove submodule step from README
Since the bootstrap does it now
2019-01-11 14:27:12 +13:00
Simonas Kazlauskas
087083e8a4 Remove mention of required memory to build
Because it, obviously, changes all the time and 600MiB is way
out-of-date now.
2018-12-30 00:17:31 +02:00
misagh
3d23e558e9 fix install broken link 2018-12-10 23:28:55 +01:00
Mark Mansi
6494f1e60e rustc-guide has moved 2018-11-26 15:03:13 -06:00
Behnam Esfahbod
88fe8acd89 docs: Use dollar sign for all bash prompts
Making it consistent across the board, as most of them already use `$`.

Also split one continues bash run into two, to make it easier see
different runs: one with warning and another with error.
2018-09-08 21:22:00 -07:00
mark
6556c84e3f Add a link to the rustc docs 2018-07-04 17:24:43 -05:00
Dhirendra Kumar Kashyap
b0a55554ac
Update README.md 2018-06-13 23:20:50 +05:30
Dhirendra Kumar Kashyap
3eaa4a3fad
Update README.md
Corrected the grammar of the document.
2018-06-13 22:53:50 +05:30
Abhishek koserwal
bad9fefdae Update build instructions 2018-05-31 23:53:23 +05:30
Alex Crichton
d69b24805b rust: Import LLD for linking wasm objects
This commit imports the LLD project from LLVM to serve as the default linker for
the `wasm32-unknown-unknown` target. The `binaryen` submoule is consequently
removed along with "binaryen linker" support in rustc.

Moving to LLD brings with it a number of benefits for wasm code:

* LLD is itself an actual linker, so there's no need to compile all wasm code
  with LTO any more. As a result builds should be *much* speedier as LTO is no
  longer forcibly enabled for all builds of the wasm target.
* LLD is quickly becoming an "official solution" for linking wasm code together.
  This, I believe at least, is intended to be the main supported linker for
  native code and wasm moving forward. Picking up support early on should help
  ensure that we can help LLD identify bugs and otherwise prove that it works
  great for all our use cases!
* Improvements to the wasm toolchain are currently primarily focused around LLVM
  and LLD (from what I can tell at least), so it's in general much better to be
  on this bandwagon for bugfixes and new features.
* Historical "hacks" like `wasm-gc` will soon no longer be necessary, LLD
  will [natively implement][gc] `--gc-sections` (better than `wasm-gc`!) which
  means a postprocessor is no longer needed to show off Rust's "small wasm
  binary size".

LLD is added in a pretty standard way to rustc right now. A new rustbuild target
was defined for building LLD, and this is executed when a compiler's sysroot is
being assembled. LLD is compiled against the LLVM that we've got in tree, which
means we're currently on the `release_60` branch, but this may get upgraded in
the near future!

LLD is placed into rustc's sysroot in a `bin` directory. This is similar to
where `gcc.exe` can be found on Windows. This directory is automatically added
to `PATH` whenever rustc executes the linker, allowing us to define a `WasmLd`
linker which implements the interface that `wasm-ld`, LLD's frontend, expects.

Like Emscripten the LLD target is currently only enabled for Tier 1 platforms,
notably OSX/Windows/Linux, and will need to be installed manually for compiling
to wasm on other platforms. LLD is by default turned off in rustbuild, and
requires a `config.toml` option to be enabled to turn it on.

Finally the unstable `#![wasm_import_memory]` attribute was also removed as LLD
has a native option for controlling this.

[gc]: https://reviews.llvm.org/D42511
2018-03-03 20:21:35 -08:00
Tobias Stolzmann
6edbe37437
Fix link to rustc guide in README.md 2018-03-01 03:13:17 +01:00
Mark Mansi
a05c5538d4 Start moving to the rustc guide! 2018-02-23 13:20:56 -06:00
Basile Desloges
513910e321 Update MSVC compilation instructions regarding path length on Windows 2017-11-25 11:38:10 +01:00
Joe Rattazzi
6500b3d069 Add "Buidling on *nix" sub-header 2017-10-14 16:59:58 -05:00
johnthagen
c3ff62863d Clarify RAM usage during build 2017-10-09 10:02:50 -04:00
Garrett Berg
daf3ed5651 Add links to headers in README and CONTRIBUTING and dependencies to CONTRIBUTING 2017-09-29 17:44:55 -06:00
Matt Ickstadt
081f32ab67 Clarify windows build instructions in README
The old wording made me think you were supposed to do `python x.py --build=msvc`, which is not the case. Specify that you need to use the target triple.
2017-08-22 13:28:39 -05:00
Steven Fackler
1126a85e87 Move config.toml.example to the root dir
It's way more discoverable here.
2017-08-11 22:24:25 -07:00
Lee Bousfield
857d9dbaba
README: note how to enable debugging for rustc 2017-07-03 22:06:43 -04:00
Fuqiao Xue
09ac478c5c Update TRPL link in README.md 2017-06-09 13:37:22 +08:00
Marc-Antoine Perennou
150d644c21 rustbuild: split Install out of Dist subcommand
only create source tarball for the Dist subcommand
mark install rule as default for Kind::Install
split install-docs
split install-std
factor out empty_dir handling
split install-cargo
split install-analysis
split install-src
rework install-rustc
properly handle cross-compilation setups for install
use pkgname in install
split plain source tarball generation from rust-src dist
document src-tarball in config.toml.exmaple

Signed-off-by: Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
2017-05-22 22:10:12 +02:00
Maxwell Paul Brickner
f7e9041cd2 Updated links to use https
I just updated a few links to use https instead of http. 

Thank you! ^ _ ^
2017-04-19 17:45:48 -04:00
omtcyfz
71020e3836 Nit: LLVM & Clang latest version is 4.0 2017-03-21 16:26:35 -04:00
projektir
6b7b262288 Updating README.md to point to the correct doc location 2017-03-13 01:04:59 -04:00
Mátyás Mustoha
f121e6180b Fix text formatting in README 2017-03-06 12:29:52 +01:00
Josh Driver
fb2d763eee Replace ./configure with config.toml in README.md and CONTRIBUTING.md 2017-02-28 21:40:00 +10:30
Corey Farwell
273cc30fb2 Clarify phrasing of MSYS2 dependencies in README.md.
Fixes https://github.com/rust-lang/rust/issues/36115.
2016-12-21 14:21:49 -08:00
Alex Crichton
0e272de69f mk: Switch rustbuild to the default build system
This commit switches the default build system for Rust from the makefiles to
rustbuild. The rustbuild build system has been in development for almost a year
now and has become quite mature over time. This commit is an implementation of
the proposal on [internals] which slates deletion of the makefiles on
2016-01-02.

[internals]: https://internals.rust-lang.org/t/proposal-for-promoting-rustbuild-to-official-status/4368

This commit also updates various documentation in `README.md`,
`CONTRIBUTING.md`, `src/bootstrap/README.md`, and throughout the source code of
rustbuild itself.

Closes #37858
2016-12-07 00:30:23 -08:00
Alex Crichton
a270b8014c rustbuild: Rewrite user-facing interface
This commit is a rewrite of the user-facing interface to the rustbuild build
system. The intention here is to make it much easier to compile/test the project
without having to remember weird rule names and such. An overall view of the new
interface is:

    # build everything
    ./x.py build

    # document everyting
    ./x.py doc

    # test everything
    ./x.py test

    # test libstd
    ./x.py test src/libstd

    # build libcore stage0
    ./x.py build src/libcore --stage 0

    # run stage1 run-pass tests
    ./x.py test src/test/run-pass --stage 1

The `src/bootstrap/bootstrap.py` script is now aliased as a top-level `x.py`
script. This `x` was chosen to be both short and easily tab-completable (no
collisions in that namespace!). The build system now accepts a "subcommand" of
what to do next, the main ones being build/doc/test.

Each subcommand then receives an optional list of arguments. These arguments are
paths in the source repo of what to work with. That is, if you want to test a
directory, you just pass that directory as an argument.

The purpose of this rewrite is to do away with all of the arcane renames like
"rpass" is the "run-pass" suite, "cfail" is the "compile-fail" suite, etc. By
simply working with directories and files it's much more intuitive of how to run
a test (just pass it as an argument).

The rustbuild step/dependency management was also rewritten along the way to
make this easy to work with and define, but that's largely just a refactoring of
what was there before.

The *intention* is that this support is extended for arbitrary files (e.g.
`src/test/run-pass/my-test-case.rs`), but that isn't quite implemented just yet.
Instead directories work for now but we can follow up with stricter path
filtering logic to plumb through all the arguments.
2016-11-02 17:57:28 -07:00
Danny Hua
2ebef83f52 add (missing) tar to list of packages to get under mingw 2016-10-13 19:38:49 -07:00
c4rlo
66ae481055 README.md: fix a "\" in table heading to be "/" 2016-09-01 22:42:51 +01:00
Neil Williams
4254b31078 Update minimum CMake version in README
The minimum got bumped in the LLVM upgrade of #34743.
2016-08-16 21:30:17 -07:00