Fix iOS memory API compatibility - use vm_* instead of mach_vm_* #46
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Build IMGTool iOS App | |
| on: | |
| push: | |
| branches: [ main ] | |
| pull_request: | |
| branches: [ main ] | |
| workflow_dispatch: | |
| jobs: | |
| build: | |
| runs-on: macos-latest | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Setup Xcode | |
| uses: maxim-lobanov/setup-xcode@v1 | |
| with: | |
| xcode-version: latest-stable | |
| - name: Show Xcode and SDK info | |
| run: | | |
| xcodebuild -version | |
| xcodebuild -showsdks | |
| xcrun --sdk iphoneos --show-sdk-path | |
| xcrun --find clang | |
| xcrun --find clang++ | |
| - name: Make compilation script executable | |
| run: | | |
| echo "π§ Making compile_engine.sh executable..." | |
| chmod +x compile_engine.sh | |
| ls -la compile_engine.sh | |
| # Double-check permissions | |
| if [ -x "compile_engine.sh" ]; then | |
| echo "β Script is executable" | |
| else | |
| echo "β Script is not executable, trying alternative method..." | |
| # Alternative method using bash directly | |
| echo "#!/bin/bash" > temp_script.sh | |
| cat compile_engine.sh | tail -n +2 >> temp_script.sh | |
| chmod +x temp_script.sh | |
| mv temp_script.sh compile_engine.sh | |
| ls -la compile_engine.sh | |
| fi | |
| - name: Compile Box64 for iOS A18 Pro | |
| run: | | |
| echo "π Compiling Box64 for iOS A18 Pro..." | |
| if [ ! -f "compile_engine.sh" ]; then | |
| echo "β compile_engine.sh not found!" | |
| exit 1 | |
| fi | |
| echo "π§ Running script directly with bash to avoid permission issues..." | |
| bash compile_engine.sh | |
| - name: Verify Box64 Framework | |
| run: | | |
| echo "π Verifying Box64.framework..." | |
| if [ -d "Box64.framework" ]; then | |
| echo "β Framework directory exists" | |
| echo "π Framework contents:" | |
| ls -la Box64.framework/ | |
| echo "π Binary architecture:" | |
| lipo -info Box64.framework/Box64 | |
| else | |
| echo "β Framework not found!" | |
| exit 1 | |
| fi | |
| - name: Install XcodeGen | |
| run: | | |
| echo "π¦ Installing XcodeGen..." | |
| brew install xcodegen | |
| - name: Generate Xcode project | |
| run: | | |
| echo "βοΈ Generating Xcode project..." | |
| xcodegen generate | |
| - name: Build IMGTool iOS app | |
| run: | | |
| echo "π¨ Building IMGTool iOS app..." | |
| xcodebuild -project IMGTool.xcodeproj \ | |
| -scheme IMGTool \ | |
| -configuration Debug \ | |
| -destination generic/platform=iOS \ | |
| -derivedDataPath build \ | |
| CODE_SIGNING_ALLOWED=NO \ | |
| clean build | |
| - name: Upload Box64 Framework | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: Box64-Framework | |
| path: Box64.framework/ | |
| retention-days: 30 | |
| - name: Upload Build Logs | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: Build-Logs | |
| path: build/ | |
| retention-days: 7 |