You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
168 lines
6.3 KiB
YAML
168 lines
6.3 KiB
YAML
jobs:
|
|
- job: ubuntu18
|
|
timeoutInMinutes: 120
|
|
pool:
|
|
vmImage: 'ubuntu-18.04'
|
|
steps:
|
|
- script: |
|
|
sudo apt update
|
|
sudo apt install -y software-properties-common
|
|
# sudo add-apt-repository ppa:ubuntu-toolchain-r/test
|
|
sudo apt update
|
|
sudo apt install cmake build-essential -y
|
|
sudo apt install gcc-8 g++-8 -y
|
|
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 60
|
|
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-8 60
|
|
sudo apt install bison autoconf automake -y
|
|
sudo apt install libpng-dev -y
|
|
sudo apt install libjpeg-dev -y
|
|
sudo apt install libgif-dev libfreetype6-dev -y
|
|
sudo apt install freeglut3-dev -y
|
|
sudo apt install liblua5.2-dev libluabind-dev libcpptest-dev -y
|
|
sudo apt install libogg-dev libvorbis-dev libopenal-dev -y
|
|
sudo apt install libavcodec-dev libavformat-dev libavdevice-dev libswscale-dev libpostproc-dev -y
|
|
sudo apt install libmysqlclient-dev -y
|
|
sudo apt install libxml2-dev -y
|
|
sudo apt install libcurl4-openssl-dev libssl-dev -y
|
|
sudo apt install libsquish-dev -y
|
|
sudo apt install liblzma-dev -y
|
|
sudo apt install libgsf-1-dev -y
|
|
sudo apt install qtbase5-dev qttools5-dev qttools5-dev-tools
|
|
displayName: 'Dependencies'
|
|
- script: |
|
|
mkdir build
|
|
cmake --version
|
|
cd build
|
|
cmake -DWITH_STATIC=ON -DWITH_NEL_TESTS=OFF -DWITH_NEL_SAMPLES=ON -DWITH_LUA51=OFF -DWITH_LUA52=ON -DWITH_RYZOM=ON -DWITH_RYZOM_SERVER=ON -DWITH_RYZOM_CLIENT=ON -DWITH_RYZOM_TOOLS=ON -DWITH_NEL_TOOLS=ON -DWITH_NELNS=ON -DWITH_NELNS_LOGIN_SYSTEM=ON -DWITH_NELNS_SERVER=ON -DWITH_QT5=ON -DWITH_LIBGSF=ON ..
|
|
cat CMakeCache.txt
|
|
displayName: 'CMake'
|
|
- script: |
|
|
cd build
|
|
make -j`nproc`
|
|
displayName: 'Make'
|
|
- job: ubuntu20
|
|
timeoutInMinutes: 120
|
|
pool:
|
|
vmImage: 'ubuntu-20.04'
|
|
steps:
|
|
- script: |
|
|
sudo apt update
|
|
sudo apt install -y software-properties-common
|
|
sudo apt update
|
|
sudo apt install cmake build-essential -y
|
|
sudo apt install bison autoconf automake -y
|
|
sudo apt install libpng-dev -y
|
|
sudo apt install libjpeg-dev -y
|
|
sudo apt install libgif-dev libfreetype6-dev -y
|
|
sudo apt install freeglut3-dev -y
|
|
sudo apt install liblua5.2-dev libluabind-dev libcpptest-dev -y
|
|
sudo apt install libogg-dev libvorbis-dev libopenal-dev -y
|
|
sudo apt install libavcodec-dev libavformat-dev libavdevice-dev libswscale-dev libpostproc-dev -y
|
|
sudo apt install libmysqlclient-dev -y
|
|
sudo apt install libxml2-dev -y
|
|
sudo apt install libcurl4-openssl-dev libssl-dev -y
|
|
sudo apt install libsquish-dev -y
|
|
sudo apt install liblzma-dev -y
|
|
sudo apt install libgsf-1-dev -y
|
|
sudo apt install qtbase5-dev qttools5-dev qttools5-dev-tools
|
|
displayName: 'Dependencies'
|
|
- script: |
|
|
mkdir build
|
|
cmake --version
|
|
cd build
|
|
cmake -DWITH_STATIC=ON -DWITH_NEL_TESTS=OFF -DWITH_NEL_SAMPLES=ON -DWITH_LUA51=OFF -DWITH_LUA52=ON -DWITH_RYZOM=ON -DWITH_RYZOM_SERVER=ON -DWITH_RYZOM_CLIENT=ON -DWITH_RYZOM_TOOLS=ON -DWITH_NEL_TOOLS=ON -DWITH_NELNS=ON -DWITH_NELNS_LOGIN_SYSTEM=ON -DWITH_NELNS_SERVER=ON -DWITH_QT5=ON -DWITH_LIBGSF=ON ..
|
|
cat CMakeCache.txt
|
|
displayName: 'CMake'
|
|
- script: |
|
|
cd build
|
|
make -j`nproc`
|
|
displayName: 'Make'
|
|
- job: client
|
|
strategy:
|
|
matrix:
|
|
ubuntu:
|
|
vmImage: 'ubuntu-18.04'
|
|
releaseName: 'Ubuntu18'
|
|
aptPackages: >-
|
|
libasound2-dev
|
|
libgl1-mesa-dev
|
|
libjack-dev
|
|
libpulse-dev
|
|
libxrandr-dev
|
|
libxrender-dev
|
|
libxxf86vm-dev
|
|
win2019:
|
|
vmImage: 'windows-2019'
|
|
releaseName: 'Win64'
|
|
cmakeExtra: >-
|
|
-DWITH_DRIVER_DIRECT3D=ON
|
|
-DWITH_DRIVER_XAUDIO2=ON
|
|
-DDXSDK_DIR=C:/DXSDK
|
|
macOS11:
|
|
vmImage: 'macOS-11'
|
|
releaseName: 'macOS'
|
|
MACOSX_DEPLOYMENT_TARGET: 10.12
|
|
cmakeExtra: >-
|
|
-DWITH_LIBXML2_ICONV=OFF
|
|
-GXcode
|
|
timeoutInMinutes: 120
|
|
pool:
|
|
vmImage: $(vmImage)
|
|
steps:
|
|
- checkout: self
|
|
fetchDepth: 0
|
|
- script: |
|
|
sudo apt update
|
|
sudo apt remove -y man-db
|
|
sudo apt install -y --no-install-recommends $(aptPackages)
|
|
displayName: '(ubuntu) Dependencies'
|
|
condition: eq(variables['Agent.JobName'], 'client ubuntu')
|
|
- task: CmdLine@2
|
|
inputs:
|
|
script: |
|
|
aria2c https://download.microsoft.com/download/A/E/7/AE743F1F-632B-4809-87A9-AA1BB3458E31/DXSDK_Jun10.exe
|
|
7z x DXSDK_Jun10.exe -oC:\ -r -y
|
|
del DXSDK_Jun10.exe
|
|
displayName: '(windows) DirectX SDK'
|
|
condition: contains(variables['cmakeExtra'], 'DIRECT3D=ON')
|
|
- task: Cache@2
|
|
inputs:
|
|
key: 'hunter321b-$(releaseName)'
|
|
path: '$(Pipeline.Workspace)/.hunter/_Base/Cache'
|
|
- task: CMake@1
|
|
displayName: 'Configure'
|
|
inputs:
|
|
workingDirectory: $(Build.BinariesDirectory)
|
|
cmakeArgs: >-
|
|
$(cmakeExtra)
|
|
-DCMAKE_CONFIGURATION_TYPES=Release
|
|
-DFINAL_VERSION=OFF
|
|
-DHUNTER_CONFIGURATION_TYPES=Release
|
|
-DHUNTER_ENABLED=ON
|
|
-DHUNTER_ROOT=$(Pipeline.Workspace)/.hunter
|
|
-DHUNTER_STATUS_DEBUG=ON
|
|
-DWITH_DRIVER_OPENAL=ON
|
|
-DWITH_DRIVER_OPENGL=ON
|
|
-DWITH_INSTALL_LIBRARIES=OFF
|
|
-DWITH_NEL_SAMPLES=OFF
|
|
-DWITH_NEL_TESTS=OFF
|
|
-DWITH_NEL_TOOLS=OFF
|
|
-DWITH_RYZOM_CLIENT=ON
|
|
-DWITH_RYZOM_SERVER=OFF
|
|
-DWITH_RYZOM_TOOLS=OFF
|
|
$(Build.SourcesDirectory)
|
|
- task: CMake@1
|
|
displayName: 'Build'
|
|
inputs:
|
|
workingDirectory: $(Build.BinariesDirectory)
|
|
cmakeArgs: '--build . --config Release'
|
|
#- task: CMake@1
|
|
# displayName: 'Install'
|
|
# inputs:
|
|
# workingDirectory: $(Build.BinariesDirectory)
|
|
# cmakeArgs: --install . --config Release --prefix $(Build.StagingDirectory)
|
|
#- task: PublishPipelineArtifact@1
|
|
# inputs:
|
|
# targetPath: $(Build.StagingDirectory)/bin
|
|
# artifactName: RyzomClient$(releaseName)Release
|