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 shouldn't require cargo-vendor when building from tarballs #41042

Closed
cuviper opened this issue Apr 3, 2017 · 3 comments
Closed

rustbuild shouldn't require cargo-vendor when building from tarballs #41042

cuviper opened this issue Apr 3, 2017 · 3 comments
Labels
regression-from-stable-to-beta Performance or correctness regression from stable to beta.

Comments

@cuviper
Copy link
Member

cuviper commented Apr 3, 2017

Rustbuild uses cargo-vendor to get complete sources for the dist-src target, but this isn't needed when building from tarballs rather than git, as everything is already vendored. It breaks distro builds when it tries to install cargo-vendor, as we have no network access allowed. I see this on 1.17-beta, but 1.16 didn't deal with cargo-vendor.

I don't really even need the dist-src target anyway, as I just want to install binaries and docs, but ./x.py dist --install always requires it AFAICT, even when explicit paths are specified.
(e.g. ./x.py dist --install src/librustc src/libstd src/doc)

@est31
Copy link
Member

est31 commented Apr 3, 2017

cc @alexcrichton

@cuviper
Copy link
Member Author

cuviper commented Apr 3, 2017

I was talking to @alexcrichton about this on IRC already. I have a PR for this ready in just a moment.

@arielb1 arielb1 added regression-from-stable-to-beta Performance or correctness regression from stable to beta. T-tools labels Apr 4, 2017
@arielb1
Copy link
Contributor

arielb1 commented Apr 4, 2017

This sounds like a regression? (should we beta-nominate the fix)?

frewsxcv added a commit to frewsxcv/rust that referenced this issue Apr 6, 2017
Only use cargo-vendor if building from git sources

The only time we need to vendor sources is when building from git.  If one is
building from a rustc source tarball, everything should already be in place.
This also matters for distros which do offline builds, as they can't install
cargo-vendor this way.

This adds a common `Build::src_is_git` flag, and then uses it in the dist-src
target to decide whether to install or use `cargo-vendor` at all.

Fixes rust-lang#41042.
frewsxcv added a commit to frewsxcv/rust that referenced this issue Apr 6, 2017
Only use cargo-vendor if building from git sources

The only time we need to vendor sources is when building from git.  If one is
building from a rustc source tarball, everything should already be in place.
This also matters for distros which do offline builds, as they can't install
cargo-vendor this way.

This adds a common `Build::src_is_git` flag, and then uses it in the dist-src
target to decide whether to install or use `cargo-vendor` at all.

Fixes rust-lang#41042.
frewsxcv added a commit to frewsxcv/rust that referenced this issue Apr 6, 2017
Only use cargo-vendor if building from git sources

The only time we need to vendor sources is when building from git.  If one is
building from a rustc source tarball, everything should already be in place.
This also matters for distros which do offline builds, as they can't install
cargo-vendor this way.

This adds a common `Build::src_is_git` flag, and then uses it in the dist-src
target to decide whether to install or use `cargo-vendor` at all.

Fixes rust-lang#41042.
frewsxcv added a commit to frewsxcv/rust that referenced this issue Apr 7, 2017
Only use cargo-vendor if building from git sources

The only time we need to vendor sources is when building from git.  If one is
building from a rustc source tarball, everything should already be in place.
This also matters for distros which do offline builds, as they can't install
cargo-vendor this way.

This adds a common `Build::src_is_git` flag, and then uses it in the dist-src
target to decide whether to install or use `cargo-vendor` at all.

Fixes rust-lang#41042.
frewsxcv added a commit to frewsxcv/rust that referenced this issue Apr 7, 2017
Only use cargo-vendor if building from git sources

The only time we need to vendor sources is when building from git.  If one is
building from a rustc source tarball, everything should already be in place.
This also matters for distros which do offline builds, as they can't install
cargo-vendor this way.

This adds a common `Build::src_is_git` flag, and then uses it in the dist-src
target to decide whether to install or use `cargo-vendor` at all.

Fixes rust-lang#41042.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
regression-from-stable-to-beta Performance or correctness regression from stable to beta.
Projects
None yet
Development

No branches or pull requests

3 participants