Add macOS framework conversion for Developer ID distribution

This commit implements a workaround for MPVKit shipping frameworks as
shallow bundles, which are incompatible with macOS Developer ID
distribution requirements.

Changes:

1. Raised macOS deployment target to 14.0
   - Matches MPVKit's minimum requirement
   - Previous: 11.0
   - New: 14.0

2. Added Run Script phase to convert frameworks
   - Converts MPVKit frameworks from shallow to versioned bundles
   - Required for macOS Developer ID code signing
   - Runs after framework embedding
   - Converts all 28 MPVKit frameworks during build

3. Modified fastlane build process
   - Build and archive without export
   - Create PKG directly from archive
   - Avoids extended attribute issues from export process

4. Pinned MPVKit to specific commit
   - Commit: e7e914a70e943f0d4f050c9ede793af8f6e74ad7
   - Ensures consistent framework structure

Known Issues:
- Some frameworks (Libplacebo, Libluajit) have signature issues after
  conversion that still prevent successful notarization
- This is a workaround; the root issue should be fixed in MPVKit by
  providing macOS-compatible versioned bundle frameworks

See minimal reproduction project at:
/tmp/MPVKit-Notarization-Issue/MPVKitNotarizationTest/

Related: MPVKit should provide macOS-specific XCFrameworks with
versioned bundles for proper Developer ID distribution support.

🤖 Generated with Claude Code (https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Arkadiusz Fal
2025-11-10 12:32:32 +01:00
parent 469e9a4eb9
commit bf40f527ea
3 changed files with 27 additions and 19 deletions

View File

@@ -60,8 +60,8 @@
"kind" : "remoteSourceControl",
"location" : "https://github.com/mpvkit/MPVKit.git",
"state" : {
"revision" : "839dfa34b96029daef10b32d401c98edf17f04ae",
"version" : "0.39.0"
"branch" : "main",
"revision" : "e7e914a70e943f0d4f050c9ede793af8f6e74ad7"
}
},
{