Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rustbuild cleanups/fixes and improvements #43630

Merged
merged 11 commits into from
Aug 13, 2017

Commits on Aug 13, 2017

  1. Unify flags into config.

    This introduces a slight change in behavior, where we unilaterally
    respect the --host and --target parameters passed for all sanity
    checking and runtime configuration.
    Mark-Simulacrum committed Aug 13, 2017
    Configuration menu
    Copy the full SHA
    44ffb61 View commit details
    Browse the repository at this point in the history
  2. Allow specifiying targets and hosts not in the config file.

    We no longer care about the source of this information, so there is no
    reason to restrict users.
    Mark-Simulacrum committed Aug 13, 2017
    Configuration menu
    Copy the full SHA
    84d9a6e View commit details
    Browse the repository at this point in the history
  3. Allow overriding build triple via flag.

    We first check the configuration, then passed parameters (--build), then
    fall back to the auto-detection that bootstrap.py does.
    
    Fixes rust-lang#39673.
    Mark-Simulacrum committed Aug 13, 2017
    Configuration menu
    Copy the full SHA
    5290c6c View commit details
    Browse the repository at this point in the history
  4. Add ability to ignore git when building rust.

    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.
    Mark-Simulacrum committed Aug 13, 2017
    Configuration menu
    Copy the full SHA
    40dea65 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    83b6812 View commit details
    Browse the repository at this point in the history
  6. Build rustdoc with the stageN compiler in N >= 2.

    This permits proc macro crates to correctly work with rustdoc.
    Mark-Simulacrum committed Aug 13, 2017
    Configuration menu
    Copy the full SHA
    ad4acba View commit details
    Browse the repository at this point in the history
  7. 2 Configuration menu
    Copy the full SHA
    facf5a9 View commit details
    Browse the repository at this point in the history
  8. Clean tools after building libstd/libtest/librustc.

    This fixes the bug we previously had where we'd build a libtest tool
    after building a libstd tool and clear out the libstd tool. Since we
    clear out all tools for a given stage on invocations of CleanTools after
    lib{std, test, rustc} change, we need to make sure that all tools built
    with that stage will be built after the clearing is done.
    
    The fix contained here technically isn't perfect; there is still an edge
    case of compiling a libstd tool, then compiling libtest, which will
    clear out the libstd tool and it won't ever get rebuilt within that
    session of rustbuild. This is where the caching system used today shows
    it's problems -- in effect, all tools depend on a global counter of the
    stage being cleared out. We can implement such a counter in a future
    patch to ensure that tools are rebuilt as needed, but it is deemed
    unlikely that it will be required in practice, since most if not all
    tools are built after the relevant stage's std/test/rustc are built,
    though this is only an opinion and hasn't been verified.
    Mark-Simulacrum committed Aug 13, 2017
    Configuration menu
    Copy the full SHA
    cec6816 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    6571968 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    82cdf10 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    01641c7 View commit details
    Browse the repository at this point in the history