rpcs3/appveyor.yml

88 lines
2.7 KiB
YAML
Raw Normal View History

version: '{build}'
image: Visual Studio 2015
environment:
2018-02-02 02:30:22 +00:00
QTDIR: C:\Qt\5.10.0\msvc2015_64
2018-02-02 01:56:45 +00:00
LLVMLIBS: https://drive.google.com/uc?export=download&id=0B8A6NaxhQAGRY2k3Q2Yya05lcm8
VULKAN: https://drive.google.com/uc?export=download&id=1A2eOMmCO714i0U7J0qI4aEMKnuWl8l_R
COMPATDB: https://rpcs3.net/compatibility?api=v1&export
cache:
- llvmlibs.7z -> appveyor.yml
- vulkan.7z -> appveyor.yml
- compat_database.dat
install:
- ps: | # set version env vars, update appveyor build version accordingly
$commDate = $env:APPVEYOR_REPO_COMMIT_TIMESTAMP.Substring(0,10)
$commSha = $env:APPVEYOR_REPO_COMMIT.Substring(0,8)
$commTag = $(git describe --tags $(git rev-list --tags --max-count=1))
$av = "{0}-{1}" -f $commTag.TrimStart("v"), $env:APPVEYOR_BUILD_NUMBER
Update-AppveyorBuild -Version $av
$env:BUILD = "rpcs3-{0}-{1}-{2}_win64.7z" -f $commTag, $commDate, $commSha
- ps: | # used for experimental build warnings for pr builds
$env:BRANCH = "{0}/{1}/#{2}" -f $env:APPVEYOR_REPO_NAME, `
$env:APPVEYOR_REPO_BRANCH, $env:APPVEYOR_PULL_REQUEST_NUMBER
$env:BRANCH = $env:BRANCH -replace "/#$"
- ps: $env:PATH += $env:QTDIR
- ps: | # update and init submodules
git submodule -q update --init `
3rdparty/cereal `
3rdparty/ffmpeg `
3rdparty/GSL `
3rdparty/hidapi `
3rdparty/libpng `
3rdparty/Optional `
3rdparty/pugixml `
3rdparty/zlib `
asmjit `
Utilities/yaml-cpp `
Vulkan/glslang `
Vulkan/Vulkan-LoaderAndValidationLayers
2015-08-03 19:07:12 +00:00
platform: x64
configuration: Release - LLVM
build:
parallel: true
project: rpcs3.sln
verbosity: normal
2015-08-03 19:07:12 +00:00
before_build:
- ps: | # fetch precompiled build dependencies
if (!(test-path llvmlibs.7z)) { irm $env:LLVMLIBS -outfile llvmlibs.7z }
if (!(test-path vulkan.7z)) { irm $env:VULKAN -outfile vulkan.7z }
7z x llvmlibs.7z -aos -o"." | out-null
7z x vulkan.7z -aos -o".\lib\$env:CONFIGURATION-$env:PLATFORM" | out-null
2015-08-04 16:23:35 +00:00
after_build:
- ps: | # remove unnecessary files
rm .\bin\rpcs3.exp, .\bin\rpcs3.lib, .\bin\rpcs3.pdb
- ps: | # prepare compatibility database for packaging
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
$db = irm $env:COMPATDB -ea SilentlyContinue
if ($db -and $db.return_code -eq 0) {
$db | convertto-json -compress | out-file -encoding utf8 compat_database.dat
}
copy-item compat_database.dat .\bin\GuiConfigs\compat_database.dat
- ps: | # package artifacts
7z a $env:BUILD .\bin\*
7z a openssl_win64.7z C:\OpenSSL-Win64\bin\libeay32.dll C:\OpenSSL-Win64\bin\ssleay32.dll
test: off
artifacts:
- path: $(BUILD)
name: rpcs3
- path: openssl_win64.7z
name: openssl