mirror of
https://github.com/hrydgard/ppsspp.git
synced 2026-11-15 10:40:01 +01:00
Merge pull request #20489 from ANR2MERefork/ios_release
Create iOS artifact and release on CI
This commit is contained in:
2 files changed
+200
-9
No files matched your search
@@ -188,7 +188,7 @@ jobs:
|
||||
extra: ios
|
||||
cc: clang
|
||||
cxx: clang++
|
||||
args: ./b.sh --ios
|
||||
args: chmod +x b-ios.sh && ./b-ios.sh
|
||||
id: ios
|
||||
|
||||
runs-on: ${{ matrix.os }}
|
||||
@@ -224,8 +224,27 @@ jobs:
|
||||
sudo apt-get update -y -qq
|
||||
sudo apt-get install libsdl2-dev libgl1-mesa-dev libglu1-mesa-dev libsdl2-ttf-dev libfontconfig1-dev
|
||||
|
||||
- name: Create macOS git-version.cpp for tagged release
|
||||
if: github.ref_type == 'tag' && runner.os == 'macOS' && matrix.extra == 'test'
|
||||
- name: Install iOS dependencies
|
||||
if: matrix.id == 'ios'
|
||||
run: |
|
||||
brew install ldid dpkg pillow
|
||||
# Check Xcode version
|
||||
xcodebuild -version
|
||||
# List available Xcode versions
|
||||
ls /Applications | grep Xcode
|
||||
# Select a specific Xcode version. The recommended Xcode version is 9.4.1 according to https://github.com/Halo-Michael/ppsspp-builder
|
||||
#sudo xcode-select -s /Applications/Xcode_15.2.app/Contents/Developer
|
||||
|
||||
- name: Create iOS Version.txt file
|
||||
if: matrix.id == 'ios'
|
||||
run: |
|
||||
# Create Version.txt file (should probably do this during building process)
|
||||
mkdir -p build-ios/PPSSPP.app
|
||||
GIT_VERSION=$(git describe --always --tags)
|
||||
echo ${GIT_VERSION#v} > build-ios/PPSSPP.app/Version.txt
|
||||
|
||||
- name: Create macOS & iOS git-version.cpp for tagged release
|
||||
if: github.ref_type == 'tag' && (matrix.id == 'macos' || matrix.id == 'ios')
|
||||
run: |
|
||||
echo "const char *PPSSPP_GIT_VERSION = \"${GITHUB_REF_NAME}\";" > git-version.cpp
|
||||
echo "#define PPSSPP_GIT_VERSION_NO_UPDATE 1" >> git-version.cpp
|
||||
@@ -260,9 +279,9 @@ jobs:
|
||||
${{ matrix.args }}
|
||||
|
||||
- name: Package build
|
||||
if: matrix.extra == 'test'
|
||||
if: matrix.extra == 'test' || matrix.id == 'ios'
|
||||
run: |
|
||||
mkdir ppsspp
|
||||
mkdir -p ppsspp
|
||||
if [ -e build*/$BUILD_CONFIGURATION/PPSSPPSDL ]; then
|
||||
cp build*/$BUILD_CONFIGURATION/PPSSPPSDL ppsspp/
|
||||
elif [ -e build*/PPSSPPSDL.app ]; then
|
||||
@@ -272,6 +291,12 @@ jobs:
|
||||
zip -qry PPSSPPSDL.zip PPSSPPSDL.app
|
||||
rm -rf PPSSPPSDL.app
|
||||
popd
|
||||
elif [ -e build-ios/PPSSPP.app ]; then
|
||||
# Get the final files generated by b-ios.h script
|
||||
find build -name 'PPSSPP*.ipa' -exec cp -a '{}' ppsspp/ \;
|
||||
find build -name 'PPSSPP*.xcarchive' -exec cp -a '{}' ppsspp/ \;
|
||||
find build -name 'PPSSPP*.deb' -exec cp -a '{}' ppsspp/ \;
|
||||
find build -name 'org.ppsspp*.deb' -exec cp -a '{}' ppsspp/ \;
|
||||
elif [ -e build*/PPSSPPSDL ]; then
|
||||
cp build*/PPSSPPSDL ppsspp/
|
||||
cp -r assets ppsspp/assets
|
||||
@@ -294,16 +319,26 @@ jobs:
|
||||
name: ${{ matrix.os }} build
|
||||
path: ppsspp/
|
||||
|
||||
- name: Upload iOS build
|
||||
uses: actions/upload-artifact@v4
|
||||
if: matrix.id == 'ios'
|
||||
with:
|
||||
name: ${{ matrix.id }} build
|
||||
path: ppsspp/
|
||||
|
||||
- name: Create macOS release
|
||||
if: github.ref_type == 'tag' && runner.os == 'macOS' && matrix.extra == 'test'
|
||||
if: github.ref_type == 'tag' && matrix.id == 'macos'
|
||||
working-directory: ppsspp
|
||||
run: mv PPSSPPSDL.zip PPSSPPSDL-macOS-${GITHUB_REF_NAME}.zip
|
||||
|
||||
- name: Upload macOS release
|
||||
- name: Upload macOS & iOS release
|
||||
uses: softprops/action-gh-release@da05d552573ad5aba039eaac05058a918a7bf631 # v2.2.2
|
||||
if: github.ref_type == 'tag' && runner.os == 'macOS' && matrix.extra == 'test'
|
||||
if: github.ref_type == 'tag' && (matrix.id == 'macos' || matrix.id == 'ios')
|
||||
with:
|
||||
files: ppsspp/*.zip
|
||||
files: |
|
||||
ppsspp/*.zip
|
||||
ppsspp/*.ipa
|
||||
ppsspp/*.deb
|
||||
body: >
|
||||
PPSSPP is a cross-platform PSP emulator.
|
||||
Visit PPSSPP [official website](https://ppsspp.org)
|
||||
|
||||
Reference in new issue
Block a user