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

Add ./x.py check src/{libstd,libtest,librustc} #47460

Merged
merged 2 commits into from
Jan 26, 2018

Conversation

Mark-Simulacrum
Copy link
Member

@Mark-Simulacrum Mark-Simulacrum commented Jan 15, 2018

This currently only supports a limited subset of the full compilation,
but is likely 90% of what people will want and is possible without
building a full compiler (and also building LLVM). In theory, this means
that contributors who don't want to build LLVM now have an easy way to
compile locally, though running tests won't work.

@Mark-Simulacrum
Copy link
Member Author

cc @rust-lang/compiler

r? @alexcrichton

@Mark-Simulacrum Mark-Simulacrum changed the title Add ./x.py check {libstd,libtest,librustc}. Add ./x.py check src/{libstd,libtest,librustc} Jan 15, 2018
If no arguments are passed then the complete artifacts are compiled: std, test, and rustc. Note
also that since we use `cargo check`, by default this will automatically enable incremental
compilation, so there's no need to pass it separately, though it won't hurt. We also completely
ignore the stage passed, as there's no way to compile in non-stage 0 without actually building
Copy link
Member

@kennytm kennytm Jan 16, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Checking in non-stage-0 may still be useful if we want to check libstd after some new semantic is implemented:

./x.py build --stage 0 src/librustc
./x.py check --keep-stage 1 --stage 1 src/libstd
# edit
./x.py check --keep-stage 1 --stage 1 src/libstd
# edit
./x.py check --keep-stage 1 --stage 1 src/libstd

@michaelwoerister
Copy link
Member

What exactly do these do?

@Mark-Simulacrum
Copy link
Member Author

This runs cargo check instead of cargo build which nets much faster builds. Currently only works with stage 0, though we could technically expand it to work with any stage.

@michaelwoerister
Copy link
Member

OK, that's great!

@kennytm kennytm added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jan 17, 2018
@bors
Copy link
Contributor

bors commented Jan 18, 2018

☔ The latest upstream changes (presumably #47528) made this pull request unmergeable. Please resolve the merge conflicts.

@alexcrichton
Copy link
Member

Oops sorry about that, looks great to me!

r=me

@Mark-Simulacrum
Copy link
Member Author

@bors r=alexcrichton

@bors
Copy link
Contributor

bors commented Jan 19, 2018

📌 Commit 7319232 has been approved by alexcrichton

@matklad
Copy link
Member

matklad commented Jan 21, 2018

Should this option be mentioned in https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md#the-build-system?

@Mark-Simulacrum
Copy link
Member Author

Probably, yes. I'll open an issue.

@bors
Copy link
Contributor

bors commented Jan 23, 2018

☔ The latest upstream changes (presumably #47678) made this pull request unmergeable. Please resolve the merge conflicts.

This currently only supports a limited subset of the full compilation,
but is likely 90% of what people will want and is possible without
building a full compiler (i.e., running LLVM). In theory, this means
that contributors who don't want to build LLVM now have an easy way to
compile locally, though running tests won't work.
@Mark-Simulacrum
Copy link
Member Author

@bors r=alexcrichton

@bors
Copy link
Contributor

bors commented Jan 24, 2018

📌 Commit 6aeb1cf has been approved by alexcrichton

@kennytm kennytm added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jan 24, 2018
alexcrichton added a commit to alexcrichton/rust that referenced this pull request Jan 25, 2018
…alexcrichton

Add ./x.py check src/{libstd,libtest,librustc}

This currently only supports a limited subset of the full compilation,
but is likely 90% of what people will want and is possible without
building a full compiler (and also building LLVM). In theory, this means
that contributors who don't want to build LLVM now have an easy way to
compile locally, though running tests won't work.
bors added a commit that referenced this pull request Jan 26, 2018
@bors bors merged commit 6aeb1cf into rust-lang:master Jan 26, 2018
@Mark-Simulacrum Mark-Simulacrum deleted the bootstrap-check branch June 8, 2019 13:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants