summary refs log tree commit diff
path: root/src/bootstrap/lib.rs
AgeCommit message (Collapse)AuthorLines
2018-02-11Use time crate in bootstrap dist instead of dateOnur Aslan-0/+1
2018-02-01Call non-git beta builds simply x.y.z-betaJosh Stone-1/+5
We can't use git commands to compute a prerelease version when we're building from a source tarball, or if git is otherwise unavailable. We'll just call such builds `x.y.z-beta`, without a prerelease.
2018-01-18[beta] Attempt to fix prerelease version calculationAlex Crichton-2/+6
We got #47396 merged but it looks like rcs failed to deploy the beta because when it tried to calculate the beta version its cwd was different. Let's try to fix this bug and fix auto-deploy by explicitly setting the `current_dir` for git commands.
2018-01-13[beta] Automaticaly calculate beta prerelease numbersAlex Crichton-2/+47
This commit automatically calculates the beta prerelease number meaning we'll no longer need to manually change the beta version. Instead beta will automatically deploy any time a backport is merged, ensuring that backports are released for testing ASAP. More details about this can be found on the internal [forums] The only bit of trickiness here was that on CI we do shallow clones by default but the git history probing here requires some more information. Do cope with that this commit chooses the strategy of converting the repository to a full clone via the `--unshallow` flag to `git`. That way this should work for local developers as well as CI changes. Note that this commit is coming first to the beta branch to test it, and if successful we can go back and land it on master. [forums]: https://internals.rust-lang.org/t/tweaking-how-betas-are-produced/6526
2017-12-27Revert "Add a file to trivially disable tool building or testing"kennytm-18/+10
This reverts commit ab018c76e14b87f3c9e0b7384cc9b02d94779cd5. This also adds the `ToolBuild::is_ext_tool` field to replace the previous `ToolBuild::expectation` field, to indicate whether a build-failure of certain tool is essential.
2017-12-03Record build and test result of extended tools into toolstates.json.kennytm-0/+25
2017-11-13Distribute RustfmtNick Cameron-0/+8
2017-10-18Make sure to clear out the stageN-{rustc,std,tools} directories.Mark Simulacrum-2/+11
We copy built tool binaries into a dedicated directory to avoid deleting them, stageN-tools-bin. These aren't ever cleared out by code, since there should be no reason to do so, and we'll simply overwrite them as necessary. When clearing out the stageN-{std,rustc,tools} directories, make sure to delete both Cargo directories -- per-target and build scripts. This ensures that changing libstd doesn't cause problems due to build scripts not being rebuilt, even though they should be.
2017-10-16Re-enable linker override for cross-compilationVadim Petrochenkov-2/+3
2017-10-15Don't use target's linker when linking build scriptsVadim Petrochenkov-21/+9
2017-10-15rustbuild: Support specifying archiver and linker explicitlyVadim Petrochenkov-7/+16
2017-09-29Rollup merge of #44694 - tommyip:make_clean, r=Mark-SimulacrumMark Simulacrum-2/+2
Add --all flag to ./x.py clean This make `clean` removes the LLVM and download cache directory as well. Fixes #44214. r? @Mark-Simulacrum
2017-09-28Update to the `cc` crateAlex Crichton-6/+6
This is the name the `gcc` crate has moved to
2017-09-20Add --all flag to ./x.py cleanTommy Ip-2/+2
This flag removes all build artifacts, including the LLVM build directory.
2017-09-18rustbuild: with --no-fail-fast, report the specific commands that failedXimin Luo-4/+14
2017-09-17Add a file to trivially disable tool building or testingOliver Schneider-10/+19
2017-08-31Add full git commit hash to release channel manifestsSimon Sapin-0/+5
The full hash is necessary to build the download URL for "alternate" compiler builds. This is a first step for https://github.com/rust-lang-nursery/rustup.rs/issues/1099
2017-08-30Auto merge of #44143 - alexcrichton:faster-bootstrap, r=Mark-Simulacrumbors-1/+1
rustbuild: Avoid some extraneous rustc compiles on cross builds This tweaks a few locations here and there to avoid compiling rustc too many times on our cross-builders on CI. Closes https://github.com/rust-lang/rust/issues/44132
2017-08-28rustbuild: Fix uplifting stage1 on cross buildsAlex Crichton-1/+1
When we pass `--host` the `self.hosts` array doesn't contain `self.build`, so check `self.build` to see if we can uplift.
2017-08-28bootstrap: remove unneeded extern crateTatsuyuki Ishi-1/+0
The crate itself is internally referenced by serde_derive.
2017-08-22Inline crt-static choice for pc-windows-msvcSamuel Holland-2/+6
This avoids the possibility of a duplicate or conflicting crt-static command line option sent to rustc.
2017-08-22Introduce crt_static target option in config.tomlSamuel Holland-0/+6
This controls the value of the crt-static feature used when building the standard library for a target, as well as the compiler itself when that target is the host.
2017-08-17Rollup merge of #43891 - Fourchaux:master, r=steveklabnikCorey Farwell-1/+1
Fix typos & us spellings Fixing some typos and non en-US spellings. (Update of PR https://github.com/rust-lang/rust/pull/42812 )
2017-08-15use field init shorthand EVERYWHEREZack M. Davis-7/+7
Like #43008 (f668999), but _much more aggressive_.
2017-08-15Fix typos & us spellingsFourchaux-1/+1
2017-08-13Add ability to ignore git when building rust.Mark Simulacrum-3/+3
Some users of the build system change the git sha on every build due to utilizing git to push changes to a remote server. This allows them to simply configure that away instead of depending on custom patches to rustbuild.
2017-08-13Unify flags into config.Mark Simulacrum-37/+18
This introduces a slight change in behavior, where we unilaterally respect the --host and --target parameters passed for all sanity checking and runtime configuration.
2017-08-11Build support for no llvmbjorn3-0/+3
2017-07-20Change make_run signature to taking a RunConfig struct for refactorability.Mark Simulacrum-1/+1
2017-07-20Utilize interning to allow Copy/Clone stepsMark Simulacrum-65/+69
2017-07-20Remove core_intrinsics feature gateMark Simulacrum-1/+0
2017-07-20Fix a few errors introduced during rebase.Mark Simulacrum-13/+1
2017-07-20Update to toml 0.4Mark Simulacrum-1/+0
2017-07-20Document the process more thoroughlyMark Simulacrum-17/+66
2017-07-20Finish fixing warnings and errors. Bootstrap builds.Mark Simulacrum-31/+1
2017-07-20Move cargo() to BuilderMark Simulacrum-174/+0
2017-07-20Fix tool_cmdMark Simulacrum-6/+0
2017-07-20Move tool_cmd to tool.rsMark Simulacrum-39/+0
2017-07-20Fixes warnings and errors introduced while moving code aroundMark Simulacrum-53/+25
2017-07-20Add Builder and Step definitions.Mark Simulacrum-5/+29
2017-07-20Move rule configs out of stepMark Simulacrum-1/+0
2017-07-17Allow remote testing remotely when `TEST_DEVICE_ADDR` is setMátyás Mustoha-1/+2
2017-07-07Fix stage 2 builds with a custom libdir.Matthew Dawson-2/+8
When copying libstd for the stage 2 compiler, the builder ignores the configured libdir/libdir_relative configuration parameters. This causes the compiler to fail to find libstd, which cause any tools built with the stage 2 compiler to fail. To fix this, make the copy steps of rustbuild aware of the libdir_relative parameter when the stage >= 2. Also update the dist target to be aware of the new location of libstd.
2017-07-05rustbuild: Only -Zsave-analysis for libstdAlex Crichton-1/+3
Don't pass the flag when we're compiling the compiler or other related tools
2017-07-04Use build.build instead of build.config.buildMark Simulacrum-1/+1
2017-07-04Move targets, hosts, and build triple into Build.Mark Simulacrum-1/+37
2017-07-04Store verbosity on BuildMark Simulacrum-4/+13
Prevents accidental mistakes in not using the right verbosity by going to only config or flags.
2017-07-04Store positive instead of negative fail_fast.Mark Simulacrum-1/+2
This makes later negation much easier to interpret.
2017-07-04Remove src_is_git, instead call method on rust_info directly.Mark Simulacrum-2/+0
2017-07-04Clarify meaning of Build.cargo, Build.rustc.Mark Simulacrum-24/+14
Rename Build.{cargo, rustc} to {initial_cargo, initial_rustc}.