@@ -14,21 +14,48 @@ jobs:
1414 steps :
1515 - uses : actions/checkout@v2
1616
17- - name : Build App
18- run : ./build.sh
17+ - name : Build Intel App
18+ run : |
19+ ARCH="x86_64" ./build.sh
20+ mv build/NeovideProject.app build/NeovideProject-intel.app
21+ mv build/NeovideProject.dmg build/NeovideProject-intel.dmg
22+
23+ - name : Build ARM App
24+ run : |
25+ ARCH="arm64" ./build.sh
26+ mv build/NeovideProject.app build/NeovideProject-arm.app
27+ mv build/NeovideProject.dmg build/NeovideProject-arm.dmg
28+
29+ - name : Create Universal App
30+ run : |
31+ mkdir -p build/NeovideProject.app/Contents/MacOS
32+ lipo -create \
33+ build/NeovideProject-intel.app/Contents/MacOS/NeovideProject \
34+ build/NeovideProject-arm.app/Contents/MacOS/NeovideProject \
35+ -output build/NeovideProject.app/Contents/MacOS/NeovideProject
36+ cp -r build/NeovideProject-intel.app/Contents/{Info.plist,Resources} build/NeovideProject.app/Contents/
37+
38+ # Create universal DMG
39+ hdiutil create -volname "NeovideProject" -srcfolder "build/NeovideProject.app" -ov -format UDZO "build/NeovideProject-universal.dmg"
1940
2041 - name : Verify Build Artifacts
2142 run : |
2243 ls -la build/
23- test -f "build/NeovideProject.app"
24- test -f "build/NeovideProject.dmg"
44+ file build/NeovideProject-intel.app/Contents/MacOS/NeovideProject
45+ file build/NeovideProject-arm.app/Contents/MacOS/NeovideProject
46+ file build/NeovideProject.app/Contents/MacOS/NeovideProject
47+ test -f "build/NeovideProject-intel.dmg"
48+ test -f "build/NeovideProject-arm.dmg"
49+ test -f "build/NeovideProject-universal.dmg"
2550
2651 - name : Create Release
2752 uses : softprops/action-gh-release@v1
2853 if : startsWith(github.ref, 'refs/tags/')
2954 with :
3055 files : |
31- build/NeovideProject.dmg
56+ build/NeovideProject-intel.dmg
57+ build/NeovideProject-arm.dmg
58+ build/NeovideProject-universal.dmg
3259 env :
3360 GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
3461
0 commit comments