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

Build aarch64-apple-ios-sim as part of the full macOS build #85782

Merged
merged 1 commit into from
Aug 1, 2021

Conversation

badboy
Copy link
Member

@badboy badboy commented May 28, 2021

Part of the MCP 428 to promote this target to Tier 2.

This adds the aarch64-apple-ios-sim target as a tier 2 target, currently cross-compiled from our x86_64 apple builders. The compiler team has approved the addition per the MCP noted above, and the infrastructure team has not raised concerns with this addition at this time (as the CI time impact is expected to be minimal; this is only building std).

@rust-highfive
Copy link
Collaborator

r? @Mark-Simulacrum

(rust-highfive has picked a reviewer for you, use r? to override)

@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label May 28, 2021
@rust-log-analyzer

This comment has been minimized.

@Mark-Simulacrum
Copy link
Member

Would you be up for copying this config to a try builder -- likely adding onto here:

try:
<<: *base-ci-job
name: try
env:
<<: [*shared-ci-variables, *prod-variables]
if: github.event_name == 'push' && (github.ref == 'refs/heads/try' || github.ref == 'refs/heads/try-perf') && github.repository == 'rust-lang-ci/rust'
strategy:
matrix:
include:
- *dist-x86_64-linux
?

That way we can test this out without actually landing it and make sure it builds (and hopefully someone can verify the artifacts).

@Mark-Simulacrum
Copy link
Member

@bors try

@bors
Copy link
Contributor

bors commented May 30, 2021

⌛ Trying commit 82ec1fb10f172297a8859a2a91bf865a705fdb84 with merge ab06beff0b87a039398867d10c9e6570a1d5efc4...

@bors
Copy link
Contributor

bors commented May 30, 2021

☀️ Try build successful - checks-actions
Build commit: ab06beff0b87a039398867d10c9e6570a1d5efc4 (ab06beff0b87a039398867d10c9e6570a1d5efc4)

@badboy
Copy link
Member Author

badboy commented May 30, 2021

At the very least it built something by the right name:

-rw-r--r--   1 runner  staff    16M May 30 14:57 rust-std-nightly-aarch64-apple-ios-sim.tar.xz

How would I get that artifact from S3?

@badboy
Copy link
Member Author

badboy commented May 30, 2021

Ah, thanks to rustup-toolchain-installer I got it. Though as there is not rustc itself one can't just install it.
But I can check the file contents and use them against a nightly to see if that works

@badboy
Copy link
Member Author

badboy commented May 30, 2021

Building that commit locally (and some hackery due to the explicit version check within rustc) the artifact at https://ci-artifacts.rust-lang.org/rustc-builds/ab06beff0b87a039398867d10c9e6570a1d5efc4/rust-std-nightly-aarch64-apple-ios-sim.tar.xz seems to work.

I'll try using it tomorrow at work and see if I can get ahold a x86_64 Mac to test the full build from the try run.

@badboy
Copy link
Member Author

badboy commented May 31, 2021

I threw the try build from that commit onto an x86_64 macOS machine using GitHub Actions here: https://github.com/badboy/gha-macos-rust-tests/runs/2710468159

It compiles a minimal Rust library to a static library.
The outcome is what I expect, including the right version commands:

cmd LC_BUILD_VERSION
platform 7

I did not test that in the simulator itself, but I think this works exactly as planned.

@badboy
Copy link
Member Author

badboy commented Jun 3, 2021

What are the next steps here, @Mark-Simulacrum?
Obviously I need to remove the try commit, but are there other blockers like getting a decision on the overall MCP first or is having this built for the Tier 3 target ok?

@Mark-Simulacrum
Copy link
Member

I think dropping the try part of this and updating the docs (platform support) to make this PR be the "make it tier 2" PR makes sense. I left a comment on the Zulip thread as well.

@Mark-Simulacrum Mark-Simulacrum added S-waiting-on-team Status: Awaiting decision from the relevant subteam (see the T-<team> label). and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jun 20, 2021
@Mark-Simulacrum
Copy link
Member

Going to mark this as waiting-on-team; specifically a second on the MCP - rust-lang/compiler-team#428.

@apiraino
Copy link
Contributor

@rustbot label +T-compiler

(hope it's correct)

@apiraino apiraino added the T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. label Jun 23, 2021
@apiraino
Copy link
Contributor

apiraino commented Jul 1, 2021

@Mark-Simulacrum rust-lang/compiler-team#428 has been seconded, can S-waiting-on-team be lifted here or are there further pending actions?

@apiraino
Copy link
Contributor

apiraino commented Jul 7, 2021

I think we can now remove the "waiting on team" label

@rustbot label -S-waiting-on-team

@rustbot rustbot removed the S-waiting-on-team Status: Awaiting decision from the relevant subteam (see the T-<team> label). label Jul 7, 2021
@badboy
Copy link
Member Author

badboy commented Jul 8, 2021

rust-lang/compiler-team#428 has been accepted, I removed the test commit and force-pushed here.

@badboy
Copy link
Member Author

badboy commented Jul 8, 2021

Once this is landed and we verified that the produced artifacts work I can change the documentation.

@badboy
Copy link
Member Author

badboy commented Jul 26, 2021

Bump! @Mark-Simulacrum, as you gave feedback here earlier. Can we land this?

@Mark-Simulacrum Mark-Simulacrum added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jul 26, 2021
@Mark-Simulacrum
Copy link
Member

Marked as waiting on review - I expect the answer is roughly "yes" but I'll need to take a look. Likely within the next week.

@badboy
Copy link
Member Author

badboy commented Jul 26, 2021

Thanks!

@Mark-Simulacrum Mark-Simulacrum added the relnotes Marks issues that should be documented in the release notes of the next release. label Jul 31, 2021
@Mark-Simulacrum
Copy link
Member

@bors r+

@bors
Copy link
Contributor

bors commented Jul 31, 2021

📌 Commit 61640f2 has been approved by Mark-Simulacrum

@bors bors 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 Jul 31, 2021
@bors
Copy link
Contributor

bors commented Aug 1, 2021

⌛ Testing commit 61640f2 with merge a0a6bab...

@bors
Copy link
Contributor

bors commented Aug 1, 2021

☀️ Test successful - checks-actions
Approved by: Mark-Simulacrum
Pushing a0a6bab to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Aug 1, 2021
@bors bors merged commit a0a6bab into rust-lang:master Aug 1, 2021
@rustbot rustbot added this to the 1.56.0 milestone Aug 1, 2021
@badboy badboy deleted the build-ios-sim-target branch August 2, 2021 07:54
JohnTitor added a commit to JohnTitor/rust that referenced this pull request Aug 3, 2021
…st, r=Mark-Simulacrum

Add `aarch64-apple-ios-sim` as a possible target to the manifest

This should allow rustup and similar to actually make use of this new
target now.

r? `@Mark-Simulacrum`

Followup to rust-lang#85782
JohnTitor added a commit to JohnTitor/rust that referenced this pull request Aug 3, 2021
…st, r=Mark-Simulacrum

Add `aarch64-apple-ios-sim` as a possible target to the manifest

This should allow rustup and similar to actually make use of this new
target now.

r? ``@Mark-Simulacrum``

Followup to rust-lang#85782
JohnTitor added a commit to JohnTitor/rust that referenced this pull request Aug 3, 2021
…st, r=Mark-Simulacrum

Add `aarch64-apple-ios-sim` as a possible target to the manifest

This should allow rustup and similar to actually make use of this new
target now.

r? ```@Mark-Simulacrum```

Followup to rust-lang#85782
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
merged-by-bors This PR was explicitly merged by bors. relnotes Marks issues that should be documented in the release notes of the next release. S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants