Building GDE GoZen - Linux full #5
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: Linux full | |
run-name: Building GDE GoZen - Linux full | |
on: | |
workflow_dispatch: | |
inputs: | |
artifact_addon: | |
description: 'Get artifacts' | |
required: true | |
default: false | |
type: boolean | |
artifact_test_room: | |
description: 'Get test_room' | |
required: true | |
default: false | |
type: boolean | |
artifact_addon_gpl: | |
description: 'Get artifacts' | |
required: true | |
default: false | |
type: boolean | |
artifact_test_room_gpl: | |
description: 'Get test_room' | |
required: true | |
default: false | |
type: boolean | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
container: | |
image: archlinux:latest | |
steps: | |
- name: Installing dependencies | |
run: pacman -Syu --noconfirm git bash yasm python python-pip scons gcc diffutils make wget unzip tar ffmpeg | |
- name: Checkout submodules | |
uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- name: Restore cached linux_full_debug | |
id: cache-linux-full-debug-restore | |
uses: actions/cache/restore@v4 | |
with: | |
path: .scons-cache/ | |
key: linux_full_debug_addon | |
- name: Build Linux full debug | |
run: scons -j4 target=template_debug platform=linux arch=x86_64 use_system=no dev_build=yes | |
- name: Save cache linux_full_debug | |
id: cache-linux-full-debug-save | |
uses: actions/cache/save@v4 | |
with: | |
path: .scons-cache/ | |
key: ${{ steps.cache-linux-full-debug-restore.outputs.cache-primary-key }} | |
- name: Restore cached linux_full_release | |
id: cache-linux-full-release-restore | |
uses: actions/cache/restore@v4 | |
with: | |
path: .scons-cache/ | |
key: linux_full_release_addon | |
- name: Build Linux full release | |
run: scons -j4 target=template_release platform=linux arch=x86_64 use_system=no recompile_ffmpeg=no | |
- name: Save cache linux_full_release | |
id: cache-linux-full-release-save | |
uses: actions/cache/save@v4 | |
with: | |
path: .scons-cache/ | |
key: ${{ steps.cache-linux-full-release-restore.outputs.cache-primary-key }} | |
- name: Copying libs | |
run: | | |
cp -r bin/* test_room/addons/gde_gozen/bin/ | |
cp LICENSE test_room/addons/gde_gozen/ | |
- name: Uploading addon build | |
if: ${{ github.event.inputs.artifact_addon == 'true' }} | |
uses: actions/upload-artifact@v4 | |
with: | |
name: Addon_GDE_GoZen_Linux_Full | |
path: test_room/addons/ | |
retention-days: 1 | |
- name: Uploading test room build | |
if: ${{ github.event.inputs.artifact_test_room == 'true' }} | |
uses: actions/upload-artifact@v4 | |
with: | |
name: Test_room_GDE_GoZen_Linux_Full | |
path: test_room/ | |
retention-days: 1 | |
build-gpl: | |
needs: build | |
runs-on: ubuntu-latest | |
container: | |
image: archlinux:latest | |
steps: | |
- name: Installing dependencies | |
run: pacman -Syu --noconfirm git bash yasm python python-pip scons gcc diffutils make wget unzip tar ffmpeg aom nvidia-utils opus pulseaudio opencl-headers opencl-clhpp libtheora libvpx libvpl libass dav1d libdrm lame libvorbis rav1e svt-av1 x264 x265 libxml2 xvidcore libsoxr vulkan-headers vulkan-validation-layers libopenmpt | |
- name: Checkout submodules | |
uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- name: Restore cached linux_full_debug_gpl | |
id: cache-linux-full-debug-gpl-restore | |
uses: actions/cache/restore@v4 | |
with: | |
path: .scons-cache/ | |
key: linux_full_debug_gpl_addon | |
- name: Build Linux full debug gpl | |
run: scons -j4 target=template_debug platform=linux arch=x86_64 use_system=no dev_build=yes enable_gpl=yes | |
- name: Save cache linux_full_debug_gpl | |
id: cache-linux-full-debug-gpl-save | |
uses: actions/cache/save@v4 | |
with: | |
path: .scons-cache/ | |
key: ${{ steps.cache-linux-full-debug-gpl-restore.outputs.cache-primary-key }} | |
- name: Restore cached linux_full_release_gpl | |
id: cache-linux-full-release-gpl-restore | |
uses: actions/cache/restore@v4 | |
with: | |
path: .scons-cache/ | |
key: linux_full_release_gpl_addon | |
- name: Build Linux full release gpl | |
run: scons -j4 target=template_release platform=linux arch=x86_64 use_system=no recompile_ffmpeg=no enable_gpl=yes | |
- name: Save cache linux_full_release_gpl | |
id: cache-linux-full-release-gpl-save | |
uses: actions/cache/save@v4 | |
with: | |
path: .scons-cache/ | |
key: ${{ steps.cache-linux-full-release-gpl-restore.outputs.cache-primary-key }} | |
- name: Copying libs | |
run: | | |
cp -r bin/* test_room/addons/gde_gozen/bin/ | |
cp LICENSE test_room/addons/gde_gozen/ | |
- name: Uploading addon build | |
if: ${{ github.event.inputs.artifact_addon_gpl == 'true' }} | |
uses: actions/upload-artifact@v4 | |
with: | |
name: Addon_GDE_GoZen_Linux_Full_GPL | |
path: test_room/addons/ | |
retention-days: 1 | |
- name: Uploading test room build | |
if: ${{ github.event.inputs.artifact_test_room_gpl == 'true' }} | |
uses: actions/upload-artifact@v4 | |
with: | |
name: Test_room_GDE_GoZen_Linux_Full_GPL | |
path: test_room/ | |
retention-days: 1 |