Skip to content

Feature Request: Support building for arm64 iOS #285

@jpsim

Description

@jpsim

First of all, thanks for creating and sharing this project. I'm looking forward to trying this to integrate with Envoy Mobile.

One of our main use cases for Xcode integration is to run our iOS example apps on physical iOS devices.

I'm not sure if this is something that rules_xcodeproj is intended to currently support and I'm using it wrong, or if this is a feature that hasn't been built yet, so I've labeled this as a feature request more than a bug.

Currently, if I run bazel run //:xcodeproj from examples/ios_app in this repo, open the project in Xcode, update the code signing section for the "Example" iOS app target to the following:

image

and attempt to build for a device (or build and run) I see the following error message in the Xcode build logs:

rules_xcodeproj/examples/ios_app/Example/ContentView.swift:2:8: Module 'ExternalFramework' was created for incompatible target arm64-apple-ios12.0-simulator: /var/tmp/_bazel_jsimard/e1a0d3a6038bce3f1a38641ac8938150/external/examples_ios_app_external/ExternalFramework.framework/Modules/ExternalFramework.swiftmodule/arm64.swiftmodule

Possibly because I've already built and run for a local simulator. I tried running bazel clean --expunge and cmd-shift-k in Xcode and the error persists.

If this is a bug and iOS device support is intended to work, I'd appreciate if you could share a workaround for the issue (am I cleaning the wrong thing?).

If building for iOS devices isn't currently supported then please consider this to be a feature request for that functionality 😄.

I imagine the fact that I'm on an M1 Mac may be a contributor to this issue, since I've already built the example app for an arm64 simulator and Xcode/bazel/rules_xcodeproj is getting confused between arm64 iOS simulator and arm64 iOS device.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions