rust/src
Alex Crichton c7a7658c6d Enable "full tools" option on ARM dist builders
This commit switches the `--enable-extended` option on the arm-related
dist builders to `--enable-full-tools`. This alias in `config.py`
corresponds to enabling a few more options:

* `rust.lld = true` - this is the main purpose of this PR, to enable LLD
  on ARM-related platforms. This means it will effectively unlock
  compilation of wasm programs from an arm host.

* `rust.llvm-tools = true` - it turns out that this option is largely
  ignored in rustbuild today. This is only read in one location to set
  some flags for the `llvm-tools` package, but the `llvm-tools` package
  is already produced on all of these builders. It's predicted that this
  will have no effect on build times.

* `rust.codegen-backends = ['llvm']` - historically this also enabled
  the emscripten backend, but that has long since been removed.

This brings the ARM dist builders in line with the x86_64 dist builders
using this flag. The hope is that the extra time spent on CI building
LLD will acceptable because it's cached by `sccache`, LLD is a
relatively small C++ project, and the dist builders are all clocking
well under 3 hours (the slowest of all builders) around 2 hours.

There's likely some possible cleanup that can happen with these
configure options since it doesn't look like they've aged too too well,
but I'm hopeful that possible refactorings, if necessary, could be
deferred to future PRs.
2020-04-23 12:45:18 -07:00
..
bootstrap Build libstd with -Cbitcode-in-rlib=yes. 2020-04-22 15:22:18 +10:00
build_helper
ci Enable "full tools" option on ARM dist builders 2020-04-23 12:45:18 -07:00
doc Alphabetize the -C and -Z options. 2020-04-22 22:44:37 +10:00
etc Enforce Python 3 as much as possible 2020-04-10 09:09:58 -04:00
liballoc More diagnostic items for Clippy usage 2020-04-22 07:57:56 +02:00
libarena separate out an arena for HIR 2020-03-21 22:18:57 +01:00
libcore Rollup merge of #71454 - ecstatic-morse:inline-core-ptr-docs, r=RalfJung 2020-04-23 15:57:18 +02:00
libfmt_macros Dogfood more or_patterns in the compiler 2020-04-19 07:33:58 -07:00
libgraphviz
libpanic_abort
libpanic_unwind Make panic unwind the default for aarch64-*-windows-msvc targets 2020-04-03 09:41:58 -07:00
libproc_macro Add tracking issue for proc_macro_is_available 2020-04-22 11:07:07 -07:00
libprofiler_builtins Require compiler-rt root at ../src/llvm-project/compiler-rt 2020-04-11 17:49:16 -04:00
librustc_apfloat Dogfood more or_patterns in the compiler 2020-04-19 07:33:58 -07:00
librustc_ast Rollup merge of #71284 - JOE1994:serialize_id, r=petrochenkov 2020-04-20 18:07:09 +02:00
librustc_ast_lowering Dogfood more or_patterns in the compiler 2020-04-19 07:33:58 -07:00
librustc_ast_passes allow const generics in const fn 2020-04-13 22:37:20 +02:00
librustc_ast_pretty Remove unused dependencies 2020-04-20 17:59:27 +09:00
librustc_attr Remove unused dependencies 2020-04-20 17:59:27 +09:00
librustc_builtin_macros Dogfood more or_patterns in the compiler 2020-04-19 07:33:58 -07:00
librustc_codegen_llvm Rollup merge of #70970 - eddyb:trait-vs-impl-mismatch, r=oli-obk 2020-04-22 12:18:31 +02:00
librustc_codegen_ssa Auto merge of #71044 - ecstatic-morse:body-predecessor-cache, r=oli-obk 2020-04-22 21:08:28 +00:00
librustc_data_structures Rollup merge of #71369 - ctaggart:wasm32_profiling, r=ecstatic-morse 2020-04-22 23:19:22 +02:00
librustc_driver Make option type descriptions non-optional. 2020-04-19 19:53:54 +10:00
librustc_error_codes Rollup merge of #71461 - GuillaumeGomez:improve-e0567, r=Dylan-DPC 2020-04-23 15:57:19 +02:00
librustc_errors don't clone types that are copy (clippy::clone_on_copy) 2020-04-16 00:17:38 +02:00
librustc_expand Dogfood more or_patterns in the compiler 2020-04-19 07:33:58 -07:00
librustc_feature #[link]: mention wasm_import_module instead of cfg 2020-03-29 17:40:04 +02:00
librustc_fs_util
librustc_hir Dogfood more or_patterns in the compiler 2020-04-19 07:33:58 -07:00
librustc_hir_pretty Remove unused dependencies 2020-04-20 17:59:27 +09:00
librustc_incremental rustc -> rustc_middle part 3 (rustfmt) 2020-03-30 07:19:55 +02:00
librustc_index Use assoc integer constants in librustc_* 2020-04-07 00:43:16 +02:00
librustc_infer Dogfood more or_patterns in the compiler 2020-04-19 07:33:58 -07:00
librustc_interface Use macros for option tests. 2020-04-22 22:47:05 +10:00
librustc_lexer Minor refactoring 2020-04-21 22:29:20 +05:30
librustc_lint Rollup merge of #71412 - dtolnay:uselessdoc, r=Manishearth 2020-04-22 12:18:38 +02:00
librustc_llvm Don't emit rerun-if-changed on llvm-config if using system LLVM 2020-04-11 17:49:16 -04:00
librustc_macros Rollup merge of #70081 - lcnr:issue68387, r=varkor 2020-04-01 00:27:20 +02:00
librustc_metadata Add #[inline] declarations 2020-04-22 09:57:43 -07:00
librustc_middle Rollup merge of #71452 - ecstatic-morse:no-more-snapshot, r=RalfJung 2020-04-23 15:57:16 +02:00
librustc_mir Rollup merge of #71198 - oli-obk:const_check_cleanup, r=RalfJung 2020-04-23 15:57:13 +02:00
librustc_mir_build Use Body everywhere 2020-04-22 09:57:43 -07:00
librustc_parse Rollup merge of #71256 - cuviper:must_use_replace, r=estebank 2020-04-22 23:19:19 +02:00
librustc_passes Remove unused dependencies 2020-04-20 17:59:27 +09:00
librustc_plugin_impl rustc -> rustc_middle part 3 (rustfmt) 2020-03-30 07:19:55 +02:00
librustc_privacy Do not use DUMMY_HIR_ID as placeholder value in node_id_to_hir_id table 2020-04-14 08:46:07 +01:00
librustc_query_system Remove unused dependencies 2020-04-20 17:59:27 +09:00
librustc_resolve Rollup merge of #71256 - cuviper:must_use_replace, r=estebank 2020-04-22 23:19:19 +02:00
librustc_save_analysis Dogfood more or_patterns in the compiler 2020-04-19 07:33:58 -07:00
librustc_session Alphabetize the -C and -Z options. 2020-04-22 22:44:37 +10:00
librustc_span Auto merge of #70831 - sfackler:shrink-future-stack, r=matthewjasper 2020-04-16 09:13:07 +00:00
librustc_symbol_mangling Dogfood more or_patterns in the compiler 2020-04-19 07:33:58 -07:00
librustc_target rustc_target::abi: add Primitive variant to FieldsShape. 2020-04-16 15:15:51 +00:00
librustc_trait_selection Rollup merge of #71203 - csmoe:issue-71137, r=csmoe 2020-04-22 12:18:33 +02:00
librustc_traits Remove unused dependencies 2020-04-20 17:59:27 +09:00
librustc_ty Rollup merge of #70970 - eddyb:trait-vs-impl-mismatch, r=oli-obk 2020-04-22 12:18:31 +02:00
librustc_typeck Rollup merge of #71203 - csmoe:issue-71137, r=csmoe 2020-04-22 12:18:33 +02:00
librustdoc Rollup merge of #71250 - GuillaumeGomez:use-json-instead-of-js, r=kinnison 2020-04-20 18:07:05 +02:00
libserialize Remove unused ToHex/FromHex trait 2020-04-20 17:59:27 +09:00
libstd Rollup merge of #71256 - cuviper:must_use_replace, r=estebank 2020-04-22 23:19:19 +02:00
libterm
libtest Add illumos triple 2020-04-14 20:36:07 +00:00
libunwind Add illumos triple 2020-04-14 20:36:07 +00:00
llvm-project@9f9da27fbd Update LLVM submodule fixing sanitizers build with glibc 2.31 2020-04-07 18:00:02 +02:00
rtstartup
rustc
rustllvm Update the minimum external LLVM to 8 2020-04-14 12:44:41 -07:00
stdarch@b00ecbeb26 Update stdarch submodule to use llvm_asm! instead of asm! 2020-04-15 17:46:29 +01:00
test Rollup merge of #71396 - DeeDeeG:improve-e0308-again, r=estebank 2020-04-23 15:57:14 +02:00
tools Fix ui test blessing when a test has an empty stderr file after having had content there before the current changes 2020-04-23 13:00:23 +02:00
README.md
stage0.txt Fix stage0.txt version number comment 2020-04-21 15:56:49 +02:00

This directory contains the source code of the rust project, including:

  • rustc and its tests
  • libstd
  • Various submodules for tools, like rustdoc, rls, etc.

For more information on how various parts of the compiler work, see the rustc dev guide.