Skip to content

sprunk'd

sprunk'd #460

Workflow file for this run

name: Build RSDKv3
on:
push:
branches:
- master
- continuous-delivery
jobs:
v3-windows:
runs-on: windows-2022
steps:
- name: Checkout
uses: actions/checkout@v1
with:
submodules: recursive
- name: Setup MSBuild
uses: microsoft/setup-msbuild@v1
- name: Download libogg, libvorbis, and libtheora for easier includes
run: |
Invoke-WebRequest -Uri "https://ftp.osuosl.org/pub/xiph/releases/ogg/libogg-1.3.5.zip" -OutFile "libogg.zip"
Expand-Archive -Path libogg.zip -DestinationPath ./dependencies/windows/
Rename-Item ./dependencies/windows/libogg-1.3.5 libogg
Invoke-WebRequest -Uri "https://ftp.osuosl.org/pub/xiph/releases/vorbis/libvorbis-1.3.7.zip" -OutFile "libvorbis.zip"
Expand-Archive -Path libvorbis.zip -DestinationPath ./dependencies/windows/
Rename-Item ./dependencies/windows/libvorbis-1.3.7 libvorbis
Invoke-WebRequest -Uri "https://ftp.osuosl.org/pub/xiph/releases/theora/libtheora-1.1.1.zip" -OutFile "libtheora.zip"
Expand-Archive -Path libtheora.zip -DestinationPath ./dependencies/windows/
Rename-Item ./dependencies/windows/libtheora-1.1.1 libtheora
- name: Download GLEW
run: |
Invoke-WebRequest -Uri "https://github.com/nigels-com/glew/releases/download/glew-2.2.0/glew-2.2.0-win32.zip" -OutFile "GLEW.zip"
Expand-Archive -Path GLEW.zip -DestinationPath ./dependencies/windows/
Rename-Item ./dependencies/windows/glew-2.2.0 glew
- name: Download SDL2
run: |
Invoke-WebRequest -Uri "https://libsdl.org/release/SDL2-devel-2.0.14-VC.zip" -OutFile "SDL2.zip"
Expand-Archive -Path SDL2.zip -DestinationPath ./dependencies/windows/
Rename-Item ./dependencies/windows/SDL2-2.0.14 SDL2
- name: Run vcpkg
run: |
vcpkg install libogg:x86-windows-static libvorbis:x86-windows-static libtheora:x86-windows-static
vcpkg integrate install
- name: Build RSDKv3
run: |
msbuild RSDKv3.sln /p:Configuration=Release /p:Platform=x86 /p:ForceImportBeforeCppTargets="$env:GITHUB_WORKSPACE/props/winactions.props"
- name: Move artifacts
run: |
mkdir artifacts
move ./build/Win32/Release/*.dll ./artifacts
move ./build/Win32/Release/*.exe ./artifacts
- name: Upload artifacts
uses: actions/[email protected]
with:
name: v3-windows
path: artifacts
v3-windows-x64:
runs-on: windows-2022
steps:
- name: Checkout
uses: actions/checkout@v1
with:
submodules: recursive
- name: Setup MSBuild
uses: microsoft/setup-msbuild@v1
- name: Download libogg, libvorbis, and libtheora for easier includes
run: |
Invoke-WebRequest -Uri "https://ftp.osuosl.org/pub/xiph/releases/ogg/libogg-1.3.5.zip" -OutFile "libogg.zip"
Expand-Archive -Path libogg.zip -DestinationPath ./dependencies/windows/
Rename-Item ./dependencies/windows/libogg-1.3.5 libogg
Invoke-WebRequest -Uri "https://ftp.osuosl.org/pub/xiph/releases/vorbis/libvorbis-1.3.7.zip" -OutFile "libvorbis.zip"
Expand-Archive -Path libvorbis.zip -DestinationPath ./dependencies/windows/
Rename-Item ./dependencies/windows/libvorbis-1.3.7 libvorbis
Invoke-WebRequest -Uri "https://ftp.osuosl.org/pub/xiph/releases/theora/libtheora-1.1.1.zip" -OutFile "libtheora.zip"
Expand-Archive -Path libtheora.zip -DestinationPath ./dependencies/windows/
Rename-Item ./dependencies/windows/libtheora-1.1.1 libtheora
- name: Download GLEW
run: |
Invoke-WebRequest -Uri "https://github.com/nigels-com/glew/releases/download/glew-2.2.0/glew-2.2.0-win32.zip" -OutFile "GLEW.zip"
Expand-Archive -Path GLEW.zip -DestinationPath ./dependencies/windows/
Rename-Item ./dependencies/windows/glew-2.2.0 glew
- name: Download SDL2
run: |
Invoke-WebRequest -Uri "https://libsdl.org/release/SDL2-devel-2.0.14-VC.zip" -OutFile "SDL2.zip"
Expand-Archive -Path SDL2.zip -DestinationPath ./dependencies/windows/
Rename-Item ./dependencies/windows/SDL2-2.0.14 SDL2
- name: Run vcpkg
run: |
vcpkg install libogg:x64-windows-static libvorbis:x64-windows-static libtheora:x64-windows-static
vcpkg integrate install
- name: Build RSDKv3
run: |
msbuild RSDKv3.sln /p:Configuration=Release /p:Platform=x64 /p:ForceImportBeforeCppTargets="$env:GITHUB_WORKSPACE/props/winactions_x64.props"
- name: Move artifacts
run: |
mkdir artifacts
move ./build/x64/Release/*.dll ./artifacts
move ./build/x64/Release/*.exe ./artifacts
- name: Upload artifacts
uses: actions/[email protected]
with:
name: v3-windows-x64
path: artifacts
v3-android:
runs-on: windows-latest
steps:
- name: Checkout repository Android
uses: actions/checkout@v2
with:
submodules: recursive
- name: Setup MSBuild
uses: microsoft/setup-msbuild@v1
- name: Download libogg, libvorbis, and libtheora for easier includes
run: |
Invoke-WebRequest -Uri "https://ftp.osuosl.org/pub/xiph/releases/vorbis/libvorbis-1.3.7.zip" -OutFile "libvorbis.zip"
Expand-Archive -Path libvorbis.zip -DestinationPath ./dependencies/android/
Rename-Item ./dependencies/android/libvorbis-1.3.7 libvorbis
Invoke-WebRequest -Uri "https://ftp.osuosl.org/pub/xiph/releases/ogg/libogg-1.3.5.zip" -OutFile "libogg.zip"
Expand-Archive -Path libogg.zip -DestinationPath ./dependencies/android/app/jni/src/dependencies/android/
Rename-Item ./dependencies/android/app/jni/src/dependencies/android/libogg-1.3.5 libogg
Invoke-WebRequest -Uri "https://ftp.osuosl.org/pub/xiph/releases/theora/libtheora-1.1.1.zip" -OutFile "libtheora.zip"
Expand-Archive -Path libtheora.zip -DestinationPath ./dependencies/android
Rename-Item ./dependencies/android/libtheora-1.1.1 libtheora
- name: Download GLEW
run: |
Invoke-WebRequest -Uri "https://github.com/nigels-com/glew/releases/download/glew-2.2.0/glew-2.2.0-win32.zip" -OutFile "GLEW.zip"
Expand-Archive -Path GLEW.zip -DestinationPath ./dependencies/android/
Rename-Item ./dependencies/android/glew-2.2.0 glew
- name: Download SDL2
run: |
Invoke-WebRequest -Uri "https://libsdl.org/release/SDL2-2.0.16.zip" -OutFile "SDL2.zip"
Expand-Archive -Path SDL2.zip -DestinationPath ./dependencies/android/
Rename-Item ./dependencies/android/SDL2-2.0.16 SDL
- name: Move & Copy stuff
run: |
Copy-Item -Path ./dependencies/all/theoraplay -Destination ./dependencies/android/app/jni/src/dependencies/android/
Copy-Item -Path ./dependencies/android/app/jni/src/dependencies/android\* -Destination ./dependencies/
Copy-Item -Path ./dependencies/android/app/jni/src/dependencies/android/libogg/ -Destination ./dependencies/android/ -recurse
Copy-Item -Path ./dependencies/android/config_types.h -Destination ./dependencies/android/libogg/include/ogg/
- name: Set up Java
uses: actions/setup-java@v2
with:
distribution: "zulu"
java-version: 11
- name: Build RSDKv3 Android
working-directory: ./android
run: |
./gradlew.bat assembleDebug --no-daemon -PABIFILTERS="armeabi-v7a;arm64-v8a"
- name: Upload artifact Android
uses: actions/upload-artifact@v2
with:
name: v3-android
path: ./android/app/build/outputs/apk
v3-linux:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v2
with:
submodules: recursive
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install libtheora-dev libogg-dev libvorbis-dev libsdl2-dev libglew-dev
ls ./dependencies/all
- name: Build RSDKv3
run: make
- name: Upload artifact
uses: actions/upload-artifact@v2
with:
name: v3-linux
path: bin