-
Notifications
You must be signed in to change notification settings - Fork 35
/
.appveyor.yml
53 lines (46 loc) · 1.93 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
os: Visual Studio 2022
environment:
matrix:
- arch: x86
compiler: msvc2019
- arch: x64
compiler: msvc2019
platform:
- x64
install:
# Set paths to dependencies (based on architecture)
- cmd: if %arch%==x86 (set PYTHON_ROOT=C:\python312) else (set PYTHON_ROOT=C:\python312-x64)
- cmd: if %arch%==x86 (set QT_ROOT=C:\Qt\5.15\%compiler%) else (set QT_ROOT=C:\Qt\5.15\%compiler%_64)
# Print out dependency paths
- cmd: echo Using Python at %PYTHON_ROOT%
- cmd: echo Using Qt at %QT_ROOT%
# Add necessary paths to PATH variable
- cmd: set PATH=%cd%;%QT_ROOT%\bin;%PYTHON_ROOT%;%PYTHON_ROOT%\Scripts;%PATH%
# Install ninja and meson
- cmd: pip install ninja meson
# Set up the build environment
- cmd: if %compiler%==msvc2019 ( call "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat" %arch% )
build_script:
- cmd: echo Building on %arch% with %compiler%
- cmd: meson setup --backend=ninja -Dbuildtype=release -Ddefault_library=static builddir
- cmd: meson compile -C builddir
after_build:
# Zip build binaries and dependencies
- cmd: mkdir .\RazerGenie
- cmd: copy %APPVEYOR_BUILD_FOLDER%\builddir\src\RazerGenie.exe .\RazerGenie\
- cmd: copy %QT_ROOT%\bin\Qt5Core.dll .\RazerGenie\
- cmd: copy %QT_ROOT%\bin\Qt5DBus.dll .\RazerGenie\
- cmd: copy %QT_ROOT%\bin\Qt5Gui.dll .\RazerGenie\
- cmd: copy %QT_ROOT%\bin\Qt5Network.dll .\RazerGenie\
- cmd: copy %QT_ROOT%\bin\Qt5Widgets.dll .\RazerGenie\
- cmd: mkdir .\RazerGenie\platforms
- cmd: copy %QT_ROOT%\plugins\platforms\qwindows.dll .\RazerGenie\platforms
- cmd: 7z a RazerGenie_%compiler%_%arch%.zip .\RazerGenie\*
artifacts:
- path: RazerGenie*.zip
notifications:
- provider: Slack
incoming_webhook: https://webhooks.t2bot.io/api/v1/matrix/hook/gEsoLVFFgp4PURc6iR8IhdQAFhOslmSzfy35y4DEtGL0a5QKIXPIGKUFaJsWkJ7F
on_build_success: false
on_build_failure: true
on_build_status_changed: true