-
Notifications
You must be signed in to change notification settings - Fork 29
/
appveyor.yml
146 lines (132 loc) · 4.71 KB
/
appveyor.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
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
version: 1.0.2.{build}
image:
- macOS
- Ubuntu2004
- Visual Studio 2019
pull_requests:
do_not_increment_build_number: true
clone_depth: 1
environment:
APPVEYOR_SAVE_CACHE_ON_ERROR: true
VULKAN_VERSION: 1.2.176.1
VCPKG_LIBS: boost-filesystem
boost-system boost-regex boost-random
boost-uuid boost-crc zlib
vulkan
for:
-
matrix:
only:
- image: Visual Studio 2019
environment:
VCPKG_DIR: C:\Tools\vcpkg
VULKAN_SDK: C:\VulkanSDK\1.2.176.1
VULKAN_DOWNLOAD_URL: https://vulkan.lunarg.com/sdk/download/1.2.176.1/windows/VulkanSDK-1.2.176.1-Installer.exe?Human=true
MY_Qt6Widgets_DIR: C:\Qt\6.2\msvc2019_64\lib\cmake\Qt6Widgets
QT_PATH: C:\Qt\6.2\msvc2019_64
Qt6_DIR: C:\Qt\6.2\msvc2019_64
init:
- ps: Set-WinSystemLocale ru-RU
- ps: Start-Sleep -s 5
- ps: Restart-Computer
install:
- cmd: if not exist VulkanSDK.exe curl -L --silent --show-error --output VulkanSDK.exe %VULKAN_DOWNLOAD_URL%
- cmd: VulkanSDK.exe /S
- cmd: call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars64.bat"
- cmd: cd %VCPKG_DIR%
- cmd: git pull
- cmd: call .\bootstrap-vcpkg.bat
- cmd: vcpkg.exe --triplet x64-windows install %VCPKG_LIBS%
- cmd: cd %APPVEYOR_BUILD_FOLDER%
cache:
- C:\Tools\vcpkg\installed
- VulkanSDK.exe
-
matrix:
only:
- image: Ubuntu2004
init:
- export CXX=g++-9 CC=gcc-9
- export QT_PATH="$HOME/Qt/6.2/gcc_64"
- export Qt6_DIR="$HOME/Qt/6.2/gcc_64"
- export MY_Qt6Widgets_DIR="$HOME/Qt/6.2/gcc_64/lib/cmake/Qt6Widgets"
- if [ ! -d ../vcpkg ]; then git clone https://github.com/microsoft/vcpkg.git ../vcpkg ; fi
- "(cd ../vcpkg && git pull && ./bootstrap-vcpkg.sh)"
- export VCPKG_DIR=`dirname $(pwd)/../vcpkg/vcpkg`
install:
- sudo apt update -q -y
- sudo apt install -q -y libglm-dev libxcb-dri3-0 libxcb-present0 libpciaccess0
libpng-dev libxcb-keysyms1-dev libxcb-dri3-dev libx11-dev
libmirclient-dev libwayland-dev libxrandr-dev libxcb-randr0-dev libxcb-ewmh-dev
python3 bison libx11-xcb-dev liblz4-dev libzstd-dev
libgl1-mesa-dev
- if [ ! -f VulkanSDK.tar.gz ]; then
curl -L --silent --show-error --output VulkanSDK.tar.gz
"https://sdk.lunarg.com/sdk/download/1.2.176.1/linux/vulkansdk-linux-x86_64-1.2.176.1.tar.gz" ;
fi
- tar -xf VulkanSDK.tar.gz && source ${VULKAN_VERSION}/setup-env.sh
- ../vcpkg/vcpkg install ${VCPKG_LIBS}
cache:
- ../vcpkg/installed
- VulkanSDK.tar.gz
-
matrix:
only:
- image: macOS
init:
- if [ ! -d ../vcpkg ]; then git clone https://github.com/microsoft/vcpkg.git ../vcpkg ; fi
- "(cd ../vcpkg && git pull && ./bootstrap-vcpkg.sh)"
- export VCPKG_DIR=`dirname $(pwd)/../vcpkg/vcpkg`
- export QT_PATH="$HOME/Qt/6.2/macos"
- export Qt6_DIR="$HOME/Qt/6.2/macos"
- export MY_Qt6Widgets_DIR="$HOME/Qt/6.2/macos/lib/cmake/Qt6Widgets"
install:
- if [ ! -f VulkanSDK.dmg ]; then
curl -L --silent --show-error --output VulkanSDK.dmg
"https://sdk.lunarg.com/sdk/download/1.2.176.1/mac/vulkansdk-macos-1.2.176.1.dmg" ;
fi
- hdiutil attach VulkanSDK.dmg
- sudo /Volumes/vulkansdk-macos-${VULKAN_VERSION}/InstallVulkan.app/Contents/MacOS/InstallVulkan
--root ~/VulkanSDK --accept-licenses --default-answer --confirm-command
install
- source ~/VulkanSDK/setup-env.sh
- ../vcpkg/vcpkg install ${VCPKG_LIBS}
cache:
- ../vcpkg/installed
- VulkanSDK.dmg
build_script:
- ps: >-
mkdir tool1cd
cd tool1cd
cmake -DCMAKE_BUILD_TYPE=Release
-DVCPKG_TARGET_ARCHITECTURE=x64
-DCMAKE_PREFIX_PATH="$env:QT_PATH"
-DCMAKE_TOOLCHAIN_FILE="$env:VCPKG_DIR/scripts/buildsystems/vcpkg.cmake"
-DQt6Widgets_DIR="$env:MY_Qt6Widgets_DIR"
..
cmake --build . --target ctool1cd --config Release
cmake --build . --target testproject --config Release
cmake --build . --target gtool1cd --config Release
cd ..
test_script:
- cmd: tool1cd\bin\Release\testproject.exe --reporter junit --out junit.xml
- sh: tool1cd/bin/testproject --reporter junit --out junit.xml
on_finish:
- ps: >-
$wc = New-Object 'System.Net.WebClient'
$wc.UploadFile("https://ci.appveyor.com/api/testresults/junit/$($env:APPVEYOR_JOB_ID)", (Resolve-Path .\junit.xml))
after_build:
- cmd: >-
set PATH=%PATH%;%QT_PATH%/bin
windeployqt --release --no-compiler-runtime --no-translations
--no-system-d3d-compiler --no-opengl-sw --no-patchqt
tool1cd\bin\Release\gtool1cd.exe
- cmd: >-
xcopy COPYING tool1cd\bin\Release
7z a -r tool1cd-%APPVEYOR_BUILD_VERSION%.zip tool1cd\bin\Release
artifacts:
- path: tool1cd\bin\Release\ctool1cd.exe
name: ctool1cd.exe
- path: tool1cd-*.zip
name: tool1cd.zip
deploy: false