Manage wildcards (?*) in /tar command
[ryzomcore.git] / azure-pipelines.yml
blobe42680e06059a92c4d523875751882bce4639464
1 trigger:
2   branches:
3     include:
4       - core4
5       - feature/*
6       - main/atys-live
8 jobs:
9   - job: ubuntu18
10     timeoutInMinutes: 120
11     pool:
12       vmImage: 'ubuntu-18.04'
13     steps:
14     - script: |
15         sudo apt update
16         sudo apt install -y software-properties-common
17         # sudo add-apt-repository ppa:ubuntu-toolchain-r/test
18         sudo apt update
19         sudo apt install cmake build-essential -y
20         sudo apt install gcc-8 g++-8 -y
21         sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 60
22         sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-8 60
23         sudo apt install bison autoconf automake -y
24         sudo apt install libpng-dev -y
25         sudo apt install libjpeg-dev -y
26         sudo apt install libgif-dev libfreetype6-dev -y
27         sudo apt install freeglut3-dev -y
28         sudo apt install liblua5.2-dev libluabind-dev libcpptest-dev -y
29         sudo apt install libogg-dev libvorbis-dev libopenal-dev -y
30         sudo apt install libavcodec-dev libavformat-dev libavdevice-dev libswscale-dev libpostproc-dev -y
31         sudo apt install libmysqlclient-dev -y
32         sudo apt install libxml2-dev -y
33         sudo apt install libcurl4-openssl-dev libssl-dev -y
34         sudo apt install libsquish-dev -y
35         sudo apt install liblzma-dev -y
36         sudo apt install libgsf-1-dev -y
37         sudo apt install qtbase5-dev qttools5-dev qttools5-dev-tools
38       displayName: 'Dependencies'
39     - script: |
40         mkdir build
41         cmake --version
42         cd build
43         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 ..
44         cat CMakeCache.txt
45       displayName: 'CMake'
46     - script: |
47         cd build
48         make -j`nproc`
49       displayName: 'Make'
50   - job: ubuntu20
51     timeoutInMinutes: 120
52     pool:
53       vmImage: 'ubuntu-20.04'
54     steps:
55     - script: |
56         sudo apt update
57         sudo apt install -y software-properties-common
58         sudo apt update
59         sudo apt install cmake build-essential -y
60         sudo apt install bison autoconf automake -y
61         sudo apt install libpng-dev -y
62         sudo apt install libjpeg-dev -y
63         sudo apt install libgif-dev libfreetype6-dev -y
64         sudo apt install freeglut3-dev -y
65         sudo apt install liblua5.2-dev libluabind-dev libcpptest-dev -y
66         sudo apt install libogg-dev libvorbis-dev libopenal-dev -y
67         sudo apt install libavcodec-dev libavformat-dev libavdevice-dev libswscale-dev libpostproc-dev -y
68         sudo apt install libmysqlclient-dev -y
69         sudo apt install libxml2-dev -y
70         sudo apt install libcurl4-openssl-dev libssl-dev -y
71         sudo apt install libsquish-dev -y
72         sudo apt install liblzma-dev -y
73         sudo apt install libgsf-1-dev -y
74         sudo apt install qtbase5-dev qttools5-dev qttools5-dev-tools
75       displayName: 'Dependencies'
76     - script: |
77         mkdir build
78         cmake --version
79         cd build
80         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 ..
81         cat CMakeCache.txt
82       displayName: 'CMake'
83     - script: |
84         cd build
85         make -j`nproc`
86       displayName: 'Make'
87   - job: windows2019
88     timeoutInMinutes: 120
89     pool:
90       vmImage: 'windows-2019'
91     steps:
92     - checkout: self
93       fetchDepth: 1
94     - task: Cache@2
95       inputs:
96         key: 'hunter-win2019-x64-rel'
97         path: "c:/.hunter/_Base/Cache"
98     - task: CmdLine@2
99       inputs:
100         script: |
101           aria2c https://download.microsoft.com/download/A/E/7/AE743F1F-632B-4809-87A9-AA1BB3458E31/DXSDK_Jun10.exe
102           7z x DXSDK_Jun10.exe -oC:\ -r -y
103           del DXSDK_Jun10.exe
104     - task: CMake@1
105       inputs:
106         workingDirectory: build.release
107         cmakeArgs: '-DCMAKE_CONFIGURATION_TYPES=Release -DHUNTER_ENABLED=ON -DHUNTER_CONFIGURATION_TYPES=Release -DFINAL_VERSION=OFF -DWITH_NEL_TESTS=OFF -DWITH_NEL_SAMPLES=OFF -DWITH_NEL_TOOLS=OFF -DWITH_RYZOM_TOOLS=OFF -DWITH_RYZOM_SERVER=OFF -DWITH_RYZOM_CLIENT=ON -DWITH_DRIVER_OPENGL=ON -DWITH_DRIVER_OPENAL=ON -DWITH_DRIVER_DIRECT3D=ON -DWITH_DRIVER_XAUDIO2=ON -DDXSDK_DIR=C:/DXSDK ..'
108     - task: MSBuild@1
109       inputs:
110         solution: build.release/ALL_BUILD.vcxproj
111         maximumCpuCount: true
112         configuration: release
113         platform: 'x64'
114   - job: ubuntu18hunter
115     timeoutInMinutes: 120
116     pool:
117       vmImage: ubuntu-18.04
118     steps:
119     - checkout: self
120       fetchDepth: 0
121     - script: |
122         sudo apt-get update
123         sudo DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends libasound2-dev libgl1-mesa-dev libjack-dev libpulse-dev libxrandr-dev libxrender-dev libxxf86vm-dev
124       displayName: 'Dependencies'
125     - task: Cache@2
126       inputs:
127         key: 'hunter317-ubuntu18-rel"'
128         path: "$(Pipeline.Workspace)/.hunter/_Base/Cache"
129     - script: |
130         mkdir build.release
131         cmake --version
132         cd build.release
133         unset SYSTEM
134         export MAKEFLAGS=-j`nproc`
135         cmake -DCMAKE_BUILD_TYPE=Release -DHUNTER_ENABLED=ON -DHUNTER_CONFIGURATION_TYPES=Release -DHUNTER_ROOT="$(Pipeline.Workspace)/.hunter" -DFINAL_VERSION=OFF -DWITH_NEL_TESTS=OFF -DWITH_NEL_SAMPLES=OFF -DWITH_NEL_TOOLS=OFF -DWITH_RYZOM_TOOLS=OFF -DWITH_RYZOM_SERVER=OFF -DWITH_RYZOM_CLIENT=ON -DWITH_DRIVER_OPENGL=ON -DWITH_DRIVER_OPENAL=ON ..
136       displayName: 'CMake, release'
137     - script: |
138         cd build.release
139         make -j`nproc`
140       displayName: 'Make, release'
141     #- task: PublishPipelineArtifact@1
142     #  inputs:
143     #    targetPath: build.release/bin
144     #    artifactName: RyzomUbuntu18Release
145   - job: macOS11
146     timeoutInMinutes: 120
147     pool:
148       vmImage: 'macOS-11'
149     steps:
150     - checkout: self
151       fetchDepth: 0
152     - task: Cache@2
153       inputs:
154         key: 'hunter317-macOS11-rel"'
155         path: "$(Pipeline.Workspace)/.hunter/_Base/Cache"
156     - task: CMake@1
157       inputs:
158         workingDirectory: build.release
159         cmakeArgs: '-GXcode -DCMAKE_CONFIGURATION_TYPES=Release -DHUNTER_ENABLED=ON -DHUNTER_STATUS_DEBUG=ON -DHUNTER_CONFIGURATION_TYPES=Release -DHUNTER_ROOT="$(Pipeline.Workspace)/.hunter" -DWITH_LIBXML2_ICONV=OFF -DFINAL_VERSION=OFF -DWITH_NEL_TESTS=OFF -DWITH_NEL_SAMPLES=OFF -DWITH_NEL_TOOLS=OFF -DWITH_RYZOM_TOOLS=OFF -DWITH_RYZOM_SERVER=OFF -DWITH_RYZOM_CLIENT=ON -DWITH_DRIVER_OPENGL=ON -DWITH_DRIVER_OPENAL=ON -DWITH_DRIVER_DIRECT3D=OFF -DWITH_DRIVER_XAUDIO2=OFF ..'
160     - task: Xcode@5
161       inputs:
162         actions: 'build'
163         configuration: Release
164         sdk: macosx12.0
165         xcWorkspacePath: 'build.release/RyzomCore.xcodeproj'
166         scheme: 'ALL_BUILD'
167         packageApp: false
168     #- task: PublishPipelineArtifact@1
169     #  inputs:
170     #    targetPath: build.release/bin/
171     #    artifactName: RyzomClientMacOS11Release