Skip to content

Build release

Build release #72

Workflow file for this run

name: build-release
run-name: Build release
on: [push]
jobs:
build-linux-windows-android:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- uses: nttld/setup-ndk@v1
id: setup-ndk
with:
ndk-version: r23c
add-to-path: true
link-to-sdk: true
- uses: actions/setup-python@v5
- name: install-deps
run: |
PIP_BREAK_SYSTEM_PACKAGES=1 python -m pip install scons==4.4.0
scons --version
sudo apt-get install mingw-w64
sudo update-alternatives --set x86_64-w64-mingw32-gcc /usr/bin/x86_64-w64-mingw32-gcc-posix
sudo update-alternatives --set x86_64-w64-mingw32-g++ /usr/bin/x86_64-w64-mingw32-g++-posix
curl -LO https://github.com/ValveSoftware/steam-audio/releases/download/v4.8.0/steamaudio_4.8.0.zip
unzip steamaudio_4.8.0.zip 'steamaudio/lib/**/*' -d src/lib
cp src/lib/steamaudio/lib/linux-x64/* project/addons/godot-steam-audio/bin/
cp src/lib/steamaudio/lib/windows-x64/* project/addons/godot-steam-audio/bin/
cp src/lib/steamaudio/lib/android-armv8/* project/addons/godot-steam-audio/bin/android/arm64
cp src/lib/steamaudio/lib/android-x64/* project/addons/godot-steam-audio/bin/android/x86_64
- name: build
run: |
scons platform=android arch=arm64 target=template_release && \
scons platform=android arch=x86_64 target=template_release && \
scons platform=android arch=arm64 target=template_debug && \
scons platform=android arch=x86_64 target=template_debug && \
scons platform=linux target=template_debug && \
scons platform=windows target=template_debug && \
scons platform=linux target=template_release && \
scons platform=windows target=template_release
- name: Upload bin artifacts
uses: actions/upload-artifact@v4
with:
name: bin-linux-windows-android
path: project/addons/godot-steam-audio/bin/
build-macos-ios:
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- uses: actions/setup-python@v5
- name: install-deps
run: |
PIP_BREAK_SYSTEM_PACKAGES=1 python -m pip install scons==4.4.0
scons --version
curl -LO https://github.com/ValveSoftware/steam-audio/releases/download/v4.8.0/steamaudio_4.8.0.zip
unzip steamaudio_4.8.0.zip 'steamaudio/lib/**/*' -d src/lib
cp -r src/lib/steamaudio/lib/osx/* project/addons/godot-steam-audio/bin/
cp src/lib/steamaudio/lib/ios/* project/addons/godot-steam-audio/bin/ios/
- name: build-ios-deps
run: make ios-deps
- name: build
run: |
scons platform=macos target=template_debug && \
scons platform=macos target=template_release && \
scons platform=ios arch=arm64 target=template_debug && \
scons platform=ios arch=arm64 target=template_release
cp src/lib/godot-cpp/bin/libgodot-cpp.ios.template_debug.arm64.a project/addons/godot-steam-audio/bin/ios/
cp src/lib/godot-cpp/bin/libgodot-cpp.ios.template_release.arm64.a project/addons/godot-steam-audio/bin/ios/
- name: Upload bin artifacts
uses: actions/upload-artifact@v4
with:
name: bin-macos-ios
path: project/addons/godot-steam-audio/bin/
package:
needs: [build-linux-windows-android, build-macos-ios]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set short git commit SHA
run: |
echo "COMMIT_SHORT_SHA=$(git rev-parse --short ${{ github.sha }})" >> $GITHUB_ENV
- name: Download all artifacts
uses: actions/download-artifact@v4
with:
path: artifacts
- name: Package
run: |
cp -r artifacts/bin-linux-windows-android/* project/addons/godot-steam-audio/bin/
cp -r artifacts/bin-macos-ios/* project/addons/godot-steam-audio/bin/
rm -f project/addons/godot-steam-audio/bin/libphonon.so.dbg
mkdir godot-steam-audio
cp -r project/addons godot-steam-audio/
mkdir godot-steam-audio-demo
cp -r project/* godot-steam-audio-demo/
- uses: actions/upload-artifact@v4
with:
name: godot-steam-audio-${{ env.COMMIT_SHORT_SHA }}
path: godot-steam-audio/
- uses: actions/upload-artifact@v4
with:
name: godot-steam-audio-demo-${{ env.COMMIT_SHORT_SHA }}
path: godot-steam-audio-demo/