Skip to content

Commit

Permalink
Merge pull request #18604 from anr2me/manual_generate_ipa
Browse files Browse the repository at this point in the history
[Workflow] Manually Generate iOS IPA
  • Loading branch information
hrydgard committed Dec 23, 2023
2 parents 7f12b7a + d4b9356 commit c9e2697
Showing 1 changed file with 83 additions and 0 deletions.
83 changes: 83 additions & 0 deletions .github/workflows/manual_generate_ipa.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
name: Manual Generate IPA
on:
workflow_dispatch:
inputs:

buildVariant:
type: choice
description: 'Build Variant'
required: true
default: 'release'
options:
- release
- debug

jobs:

apk:
name: Generate ${{ github.event.inputs.buildVariant }} IPA
runs-on: macos-latest

steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
submodules: recursive

#- name: Fetch tags for macOS
# # This is required for git describe --always to work for git-version.cpp.
# run: |
# git fetch --deepen=15000 --no-recurse-submodules --tags || exit 0

- name: Set Env Var(s)
run: |
echo "GIT_VERSION=$(git describe --always)" >> $GITHUB_ENV
- name: Create macOS git-version.cpp & Version.txt
run: |
echo "const char *PPSSPP_GIT_VERSION = \"${GIT_VERSION}\";" > git-version.cpp
echo "#define PPSSPP_GIT_VERSION_NO_UPDATE 1" >> git-version.cpp
# Create Version.txt file (should probably do this during building process)
mkdir build-ios
mkdir build-ios/PPSSPP.app
echo $(echo $GIT_VERSION | cut -c 2-) > build-ios/PPSSPP.app/Version.txt
# Testing values ...
echo "Content of [GITHUB_REF##*/] = ${GITHUB_REF##*/}"
echo $(echo $GIT_VERSION | cut -c 2-)
# Testing file location ...
find . -name "Version.txt"
- name: Setup ccache
uses: hendrikmuhs/ccache-action@main
with:
create-symlink: true

- name: Execute build
env:
CC: clang
CXX: clang++
run: |
export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH"
./b.sh --ios --${{ github.event.inputs.buildVariant }}
- name: Package build
run: |
# Testing file location ...
find . -name "Version.txt"
find . -name "*.app"
mkdir ppsspp
if [ -e build*/PPSSPP.app ]; then
mkdir ppsspp/Payload
cp -a build*/PPSSPP.app ppsspp/Payload
# GitHub Actions zipping kills symlinks and permissions.
cd ppsspp
zip -qry PPSSPP.ipa Payload
rm -rf Payload
cd -
fi
- name: Upload IPA
uses: actions/upload-artifact@v3
with:
name: iOS-${{ github.event.inputs.buildVariant }} build
path: ppsspp/

0 comments on commit c9e2697

Please sign in to comment.