forked from 10110111/CalcMySky
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.appveyor.yml
132 lines (122 loc) · 6.05 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
version: "{build}"
environment:
matrix:
- BUILD_NAME: Win32 Qt5
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
CMAKE_GENERATOR: Visual Studio 15 2017
QT_BASEDIR: C:/Qt/5.12/msvc2017
QT_VERSION_MAJOR: 5
BITS: 32
- BUILD_NAME: Win64 Qt5
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
CMAKE_GENERATOR: Visual Studio 15 2017
QT_BASEDIR: C:/Qt/5.12/msvc2017_64
QT_VERSION_MAJOR: 5
BITS: 64
CMAKE_ARGS: -A x64
- BUILD_NAME: Win64 Qt6
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
CMAKE_GENERATOR: Visual Studio 16 2019
QT_BASEDIR: C:/Qt/6.3/msvc2019_64
QT_VERSION_MAJOR: 6
BITS: 64
- BUILD_NAME: Ubuntu amd64 Qt5
APPVEYOR_BUILD_WORKER_IMAGE: Ubuntu2004
QT_BASEDIR: /usr
QT_VERSION_MAJOR: 5
- BUILD_NAME: Ubuntu amd64 Qt6
APPVEYOR_BUILD_WORKER_IMAGE: Ubuntu2004
QT_BASEDIR: /home/appveyor/Qt/6.3/gcc_64
QT_VERSION_MAJOR: 6
- BUILD_NAME: macOS amd64 Qt5
APPVEYOR_BUILD_WORKER_IMAGE: macos-monterey
QT_BASEDIR: /Users/appveyor/Qt/5.15/clang_64
QT_VERSION_MAJOR: 5
- BUILD_NAME: macOS amd64 Qt6
APPVEYOR_BUILD_WORKER_IMAGE: macos-monterey
QT_BASEDIR: /Users/appveyor/Qt/6.2/macos
QT_VERSION_MAJOR: 6
configuration:
- Release
# - Debug
for:
-
matrix:
only:
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
install:
# Make sure we get the bash that comes with git, not WSL bash
- ps: $env:Path = "C:\msys64\bin;C:\Program Files\Git\bin;$env:Path"
before_build:
- cd C:/projects && mkdir build && mkdir install && cd build
- set PATH=%QT_BASEDIR%\bin;%PATH%
- cmake -G "%CMAKE_GENERATOR%" -DCMAKE_INSTALL_PREFIX=../install ../CalcMySky -DQT_VERSION=%QT_VERSION_MAJOR% %CMAKE_ARGS%
build_script:
- cmake --build . --config %configuration% -- /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll"
test_script:
- set PATH=%PATH%;%QT_BASEDIR%\bin
- ctest -C %configuration%
after_build:
- if Release == %configuration% cmake --build . --config %configuration% --target install
- if Release == %configuration% bash -c "sed -n 's@.* PROJECT_VERSION *= *\"\(.*\)\".*@\1@p' version.cpp > versionVar"
- if Release == %configuration% set /p projectVersion=<versionVar
- if Release == %configuration% set platform=win%BITS%-qt%QT_VERSION_MAJOR%
- if Release == %configuration% set tarballBaseName=CalcMySky-%projectVersion%-%platform%
- if Release == %configuration% echo %tarballBaseName%
- if Release == %configuration% bash -c "mv -v ../install/CalcMySky ../install/$tarballBaseName"
- if Release == %configuration% 7z a CalcMySky-%projectVersion%-%platform%.zip ../install/CalcMySky-%projectVersion%-%platform%
- if Release == %configuration% 7z l CalcMySky-%projectVersion%-%platform%.zip
- if Release == %configuration% appveyor PushArtifact CalcMySky-%projectVersion%-%platform%.zip
- if Debug == %configuration% cmake --build . --config %configuration% --target install
- if Debug == %configuration% for %%F in (msvcp140d vcruntime140d) do copy "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\redist\debug_nonredist\x64\Microsoft.VC140.DebugCRT\%%F.dll" CalcMySky
- if Debug == %configuration% copy "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Redist\MSVC\14.25.28508\debug_nonredist\x64\Microsoft.VC142.DebugCRT\vcruntime140_1d.dll" CalcMySky
- if Debug == %configuration% copy "C:\Program Files (x86)\Windows Kits\10\bin\x64\ucrt\ucrtbased.dll" CalcMySky
- if Debug == %configuration% cp -v \"/c/Program Files (x86)/Windows Kits/10/bin/x64/ucrt/ucrtbased.dll\" CalcMySky
- if Debug == %configuration% 7z a CalcMySky-win%BITS%-qt%QT_VERSION_MAJOR%.zip CalcMySky
- if Debug == %configuration% 7z l CalcMySky-win%BITS%-qt%QT_VERSION_MAJOR%.zip
- if Debug == %configuration% appveyor PushArtifact CalcMySky-win%BITS%-qt%QT_VERSION_MAJOR%.zip
-
matrix:
only:
- APPVEYOR_BUILD_WORKER_IMAGE: Ubuntu2004
install:
- sudo apt-get update
- if [[ $QT_VERSION_MAJOR = 5 ]]; then sudo apt-get install -y libeigen3-dev libglm-dev libqt5opengl5-dev; fi
- if [[ $QT_VERSION_MAJOR = 6 ]]; then sudo apt-get install -y libeigen3-dev libglm-dev libgl1-mesa-dev; fi
before_build:
- cd ~/projects/ && mkdir build && cd build
- export PATH="$QT_BASEDIR/bin:$PATH"
- cmake -DCMAKE_BUILD_TYPE=$CONFIGURATION -DCMAKE_INSTALL_PREFIX="$PWD/install/CalcMySky" ../calcmysky -DCMAKE_CXX_COMPILER=g++-9 -DQT_VERSION=$QT_VERSION_MAJOR -DCPM_LOCAL_PACKAGES_ONLY=true
build_script:
- cmake --build .
test_script:
- ctest || { cat Testing/Temporary/LastTest.log; false; }
after_build:
- cmake --build . --target install
- projectVersion=$(sed -n 's@.* PROJECT_VERSION *= *"\([^"]\+\)" *;@\1@p' version.cpp)
- platform=linux-amd64-qt$QT_VERSION_MAJOR
- tarballBaseName="CalcMySky-$projectVersion-$platform"
- mv -v install/CalcMySky "install/$tarballBaseName"
- tar cvJf "$tarballBaseName.tar.xz" -C install "$tarballBaseName"
- appveyor PushArtifact "$tarballBaseName.tar.xz"
-
matrix:
only:
- APPVEYOR_BUILD_WORKER_IMAGE: macos-monterey
before_build:
- cd ~/projects/ && mkdir build && cd build
- export PATH=$QT_BASEDIR/bin:$PATH
- cmake ../calcmysky -DCMAKE_BUILD_TYPE=$CONFIGURATION -DCMAKE_INSTALL_PREFIX="$PWD/install/CalcMySky" -DQT_VERSION=$QT_VERSION_MAJOR -DCMAKE_CXX_FLAGS="-Wno-string-plus-int"
build_script:
- cmake --build .
test_script:
- ctest || { cat Testing/Temporary/LastTest.log; false; }
after_build:
- cmake --build . --target install
- projectVersion=$(sed -n 's@.* PROJECT_VERSION *= *"\([^"][^"]*\)" *;@\1@p' version.cpp)
- platform=macos-amd64-qt$QT_VERSION_MAJOR
- tarballBaseName="CalcMySky-$projectVersion-$platform"
- mv -v install/CalcMySky "install/$tarballBaseName"
- tar cvJf "$tarballBaseName.tar.xz" -C install "$tarballBaseName"
- appveyor PushArtifact "$tarballBaseName.tar.xz"