Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
116 changes: 92 additions & 24 deletions .azuredevops/pipelines/DirectXMesh-GitHub-GDK-Dev17.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,8 @@ pr:
include:
- '.azuredevops/pipelines/DirectXMesh-GitHub-GDK-Dev17.yml'
- '.azuredevops/templates/DirectXMesh-build-gdk.yml'
- '.azuredevops/templates/DirectXMesh-build-gdkx.yml'
- '.azuredevops/templates/DirectXMesh-setup-gdk-auto.yml'
- CMakeList.txt
- build/*.in
- build/*.cmake
Expand Down Expand Up @@ -57,7 +59,7 @@ variables:

jobs:
- job: BUILD_GDK
displayName: 'Microsoft Game Development Kit (GDK Gaming.Desktop.x64)'
displayName: 'Microsoft Game Development Kit (Gaming.Desktop.x64)'
timeoutInMinutes: 120
cancelTimeoutInMinutes: 1
steps:
Expand Down Expand Up @@ -92,12 +94,17 @@ jobs:
- task: NuGetAuthenticate@1
displayName: 'NuGet Auth'
- task: PowerShell@2
displayName: 'NuGet Install GDK'
displayName: 'NuGet Install PC GDK'
inputs:
targetType: filePath
filePath: ./build/RestoreGDK.ps1
arguments: -GDKEditionNumber $(GDK_EDITION) -OutputDirectory $(EXTRACTED_FOLDER)
failOnStderr: true
- task: NuGetCommand@2
displayName: 'NuGet install Xbox GDK'
inputs:
command: custom
arguments: 'install -directdownload Microsoft.GDK.Xbox -ExcludeVersion -Version $(GDKNuGetPackageVersion) -OutputDirectory $(EXTRACTED_FOLDER)'
- task: CopyFiles@2
displayName: Set up Directory.Build.props
inputs:
Expand All @@ -121,8 +128,8 @@ jobs:
msVersion: '17.0'
vsYear: 2022

- job: BUILD_GDKX
displayName: 'Microsoft Game Development Kit (GDK x64)'
- job: BUILD_GDKX_SCAR
displayName: 'Microsoft Game Development Kit (x64+Xbox Series X|S)'
timeoutInMinutes: 120
cancelTimeoutInMinutes: 1
steps:
Expand Down Expand Up @@ -156,13 +163,73 @@ jobs:
displayName: 'Secure Supply Chain Analysis'
- task: NuGetAuthenticate@1
displayName: 'NuGet Auth'
- template: '/.azuredevops/templates/DirectXTex-setup-gdk-auto.yml'
parameters:
windows: true
scarlett: true
- task: CopyFiles@2
displayName: Set up Directory.Build.props
inputs:
SourceFolder: build
Contents: 'Directory.Build.props'
TargetFolder: $(Build.SourcesDirectory)
- task: MSBuild@1
displayName: Setup BWOI VCTargets
inputs:
solution: build/SetupBWOI.targets
msbuildArchitecture: x64
msbuildArguments: /p:GDKEditionNumber=$(GDK_EDITION)
- task: MSBuild@1
displayName: Log Information
inputs:
solution: build/LogInfo.targets
msbuildArchitecture: x64
msbuildArguments: /p:GDKEditionNumber=$(GDK_EDITION)
- template: '/.azuredevops/templates/DirectXMesh-build-gdkx.yml'
parameters:
msVersion: '17.0'
vsYear: 2022
xboxone: false

- job: BUILD_GDKX_XBONE
displayName: 'Microsoft Game Development Kit (x64+Xbox One)'
timeoutInMinutes: 120
cancelTimeoutInMinutes: 1
steps:
- checkout: self
clean: true
fetchTags: false
- task: NuGetToolInstaller@1
displayName: 'Use NuGet'
- task: PowerShell@2
displayName: 'NuGet Install GDK'
displayName: 'Create nuget.config with single source'
inputs:
targetType: filePath
filePath: ./build/RestoreGDK.ps1
arguments: -GDKEditionNumber $(GDK_EDITION) -OutputDirectory $(EXTRACTED_FOLDER)
failOnStderr: true
targetType: inline
script: |
$xml = @'
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<clear />
</packageSources>
</configuration>
'@
$xml | Set-Content -Path "$(Build.SourcesDirectory)\NuGet.config"

- task: NuGetCommand@2
# We have to use a nuget.config to provide the feed for the 'nuget install' option.
displayName: 'NuGet set package source to ADO feed'
inputs:
command: custom
arguments: sources add -Name xboxgdk -Source $(URL_FEED) -ConfigFile $(Build.SourcesDirectory)\NuGet.config
- task: nuget-security-analysis@0
displayName: 'Secure Supply Chain Analysis'
- task: NuGetAuthenticate@1
displayName: 'NuGet Auth'
- template: '/.azuredevops/templates/DirectXTex-setup-gdk-auto.yml'
parameters:
windows: true
scarlett: false
- task: CopyFiles@2
displayName: Set up Directory.Build.props
inputs:
Expand All @@ -185,9 +252,10 @@ jobs:
parameters:
msVersion: '17.0'
vsYear: 2022
scarlett: false

- job: BUILD_GDK_CMAKE_SCAR
displayName: 'Microsoft Game Development Kit (GDK) using CMake (Scarlett)'
displayName: 'Microsoft Game Development Kit (GDK) using CMake (Xbox Series X|S)'
timeoutInMinutes: 120
cancelTimeoutInMinutes: 1
steps:
Expand Down Expand Up @@ -221,13 +289,10 @@ jobs:
displayName: 'Secure Supply Chain Analysis'
- task: NuGetAuthenticate@1
displayName: 'NuGet Auth'
- task: PowerShell@2
displayName: 'NuGet Install GDK'
inputs:
targetType: filePath
filePath: ./build/RestoreGDK.ps1
arguments: -GDKEditionNumber $(GDK_EDITION) -OutputDirectory $(EXTRACTED_FOLDER)
failOnStderr: true
- template: '/.azuredevops/templates/DirectXTex-setup-gdk-auto.yml'
parameters:
windows: false
scarlett: true
- task: CmdLine@2
displayName: Setup BWOI for GDK command-line
inputs:
Expand All @@ -240,7 +305,10 @@ jobs:
echo ##vso[task.prependpath]%WindowsSdkVerBinPath%x64
echo ##vso[task.prependpath]%VCToolsInstallDir%bin\HostX64\x64
call $(Build.SourcesDirectory)\build\SetupBWOI.cmd $(EXTRACTED_FOLDER) $(GDK_EDITION) Scarlett
echo ##vso[task.setvariable variable=GameDK;]%GameDK%
echo ##vso[task.setvariable variable=GameDKLatest;]%GameDKLatest%
echo ##vso[task.setvariable variable=GameDKCoreLatest;]%GameDKCoreLatest%
echo ##vso[task.setvariable variable=GameDKXboxLatest;]%GameDKXboxLatest%
echo ##vso[task.setvariable variable=GRDKLatest;]%GRDKLatest%
echo ##vso[task.setvariable variable=GXDKLatest;]%GXDKLatest%
echo ##vso[task.setvariable variable=INCLUDE;]%INCLUDE%
Expand Down Expand Up @@ -337,13 +405,10 @@ jobs:
displayName: 'Secure Supply Chain Analysis'
- task: NuGetAuthenticate@1
displayName: 'NuGet Auth'
- task: PowerShell@2
displayName: 'NuGet Install GDK'
inputs:
targetType: filePath
filePath: ./build/RestoreGDK.ps1
arguments: -GDKEditionNumber $(GDK_EDITION) -OutputDirectory $(EXTRACTED_FOLDER)
failOnStderr: true
- template: '/.azuredevops/templates/DirectXTex-setup-gdk-auto.yml'
parameters:
windows: false
scarlett: false
- task: CmdLine@2
displayName: Setup BWOI for GDK command-line
inputs:
Expand All @@ -356,7 +421,10 @@ jobs:
echo ##vso[task.prependpath]%WindowsSdkVerBinPath%x64
echo ##vso[task.prependpath]%VCToolsInstallDir%bin\HostX64\x64
call $(Build.SourcesDirectory)\build\SetupBWOI.cmd $(EXTRACTED_FOLDER) $(GDK_EDITION) XboxOne
echo ##vso[task.setvariable variable=GameDK;]%GameDK%
echo ##vso[task.setvariable variable=GameDKLatest;]%GameDKLatest%
echo ##vso[task.setvariable variable=GameDKCoreLatest;]%GameDKCoreLatest%
echo ##vso[task.setvariable variable=GameDKXboxLatest;]%GameDKXboxLatest%
echo ##vso[task.setvariable variable=GRDKLatest;]%GRDKLatest%
echo ##vso[task.setvariable variable=GXDKLatest;]%GXDKLatest%
echo ##vso[task.setvariable variable=INCLUDE;]%INCLUDE%
Expand Down
7 changes: 6 additions & 1 deletion .azuredevops/pipelines/DirectXMesh-GitHub-GDK.yml
Original file line number Diff line number Diff line change
Expand Up @@ -110,12 +110,17 @@ jobs:
- task: NuGetAuthenticate@1
displayName: 'NuGet Auth'
- task: PowerShell@2
displayName: 'NuGet Install GDK'
displayName: 'NuGet Install PC GDK'
inputs:
targetType: filePath
filePath: ./build/RestoreGDK.ps1
arguments: -GDKEditionNumber $(GDK_EDITION) -OutputDirectory $(EXTRACTED_FOLDER)
failOnStderr: true
- task: NuGetCommand@2
displayName: 'NuGet install Xbox GDK'
inputs:
command: custom
arguments: 'install -directdownload Microsoft.GDK.Xbox -ExcludeVersion -Version $(GDKNuGetPackageVersion) -OutputDirectory $(EXTRACTED_FOLDER)'
- task: CopyFiles@2
displayName: Set up Directory.Build.props
inputs:
Expand Down
2 changes: 1 addition & 1 deletion .azuredevops/pipelines/DirectXMesh-GitHub.yml
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ jobs:
BuildPlatform: x86
BuildConfiguration: Debug
SpectreMitigation: false
# windows-2022 image is missing v142 spectre-mitigated libraries
# windows-2022 image is missing v142 spectre-mitigated libraries
steps:
- checkout: self
clean: true
Expand Down
10 changes: 10 additions & 0 deletions .azuredevops/templates/DirectXMesh-build-gdkx.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,12 @@ parameters:
type: number
values:
- 2022
- name: scarlett
type: boolean
default: true
- name: xboxone
type: boolean
default: true

steps:
- task: VSBuild@1
Expand All @@ -36,6 +42,7 @@ steps:
msbuildArgs: /p:GDKEditionNumber=$(GDK_EDITION)
- task: VSBuild@1
displayName: Build solution DirectXMesh_GDKX_${{ parameters.vsYear }} xbdbg
condition: eq(${{ parameters.xboxone }}, true)
inputs:
solution: DirectXMesh_GDKX_${{ parameters.vsYear }}.sln
vsVersion: ${{ parameters.msVersion }}
Expand All @@ -45,6 +52,7 @@ steps:
msbuildArgs: /p:GDKEditionNumber=$(GDK_EDITION)
- task: VSBuild@1
displayName: Build solution DirectXMesh_GDKX_${{ parameters.vsYear }} xbrel
condition: eq(${{ parameters.xboxone }}, true)
inputs:
solution: DirectXMesh_GDKX_${{ parameters.vsYear }}.sln
vsVersion: ${{ parameters.msVersion }}
Expand All @@ -54,6 +62,7 @@ steps:
msbuildArgs: /p:GDKEditionNumber=$(GDK_EDITION)
- task: VSBuild@1
displayName: Build solution DirectXMesh_GDKX_${{ parameters.vsYear }} scardbg
condition: eq(${{ parameters.scarlett }}, true)
inputs:
solution: DirectXMesh_GDKX_${{ parameters.vsYear }}.sln
vsVersion: ${{ parameters.msVersion }}
Expand All @@ -63,6 +72,7 @@ steps:
msbuildArgs: /p:GDKEditionNumber=$(GDK_EDITION)
- task: VSBuild@1
displayName: Build solution DirectXMesh_GDKX_${{ parameters.vsYear }} scarrel
condition: eq(${{ parameters.scarlett }}, true)
inputs:
solution: DirectXMesh_GDKX_${{ parameters.vsYear }}.sln
vsVersion: ${{ parameters.msVersion }}
Expand Down
55 changes: 55 additions & 0 deletions .azuredevops/templates/DirectXMesh-setup-gdk-auto.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# Copyright (c) Microsoft Corporation.
# Licensed under the MIT License.
#
# http://go.microsoft.com/fwlink/?LinkId=248926

# Template used by GitHub-GDK-* pipelines

parameters:
- name: windows
type: boolean
default: true
- name: scarlett
type: boolean
default: true

steps:
- task: PowerShell@2
displayName: 'NuGet Install GDK'
inputs:
targetType: filePath
filePath: ./build/RestoreGDK.ps1
arguments: -GDKEditionNumber $(GDK_EDITION) -OutputDirectory $(EXTRACTED_FOLDER) -AutoLayout
failOnStderr: true
- task: NuGetCommand@2
displayName: 'NuGet install GDK (Windows)'
condition: and(ge(variables.GDKEditionNumber, '251000'), eq(${{ parameters.windows }}, true))
inputs:
command: custom
arguments: >
install -directdownload Microsoft.GDK.Windows -ExcludeVersion -Version $(GDKNuGetPackageVersion)
-OutputDirectory $(EXTRACTED_FOLDER)
- task: NuGetCommand@2
displayName: 'NuGet install GDK (Xbox Series X|S)'
condition: and(ge(variables.GDKEditionNumber, '251000'), eq(${{ parameters.scarlett }}, true))
inputs:
command: custom
arguments: >
install -directdownload Microsoft.GDK.Xbox.XboxSeriesX_S -ExcludeVersion -Version $(GDKNuGetPackageVersion)
-OutputDirectory $(EXTRACTED_FOLDER)
- task: NuGetCommand@2
displayName: 'NuGet install GDK (Xbox One)'
condition: and(ge(variables.GDKEditionNumber, '251000'), eq(${{ parameters.scarlett }}, false))
inputs:
command: custom
arguments: >
install -directdownload Microsoft.GDK.Xbox.XboxOne -ExcludeVersion -Version $(GDKNuGetPackageVersion)
-OutputDirectory $(EXTRACTED_FOLDER)
- task: NuGetCommand@2
displayName: 'NuGet install GDK (Xbox)'
condition: lt(variables.GDKEditionNumber, '251000')
inputs:
command: custom
arguments: >
install -directdownload Microsoft.GDK.Xbox -ExcludeVersion -Version $(GDKNuGetPackageVersion)
-OutputDirectory $(EXTRACTED_FOLDER)
Loading
Loading