Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix code signing issues on macOS with Xcode 12.2 (#744)
It turned out that enabling Bitcode *project-wide* is a bad idea because for some reason it causes code signing issues when preparing macOS apps for distribution. Not only this glorious technology breaks iOS apps at times, the advent Apple Silicon seems to making macOS and iOS really comptaible. I'd say, bug-to-bug compatible! So... if Bitcode metastasises into macOS builds, the apps exhibit similar symptoms: everything seems to be fine, the app and its build lead their normal life, right until the developer attempts to prepare the app for distribution. Then it suddenly fails to code sign with the following errors hidden deeply in logs: Running /usr/bin/codesign '-vvv' '--force' '--sign' '3356BDE5BC1F1235571602E373E6BA16B748CDF3' [...] [...].app/Contents/Frameworks/themis.framework/Versions/A: replacing existing signature [...].app/Contents/Frameworks/themis.framework/Versions/A: code object is not signed at all /usr/bin/codesign exited with 1 Well, that's enligtening! Anyway. Once there is no mention of Bitcode whatsoever in the build settings of macOS target for Themis framework, the applications can be signed and everything seems to be okay. Remove ENABLE_BITCODE setting from all macOS targets, leave it only for iOS targets. The framework is built with YES (but of course!) and the tests are built with NO, because the tests are bundles and they are not compatible with Bitcode (and they are not capable of using it anyway). Of course, we learn about this only with Xcode 12.2 RC which supports Apple Silicon architecture. It's a long-standing Apple tradition to change something up in code signing every 18 months, just to keep the developers sharp.
- Loading branch information