80 lines
2.2 KiB
YAML
80 lines
2.2 KiB
YAML
trigger:
|
|
- main
|
|
|
|
strategy:
|
|
matrix:
|
|
Linux:
|
|
imageName: 'ubuntu-latest'
|
|
enableLibavif: 'OFF'
|
|
enableGLUT: 'ON'
|
|
Mac:
|
|
imageName: 'macos-latest'
|
|
enableLibavif: 'ON'
|
|
enableGLUT: 'OFF'
|
|
|
|
pool:
|
|
vmImage: $(imageName)
|
|
|
|
steps:
|
|
- checkout: self
|
|
submodules: true
|
|
|
|
- bash: echo "##vso[task.setvariable variable=shellopts]errexit"
|
|
displayName: "Force exit on error (bash)"
|
|
|
|
- script: |
|
|
sudo apt update
|
|
sudo apt install -y libeigen3-dev \
|
|
libepoxy-dev \
|
|
libavcodec-dev \
|
|
libavformat-dev \
|
|
libavutil-dev \
|
|
libswscale-dev \
|
|
libjpeg-dev \
|
|
libpng-dev \
|
|
libglu1-mesa-dev \
|
|
qtbase5-dev \
|
|
qtbase5-dev-tools \
|
|
libqt5opengl5-dev \
|
|
libgtk2.0-dev \
|
|
libgtkglext1-dev \
|
|
libfreetype6-dev \
|
|
libsdl2-dev \
|
|
libluajit-5.1-dev \
|
|
freeglut3-dev \
|
|
libfmt-dev
|
|
displayName: 'Install Linux dependencies'
|
|
condition: eq( variables['Agent.OS'], 'Linux' )
|
|
|
|
- script: |
|
|
brew install pkg-config \
|
|
eigen \
|
|
ffmpeg \
|
|
gtk+ \
|
|
gtkglext \
|
|
cspice \
|
|
fmt \
|
|
jpeg \
|
|
gettext \
|
|
libpng \
|
|
lua \
|
|
qt5 \
|
|
freetype \
|
|
libepoxy \
|
|
sdl2 \
|
|
freeglut \
|
|
libavif
|
|
brew link gettext --force
|
|
brew link lua --force
|
|
displayName: 'Install macOS dependencies'
|
|
condition: eq( variables['Agent.OS'], 'Darwin' )
|
|
|
|
- script: |
|
|
mkdir build
|
|
cd build
|
|
cmake -DENABLE_SPICE=ON -DENABLE_TOOLS=ON -DENABLE_TESTS=ON -DENABLE_SDL=ON -DENABLE_GTK=ON -DENABLE_GLUT=$(enableGLUT) -DENABLE_FFMPEG=ON -DENABLE_LIBAVIF=$(enableLibavif) ..
|
|
make -j $(nproc || echo 4)
|
|
CTEST_OUTPUT_ON_FAILURE=1 ctest
|
|
workingDirectory: "$(system.defaultworkingdirectory)"
|
|
displayName: "Build and test"
|