mirror of
https://github.com/gnif/LookingGlass.git
synced 2024-11-10 00:28:20 +00:00
952f50eb8c
SDL was made optional, and defaulted to off, in c34fe10
. However, we
should still make sure it continues building.
142 lines
3.4 KiB
YAML
142 lines
3.4 KiB
YAML
name: build
|
|
on: [push, pull_request]
|
|
jobs:
|
|
client:
|
|
runs-on: ubuntu-20.04
|
|
strategy:
|
|
matrix:
|
|
cc: [gcc, clang]
|
|
build_type:
|
|
- Release
|
|
- Debug
|
|
steps:
|
|
- uses: actions/checkout@v1
|
|
with:
|
|
submodules: recursive
|
|
- name: Update apt
|
|
run: |
|
|
sudo apt-get update
|
|
- name: Install client dependencies
|
|
run: |
|
|
sudo apt-get install \
|
|
binutils-dev \
|
|
libsdl2-dev libsdl2-ttf-dev \
|
|
libspice-protocol-dev nettle-dev \
|
|
libx11-dev libxss-dev libxi-dev \
|
|
wayland-protocols
|
|
- name: Configure client
|
|
env:
|
|
CC: /usr/bin/${{ matrix.cc }}
|
|
run: |
|
|
mkdir client/build
|
|
cd client/build
|
|
cmake -DCMAKE_BUILD_TYPE={{ matrix.build_type }} -DENABLE_SDL=ON ..
|
|
- name: Build client
|
|
run: |
|
|
cd client/build
|
|
make -j$(nproc)
|
|
|
|
module:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v1
|
|
with:
|
|
submodules: recursive
|
|
- name: Build kernel module
|
|
run: |
|
|
cd module
|
|
make
|
|
|
|
host-linux:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v1
|
|
with:
|
|
submodules: recursive
|
|
- name: Update apt
|
|
run: |
|
|
sudo apt-get update
|
|
- name: Install Linux host dependencies
|
|
run: |
|
|
sudo apt-get install binutils-dev libgl1-mesa-dev
|
|
- name: Configure Linux host
|
|
run: |
|
|
mkdir host/build
|
|
cd host/build
|
|
cmake ..
|
|
- name: Build Linux host
|
|
run: |
|
|
cd host/build
|
|
make -j$(nproc)
|
|
|
|
host-windows-cross:
|
|
runs-on: ubuntu-20.04
|
|
steps:
|
|
- uses: actions/checkout@v1
|
|
with:
|
|
submodules: recursive
|
|
- name: Update apt
|
|
run: |
|
|
sudo apt-get update
|
|
- name: Install Windows host cross-compile dependencies
|
|
run: |
|
|
sudo apt-get install gcc-mingw-w64-x86-64 g++-mingw-w64-x86-64 nsis
|
|
- name: Configure Windows host for cross-compile
|
|
run: |
|
|
mkdir host/build
|
|
cd host/build
|
|
cmake -DCMAKE_TOOLCHAIN_FILE=../toolchain-mingw64.cmake ..
|
|
- name: Cross-compile Windows host
|
|
run: |
|
|
cd host/build
|
|
make -j$(nproc)
|
|
- name: Build Windows host installer
|
|
run: |
|
|
cd host/build
|
|
makensis platform/Windows/installer.nsi
|
|
|
|
host-windows-native:
|
|
runs-on: windows-latest
|
|
steps:
|
|
- uses: actions/checkout@v1
|
|
with:
|
|
submodules: recursive
|
|
- name: Configure Windows host for native MinGW-w64
|
|
run: |
|
|
mkdir host\build
|
|
cd host\build
|
|
cmake -G "MinGW Makefiles" ..
|
|
- name: Build Windows host on native MinGW-w64
|
|
run: |
|
|
cd host\build
|
|
mingw32-make "-j$([Environment]::ProcessorCount)"
|
|
- name: Build Windows host installer
|
|
run: |
|
|
cd host\build
|
|
makensis platform\Windows\installer.nsi
|
|
|
|
obs:
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
cc: [gcc, clang]
|
|
steps:
|
|
- uses: actions/checkout@v1
|
|
with:
|
|
submodules: recursive
|
|
- name: Update apt
|
|
run: |
|
|
sudo apt-get update
|
|
- name: Install obs plugin dependencies
|
|
run: |
|
|
sudo apt-get install binutils-dev libobs-dev libgl1-mesa-dev
|
|
- name: Configure obs plugin
|
|
run: |
|
|
mkdir obs/build
|
|
cd obs/build
|
|
CC=/usr/bin/${{ matrix.cc }} cmake ..
|
|
- name: Build obs plugin
|
|
run: |
|
|
cd obs/build
|
|
make -j$(nproc)
|