2020-03-02 23:55:05 +01:00
|
|
|
trigger:
|
2020-03-03 03:42:28 +01:00
|
|
|
branches:
|
|
|
|
include:
|
|
|
|
- master
|
|
|
|
tags:
|
|
|
|
exclude:
|
|
|
|
- '*'
|
2020-03-14 20:50:17 +01:00
|
|
|
pr:
|
|
|
|
branches:
|
|
|
|
include:
|
|
|
|
- master
|
2020-03-03 03:42:28 +01:00
|
|
|
jobs:
|
|
|
|
- job: Linux_Build
|
|
|
|
strategy:
|
|
|
|
matrix:
|
|
|
|
Clang:
|
|
|
|
COMPILER: clang
|
|
|
|
GCC:
|
|
|
|
COMPILER: gcc
|
|
|
|
DEPLOY_APPIMAGE: true
|
|
|
|
variables:
|
|
|
|
CCACHE_DIR: $(Pipeline.Workspace)/ccache
|
2020-04-07 04:53:23 +02:00
|
|
|
IS_AZURE: true
|
2020-03-03 03:42:28 +01:00
|
|
|
pool:
|
|
|
|
vmImage: 'ubuntu-latest'
|
|
|
|
steps:
|
2020-03-28 21:13:55 +01:00
|
|
|
- task: Cache@2
|
2020-03-03 03:42:28 +01:00
|
|
|
inputs:
|
|
|
|
key: ccache | $(Agent.OS) | $(COMPILER)
|
|
|
|
path: $(CCACHE_DIR)
|
2020-03-27 14:37:27 +01:00
|
|
|
displayName: ccache
|
2020-03-14 20:50:17 +01:00
|
|
|
|
2020-03-03 03:42:28 +01:00
|
|
|
- bash: |
|
2020-05-15 05:04:24 +02:00
|
|
|
docker pull --quiet rpcs3/rpcs3-travis-xenial:1.4
|
2020-03-03 03:42:28 +01:00
|
|
|
docker run \
|
|
|
|
-v $(pwd):/rpcs3 \
|
2020-04-07 04:53:23 +02:00
|
|
|
--env-file .ci/travis.env \
|
2020-03-03 03:42:28 +01:00
|
|
|
-v $CCACHE_DIR:/root/.ccache \
|
|
|
|
-v $BUILD_ARTIFACTSTAGINGDIRECTORY:/root/artifacts \
|
2020-05-15 05:04:24 +02:00
|
|
|
rpcs3/rpcs3-travis-xenial:1.4 \
|
2020-04-07 04:53:23 +02:00
|
|
|
/rpcs3/.ci/build-linux.sh
|
2020-03-03 03:42:28 +01:00
|
|
|
displayName: Docker setup and build
|
2020-03-14 20:50:17 +01:00
|
|
|
|
2020-03-03 03:42:28 +01:00
|
|
|
- publish: $(Build.ArtifactStagingDirectory)
|
2020-06-08 03:31:12 +02:00
|
|
|
condition: and(succeeded(), eq(variables['COMPILER'], 'gcc'))
|
|
|
|
artifact: RPCS3 for Linux
|
2020-03-27 14:37:27 +01:00
|
|
|
|
|
|
|
- job: Windows_Build
|
|
|
|
variables:
|
|
|
|
COMPILER: msvc
|
2020-06-11 05:14:09 +02:00
|
|
|
QT_VER: '5.14.2'
|
|
|
|
QT_DATE: '202003291224'
|
2020-03-27 14:37:27 +01:00
|
|
|
QTDIR: C:\Qt\$(QT_VER)\msvc2017_64
|
2020-05-07 15:33:43 +02:00
|
|
|
VULKAN_VER: '1.2.135.0'
|
|
|
|
VULKAN_SDK_SHA: '181b3353612c8b0fc5e1857b652d62140191ae42b98f2f0d532cf349cebfd8c6'
|
2020-03-27 14:37:27 +01:00
|
|
|
VULKAN_SDK: C:\VulkanSDK\$(VULKAN_VER)
|
|
|
|
CACHE_DIR: ./cache
|
|
|
|
|
|
|
|
pool:
|
|
|
|
vmImage: "windows-latest"
|
|
|
|
|
|
|
|
steps:
|
2020-05-26 01:33:59 +02:00
|
|
|
- bash: .ci/get_keys-windows.sh
|
|
|
|
displayName: Get Cache Keys
|
|
|
|
|
2020-03-28 21:13:55 +01:00
|
|
|
- task: Cache@2
|
2020-03-27 14:37:27 +01:00
|
|
|
inputs:
|
2020-05-26 01:33:59 +02:00
|
|
|
key: $(Agent.OS) | $(COMPILER) | "$(QT_VER)" | $(VULKAN_SDK_SHA) | llvm.lock | glslang.lock
|
2020-03-27 14:37:27 +01:00
|
|
|
path: $(CACHE_DIR)
|
2020-05-26 01:33:59 +02:00
|
|
|
restoreKeys: |
|
|
|
|
$(Agent.OS) | $(COMPILER)
|
2020-03-27 14:37:27 +01:00
|
|
|
displayName: Cache
|
|
|
|
|
2020-04-07 04:53:23 +02:00
|
|
|
- bash: .ci/setup-windows.sh
|
2020-03-27 14:37:27 +01:00
|
|
|
displayName: Download and unpack dependencies
|
|
|
|
|
2020-04-07 04:53:23 +02:00
|
|
|
- bash: .ci/export-azure-vars.sh
|
2020-03-28 01:19:44 +01:00
|
|
|
displayName: Export Variables
|
|
|
|
|
2020-05-23 02:04:58 +02:00
|
|
|
- task: MSBuild@1
|
|
|
|
inputs:
|
|
|
|
solution: './Vulkan/spirv-tools-build/spirv-tools-build.vcxproj'
|
|
|
|
maximumCpuCount: true
|
|
|
|
platform: x64
|
|
|
|
configuration: 'Release'
|
|
|
|
displayName: Compile SPIRV-Tools
|
|
|
|
|
2020-03-27 14:37:27 +01:00
|
|
|
- task: VSBuild@1
|
|
|
|
inputs:
|
|
|
|
solution: 'rpcs3.sln'
|
2020-05-23 02:04:58 +02:00
|
|
|
maximumCpuCount: true
|
2020-03-27 14:37:27 +01:00
|
|
|
platform: x64
|
|
|
|
configuration: 'Release - LLVM'
|
2020-08-26 21:18:04 +02:00
|
|
|
msbuildArgs: '/p:VCToolsVersion=14.25.28610'
|
2020-03-27 14:37:27 +01:00
|
|
|
displayName: Compile RPCS3
|
|
|
|
|
2020-04-07 04:53:23 +02:00
|
|
|
- bash: .ci/deploy-windows.sh
|
2020-03-27 14:37:27 +01:00
|
|
|
displayName: Pack up build artifacts
|
|
|
|
|
|
|
|
- publish: $(Build.ArtifactStagingDirectory)
|
2020-06-08 03:31:12 +02:00
|
|
|
condition: succeeded()
|
|
|
|
artifact: RPCS3 for Windows
|
2020-03-27 14:37:27 +01:00
|
|
|
|
2020-08-15 21:46:53 +02:00
|
|
|
- bash: .ci/github-upload-windows.sh
|
2020-08-16 03:30:25 +02:00
|
|
|
condition: and(ne(variables['Build.Reason'], 'PullRequest'), eq(variables['Build.Repository.Name'], 'RPCS3/rpcs3'), eq(variables['Build.SourceBranch'], 'refs/heads/master'))
|
2020-03-27 14:37:27 +01:00
|
|
|
displayName: Push build to GitHub
|
2020-08-15 21:46:53 +02:00
|
|
|
env:
|
|
|
|
RPCS3_TOKEN: $(RPCS3-Token)
|