Skip to content

Commit b669d4a

Browse files
committed
OpenXR SDK 1.0.16 (2021-05-11)
This release contains an update to define a new error code, XR_ERROR_RUNTIME_UNAVAILABLE, now returned by the loader at xrCreateInstance and xrEnumerateInstanceProperties when it cannot find or load a runtime for some reason. This should be more clear for developers when encountering it, as well as helpful when troubleshooting errors hit by users. (The previously-returned error was typically XR_ERROR_INSTANCE_LOST, which is confusing when returned when trying to create an instance.) This release also includes a new multi-vendor extension, a new vendor extension, and improved concurrency handling in the loader, among smaller fixes. - Registry - Add new XR_ERROR_RUNTIME_UNAVAILABLE error code, add XR_ERROR_RUNTIME_UNAVAILABLE as a supported error code to xrCreateInstance and xrEnumerateInstanceProperties, and remove XR_ERROR_INSTANCE_LOST as a supported error code from xrCreateInstance. (internal MR 2024, internal issue 1552, OpenXR-SDK-Source/#177) - Add XR_EXT_hand_joint_motion_range multi-vendor extension. (internal MR 1995) - Add XR_FB_swapchain_update_state vendor extension. (internal MR 1997) - Fix missing XR_ERROR_INSTANCE_LOST return codes for extension functions in XR_EXT_performance_settings, XR_EXT_debug_utils, XR_EXT_conformance_automation, and XR_EXT_thermal_query. (internal MR 2023, OpenXR-Docs/#10, internal issue 1256) - Reserve extension 166 for working group use. (internal MR 2025) - SDK - Loader: Change runtime part to return XR_ERROR_RUNTIME_UNAVAILABLE when there is an error loading a runtime. (internal MR 2024, internal issue 1552, OpenXR-SDK-Source/#177) - Loader: Simplify in areas where code paths were dead. (internal MR 2024) - Loader: Improved locking around a few areas of the loader that aren’t robust against usual concurrent calls. (OpenXR-SDK-Source/#252) - validation layer: Fix generated code when a protected extension contains a base header type. (internal MR 1997)
1 parent e5432f7 commit b669d4a

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

44 files changed

+585
-261
lines changed

.appveyor.yml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,8 @@
1-
version: 1.0.5.{build}
1+
# Copyright (c) 2017-2021 The Khronos Group Inc.
2+
#
3+
# SPDX-License-Identifier: Apache-2.0
4+
5+
version: 1.0.16.{build}
26
image: Visual Studio 2017
37

48

.azure-pipelines/nuget/NugetTemplate/OpenXR.Loader.nuspec

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,16 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
3+
<!--
4+
Copyright (c) 2020 The Khronos Group Inc.
5+
SPDX-License-Identifier: CC-BY-4.0
6+
-->
37
<metadata>
48
<id>OpenXR.Loader</id>
59
<version></version>
610
<authors>Khronos Group</authors>
711
<owners>Khronos Group</owners>
812
<requireLicenseAcceptance>false</requireLicenseAcceptance>
9-
<license type="expression">Apache-2.0</license>
13+
<license type="expression">Apache-2.0 OR MIT</license>
1014
<licenseUrl>https://licenses.nuget.org/Apache-2.0</licenseUrl>
1115
<projectUrl>https://github.com/KhronosGroup/OpenXR-SDK</projectUrl>
1216
<description>Khronos OpenXR loader and headers required to build a Win32 or UWP OpenXR application</description>

.azure-pipelines/nuget/NugetTemplate/build/native/OpenXR.Loader.props

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,8 @@
11
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
2+
<!--
3+
Copyright (c) 2020 The Khronos Group Inc.
4+
SPDX-License-Identifier: CC-BY-4.0
5+
-->
26
<PropertyGroup>
37
<OpenXRPackageRoot>$(MSBuildThisFileDirectory)..\..\</OpenXRPackageRoot>
48
</PropertyGroup>

.azure-pipelines/nuget/NugetTemplate/build/native/OpenXR.Loader.targets

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,9 @@
1-
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
1+
<Project ToolsVersion="4.0"
2+
xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3+
<!--
4+
Copyright (c) 2020 The Khronos Group Inc.
5+
SPDX-License-Identifier: CC-BY-4.0
6+
-->
27

38
<Choose>
49
<When Condition="'$(ApplicationType)|$(ApplicationTypeRevision)' == 'Windows Store|10.0'">

.azure-pipelines/openxr-sdk-source.yml

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Copyright (c) 2019-2020 The Khronos Group Inc.
1+
# Copyright (c) 2019-2021 The Khronos Group Inc.
22
# SPDX-License-Identifier: Apache-2.0
33

44
# Main azure-pipelines configuration for the OpenXR-SDK-Sources repo.
@@ -12,16 +12,16 @@ variables:
1212
stages:
1313
- stage: Check
1414
jobs:
15-
- template: check_clang_format.yml
15+
- template: shared/check_clang_format.yml
1616

1717
- stage: Build
1818
jobs:
19-
- template: build_jobs.yml
19+
- template: shared/build_jobs.yml
2020
# Build the loader documentation
2121
- job: loader_docs
2222
pool:
23-
vmImage: "ubuntu-16.04"
24-
container: khronosgroup/docker-images:openxr-base
23+
vmImage: "ubuntu-latest"
24+
container: khronosgroup/docker-images:openxr-base.202102
2525
steps:
2626
- script: make loader
2727
workingDirectory: specification
@@ -33,8 +33,8 @@ stages:
3333
jobs:
3434
- job: archive
3535
pool:
36-
vmImage: "ubuntu-16.04"
37-
container: khronosgroup/docker-images:openxr-base
36+
vmImage: "ubuntu-latest"
37+
container: khronosgroup/docker-images:openxr-base.202102
3838
steps:
3939
- script: make loader
4040
workingDirectory: specification
@@ -61,14 +61,14 @@ stages:
6161
buildType: RelWithDebInfo
6262
presentationBackend: wayland
6363
pool:
64-
vmImage: "ubuntu-16.04"
64+
vmImage: "ubuntu-latest"
6565
container: khronosgroup/docker-images:openxr-sdk
6666
steps:
6767
- task: DownloadPipelineArtifact@2
68+
displayName: Download archived OpenXR-SDK
6869
inputs:
6970
source: current
7071
artifact: sdk-tarball
71-
displayName: Download archived OpenXR-SDK
7272
path: "$(Pipeline.Workspace)"
7373
- script: ls -la
7474
displayName: List files in directory
@@ -80,7 +80,7 @@ stages:
8080
destinationFolder: $(Pipeline.Workspace)/pregen
8181
cleanDestinationFolder: true
8282
- script: ls -la $(Pipeline.Workspace)/pregen
83-
- template: build_linux.yml
83+
- template: shared/build_linux.yml
8484
parameters:
8585
sourceDir: $(Pipeline.Workspace)/pregen
8686
buildType: RelWithDebInfo
@@ -92,10 +92,10 @@ stages:
9292
vmImage: "windows-latest"
9393
steps:
9494
- task: DownloadPipelineArtifact@2
95+
displayName: Download archived OpenXR-SDK
9596
inputs:
9697
source: current
9798
artifact: sdk-tarball
98-
displayName: Download archived OpenXR-SDK
9999
path: "$(Pipeline.Workspace)"
100100

101101
- task: ExtractFiles@1
@@ -104,7 +104,7 @@ stages:
104104
destinationFolder: $(Pipeline.Workspace)/pregen
105105
cleanDestinationFolder: true
106106

107-
- template: build_msvc.yml
107+
- template: shared/build_msvc.yml
108108
parameters:
109109
sourceDir: $(Pipeline.Workspace)/pregen
110110
buildType: RelWithDebInfo

.azure-pipelines/openxr-sdk.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Copyright (c) 2019-2020 The Khronos Group Inc.
1+
# Copyright (c) 2019-2021 The Khronos Group Inc.
22
# SPDX-License-Identifier: Apache-2.0
33

44
# Main azure-pipelines configuration for the OpenXR-SDK repo.
@@ -11,4 +11,4 @@ trigger:
1111
stages:
1212
- stage: Build
1313
jobs:
14-
- template: build_jobs.yml
14+
- template: shared/build_jobs.yml

.azure-pipelines/build_jobs.yml renamed to .azure-pipelines/shared/build_jobs.yml

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,13 @@
1-
# Copyright (c) 2019-2020 The Khronos Group Inc.
1+
# Copyright (c) 2019-2021 The Khronos Group Inc.
22
# SPDX-License-Identifier: Apache-2.0
33

44
parameters:
5-
sourceDir: "$(System.DefaultWorkingDirectory)"
5+
- name: sourceDir
6+
type: string
7+
default: "$(System.DefaultWorkingDirectory)"
8+
- name: isSdk
9+
type: boolean
10+
default: true
611

712
jobs:
813
# Build the loader, API layers, and samples on Linux
@@ -21,7 +26,7 @@ jobs:
2126
presentationBackend: wayland
2227
pool:
2328
vmImage: "ubuntu-latest"
24-
container: khronosgroup/docker-images:openxr-sdk
29+
container: khronosgroup/docker-images:openxr-sdk.202102
2530
steps:
2631
# First build as debug
2732
- template: build_linux.yml
@@ -43,7 +48,7 @@ jobs:
4348
- task: PythonScript@0
4449
name: winmatrix
4550
inputs:
46-
scriptPath: $(System.DefaultWorkingDirectory)/.azure-pipelines/generate_windows_matrix_build.py
51+
scriptPath: $(System.DefaultWorkingDirectory)/.azure-pipelines/shared/generate_windows_matrix_build.py
4752
# argument sets the variable name defined by python script
4853
arguments: winbuild
4954

@@ -91,6 +96,7 @@ jobs:
9196

9297
- job: combine_artifacts
9398
dependsOn: windows_build
99+
condition: ${{ eq(parameters.isSdk, true) }}
94100
displayName: "Organize artifacts"
95101
pool:
96102
vmImage: "windows-latest"
@@ -119,11 +125,11 @@ jobs:
119125
# Use the specified version of Python from the tool cache
120126
- task: UsePythonVersion@0
121127
inputs:
122-
versionSpec: '3.9'
128+
versionSpec: "3.9"
123129
- task: PythonScript@0
124130
displayName: Move artifact contents
125131
inputs:
126-
scriptPath: $(System.DefaultWorkingDirectory)/.azure-pipelines/organize_windows_artifacts.py
132+
scriptPath: $(System.DefaultWorkingDirectory)/.azure-pipelines/shared/organize_windows_artifacts.py
127133
arguments: $(Pipeline.Workspace) $(System.DefaultWorkingDirectory)/openxr_loader
128134
- task: PublishPipelineArtifact@1
129135
displayName: Publish combined artifact

.azure-pipelines/build_linux.yml renamed to .azure-pipelines/shared/build_linux.yml

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,19 @@
1-
# Copyright (c) 2019-2020 The Khronos Group Inc.
1+
# Copyright (c) 2019-2021 The Khronos Group Inc.
22
# SPDX-License-Identifier: Apache-2.0
33

44
parameters:
5-
buildType: RelWithDebInfo
6-
cmakeArgs: ""
7-
buildDir: build
8-
sourceDir: "$(System.DefaultWorkingDirectory)"
5+
- name: buildType
6+
type: string
7+
default: "RelWithDebInfo"
8+
- name: cmakeArgs
9+
type: string
10+
default: ""
11+
- name: sourceDir
12+
type: string
13+
default: "$(System.DefaultWorkingDirectory)"
14+
- name: buildDir
15+
type: string
16+
default: build
917

1018
steps:
1119
- script: |

.azure-pipelines/build_mingw.yml renamed to .azure-pipelines/shared/build_mingw.yml

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,20 @@
1-
# Copyright (c) 2019-2020 The Khronos Group Inc.
1+
# Copyright (c) 2019-2021 The Khronos Group Inc.
22
# SPDX-License-Identifier: Apache-2.0
33

44
parameters:
5-
buildType: "Debug"
6-
cmakeArgs: ""
7-
sourceDir: "$(System.DefaultWorkingDirectory)"
8-
useVulkan: "true"
5+
- name: buildType
6+
type: string
7+
default: "Debug"
8+
- name: cmakeArgs
9+
type: string
10+
default: ""
11+
- name: sourceDir
12+
type: string
13+
default: "$(System.DefaultWorkingDirectory)"
14+
# TODO should be boolean
15+
- name: useVulkan
16+
type: string
17+
default: "true"
918

1019
steps:
1120
# - script: choco install -y ninja
@@ -14,7 +23,7 @@ steps:
1423
- script: mkdir $(System.DefaultWorkingDirectory)\\vulkan_sdk
1524
displayName: "Make Vulkan SDK dir"
1625

17-
- powershell: ./.azure-pipelines/install_vulkan.ps1
26+
- powershell: ./.azure-pipelines/shared/install_vulkan.ps1
1827
displayName: Install Vulkan SDK
1928
workingDirectory: "${{ parameters.sourceDir }}"
2029
condition: eq('${{ parameters.useVulkan}}', 'true')

.azure-pipelines/build_msvc.yml renamed to .azure-pipelines/shared/build_msvc.yml

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,26 @@
1-
# Copyright (c) 2019-2020 The Khronos Group Inc.
1+
# Copyright (c) 2019-2021 The Khronos Group Inc.
22
# SPDX-License-Identifier: Apache-2.0
33

44
parameters:
5-
buildType: "Debug"
6-
generator: "Visual Studio 16 2019"
7-
cmakeArgs: ""
8-
sourceDir: "$(System.DefaultWorkingDirectory)"
9-
useVulkan: "true"
5+
- name: buildType
6+
type: string
7+
default: "Debug"
8+
- name: generator
9+
type: string
10+
default: "Visual Studio 16 2019"
11+
- name: cmakeArgs
12+
type: string
13+
default: ""
14+
- name: sourceDir
15+
type: string
16+
default: "$(System.DefaultWorkingDirectory)"
17+
# TODO should be boolean
18+
- name: useVulkan
19+
type: string
20+
default: "true"
1021

1122
steps:
12-
- powershell: ./.azure-pipelines/install_vulkan.ps1
23+
- powershell: ./.azure-pipelines/shared/install_vulkan.ps1
1324
displayName: Install Vulkan SDK
1425
workingDirectory: "${{ parameters.sourceDir }}"
1526
condition: eq('${{ parameters.useVulkan}}', 'true')

0 commit comments

Comments
 (0)