mirror of
https://github.com/hedge-dev/UnleashedRecomp.git
synced 2025-10-30 07:11:05 +00:00
73 lines
No EOL
2 KiB
YAML
73 lines
No EOL
2 KiB
YAML
name: Build Project (Linux)
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
|
|
env:
|
|
LLVM_VERSION: 18
|
|
CMAKE_PRESET: linux-relwithdebinfo
|
|
|
|
jobs:
|
|
build:
|
|
name: Build Linux
|
|
runs-on: ubuntu-24.04
|
|
|
|
steps:
|
|
- name: Checkout Repository
|
|
uses: actions/checkout@v4
|
|
with:
|
|
submodules: recursive
|
|
token: ${{ secrets.ORG_TOKEN }}
|
|
|
|
- name: Checkout Private Repository
|
|
uses: actions/checkout@v4
|
|
with:
|
|
repository: ${{ secrets.ASSET_REPO }}
|
|
token: ${{ secrets.ASSET_REPO_TOKEN }}
|
|
path: ./private
|
|
|
|
- name: Setup ccache
|
|
uses: hendrikmuhs/ccache-action@v1.2
|
|
with:
|
|
key: ccache-${{ runner.os }}
|
|
|
|
- name: Cache vcpkg
|
|
uses: actions/cache@v4
|
|
with:
|
|
path: |
|
|
./thirdparty/vcpkg/downloads
|
|
./thirdparty/vcpkg/packages
|
|
key: vcpkg-${{ runner.os }}-${{ hashFiles('vcpkg.json') }}
|
|
restore-keys: |
|
|
vcpkg-${{ runner.os }}-
|
|
|
|
- name: Install Dependencies
|
|
run: |-
|
|
sudo apt update
|
|
sudo apt install -y ninja-build llvm-${{ env.LLVM_VERSION }}-dev libgtk-3-dev
|
|
|
|
- name: Cache ccache Directory
|
|
uses: actions/cache@v4
|
|
with:
|
|
path: /tmp/ccache
|
|
key: ccache-${{ runner.os }}
|
|
|
|
- name: Prepare Project
|
|
run: cp ./private/* ./UnleashedRecompLib/private
|
|
|
|
- name: Configure Project
|
|
env:
|
|
CCACHE_DIR: /tmp/ccache
|
|
run: cmake . --preset ${{ env.CMAKE_PRESET }} -DSDL2MIXER_VORBIS=VORBISFILE -DCMAKE_CXX_COMPILER_LAUNCHER=ccache -DCMAKE_C_COMPILER_LAUNCHER=ccache
|
|
|
|
- name: Build Project
|
|
env:
|
|
CCACHE_DIR: /tmp/ccache
|
|
run: cmake --build ./out/build/${{ env.CMAKE_PRESET }} --target UnleashedRecomp
|
|
|
|
- name: Upload Artifact
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: UnleashedRecomp-Linux
|
|
path: ./out/build/${{ env.CMAKE_PRESET }}/UnleashedRecomp/UnleashedRecomp
|
|
|