You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
137 lines
4.8 KiB
137 lines
4.8 KiB
# Starter pipeline |
|
# Start with a minimal pipeline that you can customize to build and deploy your code. |
|
# Add steps that build, run tests, deploy, and more: |
|
# https://aka.ms/yaml |
|
|
|
trigger: |
|
- master |
|
|
|
stages: |
|
#- stage: 'Build_Test_Stage' |
|
# jobs: |
|
# - job: 'Build_Test' |
|
# pool: |
|
# vmImage: 'ubuntu-16.04' |
|
# displayName: 'Test Xournal++ on Linux' |
|
# steps: |
|
# - bash: | |
|
# sudo apt-get update |
|
# sudo apt-get install -y cmake libcppunit-dev libgtk-3-dev libpoppler-glib-dev portaudio19-dev libsndfile-dev liblua5.3-dev libzip-dev |
|
# displayName: 'Install dependencies' |
|
# - bash: | |
|
# mkdir build |
|
# displayName: 'Create build directory' |
|
# - bash: | |
|
# cmake .. -DCMAKE_DEBUG_INCLUDES_LDFLAGS=ON -DENABLE_CPPUNIT=ON -DDEBUG_COMPILE=ON |
|
# make -j `grep processor /proc/cpuinfo | tail -c 2` |
|
# workingDirectory: ./build |
|
# displayName: 'Build Xournal++' |
|
# - bash: | |
|
# ctest |
|
# workingDirectory: ./build |
|
# displayName: 'Run tests' |
|
|
|
- stage: Release |
|
jobs: |
|
# - job: Linux |
|
# pool: |
|
# vmImage: 'ubuntu-16.04' |
|
# displayName: 'Build for Linux' |
|
# steps: |
|
# - bash: | |
|
# sudo apt-get update |
|
# sudo apt-get install -y cmake libcppunit-dev libgtk-3-dev libpoppler-glib-dev portaudio19-dev libsndfile-dev liblua5.3-dev libzip-dev |
|
# displayName: 'Install dependencies' |
|
# - bash: | |
|
# mkdir build |
|
# displayName: 'Create build directory' |
|
# - bash: | |
|
# cmake .. |
|
# make |
|
# workingDirectory: ./build |
|
# displayName: 'Build Xournal++' |
|
# - task: PublishBuildArtifacts@1 |
|
# inputs: |
|
# PathtoPublish: './build' |
|
# ArtifactName: 'release_linux' |
|
# publishLocation: 'Container' |
|
# displayName: 'Publish Linux Build' |
|
|
|
- job: Windows |
|
pool: |
|
vmImage: 'vs2017-win2016' |
|
displayName: 'Build for Windows' |
|
steps: |
|
# - script: | |
|
# choco install msys2 --params="/InstallDir:%CD:~0,2%\msys64 /NoUpdate /NoPath" |
|
# displayName: 'Install MSYS2' |
|
- script: | |
|
git clone https://github.com/msys2/msys2-ci-base.git %CD:~0,2%\msys64 |
|
%CD:~0,2%\msys64\usr\bin\rm -rf %CD:~0,2%\msys64\.git |
|
displayName: 'Install MSYS2' |
|
- script: | |
|
set PATH=%CD:~0,2%\msys64\usr\bin;%CD:~0,2%\msys64\mingw64\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem |
|
%CD:~0,2%\msys64\usr\bin\pacman --noconfirm -Syuu |
|
%CD:~0,2%\msys64\usr\bin\pacman --noconfirm -Syuu |
|
%CD:~0,2%\msys64\usr\bin\pacman --noconfirm -S mingw-w64-x86_64-cmake make mingw-w64-x86_64-toolchain |
|
%CD:~0,2%\msys64\usr\bin\pacman --noconfirm --needed -S base-devel mingw-w64-x86_64-toolchain mingw-w64-x86_64-cmake |
|
%CD:~0,2%\msys64\usr\bin\pacman --noconfirm -S mingw-w64-x86_64-poppler mingw-w64-x86_64-gtk3 mingw-w64-x86_64-libsndfile mingw-w64-x86_64-libzip |
|
%CD:~0,2%\msys64\usr\bin\pacman --noconfirm -Scc |
|
env: |
|
MSYS2_ARCH: x86_64 |
|
MSYSTEM: MINGW64 |
|
CHERE_INVOKING: yes |
|
displayName: 'Install dependencies on Windows' |
|
- script: | |
|
set PATH=%PATH%;%CD:~0,2%\msys64\usr\bin;%CD:~0,2%\msys64\mingw64\bin" |
|
%CD:~0,2%\msys64\usr\bin\bash -lc "./build-portaudio.sh" |
|
workingDirectory: ./windows-setup |
|
env: |
|
MSYS2_ARCH: x86_64 |
|
MSYSTEM: MINGW64 |
|
CHERE_INVOKING: yes |
|
displayName: 'Build Portaudio' |
|
- script: | |
|
set PATH=%PATH%;%CD:~0,2%\msys64\usr\bin;%CD:~0,2%\msys64\mingw64\bin" |
|
%CD:~0,2%\msys64\usr\bin\bash -lc "echo $PWD" |
|
%CD:~0,2%\msys64\usr\bin\bash -lc "mkdir build" |
|
env: |
|
MSYS2_ARCH: x86_64 |
|
MSYSTEM: MINGW64 |
|
CHERE_INVOKING: yes |
|
displayName: 'Create build directory' |
|
- script: | |
|
set PATH=%PATH%;%CD:~0,2%\msys64\usr\bin;%CD:~0,2%\msys64\mingw64\bin" |
|
%CD:~0,2%\msys64\usr\bin\bash -lc "echo $PWD" |
|
%CD:~0,2%\msys64\usr\bin\bash -lc "cmake .." |
|
%CD:~0,2%\msys64\usr\bin\bash -lc "make" |
|
workingDirectory: ./build |
|
env: |
|
MSYS2_ARCH: x86_64 |
|
MSYSTEM: MINGW64 |
|
CHERE_INVOKING: yes |
|
displayName: 'Build Xournal++' |
|
- script: | |
|
set PATH=%PATH%;%CD:~0,2%\msys64\usr\bin;%CD:~0,2%\msys64\mingw64\bin" |
|
%CD:~0,2%\msys64\usr\bin\bash -lc "./build-setup.sh" |
|
workingDirectory: ./windows-setup |
|
env: |
|
MSYS2_ARCH: x86_64 |
|
MSYSTEM: MINGW64 |
|
CHERE_INVOKING: yes |
|
displayName: 'Create Setup' |
|
- task: PublishBuildArtifacts@1 |
|
inputs: |
|
PathtoPublish: './build' |
|
ArtifactName: 'release_windows' |
|
publishLocation: 'Container' |
|
displayName: 'Publish Windows Build' |
|
|
|
# - job: macOS |
|
# pool: |
|
# vmImage: 'macOS-10.13' |
|
# displayName: 'Build for macOS' |
|
# steps: |
|
# - bash: | |
|
# echo !!!TODO!!! |
|
# displayName: 'Install dependencies on macOS'
|
|
|