1
+ steps :
2
+ - checkout : self
3
+
4
+ - task : UsePythonVersion@0
5
+ inputs :
6
+ versionSpec : ' 3.x'
7
+
8
+ - task : NodeTool@0
9
+ inputs :
10
+ versionSpec : ' 12.x'
11
+
12
+ - script : |
13
+ cd $(Build.SourcesDirectory)
14
+ python -m pip install aqtinstall
15
+ displayName: 'Install aqtinstall'
16
+
17
+ - script : |
18
+ python -m aqt install --outputdir $(Build.BinariesDirectory)\Qt 5.14.1 windows desktop win64_msvc2017_64 -m qtcore qtgui qtnetwork qtwidgets
19
+ displayName: 'Install Qt 5.14.1'
20
+
21
+ - script : |
22
+ python -m aqt tool --outputdir $(Build.BinariesDirectory)\Qt windows tools_openssl_x64 1.1.1-4 qt.tools.openssl.win_x64
23
+ displayName: 'Install OpenSSL for QtNetwork'
24
+
25
+ - script : |
26
+ cd $(Build.SourcesDirectory)\windows
27
+ call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Enterprise\\VC\\Auxiliary\\Build\\vcvars64.bat"
28
+ lib.exe /def:libfftw3-3.def
29
+ dir
30
+ displayName: 'Create FFTW .lib'
31
+
32
+ - bash : |
33
+ ./qmake_version_args.sh | sed 's/\([^\\]\)\\\\\\"/\1\\\\\\\\\\\\\\"/g' | sed 's/\([^\\]\)\\"/\1\\\\\\"/g' > qmake_args
34
+ cat qmake_args
35
+ workingDirectory: $(Build.SourcesDirectory)/src
36
+ displayName: 'Get version arguments for qmake'
37
+
38
+ - script : |
39
+ cd $(Build.SourcesDirectory)\src
40
+ call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Enterprise\\VC\\Auxiliary\\Build\\vcvars64.bat"
41
+ set /p QMAKE_VERSION_ARGS= <qmake_args
42
+ $(Build.BinariesDirectory)\Qt\5.14.1\msvc2017_64\bin\qmake.exe %QMAKE_VERSION_ARGS%
43
+ displayName: 'Run qmake'
44
+
45
+ - script : |
46
+ cd $(Build.SourcesDirectory)\src
47
+ call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Enterprise\\VC\\Auxiliary\\Build\\vcvars64.bat"
48
+ nmake release
49
+ displayName: 'Build hobbits'
50
+
51
+ - script : |
52
+ dir $(Build.BinariesDirectory)\Qt\Tools\
53
+ cd $(Build.BinariesDirectory)
54
+ mkdir -p release\plugins\analyzers release\plugins\operators release\plugins\displays release\plugins\importerexporters
55
+ xcopy $(Build.SourcesDirectory)\windows\libfftw3-3.dll release\
56
+ xcopy $(Build.SourcesDirectory)\src\hobbits-gui\hobbits.exe release\
57
+ xcopy $(Build.SourcesDirectory)\src\hobbits-runner\hobbits-runner.exe release\
58
+ forfiles /p $(Build.SourcesDirectory)\src\hobbits-plugins\analyzers\ /m *.dll /s /c "cmd /c echo xcopy @path $(Build.BinariesDirectory)\release\plugins\analyzers\ "
59
+ forfiles /p $(Build.SourcesDirectory)\src\hobbits-plugins\analyzers\ /m *.dll /s /c "cmd /c xcopy @path $(Build.BinariesDirectory)\release\plugins\analyzers\ "
60
+ forfiles /p $(Build.SourcesDirectory)\src\hobbits-plugins\displays\ /m *.dll /s /c "cmd /c xcopy @path $(Build.BinariesDirectory)\release\plugins\displays\ "
61
+ forfiles /p $(Build.SourcesDirectory)\src\hobbits-plugins\importerexporters\ /m *.dll /s /c "cmd /c xcopy @path $(Build.BinariesDirectory)\release\plugins\importerexporters\ "
62
+ forfiles /p $(Build.SourcesDirectory)\src\hobbits-plugins\operators\ /m *.dll /s /c "cmd /c xcopy @path $(Build.BinariesDirectory)\release\plugins\operators\ "
63
+ forfiles /p $(Build.BinariesDirectory)\Qt\Tools\ /m *.dll /s /c "cmd /c xcopy @path $(Build.BinariesDirectory)\release "
64
+ xcopy $(Build.SourcesDirectory)\src\hobbits-core\hobbits-core.dll release\
65
+ xcopy $(Build.BinariesDirectory)\Qt\5.14.1\msvc2017_64\plugins\platforms release\platforms /i
66
+ xcopy $(Build.BinariesDirectory)\Qt\5.14.1\msvc2017_64\bin\Qt5Concurrent.dll release\
67
+ xcopy $(Build.BinariesDirectory)\Qt\5.14.1\msvc2017_64\bin\Qt5Core.dll release\
68
+ xcopy $(Build.BinariesDirectory)\Qt\5.14.1\msvc2017_64\bin\Qt5Gui.dll release\
69
+ xcopy $(Build.BinariesDirectory)\Qt\5.14.1\msvc2017_64\bin\Qt5Network.dll release\
70
+ xcopy $(Build.BinariesDirectory)\Qt\5.14.1\msvc2017_64\bin\Qt5Widgets.dll release\
71
+ xcopy $(Build.BinariesDirectory)\Qt\5.14.1\msvc2017_64\bin\libEGL.dll release\
72
+ xcopy $(Build.BinariesDirectory)\Qt\5.14.1\msvc2017_64\bin\libGLSv2.dll release\
73
+ xcopy $(Build.BinariesDirectory)\Qt\5.14.1\msvc2017_64\bin\opengl32sw.dll release\
74
+ displayName: 'Collect release files'
75
+
76
+ - task : ArchiveFiles@2
77
+ inputs :
78
+ rootFolderOrFile : $(Build.BinariesDirectory)\release
79
+ includeRootFolder : false
80
+ archiveFile : $(Build.ArtifactStagingDirectory)\hobbits_windows_release.zip
81
+
82
+ - task : PublishBuildArtifacts@1
83
+ inputs :
84
+ pathToPublish : $(Build.ArtifactStagingDirectory)
85
+ artifactName : windows_release
0 commit comments