osb/.github/workflows/build_linux.yml

64 lines
1.9 KiB
YAML
Raw Normal View History

2024-02-18 12:55:01 +00:00
name: Ubuntu Linux
on:
push:
branches:
- "*"
tags:
- "*"
pull_request:
branches:
- "*"
jobs:
build:
name: OpenStarbound Linux x86_64
runs-on: ubuntu-latest
steps:
- name: Install Packages
run: |
sudo apt-get update
2024-03-08 17:06:27 +00:00
sudo apt-get install -y pkg-config ninja \
libxmu-dev libxi-dev libgl-dev libglu1-mesa-dev \ # a GL library wants these three
\ # lines below are for SDL2 compilation
pkg-config cmake ninja-build gnome-desktop-testing libasound2-dev libpulse-dev \
libaudio-dev libjack-dev libsndio-dev libusb-1.0-0-dev libx11-dev libxext-dev \
libxrandr-dev libxcursor-dev libxfixes-dev libxi-dev libxss-dev libwayland-dev \
libxkbcommon-dev libdrm-dev libgbm-dev libgl1-mesa-dev libgles2-mesa-dev \
libegl1-mesa-dev libdbus-1-dev libibus-1.0-dev libudev-dev fcitx-libs-dev \
libpipewire-0.3-dev libdecor-0-dev # remove this line if we move to an Ubuntu version < 22.04
- uses: actions/checkout@v4
with:
submodules: 'recursive'
2024-02-18 12:55:01 +00:00
2024-03-08 09:09:27 +00:00
- name: sccache
uses: hendrikmuhs/ccache-action@v1.2
with:
variant: sccache
key: ${{ github.job }}-${{ runner.os }}
max-size: 2500M
2024-02-18 12:55:01 +00:00
2024-03-08 09:09:27 +00:00
- name: vcpkg
uses: lukka/run-vcpkg@v11
id: runvcpkg
with:
vcpkgJsonGlob: '**/source/vcpkg.json'
vcpkgConfigurationJsonGlob: '**/source/vcpkg-configuration.json'
2024-02-18 12:55:01 +00:00
2024-03-08 09:09:27 +00:00
- name: Run CMake
uses: lukka/run-cmake@v10
with:
cmakeListsTxtPath: '${{ github.workspace }}/source/CMakeLists.txt'
configurePreset: 'linux-release'
buildPreset: 'linux-release'
testPreset: 'linux-release'
2024-02-18 12:55:01 +00:00
- name: Upload Artifacts
uses: actions/upload-artifact@v4
with:
name: OpenStarbound-Dev-Linux-x86_64
path: dist/*