Skip to content

Build Frameworks

Build Frameworks #6

Workflow file for this run

name: Build Frameworks
on:
workflow_dispatch
jobs:
build-ios:
runs-on: macos-latest
steps:
- uses: actions/checkout@v2
- name: Checkout ANGLE sources
run: |
git clone https://github.com/google/angle ./ANGLE
- name: Fetch depot_tools
run: |
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git ./ANGLE/depot_tools
- name: Apply iOS Build Fix patch
run: |
cd ANGLE
git apply ../angle_ios_build_fix.patch
- name: Build
run: |
cd ANGLE
export PATH="$(pwd)/depot_tools:$PATH"
python scripts/bootstrap.py
gclient sync
gn gen out/Release --args="is_debug=false target_os=\"ios\" ios_enable_code_signing=false ios_deployment_target=\"14.0\" angle_build_all=false target_environment=\"device\""
autoninja -C out/Release
- name: Prepare Theos Building Environment
run: |
bash -c "$(curl -fsSL https://raw.githubusercontent.com/theos/theos/master/bin/install-theos)"
mv Makefile.ios Makefile
- name: Build MGLKit framework
run: |
mkdir Frameworks
cp -R ./ANGLE/out/Release/libEGL.framework ./Frameworks
cp -R ./ANGLE/out/Release/libGLESv2.framework ./Frameworks
make
- name: ZIP Frameworks
run: |
zip --symlinks -r ${GITHUB_WORKSPACE}/libEGL.framework.ios.zip Frameworks/libEGL.framework
zip --symlinks -r ${GITHUB_WORKSPACE}/libGLESv2.framework.ios.zip Frameworks/libGLESv2.framework
zip --symlinks -r ${GITHUB_WORKSPACE}/MGLKit.framework.ios.zip .theos/obj/MGLKit.framework
- name: Upload artifacts
uses: actions/[email protected]
with:
path: |
libEGL.framework.ios.zip
libGLESv2.framework.ios.zip
MGLKit.framework.ios.zip
name: ios