-
Notifications
You must be signed in to change notification settings - Fork 4k
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
iOS Static Build Pipeline #3436
Conversation
… dynamic lib, never strip swift symbols, add framework search paths, and bring in lstdc++
… trouble with the static build
Please @CatalinVoss, feel free to push as much as you need to complete taskcluster green, do not worry about abusing the resources: current usage is quite low, and we have implemented back in august optimizations that ensures high usages do not results in too high costs. Current figures shows this has been successfull, and your PR is more than welcome, so push as much as you need. |
@lissyx that's good to know. OK, thanks. |
… no longer a thing here. I suppose we could add a step to package the iOS static lib instead.
I think we're good on TC? |
There were à few failures but its all green after rerun. I'll gave à look tomorrow, hopefully. Thanks ! |
Yeah those didn't look related to me. OK |
They were not, but they were blocking executing a lot of the tests :) |
@CatalinVoss Looks good, there were two things I'm unsure about, please let us know if you need further changes or if that is good to go. Also @reuben can correct me but I think we would like to have that on r0.9 as well ? |
I don't think so. Not suitable for a point release in its current state. Would like to get more testing on it. I'll take a closer look at the PR as well this week. |
Looks like I don't have permissions to re-trigger that one failing windows test, but it doesn't look related |
Yeah dont worry about this one, it's past deadline Anyway and it's just an intermittent |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have a few minor comments that need to be addressed before merging but this looks great! Great find with ios_static_framework
, this ended up being much simpler than I expected.
@CatalinVoss Sorry, but valgrind metadata tests on linux shows a memory leak regression: https://community-tc.services.mozilla.com/tasks/VizPwDWmRa-rx6i2f2z_1w/runs/0/logs/https%3A%2F%2Fcommunity-tc.services.mozilla.com%2Fapi%2Fqueue%2Fv1%2Ftask%2FVizPwDWmRa-rx6i2f2z_1w%2Fruns%2F0%2Fartifacts%2Fpublic%252Fvalgrind_extended.log |
@CatalinVoss It might just be some false-positive from Valgrind:
And you would just have to update the exclusion lists: https://github.com/mozilla/DeepSpeech/blob/master/taskcluster/tc-valgrind-utils.sh#L5-L9 |
Looks like re-adding the flags that were dropped when moving from |
Merged with the fix. Thanks @CatalinVoss! |
(Please delete the upstream branch once you're done working on it) |
Thank you for that!! |
This PR contributes a static build framework build pipeline for iOS, hopefully helping push #3061 along. Credit goes to @xiaoqunSun for pointing me to bazel's
ios_static_framework
.Build the static framework like this:
If you want a smaller bundle and don't care about shipping apps with bitcode to Apple, you can drop the
--apple_bitcode=embedded --copt=-fembed-bitcode
flags.Then the
xcodebuild
or Xcode app build should work to build a static framework that can be integrated into apps that can be shipped on the iOS App Store or via Testflight.I tried my best to update the Taskcluster command, but don't want to overpromise.
I also added a basic Podspec which should provide the starting point for turning this into a Cocoa Pod if anyone wants to tackle submitting that somewhere.