ci(macos): make macdeployqt verbose and verify platform plugins
- Add -verbose=2 to macdeployqt so deployment issues are visible in CI logs. - Pass -executable for oak-render-worker so its rpaths are also fixed. - Add a verification step that fails the build if platform plugins are missing. - Print otool -L for both main binary and worker to aid debugging.
This commit is contained in:
@@ -130,11 +130,20 @@ jobs:
|
|||||||
- name: Deploy Qt dependencies
|
- name: Deploy Qt dependencies
|
||||||
run: |
|
run: |
|
||||||
export PATH="$(brew --prefix qt@6)/bin:$PATH"
|
export PATH="$(brew --prefix qt@6)/bin:$PATH"
|
||||||
macdeployqt build/app/Oak.app
|
macdeployqt build/app/Oak.app \
|
||||||
|
-verbose=2 \
|
||||||
|
-executable=build/app/Oak.app/Contents/MacOS/oak-render-worker
|
||||||
# Re-sign after macdeployqt (it breaks signatures when modifying libs)
|
# Re-sign after macdeployqt (it breaks signatures when modifying libs)
|
||||||
codesign --force --deep --sign - build/app/Oak.app
|
codesign --force --deep --sign - build/app/Oak.app
|
||||||
|
|
||||||
- name: Bundle non-Qt libraries
|
- name: Verify macOS bundle plugins
|
||||||
|
run: |
|
||||||
|
ls -la build/app/Oak.app/Contents/PlugIns/platforms/ || (echo "Missing platform plugins!" && exit 1)
|
||||||
|
ls -la build/app/Oak.app/Contents/PlugIns/imageformats/ || true
|
||||||
|
echo "=== otool -L main binary ==="
|
||||||
|
otool -L build/app/Oak.app/Contents/MacOS/Oak | head -30
|
||||||
|
echo "=== otool -L worker ==="
|
||||||
|
otool -L build/app/Oak.app/Contents/MacOS/oak-render-worker | head -30
|
||||||
run: |
|
run: |
|
||||||
mkdir -p build/app/Oak.app/Contents/Frameworks
|
mkdir -p build/app/Oak.app/Contents/Frameworks
|
||||||
python3 << 'PYEOF'
|
python3 << 'PYEOF'
|
||||||
|
|||||||
Reference in New Issue
Block a user