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

mk: Switch rustbuild to the default build system #37817

Merged
merged 1 commit into from Dec 7, 2016

Conversation

@alexcrichton
Member

alexcrichton commented Nov 16, 2016

This commit switches the default build system for Rust from the makefiles to
rustbuild. The rustbuild build system has been in development for almost a year
now and has become quite mature over time. This commit is an implementation of
the proposal on internals which slates deletion of the makefiles on
2017-02-02.

This commit also updates various documentation in README.md,
CONTRIBUTING.md, src/bootstrap/README.md, and throughout the source code of
rustbuild itself.

@rust-highfive

This comment has been minimized.

Show comment
Hide comment
@rust-highfive

rust-highfive Nov 16, 2016

Collaborator

r? @aturon

(rust_highfive has picked a reviewer for you, use r? to override)

Collaborator

rust-highfive commented Nov 16, 2016

r? @aturon

(rust_highfive has picked a reviewer for you, use r? to override)

@alexcrichton

This comment has been minimized.

Show comment
Hide comment
@alexcrichton

alexcrichton Nov 16, 2016

Member

r? @brson

Note that this shouldn't be r+'d yet as I'd like to wait for appveyor/Travis to go green (trying to run all the builders there).

Also if there's any more requests for documentation anywhere, I'd be more than happy to oblige!

Member

alexcrichton commented Nov 16, 2016

r? @brson

Note that this shouldn't be r+'d yet as I'd like to wait for appveyor/Travis to go green (trying to run all the builders there).

Also if there's any more requests for documentation anywhere, I'd be more than happy to oblige!

@rust-highfive rust-highfive assigned brson and unassigned aturon Nov 16, 2016

To learn more about the driver and top-level targets, you can execute:
```sh
python x.py --help

This comment has been minimized.

@petrochenkov

petrochenkov Nov 16, 2016

Contributor

I run x.py --help and it starts downloading something big from the internet instead of showing help.
I don't think this is an appropriate behavior.

@petrochenkov

petrochenkov Nov 16, 2016

Contributor

I run x.py --help and it starts downloading something big from the internet instead of showing help.
I don't think this is an appropriate behavior.

This comment has been minimized.

@badboy

badboy Nov 17, 2016

Member

Tracked here: #37305

@badboy

badboy Nov 17, 2016

Member

Tracked here: #37305

@petrochenkov

Fix #37305 before merging

of the compiler. You can execute it as:
```sh
python x.py build

This comment has been minimized.

@petrochenkov

petrochenkov Nov 17, 2016

Contributor

Is bootstrap python3-compatible, btw? In case python defaults to 3. This is probably worth mentioning.
(Or build fails in some other way if python == python3, but python2 is still available? I don't remember exactly.)

@petrochenkov

petrochenkov Nov 17, 2016

Contributor

Is bootstrap python3-compatible, btw? In case python defaults to 3. This is probably worth mentioning.
(Or build fails in some other way if python == python3, but python2 is still available? I don't remember exactly.)

This comment has been minimized.

@xen0n

xen0n Nov 17, 2016

Contributor

Yes all the Python code in Rust repo is Py3k-compatible AFAIK, which is not so much btw. The whole Python 2-only thing in README is outdated actually.

@xen0n

xen0n Nov 17, 2016

Contributor

Yes all the Python code in Rust repo is Py3k-compatible AFAIK, which is not so much btw. The whole Python 2-only thing in README is outdated actually.

This comment has been minimized.

@retep998

retep998 Nov 17, 2016

Member

Last I heard, Python 2 was only necessary for LLVM.

@retep998

retep998 Nov 17, 2016

Member

Last I heard, Python 2 was only necessary for LLVM.

This comment has been minimized.

@xen0n

xen0n Nov 17, 2016

Contributor

@retep998 Yeah you're right, there is this which means precisely Python 2.7.x is required, but rustbuild itself isn't limited to that. Which means compilation will only fail on systems with no Python 2.x at all due to LLVM, but should be fine otherwise.

@xen0n

xen0n Nov 17, 2016

Contributor

@retep998 Yeah you're right, there is this which means precisely Python 2.7.x is required, but rustbuild itself isn't limited to that. Which means compilation will only fail on systems with no Python 2.x at all due to LLVM, but should be fine otherwise.

This comment has been minimized.

@alexcrichton

alexcrichton Nov 17, 2016

Member

AFAIK bootstrap.py is fully compatible, and then later version detection happens in rustbuild itself.

@alexcrichton

alexcrichton Nov 17, 2016

Member

AFAIK bootstrap.py is fully compatible, and then later version detection happens in rustbuild itself.

Show outdated Hide outdated configure
Show outdated Hide outdated configure
Show outdated Hide outdated CONTRIBUTING.md
Show outdated Hide outdated README.md
Show outdated Hide outdated CONTRIBUTING.md
@alexcrichton

This comment has been minimized.

Show comment
Hide comment
@alexcrichton

alexcrichton Nov 17, 2016

Member

@petrochenkov can you elaborate on why you think #37305 is a blocker for landing this PR? I unfortunately don't see any path forward to solving it, so any opinions on how to solve it would also be greatly appreciated!

Member

alexcrichton commented Nov 17, 2016

@petrochenkov can you elaborate on why you think #37305 is a blocker for landing this PR? I unfortunately don't see any path forward to solving it, so any opinions on how to solve it would also be greatly appreciated!

@bors

This comment has been minimized.

Show comment
Hide comment
@bors

bors Nov 26, 2016

Contributor

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

Contributor

bors commented Nov 26, 2016

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

rkruppe added a commit to rkruppe/rust that referenced this pull request Nov 28, 2016

Define VISIBILITY_HIDDEN when compiling compiler-rt
This is cherry-picked from #37817 which seems to be stalled and currently needs to be rebased anyway.

r? @alexcrichton (who authored this change)
@alexcrichton

This comment has been minimized.

Show comment
Hide comment
@alexcrichton

alexcrichton Nov 28, 2016

Member

Ok I got as successful a run as we're gonna get, so I think this is good to go.

r? @brson

Member

alexcrichton commented Nov 28, 2016

Ok I got as successful a run as we're gonna get, so I think this is good to go.

r? @brson

bors added a commit that referenced this pull request Nov 29, 2016

Auto merge of #38046 - rkruppe:fix-32bit-rustbuild, r=alexcrichton
Fix rustbuild on 32 bit Linux

This is cherry-picked from #37817 which seems to be stalled and currently needs to be rebased anyway.

r? @alexcrichton (who authored this change)
Show outdated Hide outdated README.md
@bors

This comment has been minimized.

Show comment
Hide comment
@bors

bors Dec 4, 2016

Contributor

⌛️ Testing commit 76f9e9e with merge 6918d04...

Contributor

bors commented Dec 4, 2016

⌛️ Testing commit 76f9e9e with merge 6918d04...

bors added a commit that referenced this pull request Dec 4, 2016

Auto merge of #37817 - alexcrichton:rustbuild-default, r=brson
mk: Switch rustbuild to the default build system

This commit switches the default build system for Rust from the makefiles to
rustbuild. The rustbuild build system has been in development for almost a year
now and has become quite mature over time. This commit is an implementation of
the proposal on [internals] which slates deletion of the makefiles on
2017-02-02.

[internals]: https://internals.rust-lang.org/t/proposal-for-promoting-rustbuild-to-official-status/4368

This commit also updates various documentation in `README.md`,
`CONTRIBUTING.md`, `src/bootstrap/README.md`, and throughout the source code of
rustbuild itself.
@bors

This comment has been minimized.

Show comment
Hide comment
@bors

bors Dec 4, 2016

Contributor

💔 Test failed - auto-linux-musl-64-opt

Contributor

bors commented Dec 4, 2016

💔 Test failed - auto-linux-musl-64-opt

@alexcrichton

This comment has been minimized.

Show comment
Hide comment
@alexcrichton

alexcrichton Dec 5, 2016

Member

@bors: r=brson

Member

alexcrichton commented Dec 5, 2016

@bors: r=brson

@bors

This comment has been minimized.

Show comment
Hide comment
@bors

bors Dec 5, 2016

Contributor

📌 Commit 4755f95 has been approved by brson

Contributor

bors commented Dec 5, 2016

📌 Commit 4755f95 has been approved by brson

@bors

This comment has been minimized.

Show comment
Hide comment
@bors

bors Dec 5, 2016

Contributor

⌛️ Testing commit 4755f95 with merge 0ae2037...

Contributor

bors commented Dec 5, 2016

⌛️ Testing commit 4755f95 with merge 0ae2037...

bors added a commit that referenced this pull request Dec 5, 2016

Auto merge of #37817 - alexcrichton:rustbuild-default, r=brson
mk: Switch rustbuild to the default build system

This commit switches the default build system for Rust from the makefiles to
rustbuild. The rustbuild build system has been in development for almost a year
now and has become quite mature over time. This commit is an implementation of
the proposal on [internals] which slates deletion of the makefiles on
2017-02-02.

[internals]: https://internals.rust-lang.org/t/proposal-for-promoting-rustbuild-to-official-status/4368

This commit also updates various documentation in `README.md`,
`CONTRIBUTING.md`, `src/bootstrap/README.md`, and throughout the source code of
rustbuild itself.
@bors

This comment has been minimized.

Show comment
Hide comment
@bors

bors Dec 5, 2016

Contributor

💔 Test failed - auto-linux-64-x-android-t

Contributor

bors commented Dec 5, 2016

💔 Test failed - auto-linux-64-x-android-t

@bors

This comment has been minimized.

Show comment
Hide comment
@bors

bors Dec 5, 2016

Contributor

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

Contributor

bors commented Dec 5, 2016

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

mk: Switch rustbuild to the default build system
This commit switches the default build system for Rust from the makefiles to
rustbuild. The rustbuild build system has been in development for almost a year
now and has become quite mature over time. This commit is an implementation of
the proposal on [internals] which slates deletion of the makefiles on
2016-01-02.

[internals]: https://internals.rust-lang.org/t/proposal-for-promoting-rustbuild-to-official-status/4368

This commit also updates various documentation in `README.md`,
`CONTRIBUTING.md`, `src/bootstrap/README.md`, and throughout the source code of
rustbuild itself.

Closes #37858
@alexcrichton

This comment has been minimized.

Show comment
Hide comment
@alexcrichton

alexcrichton Dec 7, 2016

Member

@bors: r=brson

Member

alexcrichton commented Dec 7, 2016

@bors: r=brson

@bors

This comment has been minimized.

Show comment
Hide comment
@bors

bors Dec 7, 2016

Contributor

📌 Commit 0e272de has been approved by brson

Contributor

bors commented Dec 7, 2016

📌 Commit 0e272de has been approved by brson

@bors

This comment has been minimized.

Show comment
Hide comment
@bors

bors Dec 7, 2016

Contributor

⌛️ Testing commit 0e272de with merge 7846610...

Contributor

bors commented Dec 7, 2016

⌛️ Testing commit 0e272de with merge 7846610...

bors added a commit that referenced this pull request Dec 7, 2016

Auto merge of #37817 - alexcrichton:rustbuild-default, r=brson
mk: Switch rustbuild to the default build system

This commit switches the default build system for Rust from the makefiles to
rustbuild. The rustbuild build system has been in development for almost a year
now and has become quite mature over time. This commit is an implementation of
the proposal on [internals] which slates deletion of the makefiles on
2017-02-02.

[internals]: https://internals.rust-lang.org/t/proposal-for-promoting-rustbuild-to-official-status/4368

This commit also updates various documentation in `README.md`,
`CONTRIBUTING.md`, `src/bootstrap/README.md`, and throughout the source code of
rustbuild itself.

@bors bors merged commit 0e272de into rust-lang:master Dec 7, 2016

1 of 2 checks passed

continuous-integration/travis-ci/pr The Travis CI build failed
Details
homu Test successful
Details
@frewsxcv

This comment has been minimized.

Show comment
Hide comment
@frewsxcv

frewsxcv Dec 8, 2016

Member

It looks like Travis started failing everything after this pull request merged.

Member

frewsxcv commented Dec 8, 2016

It looks like Travis started failing everything after this pull request merged.

stjepang added a commit to stjepang/rust that referenced this pull request Dec 16, 2016

Define VISIBILITY_HIDDEN when compiling compiler-rt
This is cherry-picked from #37817 which seems to be stalled and currently needs to be rebased anyway.

r? @alexcrichton (who authored this change)

@alexcrichton alexcrichton deleted the alexcrichton:rustbuild-default branch Dec 19, 2016

frewsxcv added a commit to frewsxcv/rust that referenced this pull request Feb 5, 2017

Rollup merge of #39431 - alexcrichton:no-more-makefiles, r=brson
Delete the makefile build system

This PR deletes the makefile build system in favor of the rustbuild build system. The beta has now been branched so 1.16 will continue to be buildable from the makefiles, but going forward 1.17 will only be buildable with rustbuild.

Rustbuild has been the default build system [since 1.15.0](rust-lang#37817) and the makefiles were [proposed for deletion](https://internals.rust-lang.org/t/proposal-for-promoting-rustbuild-to-official-status/4368) at this time back in November of last year.

And now with the deletion of these makefiles we can start getting those sweet sweet improvements of using crates.io crates in the compiler!

bors added a commit that referenced this pull request Feb 5, 2017

Auto merge of #39431 - alexcrichton:no-more-makefiles, r=<try>
Delete the makefile build system

This PR deletes the makefile build system in favor of the rustbuild build system. The beta has now been branched so 1.16 will continue to be buildable from the makefiles, but going forward 1.17 will only be buildable with rustbuild.

Rustbuild has been the default build system [since 1.15.0](#37817) and the makefiles were [proposed for deletion](https://internals.rust-lang.org/t/proposal-for-promoting-rustbuild-to-official-status/4368) at this time back in November of last year.

And now with the deletion of these makefiles we can start getting those sweet sweet improvements of using crates.io crates in the compiler!

bors added a commit that referenced this pull request Feb 6, 2017

Auto merge of #39431 - alexcrichton:no-more-makefiles, r=brson
Delete the makefile build system

This PR deletes the makefile build system in favor of the rustbuild build system. The beta has now been branched so 1.16 will continue to be buildable from the makefiles, but going forward 1.17 will only be buildable with rustbuild.

Rustbuild has been the default build system [since 1.15.0](#37817) and the makefiles were [proposed for deletion](https://internals.rust-lang.org/t/proposal-for-promoting-rustbuild-to-official-status/4368) at this time back in November of last year.

And now with the deletion of these makefiles we can start getting those sweet sweet improvements of using crates.io crates in the compiler!

bors added a commit that referenced this pull request Feb 6, 2017

Auto merge of #39431 - alexcrichton:no-more-makefiles, r=brson
Delete the makefile build system

This PR deletes the makefile build system in favor of the rustbuild build system. The beta has now been branched so 1.16 will continue to be buildable from the makefiles, but going forward 1.17 will only be buildable with rustbuild.

Rustbuild has been the default build system [since 1.15.0](#37817) and the makefiles were [proposed for deletion](https://internals.rust-lang.org/t/proposal-for-promoting-rustbuild-to-official-status/4368) at this time back in November of last year.

And now with the deletion of these makefiles we can start getting those sweet sweet improvements of using crates.io crates in the compiler!

frewsxcv added a commit to frewsxcv/rust that referenced this pull request Feb 7, 2017

Rollup merge of #39431 - alexcrichton:no-more-makefiles, r=brson
Delete the makefile build system

This PR deletes the makefile build system in favor of the rustbuild build system. The beta has now been branched so 1.16 will continue to be buildable from the makefiles, but going forward 1.17 will only be buildable with rustbuild.

Rustbuild has been the default build system [since 1.15.0](rust-lang#37817) and the makefiles were [proposed for deletion](https://internals.rust-lang.org/t/proposal-for-promoting-rustbuild-to-official-status/4368) at this time back in November of last year.

And now with the deletion of these makefiles we can start getting those sweet sweet improvements of using crates.io crates in the compiler!

frewsxcv added a commit to frewsxcv/rust that referenced this pull request Feb 7, 2017

Rollup merge of #39431 - alexcrichton:no-more-makefiles, r=brson
Delete the makefile build system

This PR deletes the makefile build system in favor of the rustbuild build system. The beta has now been branched so 1.16 will continue to be buildable from the makefiles, but going forward 1.17 will only be buildable with rustbuild.

Rustbuild has been the default build system [since 1.15.0](rust-lang#37817) and the makefiles were [proposed for deletion](https://internals.rust-lang.org/t/proposal-for-promoting-rustbuild-to-official-status/4368) at this time back in November of last year.

And now with the deletion of these makefiles we can start getting those sweet sweet improvements of using crates.io crates in the compiler!

frewsxcv added a commit to frewsxcv/rust that referenced this pull request Feb 8, 2017

Rollup merge of #39431 - alexcrichton:no-more-makefiles, r=brson
Delete the makefile build system

This PR deletes the makefile build system in favor of the rustbuild build system. The beta has now been branched so 1.16 will continue to be buildable from the makefiles, but going forward 1.17 will only be buildable with rustbuild.

Rustbuild has been the default build system [since 1.15.0](rust-lang#37817) and the makefiles were [proposed for deletion](https://internals.rust-lang.org/t/proposal-for-promoting-rustbuild-to-official-status/4368) at this time back in November of last year.

And now with the deletion of these makefiles we can start getting those sweet sweet improvements of using crates.io crates in the compiler!

frewsxcv added a commit to frewsxcv/rust that referenced this pull request Feb 8, 2017

Rollup merge of #39431 - alexcrichton:no-more-makefiles, r=brson
Delete the makefile build system

This PR deletes the makefile build system in favor of the rustbuild build system. The beta has now been branched so 1.16 will continue to be buildable from the makefiles, but going forward 1.17 will only be buildable with rustbuild.

Rustbuild has been the default build system [since 1.15.0](rust-lang#37817) and the makefiles were [proposed for deletion](https://internals.rust-lang.org/t/proposal-for-promoting-rustbuild-to-official-status/4368) at this time back in November of last year.

And now with the deletion of these makefiles we can start getting those sweet sweet improvements of using crates.io crates in the compiler!

anatol pushed a commit to anatol/steed that referenced this pull request Mar 31, 2017

Rollup merge of #39431 - alexcrichton:no-more-makefiles, r=brson
Delete the makefile build system

This PR deletes the makefile build system in favor of the rustbuild build system. The beta has now been branched so 1.16 will continue to be buildable from the makefiles, but going forward 1.17 will only be buildable with rustbuild.

Rustbuild has been the default build system [since 1.15.0](rust-lang/rust#37817) and the makefiles were [proposed for deletion](https://internals.rust-lang.org/t/proposal-for-promoting-rustbuild-to-official-status/4368) at this time back in November of last year.

And now with the deletion of these makefiles we can start getting those sweet sweet improvements of using crates.io crates in the compiler!
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment