Skip to content

Commit 14f7893

Browse files
committed
build: Downstream Vulkan-ValidationLayers 1.4.310
2 parents 35e6297 + 789e54c commit 14f7893

File tree

996 files changed

+325846
-230818
lines changed

Some content is hidden

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

996 files changed

+325846
-230818
lines changed

.github/workflows/sdk_android_build.yml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,11 @@ jobs:
8181
run: |
8282
sdk_version=`echo "${{ github.ref }}" | cut -d "-" -f 3`
8383
echo "sdk_version=$sdk_version" >> $GITHUB_OUTPUT
84+
- name: Get NDK version
85+
id: get_ndk_version
86+
run: |
87+
ndk_version=$(basename $ANDROID_NDK | sed 's/^android-ndk-r//')
88+
echo "ndk_version=$ndk_version" >> $GITHUB_OUTPUT
8489
- name: Create release
8590
id: create_release
8691
uses: actions/create-release@v1
@@ -90,7 +95,7 @@ jobs:
9095
tag_name: ${{ github.ref }}
9196
release_name: Android binaries for ${{ steps.get_sdk_version.outputs.sdk_version }} SDK release
9297
body: |
93-
These Android Validation Layer binaries were built with ndk version 25.2.9519653
98+
These Android Validation Layer binaries were built with ndk version ${{ steps.get_ndk_version.outputs.ndk_version }}
9499
95100
The validation binaries can only be used with a device that supports Android API version 26 or higher.
96101
draft: false

.github/workflows/vvl.yml

Lines changed: 69 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
# Copyright (c) 2021-2024 Valve Corporation
2-
# Copyright (c) 2021-2024 LunarG, Inc.
3-
# Copyright (c) 2023-2024 RasterGrid Kft.
1+
# Copyright (c) 2021-2025 Valve Corporation
2+
# Copyright (c) 2021-2025 LunarG, Inc.
3+
# Copyright (c) 2023-2025 RasterGrid Kft.
44
#
55
# Licensed under the Apache License, Version 2.0 (the "License");
66
# you may not use this file except in compliance with the License.
@@ -37,7 +37,7 @@ permissions:
3737

3838
jobs:
3939
code-format:
40-
runs-on: ubuntu-22.04
40+
runs-on: ubuntu-24.04
4141
steps:
4242
- uses: actions/checkout@v4
4343
with:
@@ -50,66 +50,29 @@ jobs:
5050
- name: Execute Source Code Format Checking Script
5151
run: python3 scripts/check_code_format.py --fetch-main --target-refspec=FETCH_HEAD
5252

53-
# Ensure we can build on an older Ubuntu distro with an older version of CMake.
54-
linux_back_compat:
55-
needs: check_vvl
56-
runs-on: ubuntu-20.04
57-
name: "Ubuntu Backcompat"
58-
steps:
59-
- uses: actions/checkout@v4
60-
- name: Test Minimum CMake Version
61-
uses: lukka/get-cmake@latest
62-
with:
63-
cmakeVersion: 3.17.2
64-
- uses: hendrikmuhs/[email protected]
65-
with:
66-
key: linux_back_compat
67-
- run: sudo apt-get -qq update && sudo apt-get install -y libwayland-dev xorg-dev
68-
- run: cmake -S . -B build/ -D UPDATE_DEPS=ON -D CMAKE_BUILD_TYPE=Debug
69-
env:
70-
CMAKE_C_COMPILER_LAUNCHER: ccache
71-
CMAKE_CXX_COMPILER_LAUNCHER: ccache
72-
# Linker warnings as errors
73-
LDFLAGS: -Wl,--fatal-warnings
74-
- run: cmake --build build
75-
- run: cmake --install build --prefix /tmp
76-
7753
linux:
7854
needs: check_vvl
79-
runs-on: ubuntu-22.04
80-
name: "linux (${{matrix.sanitize}} sanitizer, ${{matrix.config}}, robinhood ${{matrix.robin_hood}} )"
55+
runs-on: ubuntu-24.04
56+
name: "linux (address sanitizer, ${{matrix.config}}, robinhood ${{matrix.robin_hood}} )"
8157
strategy:
8258
fail-fast: false
8359
matrix:
84-
sanitize: [ address, thread ]
85-
config: [debug, release]
86-
robin_hood: [ "ON" ]
87-
include:
88-
# Test with Robin Hood disabled
89-
# Chromium build, and some package managers don't use it.
90-
- config: release
91-
robin_hood: "OFF"
92-
sanitize: address
93-
exclude:
94-
# Have found over time this finds nothing extra, while taking the longest and using the most CI minutes.
95-
- config: debug
96-
robin_hood: "ON"
97-
sanitize: thread
60+
config: [ release ]
61+
# Test with Robin Hood disabled
62+
# Chromium build, and some package managers don't use it.
63+
robin_hood: [ "ON", "OFF" ]
9864
steps:
9965
- uses: actions/checkout@v4
10066
- uses: lukka/get-cmake@latest
10167
- uses: hendrikmuhs/[email protected]
10268
with:
103-
key: ${{ matrix.config }}-${{ matrix.sanitize }}-${{matrix.robin_hood}}
104-
# This is to combat a bug when using 6.6 linux kernels with thread/address sanitizer
105-
# https://github.com/google/sanitizers/issues/1716
106-
- run: sudo sysctl vm.mmap_rnd_bits=28
69+
key: ${{ matrix.config }}-address-${{matrix.robin_hood}}
10770
- run: sudo apt-get -qq update && sudo apt-get install -y libwayland-dev xorg-dev
10871
- run: python scripts/tests_vksc.py --build --config ${{ matrix.config }} --cmake='-DUSE_ROBIN_HOOD_HASHING=${{matrix.robin_hood}}'
10972
env:
110-
CFLAGS: -fsanitize=${{ matrix.sanitize }}
111-
CXXFLAGS: -fsanitize=${{ matrix.sanitize }}
112-
LDFLAGS: -fsanitize=${{ matrix.sanitize }}
73+
CFLAGS: -fsanitize=address
74+
CXXFLAGS: -fsanitize=address
75+
LDFLAGS: -fsanitize=address
11376
CMAKE_C_COMPILER_LAUNCHER: ccache
11477
CMAKE_CXX_COMPILER_LAUNCHER: ccache
11578
- name: Test Max Profile
@@ -130,6 +93,61 @@ jobs:
13093
VKSC_DEVSIM_PROFILE_FILE: ${{ github.workspace }}/tests/vulkansc/device_profiles/max_profile.json
13194
VKSC_LAYER_TESTS_NO_SPV_DEBUG_INFO: TRUE
13295

96+
# Make sure a debug version builds, but no need to run tests on it (since we do with release already)
97+
linux-debug:
98+
needs: check_vvl
99+
runs-on: ubuntu-24.04
100+
name: "linux (Build Only, ${{matrix.config}}, robinhood ${{matrix.robin_hood}} )"
101+
strategy:
102+
fail-fast: false
103+
matrix:
104+
config: [ debug ]
105+
robin_hood: [ "ON" ]
106+
steps:
107+
- uses: actions/checkout@v4
108+
- uses: lukka/get-cmake@latest
109+
- uses: hendrikmuhs/[email protected]
110+
with:
111+
key: ${{ matrix.config }}-buildOnly-${{matrix.robin_hood}}
112+
- run: sudo apt-get -qq update && sudo apt-get install -y libwayland-dev xorg-dev
113+
- run: python scripts/tests_vksc.py --build --config ${{ matrix.config }} --cmake='-DUSE_ROBIN_HOOD_HASHING=${{matrix.robin_hood}}'
114+
env:
115+
CMAKE_C_COMPILER_LAUNCHER: ccache
116+
CMAKE_CXX_COMPILER_LAUNCHER: ccache
117+
118+
linux-tsan:
119+
needs: check_vvl
120+
runs-on: ubuntu-24.04
121+
name: "linux (thread sanitizer, ${{matrix.config}}, robinhood ${{matrix.robin_hood}} )"
122+
strategy:
123+
fail-fast: false
124+
matrix:
125+
# Have found over time debug finds nothing extra, while taking the longest and using the most CI minutes.
126+
config: [ release ]
127+
robin_hood: [ "ON" ]
128+
129+
steps:
130+
- uses: actions/checkout@v4
131+
- uses: lukka/get-cmake@latest
132+
- uses: hendrikmuhs/[email protected]
133+
with:
134+
key: ${{ matrix.config }}-thread-${{matrix.robin_hood}}
135+
- run: sudo apt-get -qq update && sudo apt-get install -y libwayland-dev xorg-dev
136+
- run: python scripts/tests_vksc.py --build --config ${{ matrix.config }} --cmake='-DUSE_ROBIN_HOOD_HASHING=${{matrix.robin_hood}}'
137+
env:
138+
CFLAGS: -fsanitize=thread
139+
CXXFLAGS: -fsanitize=thread
140+
LDFLAGS: -fsanitize=thread
141+
CMAKE_C_COMPILER_LAUNCHER: ccache
142+
CMAKE_CXX_COMPILER_LAUNCHER: ccache
143+
# Thread Sanitize will take about 9x longer to run than Address Sanitize.
144+
# The main reason we have Max Core and Min Core is to catch issues with Vulkan 1.x vs Vulkan 1.y version issues.
145+
# In effort to reduce the bottle neck time in testing, skipping these for Thread Sanitize.
146+
- name: Test Max Profile
147+
run: python scripts/tests_vksc.py --test --tsan
148+
env:
149+
VKSC_DEVSIM_PROFILE_FILE: ${{ github.workspace }}/tests/vulkansc/device_profiles/max_profile.json
150+
133151
windows:
134152
needs: check_vvl
135153
runs-on: windows-2022

0 commit comments

Comments
 (0)