Build Frameworks #6
This file contains 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 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 |