Skip to content

Commit 13ea82a

Browse files
committed
build: Downstream Vulkan-ValidationLayers 1.4.319
2 parents 3c7b6e5 + afc4450 commit 13ea82a

File tree

1,011 files changed

+163239
-86424
lines changed

Some content is hidden

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

1,011 files changed

+163239
-86424
lines changed

.github/workflows/sdk_android_build.yml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,6 @@ jobs:
5858
steps:
5959
- name: Clone repository
6060
uses: actions/checkout@v4
61-
- uses: lukka/get-cmake@latest
6261
- uses: actions/setup-python@v5
6362
with:
6463
python-version: '3.10'

.github/workflows/vvl.yml

Lines changed: 62 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -53,22 +53,21 @@ jobs:
5353
linux:
5454
needs: check_vvl
5555
runs-on: ubuntu-24.04
56-
name: "linux (address sanitizer, ${{matrix.config}}, robinhood ${{matrix.robin_hood}} )"
56+
name: "linux (address sanitizer, ${{matrix.config}}, custom_hash_map ${{matrix.custom_hash_map}} )"
5757
strategy:
5858
fail-fast: false
5959
matrix:
6060
config: [ release ]
61-
# Test with Robin Hood disabled
61+
# Test with Custom hash map both enabled and disabled
6262
# Chromium build, and some package managers don't use it.
63-
robin_hood: [ "ON", "OFF" ]
63+
custom_hash_map: [ "ON", "OFF" ]
6464
steps:
6565
- uses: actions/checkout@v4
66-
- uses: lukka/get-cmake@latest
6766
- uses: hendrikmuhs/[email protected]
6867
with:
69-
key: ${{ matrix.config }}-address-${{matrix.robin_hood}}
70-
- run: sudo apt-get -qq update && sudo apt-get install -y libwayland-dev xorg-dev
71-
- run: python scripts/tests_vksc.py --build --config ${{ matrix.config }} --cmake='-DUSE_ROBIN_HOOD_HASHING=${{matrix.robin_hood}}'
68+
key: ${{ matrix.config }}-address-${{matrix.custom_hash_map}}
69+
- run: sudo apt-get -qq update && sudo apt-get install -y libwayland-dev xorg-dev xvfb
70+
- run: python scripts/tests_vksc.py --build --config ${{ matrix.config }} --cmake='-DUSE_CUSTOM_HASH_MAP=${{matrix.custom_hash_map}}'
7271
env:
7372
CFLAGS: -fsanitize=address
7473
CXXFLAGS: -fsanitize=address
@@ -93,61 +92,84 @@ jobs:
9392
VKSC_DEVSIM_PROFILE_FILE: ${{ github.workspace }}/tests/vulkansc/device_profiles/max_profile.json
9493
VKSC_LAYER_TESTS_NO_SPV_DEBUG_INFO: TRUE
9594

96-
# Make sure a debug version builds, but no need to run tests on it (since we do with release already)
97-
linux-debug:
95+
linux-tsan:
9896
needs: check_vvl
9997
runs-on: ubuntu-24.04
100-
name: "linux (Build Only, ${{matrix.config}}, robinhood ${{matrix.robin_hood}} )"
98+
name: "linux (thread sanitizer, ${{matrix.config}}, custom_hash_map ${{matrix.custom_hash_map}} )"
10199
strategy:
102100
fail-fast: false
103101
matrix:
104-
config: [ debug ]
105-
robin_hood: [ "ON" ]
102+
# Have found over time debug finds nothing extra, while taking the longest and using the most CI minutes.
103+
config: [ release ]
104+
custom_hash_map: [ "ON" ]
105+
106106
steps:
107107
- uses: actions/checkout@v4
108-
- uses: lukka/get-cmake@latest
109108
- uses: hendrikmuhs/[email protected]
110109
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}}'
110+
key: ${{ matrix.config }}-thread-${{matrix.custom_hash_map}}
111+
- run: sudo apt-get -qq update && sudo apt-get install -y libwayland-dev xorg-dev xvfb
112+
- run: python scripts/tests_vksc.py --build --config ${{ matrix.config }} --cmake='-DUSE_CUSTOM_HASH_MAP=${{matrix.custom_hash_map}}'
114113
env:
114+
CFLAGS: -fsanitize=thread
115+
CXXFLAGS: -fsanitize=thread
116+
LDFLAGS: -fsanitize=thread
115117
CMAKE_C_COMPILER_LAUNCHER: ccache
116118
CMAKE_CXX_COMPILER_LAUNCHER: ccache
119+
# Thread Sanitize will take about 9x longer to run than Address Sanitize.
120+
# The main reason we have Max Core and Min Core is to catch issues with Vulkan 1.x vs Vulkan 1.y version issues.
121+
# In effort to reduce the bottle neck time in testing, skipping these for Thread Sanitize.
122+
- name: Test Max Profile
123+
run: python scripts/tests_vksc.py --test --tsan
124+
env:
125+
VKSC_DEVSIM_PROFILE_FILE: ${{ github.workspace }}/tests/vulkansc/device_profiles/max_profile.json
117126

118-
linux-tsan:
127+
linux-ubsan:
119128
needs: check_vvl
120129
runs-on: ubuntu-24.04
121-
name: "linux (thread sanitizer, ${{matrix.config}}, robinhood ${{matrix.robin_hood}} )"
130+
name: "linux (undefined behavior sanitizer, debug)"
122131
strategy:
123132
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-
129133
steps:
130134
- uses: actions/checkout@v4
131-
- uses: lukka/get-cmake@latest
132135
- uses: hendrikmuhs/[email protected]
133136
with:
134-
key: ${{ matrix.config }}-thread-${{matrix.robin_hood}}
137+
key: linux-ubsan
135138
- 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}}'
139+
- run: python scripts/tests_vksc.py --build --config debug --cmake='-DVVL_ENABLE_UBSAN=ON'
137140
env:
138-
CFLAGS: -fsanitize=thread
139-
CXXFLAGS: -fsanitize=thread
140-
LDFLAGS: -fsanitize=thread
141141
CMAKE_C_COMPILER_LAUNCHER: ccache
142142
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.
146143
- name: Test Max Profile
147-
run: python scripts/tests_vksc.py --test --tsan
144+
run: python scripts/tests_vksc.py --test
148145
env:
149146
VKSC_DEVSIM_PROFILE_FILE: ${{ github.workspace }}/tests/vulkansc/device_profiles/max_profile.json
150147

148+
# Ensure we can build on an older Ubuntu distro with an older version of CMake.
149+
linux_back_compat:
150+
needs: check_vvl
151+
runs-on: ubuntu-22.04
152+
name: "Ubuntu Backcompat"
153+
steps:
154+
- uses: actions/checkout@v4
155+
- name: Test Minimum CMake Version
156+
uses: lukka/get-cmake@latest
157+
with:
158+
cmakeVersion: 3.22.1
159+
- uses: hendrikmuhs/[email protected]
160+
with:
161+
key: linux_back_compat
162+
- run: sudo apt-get -qq update && sudo apt-get install -y libwayland-dev xorg-dev
163+
- run: cmake -S . -B build/ -D UPDATE_DEPS=ON -D CMAKE_BUILD_TYPE=Debug
164+
env:
165+
CMAKE_C_COMPILER_LAUNCHER: ccache
166+
CMAKE_CXX_COMPILER_LAUNCHER: ccache
167+
# Linker warnings as errors
168+
LDFLAGS: -Wl,--fatal-warnings
169+
- run: cmake --build build
170+
- run: cmake --install build --prefix /tmp
171+
172+
151173
windows:
152174
needs: check_vvl
153175
runs-on: windows-2022
@@ -167,14 +189,13 @@ jobs:
167189
uses: actions/cache@v4
168190
with:
169191
path: |
170-
build-ci/external/glslang/build/install
171-
build-ci/external/googltest/build/install
172-
build-ci/external/mimalloc/build/install
173-
build-ci/external/robin-hood-hashing/build/install
174-
build-ci/external/SPIRV-Headers/build/install
175-
build-ci/external/SPIRV-Tools/build/install
176-
build-ci/external/Vulkan-Headers/build/install
177-
build-ci/external/Vulkan-Utility-Libraries/build/install
192+
${{ github.workspace }}/external/glslang/build/install
193+
${{ github.workspace }}/external/googltest/build/install
194+
${{ github.workspace }}/external/mimalloc/build/install
195+
${{ github.workspace }}/external/SPIRV-Headers/build/install
196+
${{ github.workspace }}/external/SPIRV-Tools/build/install
197+
${{ github.workspace }}/external/Vulkan-Headers/build/install
198+
${{ github.workspace }}/external/Vulkan-Utility-Libraries/build/install
178199
key: windows-dependencies-${{ matrix.arch }}-${{ hashfiles('scripts/known_good.json') }}
179200
- name: Build
180201
run: python3 scripts/tests_vksc.py --build --config debug --cmake='-DUPDATE_DEPS_SKIP_EXISTING_INSTALL=ON'
@@ -203,7 +224,6 @@ jobs:
203224
- uses: actions/setup-python@v5
204225
with:
205226
python-version: '3.10'
206-
- uses: lukka/get-cmake@latest
207227
- run: |
208228
cmake -S. -B build \
209229
-D BUILD_WERROR=ON \

0 commit comments

Comments
 (0)