Skip to content

Commit 33c4600

Browse files
committed
OpenXR SDK 1.0.32 (2023-11-29)
This release contains a number of vendor extensions, plus a new ratified revision to the XR_KHR_loader_init extension that specifies forwarding the init calls to API layers. Vendors of API layers, primarily on Android, must verify they can handle being passed XR_NULL_HANDLE for the instance parameter of xrGetInstanceProcAddr, to avoid bugs when using the updated loader. This release also contains a number of build system cleanups and fixes. Users of the Android Gradle Plugin and our official loader AAR file can now use the OpenXR::headers target just like on desktop: there is now metadata for the “prefab” tool to generate for CMake both this header/include-only target and the normal OpenXR::openxr_loader imported library target. The shipped AAR is much smaller due to stripping debug data from the binaries, which helps in case application build systems do not automatically strip native binaries. A bug in the loader Android manifest as shipped in 1.0.31 has also been fixed. - Registry - Extension reservation: Reserve extension id for XR_KHR_maintenance1 (internal MR 3010) - Extension reservation: Reserve extension id for XR_KHR_game_controller (internal MR 3019) - New vendor extension: XR_HTC_anchor (internal MR 2667) - New vendor extension: XR_META_touch_controller_plus (internal MR 2702) - New vendor extension: XR_ML_marker_understanding (internal MR 2750) - New vendor extension: XR_ML_localization_map (internal MR 2802, internal MR 3045, internal MR 3047) - XR_KHR_loader_init: New Khronos ratified revision, adds support for forwarding loader init calls to API layers (internal MR 2703) - SDK - Loader: Pass xrInitializeLoaderKHR calls to enabled API layers if XR_KHR_loader_init is enabled, per ratified update to that extension. (internal MR 2703) - Loader: Partial fix for the loader not honoring BUILD_LOADER_WITH_EXCEPTION_HANDLING on Android. (internal MR 2870, OpenXR-SDK-Source PR 405, internal issue 1999) - Loader Android AAR: Strip binaries before inclusion in AAR, as loader is stable (and mostly shared with all platforms) and size difference is substantial. - Loader Android AAR: Expose OpenXR::headers prefab imported target just as on desktop builds (internal MR 2886) - Loader Android AAR: Generate a source jar file for completeness. (internal MR 2886) - Loader Android AAR: Add <uses-sdk> elements to Android loader AAR manifest, to prevent the manifest merger from assuming a version < 4 and adding unneeded permissions accordingly. (internal MR 3029) (internal MR 3032) - Clean up our CMake build substantially, correcting dependencies and narrowing the scope of includes. (internal MR 2886, OpenXR-SDK-Source issue 344, internal issue 1872, OpenXR-SDK-Source issue 419, internal issue 2071, internal MR 2987) - Fix build in directories containing spaces. (internal MR 2886, OpenXR-SDK-Source issue 344, internal issue 1872, OpenXR-SDK-Source issue 419, internal issue 2071, internal MR 2987) - Fix linking to GLX when glvnd is not found on the system (internal MR 3000) - Fix use of OpenXR::headers target when not building the loader. (internal MR 2886, OpenXR-SDK-Source issue 344, internal issue 1872, OpenXR-SDK-Source issue 419, internal issue 2071, internal MR 2987) - scripts: Migrate namedtuple usage to dataclass, and expose the definitions for reuse. (internal MR 2183) - scripts: Clean up formatting, clean up some issues found by type-aware Python editors, and improve the experience of editing Python scripts in some editors by adding a .env file. (internal MR 2183) - scripts: Support base header types with no derived types defined yet. (internal MR 2802) GitOrigin-RevId: 0a6bbc30cf10fdec436dfa81abf27747251a0821
1 parent 5e9bc99 commit 33c4600

Some content is hidden

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

62 files changed

+2968
-1651
lines changed

.appveyor.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
#
33
# SPDX-License-Identifier: Apache-2.0
44

5-
version: 1.0.31.{build}
5+
version: 1.0.32.{build}
66
image: Visual Studio 2017
77

88

.azure-pipelines/shared/build_jobs.yml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,9 @@ jobs:
2626
presentationBackend: wayland
2727
pool:
2828
vmImage: "ubuntu-latest"
29-
container: khronosgroup/docker-images:openxr-sdk.20230323
30-
# container: khronosgroup/docker-images@sha256:20edadbaa6cdec4fed7417c24b18dfb4b93eec940fdf1a27b5f97272dec47032
29+
# 20230614
30+
container: khronosgroup/docker-images:openxr-sdk@sha256:fbc5fe29a0787cccc8f66bd9bd03c9dbddf591c7d1aea673108c38c908b280f5
31+
3132
steps:
3233
# First build as debug
3334
- template: build_linux.yml

.azure-pipelines/shared/build_linux.yml

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -16,15 +16,15 @@ parameters:
1616
default: build
1717

1818
steps:
19-
- script: |
20-
rm -rf ${{ parameters.sourceDir }}/${{ parameters.buildDir }}
21-
mkdir -p ${{ parameters.sourceDir }}/${{ parameters.buildDir }}
22-
displayName: "Clean up and create new build directory"
19+
- checkout: self
20+
lfs: true
21+
- script: "rm -rf ${{ parameters.sourceDir }}/${{ parameters.buildDir }}"
22+
displayName: "Clean up build directory"
2323

24-
- script: cmake -G Ninja .. -DCMAKE_BUILD_TYPE=${{ parameters.buildType }} ${{ parameters.cmakeArgs }}
25-
workingDirectory: ${{ parameters.sourceDir }}/${{ parameters.buildDir }}
24+
- script: "cmake -G Ninja -S . -B ${{ parameters.buildDir }} -DCMAKE_BUILD_TYPE=${{ parameters.buildType }} ${{ parameters.cmakeArgs }}"
25+
workingDirectory: "${{ parameters.sourceDir }}"
2626
displayName: "Generate build system"
2727

28-
- script: ninja
29-
workingDirectory: ${{ parameters.sourceDir }}/${{ parameters.buildDir }}
28+
- script: "ninja -C ${{ parameters.buildDir }}"
29+
workingDirectory: "${{ parameters.sourceDir }}"
3030
displayName: "Compile"

.azure-pipelines/shared/build_mingw.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,9 @@ parameters:
1717
default: "true"
1818

1919
steps:
20+
- checkout: self
21+
lfs: true
22+
2023
# - script: choco install -y ninja
2124
# displayName: 'Install Ninja'
2225

.azure-pipelines/shared/build_msvc.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,9 @@ parameters:
2020
default: "true"
2121

2222
steps:
23+
- checkout: self
24+
lfs: true
25+
2326
- powershell: ./.azure-pipelines/shared/install_vulkan.ps1
2427
displayName: Install Vulkan SDK
2528
workingDirectory: "${{ parameters.sourceDir }}"

.azure-pipelines/shared/check_clang_format.yml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,13 @@ jobs:
66
displayName: "clang-format"
77
pool:
88
vmImage: "ubuntu-latest"
9-
container: khronosgroup/docker-images:openxr-sdk.20230323
10-
# container: khronosgroup/docker-images@sha256:20edadbaa6cdec4fed7417c24b18dfb4b93eec940fdf1a27b5f97272dec47032
9+
# 20230614
10+
container: khronosgroup/docker-images:openxr-sdk@sha256:fbc5fe29a0787cccc8f66bd9bd03c9dbddf591c7d1aea673108c38c908b280f5
11+
1112
steps:
13+
- checkout: self
14+
lfs: true
15+
1216
- script: ./runClangFormat.sh
1317
displayName: Run clang-format
1418

Lines changed: 20 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,24 @@
11
# Copyright (c) 2020-2023, The Khronos Group Inc.
22
# SPDX-License-Identifier: Apache-2.0
33
jobs:
4-
- job: check_file_format
5-
displayName: 'Check file formatting'
6-
pool:
7-
vmImage: 'ubuntu-latest'
8-
container: khronosgroup/docker-images:openxr-sdk.20230323
9-
# container: khronosgroup/docker-images@sha256:20edadbaa6cdec4fed7417c24b18dfb4b93eec940fdf1a27b5f97272dec47032
10-
steps:
11-
- script: ./file_format.sh
12-
displayName: File formatting checks (file_format.sh)
4+
- job: check_file_format
5+
displayName: "Check file formatting"
6+
pool:
7+
vmImage: "ubuntu-latest"
8+
# 20230614
9+
container: khronosgroup/docker-images:openxr-sdk@sha256:fbc5fe29a0787cccc8f66bd9bd03c9dbddf591c7d1aea673108c38c908b280f5
1310

14-
- script: git diff --patch --exit-code > file_format.patch
15-
displayName: Save changes as diff
16-
- script: echo "The following files need file formatting:"; sed -n -e "s/^diff.* b\///p" file_format.patch
17-
condition: failed()
18-
- task: PublishPipelineArtifact@1
19-
displayName: Publish diff
20-
condition: failed()
21-
inputs:
22-
path: $(System.DefaultWorkingDirectory)/file_format.patch
23-
artifact: file_format_changes
11+
steps:
12+
- script: ./file_format.sh
13+
displayName: File formatting checks (file_format.sh)
14+
15+
- script: git diff --patch --exit-code > file_format.patch
16+
displayName: Save changes as diff
17+
- script: echo "The following files need file formatting:"; sed -n -e "s/^diff.* b\///p" file_format.patch
18+
condition: failed()
19+
- task: PublishPipelineArtifact@1
20+
displayName: Publish diff
21+
condition: failed()
22+
inputs:
23+
path: $(System.DefaultWorkingDirectory)/file_format.patch
24+
artifact: file_format_changes

.azure-pipelines/shared/codespell.yml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,12 @@ jobs:
66
displayName: "codespell"
77
pool:
88
vmImage: "ubuntu-latest"
9-
container: khronosgroup/docker-images:openxr-sdk.20230323
10-
# container: khronosgroup/docker-images@sha256:20edadbaa6cdec4fed7417c24b18dfb4b93eec940fdf1a27b5f97272dec47032
9+
# 20230614
10+
container: khronosgroup/docker-images:openxr-sdk@sha256:fbc5fe29a0787cccc8f66bd9bd03c9dbddf591c7d1aea673108c38c908b280f5
11+
1112
steps:
13+
- checkout: self
14+
lfs: true
15+
1216
- script: ./checkCodespell
1317
displayName: Run Codespell script

.env

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# Copyright (c) 2022-2023, The Khronos Group Inc.
2+
#
3+
# SPDX-License-Identifier: Apache-2.0
4+
5+
# Improves the Python editing experience with vscode.
6+
PYTHONPATH=specification/scripts:src/scripts:external/python

.github/workflows/check_clang_format_and_codespell.yml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,14 @@ jobs:
1010
clang-format:
1111
runs-on: ubuntu-latest
1212
container:
13-
image: khronosgroup/docker-images:openxr-sdk.20230209
13+
# 20230614
14+
image: khronosgroup/docker-images:openxr-sdk@sha256:fbc5fe29a0787cccc8f66bd9bd03c9dbddf591c7d1aea673108c38c908b280f5
15+
1416
steps:
1517
- uses: actions/checkout@v4
18+
with:
19+
lfs: true
20+
1621
- run: ./runClangFormat.sh
1722
name: Run clang-format
1823

0 commit comments

Comments
 (0)