diff options
author | Nicky Dasmijn <nicky.dasmijn@posteo.nl> | 2024-04-08 22:39:20 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-04-08 23:39:20 +0300 |
commit | 6b4b33cc129e9482342c9280ae79c9c5ce427ef1 (patch) | |
tree | 24ba69020d29755529cf043ffaf7b5e1b38ae268 /.github/workflows/build.yaml | |
parent | bbd6dfc21a1a6c07824fc81e0659a2c200581d3b (diff) |
Linux GHA builds (#1147)
* Linux GHA builds
Add Ubuntu 22.04 runner and Linux dependencies
Do not even try to touch ReleaseFS for Linux yet (this needs KDU, Havok, FMOD)
* Lets play a game of 'guess the havok source url'
* Move to linux-large runner.
* ReleaseOS used OpenAL, not fmod studio (which otherwise is the default)
* - Correction for Linux build dir
- HAVOK / CrashReporting wrestling. HAVOK is always turned on, even for OS builds Turn this off for Linux-ReleaseOS
Same with crashreporting, we need it off for now
* Add missing brace
* When doing a GHA build pack right into RUNNER_TEMP and then signal the created archive as our "viewer_app"
* Upload Linux-ReleaseOS after build
* - Need to use os.path.join and not hyst join
- set_github_output_path can be called unconditionally
* Remove Linux GHA build example.
Diffstat (limited to '.github/workflows/build.yaml')
-rw-r--r-- | .github/workflows/build.yaml | 24 |
1 files changed, 20 insertions, 4 deletions
diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index c7a758bd0f..3ac470b5ed 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -11,7 +11,7 @@ jobs: build: strategy: matrix: - runner: [windows-large, macos-12-xl] + runner: [windows-large, macos-12-xl, linux-large] configuration: [Release, ReleaseOS] python-version: ["3.11"] include: @@ -20,6 +20,8 @@ jobs: exclude: - runner: macos-12-xl configuration: ReleaseOS + - runner: linux-large + configuration: Release runs-on: ${{ matrix.runner }} outputs: viewer_channel: ${{ steps.build.outputs.viewer_channel }} @@ -95,6 +97,10 @@ jobs: ${{ runner.os }}-64-${{ matrix.configuration }}- ${{ runner.os }}-64- + - name: Install Linux dependencies + if: runner.os == 'linux' + run: sudo apt update && sudo apt install -y libfltk1.3-dev libunwind-dev libgl1-mesa-dev libglu1-mesa-dev libx11-dev libxrandr-dev libxinerama-dev libxcursor-dev libxi-dev libxext-dev libxrender-dev libxfixes-dev libxxf86vm-dev libxss-dev libdbus-1-dev libudev-dev libssl-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libfreetype6-dev ninja-build libxft-dev + - name: Install windows dependencies if: runner.os == 'Windows' run: choco install nsis-unicode @@ -230,6 +236,16 @@ jobs: path: | ${{ steps.build.outputs.viewer_app }} + # ND: We only have ReleaseOS builds for Linux so far, thus upload what we have + # This steps can be deleted once "Release" is in place and makes "ReleaseOS" obsolete (for upload) + - name: Upload Linux ReleaseOS archive + if: matrix.configuration == 'ReleaseOS' && steps.build.outputs.viewer_app && matrix.os == 'linux' + uses: actions/upload-artifact@v3 + with: + name: "${{ steps.build.outputs.artifact }}-app" + path: | + ${{ steps.build.outputs.viewer_app }} + # The other upload of nontrivial size is the symbol file. Use a distinct # artifact for that too. - name: Upload symbol file @@ -372,7 +388,7 @@ jobs: with: name: Windows-metadata - - name: Rename windows metadata + - name: Rename windows metadata run: | mv autobuild-package.xml Windows-autobuild-package.xml mv newview/viewer_version.txt Windows-viewer_version.txt @@ -381,7 +397,7 @@ jobs: with: name: macOS-metadata - - name: Rename macOS metadata + - name: Rename macOS metadata run: | mv autobuild-package.xml macOS-autobuild-package.xml mv newview/viewer_version.txt macOS-viewer_version.txt @@ -407,7 +423,7 @@ jobs: append_body: true fail_on_unmatched_files: true files: | - *.dmg + *.dmg *.exe *-autobuild-package.xml *-viewer_version.txt |