/
ubuntu-hosted-advanced-cache.yml
72 lines (66 loc) · 3.08 KB
/
ubuntu-hosted-advanced-cache.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
# Copyright (c) 2019-2020-2021-2022 Luca Cappa
# Released under the term specified in file LICENSE.txt
# SPDX short identifier: MIT
pool:
vmImage: 'ubuntu-latest'
variables:
system.debug: true
vcpkgGitCommitId: 30124253eecff36bc90f73341edbfb4f845e2a1e
steps:
- task: Cache@2
displayName: Cache vcpkg
inputs:
key: $(Build.SourcesDirectory)/cmakesettingsjson/vcpkg_x64-linux.txt | "$(vcpkgGitCommitId)" | "$(Agent.OS)"
path: '$(Build.BinariesDirectory)/vcpkg'
- task: lucappa.cmake-ninja-vcpkg-tasks.d855c326-b1c0-4d6f-b1c7-440ade6835fb.run-vcpkg@0
displayName: 'Run vcpkg'
inputs:
vcpkgArguments: '@$(Build.SourcesDirectory)/cmakesettingsjson/vcpkg_x64-linux.txt'
vcpkgGitURL: 'https://github.com/lukka/vcpkg.git'
vcpkgGitCommitId: $(vcpkgGitCommitId)
- task: lucappa.cmake-ninja-vcpkg-tasks.f2b1ec7d-bc54-4cc8-b9ed-1bc7f37c9dc6.run-cmake@0
displayName: 'CMake+Makefiles'
inputs:
cmakeListsOrSettingsJson: CMakeListsTxtAdvanced
cmakeListsTxtPath: '$(Build.SourcesDirectory)/cmakesettingsjson/CMakeLists.txt'
useVcpkgToolchainFile: true
buildDirectory: '$(Build.BinariesDirectory)/unixmakefiles'
cmakeAppendedArgs: '-G "Unix Makefiles" '
buildWithCMakeArgs: '-- -j'
vcpkgTriplet: '$(RUNVCPKG_VCPKG_TRIPLET)'
- task: lucappa.cmake-ninja-vcpkg-tasks.f2b1ec7d-bc54-4cc8-b9ed-1bc7f37c9dc6.run-cmake@0
displayName: 'CMake+Ninja'
inputs:
cmakeListsOrSettingsJson: CMakeListsTxtAdvanced
cmakeListsTxtPath: '$(Build.SourcesDirectory)/cmakesettingsjson/CMakeLists.txt'
useVcpkgToolchainFile: true
buildDirectory: '$(Build.BinariesDirectory)/ninja'
cmakeAppendedArgs: '-G "Ninja"'
- task: lucappa.cmake-ninja-vcpkg-tasks.f2b1ec7d-bc54-4cc8-b9ed-1bc7f37c9dc6.run-cmake@0
displayName: 'CMakeSettings.json'
inputs:
cmakeListsOrSettingsJson: CMakeSettingsJson
cmakeSettingsJsonPath: 'cmakesettingsjson/CMakeSettings.json'
useVcpkgToolchainFile: true
configurationRegexFilter: 'Linux-Release'
- task: lucappa.cmake-ninja-vcpkg-tasks.f2b1ec7d-bc54-4cc8-b9ed-1bc7f37c9dc6.run-cmake@0
displayName: 'CMakeSettings.json toolchain property'
inputs:
cmakeListsOrSettingsJson: CMakeSettingsJson
cmakeSettingsJsonPath: 'cmakesettingsjson/CMakeSettings.json'
useVcpkgToolchainFile: true
configurationRegexFilter: 'toolchainproperty'
- task: lucappa.cmake-ninja-vcpkg-tasks.f2b1ec7d-bc54-4cc8-b9ed-1bc7f37c9dc6.run-cmake@0
displayName: 'CMakeSettings.json toolchain variable'
inputs:
cmakeListsOrSettingsJson: CMakeSettingsJson
cmakeSettingsJsonPath: 'cmakesettingsjson/CMakeSettings.json'
useVcpkgToolchainFile: true
configurationRegexFilter: 'toolchainvariable'
- task: lucappa.cmake-ninja-vcpkg-tasks.f2b1ec7d-bc54-4cc8-b9ed-1bc7f37c9dc6.run-cmake@0
displayName: 'CMakeSettings.json all Linux configurations'
inputs:
cmakeListsOrSettingsJson: CMakeSettingsJson
cmakeSettingsJsonPath: 'cmakesettingsjson/CMakeSettings.json'
useVcpkgToolchainFile: true
configurationRegexFilter: '.*Linux.*'