eonil
eonil

Reputation: 85975

What is current state of iOS support of Rust?

This document is saying the safe tasks are not supported on iOS target due to lack of segmented stack support. I looked into Rust's issue tracker, and this is somewhat related to thread-local-storage of 32-bit version of iOS. Well, I am not really familiar with this kind of topics.

Anyway, this text is saying the segmented stack approach is going to be abandoned. There's an HN entry which says it's not really required in 64-bit systems.

I am confusing on this. What is current state of iOS support of Rust? No stack protection at all on tasks? Or protected only in 64-bit?

Upvotes: 7

Views: 2889

Answers (3)

Kornel
Kornel

Reputation: 100110

iOS target (both armv7 and aarch64) is officially supported as a Tier 2 platform.

Tier 2 platforms can be thought of as "guaranteed to build". Automated tests are not run so it's not guaranteed to produce a working build, but platforms often work to quite a good degree and patches are always welcome!

Mac->iOS cross compiler is automatically built on every PR/merge.

The team is happy to improve support. It's mostly a matter of somebody making a reliable buildbot integration for automated tests.

Upvotes: 1

Thilo
Thilo

Reputation: 262494

There is a blog post that claims

Rust is now completely ported to iOS: all architectures for device/simulator are supported. Since green threads were removed, adding support of arm64 was actually almost straightforward.

Github also has an example iOS app (written in Swift) that calls into a cross-compiled framework (written in Rust).

Upvotes: 6

Steve Klabnik
Steve Klabnik

Reputation: 15539

Segmented stacks were abandoned, and there have been lots of 'fix iOS build' PRS: https://github.com/rust-lang/rust/search?q=ios&type=Issues&utf8=%E2%9C%93

I don't know more than that, though.

Upvotes: 2

Related Questions