/
azure-pipelines.yml
129 lines (94 loc) · 3.01 KB
/
azure-pipelines.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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
resources:
repositories:
- repository: self
checkoutOptions:
submodules: true
jobs:
- job: Linux
pool: Hosted Ubuntu 1604
steps:
- script: |
wget -qO - http://packages.lunarg.com/lunarg-signing-key-pub.asc | sudo apt-key add -
sudo wget -qO /etc/apt/sources.list.d/lunarg-vulkan-1.1.92-xenial.list http://packages.lunarg.com/vulkan/1.1.92/lunarg-vulkan-1.1.92-xenial.list
sudo apt update
sudo apt install lunarg-vulkan-sdk
sudo apt-get -y install freeglut3 freeglut3-dev
sudo apt-get -y install xorg-dev libglu1-mesa-dev
displayName: 'Command Line Script'
- task: CMake@1
displayName: 'Generating Project Files'
inputs:
cmakeArgs: 'cmake -DCMAKE_BUILD_TYPE=Release -G "CodeBlocks - Unix Makefiles" ../'
- task: CMake@1
displayName: 'Building OpenNFS'
inputs:
cmakeArgs: '--build ./ --target OpenNFS -- -j 4'
- task: PublishBuildArtifacts@1
displayName: 'Publish Artifact: Linux'
inputs:
pathtoPublish: ./build/OpenNFS
artifactName: Linux
- job: Windows_gcc
pool: Hosted VS2017
steps:
- task: CMake@1
displayName: 'Generating Project Files'
inputs:
cmakeArgs: '-G "CodeBlocks - MinGW Makefiles" -DCMAKE_SH="CMAKE_SH-NOTFOUND" -DCMAKE_BUILD_TYPE=Release ../'
- task: CMake@1
displayName: 'Building OpenNFS'
inputs:
cmakeArgs: '--build ./ --target OpenNFS -- -j 4'
- task: PublishBuildArtifacts@1
displayName: 'Publish Artifact: MinGW_Windows'
inputs:
pathtoPublish: ./build/OpenNFS.exe
artifactName: MinGW_Windows
- job: Windows_msvc
pool: Hosted VS2017
steps:
- script: mkdir build
displayName: Make build directory
- task: CMake@1
displayName: 'Generate Solution Files'
inputs:
cmakeArgs: '-G "Visual Studio 15 2017 Win64" ../'
- task: VSBuild@1
displayName: 'Build solution OpenNFS.sln'
inputs:
solution: 'build/OpenNFS.sln'
platform: 'x64'
configuration: 'Release'
- task: PublishSymbols@2
displayName: 'Publish symbols path'
inputs:
SearchPattern: '**\bin\**\*.pdb'
PublishSymbols: false
continueOnError: true
- task: CopyFiles@2
displayName: 'Copy Files to: $(build.artifactstagingdirectory)'
inputs:
SourceFolder: './build/Release/'
Contents: OpenNFS.exe
TargetFolder: '$(build.artifactstagingdirectory)'
- task: PublishBuildArtifacts@1
displayName: 'Publish Artifact: MSVC_Windows'
inputs:
pathtoPublish: '$(build.artifactstagingdirectory)'
artifactName: MSVC_Windows
- job: Mac
pool: Hosted macOS
steps:
- task: CMake@1
displayName: 'Generating Project Files'
inputs:
cmakeArgs: 'cmake -DCMAKE_BUILD_TYPE=Release -G "CodeBlocks - Unix Makefiles" ../'
- task: CMake@1
displayName: 'Building OpenNFS'
inputs:
cmakeArgs: '--build ./ --target OpenNFS -- -j 4'
- task: PublishBuildArtifacts@1
displayName: 'Publish Artifact: Mac'
inputs:
pathtoPublish: ./build/OpenNFS
artifactName: Mac