Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
66 commits
Select commit Hold shift + click to select a range
342da33
Cleanup command extension checking of device functions
charles-lunarg Jun 23, 2025
eb5baa5
build: Update to header 1.4.320
mikes-lunarg Jun 27, 2025
8beef6c
build(deps): bump github/codeql-action from 3.29.0 to 3.29.2
dependabot[bot] Jun 30, 2025
da8d2ca
build: Update to header 1.4.321
ziga-lunarg Jul 4, 2025
235d1d2
build: Update to header 1.4.322
mikes-lunarg Jul 14, 2025
0817c63
Create prepending variants of add_if_manifest_file & string funcs
charles-lunarg May 2, 2025
4775d54
Add 30 minute timeout to github actions
charles-lunarg May 5, 2025
1d2a2fd
Add device and drivers fields to settings file
charles-lunarg May 2, 2025
f946876
Document Loader Settings File
charles-lunarg May 13, 2025
8f35302
Fix build for CYGWIN
carlo-bramini Jul 18, 2025
a1684e4
build: Update to header 1.4.323
mikes-lunarg Jul 21, 2025
c8ac60e
build(deps): bump github/codeql-action from 3.29.2 to 3.29.4
dependabot[bot] Jul 28, 2025
77ccbe4
Get real path to layer & driver binaries
charles-lunarg Jul 11, 2025
1df688c
Generate VkResult operator<< overload
charles-lunarg Jul 15, 2025
bacab74
Large refactor of test framework
charles-lunarg Jul 21, 2025
508795c
loader settings unix search path follows driver/layer searching
charles-lunarg Jul 25, 2025
b54033f
Add ubuntu-24.04-arm runner to github actions CI
charles-lunarg Jan 28, 2025
f2389e2
Use correct format specifier for size_t
charles-lunarg Aug 1, 2025
7a1d96a
build: Update to header 1.4.324
ziga-lunarg Aug 4, 2025
ffd25df
build(deps): bump github/codeql-action from 3.29.4 to 3.29.5
dependabot[bot] Aug 4, 2025
f0969bf
Print deviceUUID correctly by using %02x
charles-lunarg Aug 2, 2025
6e96ed6
More settings tests
charles-lunarg Aug 5, 2025
434131b
Fix invalid settings configuration parsing errors
charles-lunarg Aug 5, 2025
9fb3eda
Log settings file device_configuration deviceName's
charles-lunarg Aug 5, 2025
670bc54
Check json object type in settings file device configurations
charles-lunarg Aug 5, 2025
c3394a6
Log when device configurations removes VkPhysicalDevices
charles-lunarg Aug 5, 2025
046e658
Correct settings tests when no devices are present
charles-lunarg Aug 5, 2025
07aa865
Speedup tests by putting physical devices in a map
charles-lunarg Jul 31, 2025
be3fe40
build: Update to header 1.4.325
ziga-lunarg Aug 8, 2025
eae3da9
loader: make it possible to filter the physical devices by vendor, de…
hapakj Aug 12, 2025
4f5b66d
build(deps): bump actions/checkout from 4 to 5
dependabot[bot] Aug 12, 2025
022c002
build(deps): bump github/codeql-action from 3.29.7 to 3.29.8
dependabot[bot] Aug 12, 2025
362c295
Fix stdcall assembly symbol naming on win32
BtbN Aug 17, 2025
484f3cd
Silence stdcall fixup warnings on 32bit mingw builds
BtbN Aug 17, 2025
5e056ff
build(deps): bump github/codeql-action from 3.29.8 to 3.29.10
dependabot[bot] Aug 19, 2025
e753770
loader: Include limits.h for PATH_MAX
mixi Aug 14, 2025
5c5cfd4
Allow VK_INSTANCE_LAYERS to order implicit layers
charles-lunarg Aug 8, 2025
ade310a
Fix spelling mistakes
charles-lunarg Aug 25, 2025
35a62d3
build(deps): bump github/codeql-action from 3.29.10 to 3.29.11
dependabot[bot] Aug 26, 2025
42e255d
Fix invalid iteration of empty override path
charles-lunarg Aug 26, 2025
272251f
Add null check before strcmp
charles-lunarg Aug 27, 2025
59240af
Fix uninitialized fuzz test executor
charles-lunarg Aug 27, 2025
f61591c
Add fuzz test memory leak case
charles-lunarg Aug 27, 2025
8b7e618
Fix unused settings causing memory leaks
charles-lunarg Aug 27, 2025
fe92c7d
build: Update to header 1.4.326
mikes-lunarg Aug 29, 2025
3af5482
build(deps): bump github/codeql-action from 3.29.11 to 3.30.0
dependabot[bot] Sep 2, 2025
344e4e6
Fix memory leak in get_loader_settings
charles-lunarg Sep 12, 2025
9501885
Prevent unnecessary allocations in test util
charles-lunarg Sep 12, 2025
f4b28d2
Initialize enabled_extensions in TestICD code
charles-lunarg Sep 12, 2025
63ba87a
build(deps): bump actions/setup-python from 5 to 6
dependabot[bot] Sep 15, 2025
4ff7bc6
build(deps): bump github/codeql-action from 3.30.0 to 3.30.3
dependabot[bot] Sep 15, 2025
50399a2
Require a compatible VulkanHeaders version in find_package
charles-lunarg Sep 16, 2025
6ec5a0d
build: Update to header 1.4.327
mikes-lunarg Sep 19, 2025
f703f91
build: Update to header 1.4.328
mikes-lunarg Sep 26, 2025
0b058dd
build(deps): bump github/codeql-action from 3.30.3 to 3.30.5
dependabot[bot] Sep 30, 2025
b4e1325
Add utility for getting the string representation of a UUID
charles-lunarg Sep 26, 2025
74047e4
Add driverUUID and driverVersion to settings file device configuratio…
charles-lunarg Sep 26, 2025
0a278cc
Check return value of copy_surface_create_info
charles-lunarg Sep 30, 2025
ae0461b
Update github actions CI to use macOS-14
charles-lunarg Oct 2, 2025
35e5469
Use PROJECT_VERSION instead of CMAKE_PROJECT_VERSION
charles-lunarg Oct 6, 2025
385716f
build(deps): bump github/codeql-action from 3.30.5 to 3.30.6
dependabot[bot] Oct 6, 2025
40fdef4
build: Update to header 1.4.329
mikes-lunarg Oct 10, 2025
4a40e3c
build(deps): bump github/codeql-action from 3.30.6 to 4.30.8
dependabot[bot] Oct 13, 2025
66f2ce1
build(deps): bump github/codeql-action from 4.30.8 to 4.30.9
dependabot[bot] Oct 20, 2025
466498b
build: Update to header 1.4.330
mikes-lunarg Oct 24, 2025
68ba57b
build: Downstream Vulkan-Loader 1.4.330
hapakj Nov 7, 2025
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
240 changes: 139 additions & 101 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,14 +38,15 @@ jobs:
linux:
needs: codegen
runs-on: ${{matrix.os}}
timeout-minutes: 30
strategy:
matrix:
compiler: [ {cc: gcc, cxx: g++}, {cc: clang, cxx: clang++} ]
config: [ Debug, Release ]
os: [ ubuntu-22.04, ubuntu-24.04 ]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
- uses: actions/checkout@v5
- uses: actions/setup-python@v6
with:
python-version: '3.11'
- name: Test CMake min
Expand Down Expand Up @@ -75,16 +76,18 @@ jobs:

codegen:
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- run: scripts/update_deps.py --dir ext --no-build
- run: scripts/generate_source.py --verify ext/Vulkan-Headers/registry/

linux-no-asm:
needs: codegen
runs-on: ubuntu-24.04
timeout-minutes: 30
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- run: sudo apt update
- run: sudo apt install --yes --no-install-recommends libwayland-dev libxrandr-dev
- run: |
Expand All @@ -103,12 +106,13 @@ jobs:
linux-32:
needs: codegen
runs-on: ubuntu-24.04
timeout-minutes: 30
strategy:
matrix:
config: [ Debug, Release ]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
- uses: actions/checkout@v5
- uses: actions/setup-python@v6
with:
python-version: '3.11'
- uses: lukka/get-cmake@latest
Expand Down Expand Up @@ -141,9 +145,10 @@ jobs:
linux-32-no-asm:
needs: codegen
runs-on: ubuntu-24.04
timeout-minutes: 30
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
- uses: actions/checkout@v5
- uses: actions/setup-python@v6
with:
python-version: '3.11'
- uses: lukka/get-cmake@latest
Expand Down Expand Up @@ -172,16 +177,43 @@ jobs:
- run: cmake --build build
- run: ctest --parallel --output-on-failure -E UnknownFunction --test-dir build/

linux-arm:
needs: codegen
runs-on: ubuntu-24.04-arm
timeout-minutes: 30
steps:
- uses: actions/checkout@v5
- uses: actions/setup-python@v6
with:
python-version: '3.11'
- name: Test CMake min
uses: lukka/get-cmake@latest
with:
cmakeVersion: 3.22.1
- run: sudo apt update
- run: sudo apt install --yes --no-install-recommends libwayland-dev libxrandr-dev
- run: |
cmake -S. -B build \
-D CMAKE_BUILD_TYPE=Debug \
-D BUILD_TESTS=ON \
-D UPDATE_DEPS=ON \
-D LOADER_ENABLE_ADDRESS_SANITIZER=ON \
-D BUILD_WERROR=ON
- run: cmake --build build
- run: ctest --parallel --output-on-failure --test-dir build/
- run: cmake --install build --prefix /tmp

windows_vs:
# windows is 2x expensive to run on GitHub machines, so only run if we know something else simple passed as well
needs: linux-no-asm
runs-on: windows-latest
timeout-minutes: 30
strategy:
matrix:
arch: [ Win32, x64 ]
config: [ Debug, Release ]
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- run: |
cmake -S. -B build `
-D BUILD_TESTS=ON `
Expand All @@ -197,11 +229,12 @@ jobs:
# windows is 2x expensive to run on GitHub machines, so only run if we know something else simple passed as well
needs: linux-no-asm
runs-on: windows-latest
timeout-minutes: 30
strategy:
matrix:
arch: [ Win32, x64 ]
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- run: |
cmake -S. -B build `
-D BUILD_TESTS=ON `
Expand All @@ -216,14 +249,15 @@ jobs:
# Test both clang and clang-cl (Chromium project uses clang-cl)
windows_clang:
# windows is 2x expensive to run on GitHub machines, so only run if we know something else simple passed as well
needs: linux-no-asm
runs-on: windows-2022
strategy:
matrix:
compiler: [ clang, clang-cl ]
config: [ Debug, Release ]
steps:
- uses: actions/checkout@v4
needs: linux-no-asm
runs-on: windows-2022
timeout-minutes: 30
strategy:
matrix:
compiler: [ clang, clang-cl ]
config: [ Debug, Release ]
steps:
- uses: actions/checkout@v5
- uses: ilammy/msvc-dev-cmd@v1
- run: |
cmake -S. -B build `
Expand All @@ -239,92 +273,96 @@ jobs:
- run: cmake --install build --prefix build/install

mingw:
# windows is 2x expensive to run on GitHub machines, so only run if we know something else simple passed as well
if: false # Disabled due to issues with msys2 making CMake unable to find a working compiler
needs: linux-no-asm
runs-on: windows-2022
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.11'
- name: Setup uasm
run: |
C:/msys64/usr/bin/pacman -Sy --noconfirm --needed mingw-w64-x86_64-uasm
printf '%s\n' 'C:/msys64/mingw64/bin' >> $GITHUB_PATH
- name: UASM Check
run: uasm -?
- run: |
cmake -S. -B build \
-D UPDATE_DEPS=ON \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_WERROR=ON \
-G Ninja
- run: cmake --build build
- run: cmake --install build --prefix /tmp
# windows is 2x expensive to run on GitHub machines, so only run if we know something else simple passed as well
needs: linux-no-asm
if: false # Disabled due to issues with msys2 making CMake unable to find a working compiler
runs-on: windows-2022
timeout-minutes: 30
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v5
- uses: actions/setup-python@v6
with:
python-version: '3.11'
- name: Setup uasm
run: |
C:/msys64/usr/bin/pacman -Sy --noconfirm --needed mingw-w64-x86_64-uasm
printf '%s\n' 'C:/msys64/mingw64/bin' >> $GITHUB_PATH
- name: UASM Check
run: uasm -?
- run: |
cmake -S. -B build \
-D UPDATE_DEPS=ON \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_WERROR=ON \
-G Ninja
- run: cmake --build build
- run: cmake --install build --prefix /tmp

mingw-use-gas:
# windows is 2x expensive to run on GitHub machines, so only run if we know something else simple passed as well
needs: linux-no-asm
runs-on: windows-2022
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.11'
- run: |
cmake -S. -B build \
-D UPDATE_DEPS=ON \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_WERROR=ON \
-D USE_GAS=ON \
-G Ninja
- run: cmake --build build
- run: cmake --install build --prefix /tmp
# windows is 2x expensive to run on GitHub machines, so only run if we know something else simple passed as well
needs: linux-no-asm
runs-on: windows-2022
timeout-minutes: 30
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v5
- uses: actions/setup-python@v6
with:
python-version: '3.11'
- run: |
cmake -S. -B build \
-D UPDATE_DEPS=ON \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_WERROR=ON \
-D USE_GAS=ON \
-G Ninja
- run: cmake --build build
- run: cmake --install build --prefix /tmp

mingw-no-asm:
# windows is 2x expensive to run on GitHub machines, so only run if we know something else simple passed as well
needs: linux-no-asm
runs-on: windows-2022
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.11'
# Make sure this doesn't fail even without explicitly setting '-D USE_MASM=OFF' and without uasm
- run: |
cmake -S. -B build \
-D UPDATE_DEPS=ON \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_WERROR=ON \
-G Ninja
- run: cmake --build build
- run: cmake --install build --prefix /tmp
# windows is 2x expensive to run on GitHub machines, so only run if we know something else simple passed as well
needs: linux-no-asm
runs-on: windows-2022
timeout-minutes: 30
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v5
- uses: actions/setup-python@v6
with:
python-version: '3.11'
# Make sure this doesn't fail even without explicitly setting '-D USE_MASM=OFF' and without uasm
- run: |
cmake -S. -B build \
-D UPDATE_DEPS=ON \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_WERROR=ON \
-G Ninja
- run: cmake --build build
- run: cmake --install build --prefix /tmp

mingw-no-asm-explicit:
# windows is 2x expensive to run on GitHub machines, so only run if we know something else simple passed as well
needs: linux-no-asm
runs-on: windows-2022
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v4
- run: |
cmake -S. -B build \
-D UPDATE_DEPS=ON \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_WERROR=ON \
-D USE_MASM=OFF \
-G Ninja
- run: cmake --build build
- run: cmake --install build --prefix /tmp
# windows is 2x expensive to run on GitHub machines, so only run if we know something else simple passed as well
needs: linux-no-asm
runs-on: windows-2022
timeout-minutes: 30
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v5
- run: |
cmake -S. -B build \
-D UPDATE_DEPS=ON \
-D CMAKE_BUILD_TYPE=Release \
-D BUILD_WERROR=ON \
-D USE_MASM=OFF \
-G Ninja
- run: cmake --build build
- run: cmake --install build --prefix /tmp
10 changes: 5 additions & 5 deletions .github/workflows/codeql.yml
Original file line number Diff line number Diff line change
Expand Up @@ -49,11 +49,11 @@ jobs:

steps:
- name: Checkout repository
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0

# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@ce28f5bb42b7a9f2c824e633a3f6ee835bab6858 # v3.29.0
uses: github/codeql-action/init@16140ae1a102900babc80a33c44059580f687047 # v3.29.5
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
Expand All @@ -68,9 +68,9 @@ jobs:
# If this step fails, then you should remove it and run the build manually
- name: Autobuild
if: matrix.language == 'python'
uses: github/codeql-action/autobuild@ce28f5bb42b7a9f2c824e633a3f6ee835bab6858 # v3.29.0
uses: github/codeql-action/autobuild@16140ae1a102900babc80a33c44059580f687047 # v3.29.5

- uses: actions/setup-python@v5
- uses: actions/setup-python@v6
if: matrix.language == 'cpp'
with:
python-version: '3.11'
Expand All @@ -92,6 +92,6 @@ jobs:
run: cmake --build build

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@ce28f5bb42b7a9f2c824e633a3f6ee835bab6858 # v3.29.0
uses: github/codeql-action/analyze@16140ae1a102900babc80a33c44059580f687047 # v3.29.5
with:
category: "/language:${{matrix.language}}"
2 changes: 1 addition & 1 deletion .github/workflows/format.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ jobs:
- 'loader'
- 'tests'
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- name: Run clang-format
uses: jidicula/clang-format-action@v4.15.0
with:
Expand Down
2 changes: 1 addition & 1 deletion BUILD.md
Original file line number Diff line number Diff line change
Expand Up @@ -241,7 +241,7 @@ cmake --build . --target loader_codegen
`clang-format` is run on generated code files so that the generator scripts do
not need format their output manually.
If `clang-format` is not available when running code generation, a warning will
be issued but does not stop code generation from occuring.
be issued but does not stop code generation from occurring.

### Build Options

Expand Down
Loading