mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-02-28 22:13:24 +00:00
appveyor.yml: use Visual Studio solution to build the project and cleanup
This commit is contained in:
parent
a11d66f52d
commit
64b2ae3cd5
106
appveyor.yml
106
appveyor.yml
@ -1,44 +1,82 @@
|
|||||||
|
#---------------------------------#
|
||||||
|
# general configuration #
|
||||||
|
#---------------------------------#
|
||||||
|
|
||||||
|
# version format
|
||||||
version: '0.0.3-{build}'
|
version: '0.0.3-{build}'
|
||||||
|
|
||||||
os: Visual Studio 2015
|
#---------------------------------#
|
||||||
platform: x64
|
# environment configuration #
|
||||||
clone_folder: C:\rpcs3
|
#---------------------------------#
|
||||||
clone_depth: 3
|
|
||||||
test: off
|
|
||||||
|
|
||||||
configuration:
|
# Build worker image (VM template)
|
||||||
# Release
|
image: Visual Studio 2015
|
||||||
- ReleaseLLVM
|
|
||||||
|
|
||||||
before_build:
|
# clone directory
|
||||||
- ps: $env:Date="$(git show -s --date=short --format='%ad')"
|
clone_folder: c:\projects\rpcs3
|
||||||
- git submodule update --init 3rdparty/ffmpeg 3rdparty/pugixml asmjit 3rdparty/GSL 3rdparty/libpng Vulkan/glslang Vulkan/Vulkan-LoaderAndValidationLayers Utilities/yaml-cpp 3rdparty/cereal 3rdparty/zlib 3rdparty/hidapi 3rdparty/Optional
|
|
||||||
- 7z x zlib.7z -aos -oC:\rpcs3\ > null
|
|
||||||
- 7z x vulkan.7z -aos -oC:\rpcs3\Vulkan > null
|
|
||||||
- set BRANCH=%APPVEYOR_REPO_NAME%/%APPVEYOR_REPO_BRANCH%/#%APPVEYOR_PULL_REQUEST_NUMBER%
|
|
||||||
- if "%APPVEYOR_PULL_REQUEST_NUMBER%"=="" (set BRANCH=%APPVEYOR_REPO_NAME%/%APPVEYOR_REPO_BRANCH%)
|
|
||||||
- set CXXFLAGS=-DBRANCH=%BRANCH%
|
|
||||||
- if %configuration%==Release (cmake -G "Visual Studio 14 Win64" -DZLIB_ROOT=C:/rpcs3/zlib/ -DVULKAN_PREBUILT=ON)
|
|
||||||
else (7z x llvmlibs.7z -aos -oC:\rpcs3 > null && cmake -G "Visual Studio 14 Win64" -DLLVM_DIR=C:/rpcs3/llvm_build/lib/cmake/llvm -DZLIB_ROOT=C:/rpcs3/zlib/ -DVULKAN_PREBUILT=ON)
|
|
||||||
|
|
||||||
build_script:
|
# set clone depth
|
||||||
- cmake --build . --config Release -- /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll"
|
clone_depth: 3 # clone entire repository history if not defined
|
||||||
|
|
||||||
install:
|
# environment variables
|
||||||
- if not exist llvmlibs.7z appveyor DownloadFile "https://drive.google.com/uc?export=download&id=0B8A6NaxhQAGRY2k3Q2Yya05lcm8" -FileName llvmlibs.7z
|
environment:
|
||||||
- if not exist vulkan.7z appveyor DownloadFile "https://drive.google.com/uc?export=download&id=0B8A6NaxhQAGRaHYxV3VOS2d0a0U" -FileName vulkan.7z
|
QTDIR: C:\Qt\5.9.1\msvc2015_64
|
||||||
- if not exist zlib.7z appveyor DownloadFile "https://drive.google.com/uc?export=download&id=0B-HVE3xvheVFX05lRFdnZlh5aUU" -FileName zlib.7z
|
|
||||||
- set QTDIR=C:\Qt\5.8\msvc2015_64
|
|
||||||
- set OPENALDIR=C:\rpcs3\3rdparty\OpenAL
|
|
||||||
- set PATH=C:\Program Files (x86)\MSBuild\14.0\Bin;%QTDIR%;%PATH%
|
|
||||||
- set COMMIT_SHA=%APPVEYOR_REPO_COMMIT:~0,8%
|
|
||||||
|
|
||||||
artifacts:
|
|
||||||
- path: bin
|
|
||||||
name: 'rpcs3-v0.0.3-$(Date)-$(COMMIT_SHA)_win64'
|
|
||||||
type: zip
|
|
||||||
|
|
||||||
|
# build cache to preserve files/folders between builds
|
||||||
cache:
|
cache:
|
||||||
- llvmlibs.7z -> appveyor.yml
|
- llvmlibs.7z -> appveyor.yml
|
||||||
- vulkan.7z -> appveyor.yml
|
- vulkan.7z -> appveyor.yml
|
||||||
- zlib.7z -> appveyor.yml
|
|
||||||
|
# scripts that run after cloning repository
|
||||||
|
install:
|
||||||
|
- git submodule 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
|
||||||
|
|
||||||
|
#---------------------------------#
|
||||||
|
# build configuration #
|
||||||
|
#---------------------------------#
|
||||||
|
|
||||||
|
# build platform, i.e. x86, x64, Any CPU. This setting is optional.
|
||||||
|
platform: x64
|
||||||
|
|
||||||
|
# build Configuration, i.e. Debug, Release, etc.
|
||||||
|
configuration: Release - LLVM
|
||||||
|
|
||||||
|
build:
|
||||||
|
parallel: true # enable MSBuild parallel builds
|
||||||
|
project: rpcs3.sln # path to Visual Studio solution or project
|
||||||
|
# MSBuild verbosity level
|
||||||
|
verbosity: normal
|
||||||
|
|
||||||
|
# scripts to run before build
|
||||||
|
before_build:
|
||||||
|
- set BRANCH=%APPVEYOR_REPO_NAME%/%APPVEYOR_REPO_BRANCH%/#%APPVEYOR_PULL_REQUEST_NUMBER%
|
||||||
|
- if "%APPVEYOR_PULL_REQUEST_NUMBER%"=="" (set BRANCH=%APPVEYOR_REPO_NAME%/%APPVEYOR_REPO_BRANCH%)
|
||||||
|
- set PATH=%PATH%;%QTDIR%
|
||||||
|
- if not exist llvmlibs.7z appveyor DownloadFile "https://drive.google.com/uc?export=download&id=0B8A6NaxhQAGRY2k3Q2Yya05lcm8" -FileName llvmlibs.7z
|
||||||
|
- 7z x llvmlibs.7z -aos -o%APPVEYOR_BUILD_FOLDER% > null
|
||||||
|
- if not exist vulkan.7z appveyor DownloadFile "https://drive.google.com/uc?export=download&id=0B8A6NaxhQAGRaHYxV3VOS2d0a0U" -FileName vulkan.7z
|
||||||
|
- 7z x vulkan.7z -aos -o"%APPVEYOR_BUILD_FOLDER%\lib\%CONFIGURATION%-%PLATFORM%" > null
|
||||||
|
|
||||||
|
# scripts to run *after* solution is built and *before* automatic packaging occurs (web apps, NuGet packages, Azure Cloud Services)
|
||||||
|
before_package:
|
||||||
|
- rm %APPVEYOR_BUILD_FOLDER%\bin\rpcs3.exp
|
||||||
|
- rm %APPVEYOR_BUILD_FOLDER%\bin\rpcs3.lib
|
||||||
|
- rm %APPVEYOR_BUILD_FOLDER%\bin\rpcs3.pdb
|
||||||
|
- set COMMIT_DATE=%APPVEYOR_REPO_COMMIT_TIMESTAMP:~0,10%
|
||||||
|
- set COMMIT_SHA=%APPVEYOR_REPO_COMMIT:~0,8%
|
||||||
|
|
||||||
|
#---------------------------------#
|
||||||
|
# tests configuration #
|
||||||
|
#---------------------------------#
|
||||||
|
|
||||||
|
# to disable automatic tests
|
||||||
|
test: off
|
||||||
|
|
||||||
|
#---------------------------------#
|
||||||
|
# artifacts configuration #
|
||||||
|
#---------------------------------#
|
||||||
|
|
||||||
|
# pushing entire folder as a zip archive
|
||||||
|
artifacts:
|
||||||
|
- path: bin
|
||||||
|
name: 'rpcs3-v0.0.3-$(COMMIT_DATE)-$(COMMIT_SHA)_win64'
|
||||||
|
Loading…
x
Reference in New Issue
Block a user