forked from LibreVR/Revive
-
Notifications
You must be signed in to change notification settings - Fork 0
/
appveyor.yml
93 lines (87 loc) · 3.63 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
image: Visual Studio 2017
clone_folder: c:\projects\revive
environment:
QTDIR: C:\Qt\5.13.2\msvc2017_64
install:
# update vcpkg to the latest version
- cd C:\Tools\vcpkg
- git pull
- git apply %APPVEYOR_BUILD_FOLDER%\fix-vcpkg-openxr-static-loader.patch
- .\bootstrap-vcpkg.bat
- cd %APPVEYOR_BUILD_FOLDER%
- git submodule update --init --recursive
- mkdir c:\projects\download_cache
# query Oculus SDK website for download link
- curl -fsSL -o c:\projects\download_cache\oculus_sdk.html https://developer.oculus.com/downloads/package/oculus-sdk-for-windows/23.0.0/
# download and extract Oculus SDK
- ps: |
$url = select-string -Path 'c:\projects\download_cache\oculus_sdk.html' -Pattern 'https:\/\/securecdn\.oculus\.com\/binaries\/download\/\?id=[0-9]+&access_token=[0-9A-Za-z%]+' -AllMatches | % {$_.Matches} | % {$_.Value}
Invoke-WebRequest -Uri $url -OutFile 'c:\projects\download_cache\oculus_sdk.zip'
cd c:\projects\revive\Externals
unzip c:\projects\download_cache\oculus_sdk.zip
# install required NSIS plugins
- ps: |
Invoke-WebRequest -Uri 'https://nsis.sourceforge.io/mediawiki/images/4/4a/AccessControl.zip' -OutFile 'c:\projects\download_cache\NSIS_AccessControl.zip'
cd c:\projects\download_cache
unzip NSIS_AccessControl.zip
copy Plugins\i386-ansi\AccessControl.dll 'C:\Program Files (x86)\NSIS\Plugins\x86-ansi'
copy Plugins\i386-unicode\AccessControl.dll 'C:\Program Files (x86)\NSIS\Plugins\x86-unicode'
build_script:
# ensure vcpkg dependencies are installed
- ps: |
vcpkg integrate install
vcpkg install --triplet x86-windows-static detours openxr-loader glfw3
vcpkg install --triplet x64-windows-static detours openxr-loader glfw3
# build the solution
- ps: |
cd C:\Projects\Revive
If ($env:APPVEYOR_REPO_TAG -eq "true") {
msbuild Revive.sln /t:Build /p:Configuration=Release /p:Platform=x64
msbuild Revive.sln /t:Build /p:Configuration=Release /p:Platform=x86
} Else {
msbuild Revive.sln /t:Build /p:Configuration=Nightly /p:Platform=x64
msbuild Revive.sln /t:Build /p:Configuration=Nightly /p:Platform=x86
}
after_build:
# copy additional files to the build folder
- ps: |
If ($env:APPVEYOR_REPO_TAG -eq "true") {
cd C:\Projects\Revive\Release
} Else {
cd C:\Projects\Revive\Nightly
}
copy ..\Externals\WinSparkle\x64\Release\WinSparkle.dll .
copy ..\ReviveOverlay\SupportAssets . -Filter "*.jpg" -Recurse -Container
copy C:\openssl-v111-win64\bin\libcrypto-1_1-x64.dll .
copy C:\openssl-v111-win64\bin\libssl-1_1-x64.dll .
# gather build artifacts
- ps: |
If ($env:APPVEYOR_REPO_TAG -eq "true") {
cd C:\Projects\Revive\Release
} Else {
cd C:\Projects\Revive\Nightly
}
7z a ..\Installer\Revive.zip ReviveInjector.exe LibRevive32.dll LibRevive64.dll LibReviveXR64.dll LibReviveXR32.dll
# run NSIS to generate installer
- ps: |
cd C:\Projects\Revive\Installer
$env:Path += ";C:\Program Files (x86)\NSIS"
If ($env:APPVEYOR_REPO_TAG -eq "true") {
makensis Revive.nsi
} Else {
makensis /DNIGHTLY Revive.nsi
}
artifacts:
- path: Installer\ReviveInstaller.exe
name: Revive Installer
- path: Installer\Revive.zip
name: Revive Build
deploy:
provider: GitHub
auth_token:
secure: cF/5tvydhc3y7edEeG6TW0luUQjW9zBvDE4T+jfQjvz9tDAdMsjgw2ZEDmh9qP/n
artifact: 'Revive Installer'
draft: true
prerelease: false
on:
APPVEYOR_REPO_TAG: true