Skip to content

Conversation

madsmtm
Copy link
Contributor

@madsmtm madsmtm commented Jun 5, 2025

Objective

Fixes #18893.

Solution

bindgen currently has issues with building Xcode 16.3 and above, due to Clang being more strict about target triples. It was fixed in rust-lang/rust-bindgen#3182, but as a breaking release, so affected dependencies have to be updated to either not depend on bindgen, or depend on a fixed version of it:

Testing

cargo build --target aarch64-apple-ios-sim

With Xcode 16.3 or 16.4.

@madsmtm madsmtm added C-Bug An unexpected or incorrect behavior A-Build-System Related to build systems or continuous integration O-iOS Specific to the iOS mobile operating system S-Blocked This cannot move forward until something else changes P-Compile-Failure A failure to compile Bevy apps labels Jun 5, 2025
Copy link
Contributor

github-actions bot commented Jun 5, 2025

You added a new example but didn't add metadata for it. Please update the root Cargo.toml file.

@madsmtm madsmtm force-pushed the fix-ios-simulator branch from 54f47e3 to b97696d Compare June 7, 2025 19:39
@madsmtm madsmtm marked this pull request as ready for review June 7, 2025 19:39
@madsmtm madsmtm force-pushed the fix-ios-simulator branch from b97696d to 9ddbadf Compare June 7, 2025 19:40
@madsmtm
Copy link
Contributor Author

madsmtm commented Jun 7, 2025

cpal v0.16 has been released, so this is now ready.

If you're planning a v0.16.2 release, I'd recommend that this goes in that. @simlay has kindly tested bevy_audio here, though cpal v0.16 includes other things as well, so I can't say for the other platforms.

@madsmtm
Copy link
Contributor Author

madsmtm commented Jun 9, 2025

Oops, sorry, I didn't test with cpal v0.16 (I only tested with v0.15.4, but that was decided against). We'll need to update the cpal version in rodio as well. Converting to draft.

@madsmtm madsmtm marked this pull request as draft June 9, 2025 13:51
By updating to dependency versions that don't depend on bindgen.
@madsmtm madsmtm force-pushed the fix-ios-simulator branch from 9ddbadf to a17ce1d Compare June 10, 2025 02:42
@madsmtm
Copy link
Contributor Author

madsmtm commented Jun 10, 2025

I went with depending on the patched version of coreaudio-sys instead, so this PR should now actually be ready.

(This makes the upgrade easier to backport, and means that we don't have to wait for RustAudio/rodio#721).

@madsmtm madsmtm marked this pull request as ready for review June 10, 2025 02:43
@madsmtm madsmtm requested a review from mockersf June 10, 2025 02:43
@madsmtm madsmtm added S-Needs-Review Needs reviewer attention (from anyone!) to move forward and removed S-Blocked This cannot move forward until something else changes labels Jun 10, 2025
@madsmtm madsmtm requested review from mockersf and removed request for mockersf June 10, 2025 02:44
@madsmtm madsmtm added this to the 0.16.2 milestone Jun 10, 2025
@mockersf mockersf added this pull request to the merge queue Jun 10, 2025
Merged via the queue into bevyengine:main with commit 27b64c3 Jun 10, 2025
37 of 38 checks passed
@madsmtm madsmtm deleted the fix-ios-simulator branch June 10, 2025 17:48
mockersf pushed a commit that referenced this pull request Aug 18, 2025
# Objective

Fixes #18893.

## Solution

`bindgen` currently has issues with building Xcode 16.3 and above, due
to Clang being more strict about target triples. It was fixed in
rust-lang/rust-bindgen#3182, but as a breaking
release, so affected dependencies have to be updated to either not
depend on `bindgen`, or depend on a fixed version of it:
- `tracing-oslog`: Absolucy/tracing-oslog#12
- `coreaudio-sys`: RustAudio/coreaudio-sys#114

## Testing

```sh
cargo build --target aarch64-apple-ios-sim
```

With Xcode 16.3 or 16.4.
mockersf pushed a commit that referenced this pull request Aug 18, 2025
Fixes #18893.

`bindgen` currently has issues with building Xcode 16.3 and above, due
to Clang being more strict about target triples. It was fixed in
rust-lang/rust-bindgen#3182, but as a breaking
release, so affected dependencies have to be updated to either not
depend on `bindgen`, or depend on a fixed version of it:
- `tracing-oslog`: Absolucy/tracing-oslog#12
- `coreaudio-sys`: RustAudio/coreaudio-sys#114

```sh
cargo build --target aarch64-apple-ios-sim
```

With Xcode 16.3 or 16.4.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-Build-System Related to build systems or continuous integration C-Bug An unexpected or incorrect behavior O-iOS Specific to the iOS mobile operating system P-Compile-Failure A failure to compile Bevy apps S-Needs-Review Needs reviewer attention (from anyone!) to move forward
Projects
None yet
Development

Successfully merging this pull request may close these issues.

iOS example does not build
2 participants