about summary refs log tree commit diff
path: root/src/bootstrap/builder.rs
AgeCommit message (Collapse)AuthorLines
2019-03-13Merge remote-tracking branch 'upstream/master' into asm-compile-testsDenys Zariaiev-1/+13
2019-03-12Auto merge of #58330 - GuillaumeGomez:rustdoc-js-non-std, ↵bors-1/+2
r=QuietMisdreavus,Mark-Simulacrum Add rustdoc JS non-std tests @QuietMisdreavus: You asked it, here it is! r? @QuietMisdreavus
2019-03-05Bootstrap changesJohn Kåre Alsaker-0/+11
2019-03-03Permit getting stage 0 rustdocMark Rousskov-8/+7
This allows us to e.g. test compiletest, including doctests, in stage 0 without building a fresh compiler and rustdoc.
2019-02-27Introduce assembly testsDenys Zariaiev-1/+2
2019-02-25Rename rustdoc js test suitesGuillaume Gomez-1/+1
2019-02-25Add rustdoc JS non-std testsGuillaume Gomez-0/+1
2019-02-25bootstrap: deny(rust_2018_idioms)Taiki Endo-12/+12
2019-02-24Use ? in some macrosTaiki Endo-1/+1
2019-02-13Auto merge of #58238 - Mark-Simulacrum:doctest-fix, r=alexcrichtonbors-6/+5
Fixes rustdoc in stage 0, stage 1 When a request for rustdoc is passed for stage 0, x.py build --stage 0 src/tools/rustdoc or ensure(tool::Rustdoc { .. }) with top_stage = 0, we return the rustdoc for that compiler (i.e., the beta rustdoc). This fixes stage 0 of https://github.com/rust-lang/rust/issues/52186 as well as being part of general workflow improvements (making stage 0 testing for std work) for rustbuild. The stage 1 fix (second commit) completely resolves the problem, so this fixes https://github.com/rust-lang/rust/issues/52186.
2019-02-11This fixes doctests in stage 1Mark Rousskov-6/+5
The RUSTDOC_LIBDIR should be rustc_libdir, not sysroot_libdir; rustdoc is like the compiler and should link against rustc's libdir. Some people currently (i.e., in general, may not be on master) have doc tests working, but no attempt to determine why has been attempted.
2019-02-10rustc: doc commentsAlexander Regueiro-5/+5
2019-02-09Add EmbeddedBook to test list in bootstrapMark Rousskov-0/+1
2019-02-08Deny warnings in std stage 0varkor-2/+1
2019-02-04Add embedded bookJames Munns-0/+1
2019-01-28bootstrap: set toolchain variables on per target basisMateusz Mikuła-9/+4
Using CC, CFLAGS, CXX, CXXFLAGS, AR and RANLIB breaks cross compilation because host is built first and has correct values. The same values are incorrect for the target however.
2019-01-26Workaround presence of LLVM library in stage0/libMark Rousskov-1/+8
This commit works around the newly-introduced LLVM shared library. This is needed such that llvm-config run from librustc_llvm's build script can correctly locate it's own LLVM, not the one in stage0/lib. The LLVM build system uses the DT_RUNPATH/RUNPATH header within the llvm-config binary, which we want to use, but because Cargo always adds the host compiler's "libdir" (stage0/lib in our case) to the dynamic linker's search path, we weren't properly finding the freshly-built LLVM in llvm/lib. By restoring the environment variable setting the search path to what bootstrap sees, the problem is resolved and librustc_llvm correctly links and finds the appropriate LLVM. Several run-make-fulldeps tests are also updated with similar handling.
2019-01-25bootstrap: Don't rely on any default settings regarding incr. comp. in Cargo.Michael Woerister-0/+3
2019-01-24Remove quote_*! macros and associated APIsMark Simulacrum-3/+0
2019-01-16[rustbuild] Rebuild std after changes to codegen backendsJosh Stone-0/+12
Use `clear_if_dirty` on std for backend changes, just as we do for changes to rustc itself, so new codegen is correctly applied to all later compiler stages. Fixes #48298.
2019-01-08Prepare everything for distributing miri via rustupOliver Scherer-0/+2
2018-12-25Remove licensesMark Rousskov-10/+0
2018-12-15Auto merge of #56600 - ljedrz:fix_edition, r=Mark-Simulacrumbors-15/+15
bootstrap: fix edition A byproduct of work on https://github.com/rust-lang/rust/pull/56595; done with `cargo fix --edition`.
2018-12-14Bootstrap: Add testsuite for compiletest toolPhilipp Hansch-0/+1
The (currently) single unit test of the compiletest tool was never executed on CI. At least I couldn't find any references of it in the logs. This adds a test suite for compiletest so that our tester is tested, too. The compiletest tests can then also be executed with: ./x.py test src/tools/compiletest
2018-12-12Remove some env vars for rustdoc invocations.Nicholas Nethercote-0/+5
In an attempt to avoid "thread '<unnamed>' panicked at 'failed to acquire jobserver token: Bad file descriptor" errors.
2018-12-10bootstrap: fix editionljedrz-15/+15
2018-12-09Remove compile-fail-fulldeps test suiteVadim Petrochenkov-1/+0
2018-12-07Various minor/cosmetic improvements to codeAlexander Regueiro-3/+3
2018-12-04build the edition guideSteve Klabnik-1/+2
and update it so that links are correct
2018-11-30tests: move all proc_macro tests from -fulldeps.Eduard-Mihai Burtescu-1/+0
2018-11-04Ensure --exclude is checked against PathSet::Suitekennytm-2/+32
Fix the recent spurious 3 hour timeouts.
2018-11-02Auto merge of #54543 - GuillaumeGomez:top-level-index, r=QuietMisdreavusbors-3/+3
Add index page argument @Mark-Simulacrum: I might need some help from you: in bootstrap, I want to add an argument (a new flag added into `rustdoc`) in order to generate the current index directly when `rustdoc` is documenting the `std` lib. However, my change in `bootstrap` didn't do it and I assume it must be moved inside the `Std` struct. But there, I don't see how to pass it to `rustdoc` through `cargo`. Did I miss anything? r? @QuietMisdreavus
2018-10-26bootstrap: Allow for build libstd to have its own codegen-unit setting.Michael Woerister-4/+9
2018-10-21Remove the parse-fail test suiteVadim Petrochenkov-1/+0
2018-10-21Use markdown::render instead of using pulldown_cmark directlyGuillaume Gomez-3/+3
2018-10-13Improve verify_llvm_ir config optionNikita Popov-4/+0
* Make it influence the behavior of the compiled rustc, rather than just the rustc build system. That is, if verify_llvm_ir=true, even manual invocations of the built rustc will verify LLVM IR. * Enable verification of LLVM IR in CI, for non-deploy and deploy-alt builds. This is similar to how LLVM assertions are handled.
2018-09-17Auto merge of #52036 - collin5:b50509-2, r=collin5bors-0/+74
Clean up dependency tracking in Rustbuild [2/2] Make `clear_if_dirty` calls in `Builder::cargo` with stamp dependencies for the given Mode. Continuation of #50904 Ref issue #50509 r? @Mark-Simulacrum
2018-09-17refactor Builder::cargo, clean deps for cmd!=testCollins Abitekaniza-5/+2
2018-09-12remove struct CleanToolsCollins Abitekaniza-3/+14
2018-09-12nit: rearrange and make match exhaustiveCollins Abitekaniza-5/+8
also indicate difference between out_dir and my_out
2018-09-12clear_if_dirty with self.rustc(compiler) for Mode::RustcCollins Abitekaniza-0/+1
2018-09-12use stage 1 compiler only for stampsCollins Abitekaniza-8/+8
2018-09-12clear_if_dirty in Builder::cargo with passed modeCollins Abitekaniza-0/+62
2018-09-10Add rustc SHA to released DWARF debuginfoAlex Crichton-2/+6
This commit updates the debuginfo that is encoded in all of our released artifacts by default. Currently it has paths like `/checkout/src/...` but these are a little inconsistent and have changed over time. This commit instead attempts to actually define the file paths in our debuginfo to be consistent between releases. All debuginfo paths are now intended to be `/rustc/$sha` where `$sha` is the git sha of the released compiler. Sub-paths are all paths into the git repo at that `$sha`.
2018-08-20bootstrap: Allow to invoke cargo with the Usage: rustc [OPTIONS] INPUTMichael Woerister-2/+2
Options: -h, --help Display this message --cfg SPEC Configure the compilation environment -L [KIND=]PATH Add a directory to the library search path. The optional KIND can be one of dependency, crate, native, framework or all (the default). -l [KIND=]NAME Link the generated crate(s) to the specified native library NAME. The optional KIND can be one of static, dylib, or framework. If omitted, dylib is assumed. --crate-type [bin|lib|rlib|dylib|cdylib|staticlib|proc-macro] Comma separated list of types of crates for the compiler to emit --crate-name NAME Specify the name of the crate being built --emit [asm|llvm-bc|llvm-ir|obj|metadata|link|dep-info|mir] Comma separated list of types of output for the compiler to emit --print [crate-name|file-names|sysroot|cfg|target-list|target-cpus|target-features|relocation-models|code-models|tls-models|target-spec-json|native-static-libs] Comma separated list of compiler information to print on stdout -g Equivalent to -C debuginfo=2 -O Equivalent to -C opt-level=2 -o FILENAME Write output to <filename> --out-dir DIR Write output to compiler-chosen filename in <dir> --explain OPT Provide a detailed explanation of an error message --test Build a test harness --target TARGET Target triple for which the code is compiled -W, --warn OPT Set lint warnings -A, --allow OPT Set lint allowed -D, --deny OPT Set lint denied -F, --forbid OPT Set lint forbidden --cap-lints LEVEL Set the most restrictive lint level. More restrictive lints are capped at this level -C, --codegen OPT[=VALUE] Set a codegen option -V, --version Print version info and exit -v, --verbose Use verbose output Additional help: -C help Print codegen options -W help Print 'lint' options and default settings --help -v Print the full set of options rustc accepts command.
2018-08-14Add lldb to the buildTom Tromey-0/+1
This optionally adds lldb (and clang, which it needs) to the build. Because rust uses LLVM 7, and because clang 7 is not yet released, a recent git master version of clang is used. The lldb that is used includes the Rust plugin. lldb is only built when asked for, or when doing a nightly build on macOS. Only macOS is done for now due to difficulties with the Python dependency.
2018-08-02rustbuild: fix local_rebuildMarc-Antoine Perennou-1/+1
If we detect a local rebuild (e.g. bootstrap compiler is the same version as target compiler), we set stage to 1. When trying to build e.g. UnstableBook, we use Mode::ToolBootstrap and stage is 1. Just allow Mode::ToolBootstrap and stagge != 0 if we are in a local_rebuild Signed-off-by: Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
2018-07-27Prefer to_string() to format!()ljedrz-1/+1
2018-07-18Rollup merge of #52464 - o01eg:patch-1, r=alexcrichtonkennytm-0/+2
Allow clippy to be installed with make install After #51122 clippy is available as a component but doesn't install when building from source. This PR allows to install clippy with extended tools.
2018-07-18Rollup merge of #52439 - o01eg:fix-52317, r=alexcrichtonkennytm-1/+1
Revert some changes from #51917 to fix custom libdir Should fix #52317 also adds `libdir` value to output.