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

Rust installer v2 #20317

Merged
merged 5 commits into from
Dec 30, 2014
Merged

Rust installer v2 #20317

merged 5 commits into from
Dec 30, 2014

Conversation

brson
Copy link
Contributor

@brson brson commented Dec 30, 2014

This upgrades to a version of rust-installer that supports multiple 'components', so that the output can be combined into a single installer that contains both Rust and Cargo (#16456).

At the same time it also packages documentation into a component called 'rust-docs', which will again be merged into the combined installer (#14916).

It creates yet another component, 'rust-mingw', to carry the optional parts of mingw necessary to link with Rust on windows, and makes distcheck build all these installer components for upload by the buildbots. It also moves the 'third-party' docs from the 'bin/' folder to 'share/doc/rust' where the rest of the docs live, temporarily removing them from the .exe installer.

This needs to be merged at roughly the same time as the corresponding Cargo PR.

Next steps:

  • Modify rust-packaging to produce combined .exe and .pkg installers.
  • Set up automation for building rust-packaging every time a rust build is completed.
  • Rename the 'rust' installer artifacts produced here to 'rustc' and the the 'rust-combined' produced by rust-packaging to just 'rust'.
  • Remove the .exe and .pkg packaging from the main repo.

r? @alexcrichton p=1 please. There's a lot more to do here.

This distributes docs in a separate package called rust-docs. The rust-packaging
project will combine it with Rust and Cargo into a single installer in a variety of formats.
These work, but aren't being built and uploaded because the bots run
'distcheck' not 'dist'.
This puts stdc++ and the unwinding dll into the main package
and creates a separate rust-mingw package for everything else.
@brson
Copy link
Contributor Author

brson commented Dec 30, 2014

It would be nice to review https://github.com/rust-lang/rust-installer as well since there's a bunch of new shell script there, but I know that's pretty arduous.

@brson
Copy link
Contributor Author

brson commented Dec 30, 2014

Also fixes #17690

@brson
Copy link
Contributor Author

brson commented Dec 30, 2014

cc @vadimcn

$$(Q)rm -R tmp/dist/$$(PKG_NAME)-$(1)-image

dist-doc-install-dir-$(1): docs compiler-docs
$$(Q)mkdir -p tmp/dist/$$(DOC_PKG_NAME)-$(1)-image/share/doc/rust
$$(Q)cp -r doc tmp/dist/$$(DOC_PKG_NAME)-$(1)-image/share/doc/rust/html
Copy link
Member

Choose a reason for hiding this comment

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

Above this used to be [ ! -d doc ] || ... , was it intentional to lose the prefix?

Copy link
Member

Choose a reason for hiding this comment

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

Ah, I believe this is handled below.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yeah, it's handled with ifdefs somewhere else.

@alexcrichton
Copy link
Member

I looked over rust-lang/rust-installer@47efd6b and https://github.com/rust-lang/rust-installer, but sadly not in incredible detail. I'm pretty happy with everything I've seen so far though, and it sounds like you've been testing everywhere as you go along, so I'm pretty confident in this.

r=me with just a few nits.

alexcrichton added a commit to alexcrichton/rust that referenced this pull request Dec 30, 2014
@bors bors merged commit b12dfbb into rust-lang:master Dec 30, 2014
bors added a commit to rust-lang/cargo that referenced this pull request Dec 30, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants