Timo Aaltonen pushed to branch debian-unstable at X Strike Force / vulkan / 
vulkan-tools


Commits:
315964ad by Daniel Rakos at 2025-01-06T16:19:01-07:00
vulkaninfo: Add video profiles support

- - - - -
26c7bde3 by Mike Schuchardt at 2025-01-17T10:57:51-08:00
build: Update to header 1.4.305

- - - - -
8e675c28 by Karen Webb at 2025-01-21T20:31:17-07:00
cube: Correctly apply sRGB OETF/EOTF

- - - - -
814b35a3 by Peter0x44 at 2025-01-22T09:12:17-07:00
vulkaninfo: Correct typo targetted -> targeted

- - - - -
8ce2501d by spencer-lunarg at 2025-01-23T08:48:40-05:00
icd: Add VkPhysicalDeviceMaintenance3Properties

- - - - -
7658238d by Mike Schuchardt at 2025-01-24T09:35:42-08:00
build: Update to header 1.4.306

- - - - -
c52931f0 by Mike Schuchardt at 2025-01-30T16:59:12-08:00
build: Update to header 1.4.307

- - - - -
a9f88a23 by Juan Ramos at 2025-02-05T11:22:23-07:00
cmake: Update minimum to 3.22.1

- - - - -
b4061dbb by Yilong Li at 2025-02-18T03:54:05-06:00
vulkaninfo: Support Fuchsia

This change adds Fuchsia-specific build files and metadata for
vulkaninfo so that it builds on Fuchsia.

Test: vulkaninfo on Fuchsia
Bug: https://fxbug.dev/378964821
Change-Id: I069b808394995db94b109c15d18dd6797a97c534

- - - - -
8a7c2760 by Yilong Li at 2025-02-18T04:02:30-06:00
vkcubepp: Remove implicit casts

1. std::tolower() returns an `int` value. Implicit converting an `int`
to a `char` may trigger compiler warnings (-Wconversion on gcc
and clang).

This change adds an explicit cast to suppress the implicit conversion
warnings.

2. Previously we used `assert(!"....")` to show error messages. This
does an implicit conversion from `const char*` to `bool` which
triggers compiler warnings (-Wconversion).

This change replaces it with `assert(false && "...")` which doesn't
trigger the warning.

Bug: https://fxbug.dev/378964821
Change-Id: I51be6858db558568619d0d2e6bc01a544d3459e4

- - - - -
dbe142e8 by Yilong Li at 2025-02-18T04:02:55-06:00
vkcubepp: Support Fuchsia

This change was originally in Fuchsia's Vulkan-Tools fork
(https://fxrev.dev/441056). It adds Fuchsia OS
(https://fuchsia.dev) support to vkcubepp.

Fuchsia has two WSI platforms available: It can render directly to
display frame buffer (fuchsia_display), or use Fuchsia's Scenic
compositor (fuchsia_scenic).

All Fuchsia-specific code is under VK_USE_PLATFORM_FUCHSIA ifdef
build guards and is only compiled for Fuchsia targets.

This change also adds a BUILD.gn file used for Fuchsia in-tree
builds.

Test: vkcube-on-fb and vkcube-on-scenic on Fuchsia
Bug: https://fxbug.dev/378964821
Change-Id: Id4627bf209b4fc9400ce7f6847324cad2060c31c

- - - - -
176fef0b by Mike Schuchardt at 2025-02-21T11:53:11-08:00
build: Update to header 1.4.309

- - - - -
ba5e5dc5 by Charles Giessen at 2025-02-25T09:10:37-06:00
build: Update Volk to vulkan-tmp-1.4.309 branch

- - - - -
fb8f5a5d by Charles Giessen at 2025-02-25T09:38:48-06:00
ci: Prevent double-running ci in main repo

Prevents pushes to branches on the main repo from having ci run if
there is an active PR on that branch to main.

- - - - -
4b1c7580 by John Zupin at 2025-03-03T15:35:34-06:00
build: update volk branch to vulkan-sdk-1.4.309

Remove the reference to the vulkan-tmp-1.4.309 branch
which will be deleted eventually.

- - - - -
dd0c2e4a by Yilong Li at 2025-03-06T09:54:32-06:00
vkcubepp: Support protected output

This change was originally introduced into Fuchsia's Vulkan-Tools
fork in https://fxrev.dev/c/third_party/Vulkan-Tools/+/444614.

If `--protected_output` command line option is specified, vkcubepp
will render to the protected memory.

Bug: https://fxbug.dev/378964821
Change-Id: I11c89d3d722236448edd41ca51a03f80d0ba7324

- - - - -
7efad3a1 by Charles Giessen at 2025-03-06T16:08:52-06:00
vulkaninfo: Use Object for "Vulkan Profiles" array

The "Video Profiles" element must be a JSON Object in order for the
sub elements to have names. The outputprinter helper doesn't prevent
mixing objects inside of arrays, so this wasn't caught during development.

- - - - -
b061ab62 by Charles Giessen at 2025-03-06T16:11:07-06:00
vulkaninfo: Use Object for "Vulkan Profiles" array

The "Video Profiles" element must be a JSON Object in order for the
sub elements to have names. The outputprinter helper doesn't prevent
mixing objects inside of arrays, so this wasn't caught during development.

- - - - -
2bcf294e by Mike Schuchardt at 2025-03-07T13:11:25-08:00
build: Update to header 1.4.310

- - - - -
42c54538 by Charles Giessen at 2025-03-08T09:20:04-07:00
icd: Add build support for iOS and Metal surfaces

The CMakelists.txt only enabled the MACOS_MVK surface extension, so this
makes MockICD more flexible for users.

- - - - -
4d5e1f89 by Charles Giessen at 2025-03-08T12:59:41-07:00
vulkaninfo: Use Object in video props vkconfig output

- - - - -
072c8124 by Charles Giessen at 2025-03-08T12:59:52-07:00
cube: Fix protected memory pNext chains

The chains were including the structs even when protected memory isn't
desired, triggering validation errors.

- - - - -
bf9fcd2d by Charles Giessen at 2025-03-08T21:17:05-06:00
vulkaninfo: Use Object in video props vkconfig output

- - - - -
f8057c1d by Timo Aaltonen at 2025-03-18T19:55:36+02:00
Merge branch 'upstream-unstable' into debian-unstable

- - - - -
65ed680b by Timo Aaltonen at 2025-03-18T19:55:59+02:00
version bump

- - - - -
14bddab1 by Timo Aaltonen at 2025-03-18T19:56:34+02:00
control: Bump build-deps.

- - - - -
32ee3e6e by Mike Schuchardt at 2025-03-21T09:49:10-07:00
build: Update to header 1.4.311

- - - - -
da7c7db2 by Luis Jose-Romero at 2025-03-27T09:15:12-06:00
vulkaninfo: Fix unreported extension formats

Changes the format support check to compare against the
device extensions instead of the instance extensions.

- - - - -
289efccc by Charles Giessen at 2025-03-27T11:41:08-06:00
cmake: Check wayland pkgconfig deps for cube

- - - - -
9c0fff27 by Mike Schuchardt at 2025-04-07T09:03:56-06:00
build: Update to header 1.4.312

- - - - -
3411f921 by Water Chika at 2025-04-07T09:15:36-06:00
Select physical device before create surface is platform is WSI Display

- - - - -
4078c4f2 by Water Chika at 2025-04-07T09:15:36-06:00
Update cube/cube.c

Co-authored-by: Charles Giessen 
<[email protected]>
- - - - -
59dc56aa by Water Chika at 2025-04-07T09:15:36-06:00
Update cube/cube.cpp

Co-authored-by: Charles Giessen 
<[email protected]>
- - - - -
8d5d50c2 by Water Chika at 2025-04-08T15:17:20-06:00
vkcubepp: Refactor create_window and run functions

- - - - -
555dca10 by Water Chika at 2025-04-08T15:17:20-06:00
vkcubepp: refactor: Add MacOS fix.

- - - - -
5394fd5d by Charles Giessen at 2025-04-11T15:13:14-06:00
cube: Only count non-minimized frames

- - - - -
5d938330 by Charles Giessen at 2025-04-11T15:13:14-06:00
cubepp: Fix incremental present on swapchain recreate

- - - - -
a8f20787 by Charles Giessen at 2025-04-11T15:13:14-06:00
cube: Re-record command buffers each frame

Rerecord command buffers every frame, as command buffer recording isn't
slow, and outside of trivial samples (like vkcube) isn't a practical
architecture for organizing a Vulkan renderer. This makes vkcube and
vkcubepp reflect typical Vulkan renderer architecture and serves as a
better sample.

Create structs to organize objects into distinct synchronization scopes,
one for submissions and the other for swapchains. Resources associated
with a swapchain image such, as image views, framebuffers, and
presentation semaphores, must be duplicated as many times as there are
swapchain images. This number is dependent on the runtime, so can't be
pre-determined. The submission resources, which are the command buffers,
fences, descriptor sets, device memory, and uniform buffers, only needs
duplication for the pipelining. Specifically, this allows the GPU to
execute a command buffer while the CPU record the next frame's command
buffer. The FRAME_LAG constant dictates the pipeline depth, commonly
called double buffering, and is set to 2 since that is sufficient for a
vast majority of use cases.

Swapchain resizing now only re-creates the bare necessity of resources:
Swapchain, image views, framebuffers, presentation semaphores, and the
depth buffer. Presentation semaphores are recreated to prevent state
from an old swapchain from polluting a new swapchain. The depth buffer
is re-created since its size is dependent on the window size. All other
objects, such as pipelines and renderpasses, do not need recreation as
they either are not liable to change during resizing, or have mutable
state that can be flexibly updated, such as dynamic pipeline viewport
and scissors. The code for dynamic viewports and scissors was already
present but wasn't taken advantage of until now.

- - - - -
50ace769 by Charles Giessen at 2025-04-16T10:53:32-06:00
cube: Fix broken framecount

- - - - -
b1fc6158 by Mike Schuchardt at 2025-04-18T13:05:13-07:00
build: Update to header 1.4.313

- - - - -
7ef5a896 by Charles Giessen at 2025-04-21T17:00:14-06:00
cube: Update formatting to clang-format-18

- - - - -
08428963 by Charles Giessen at 2025-04-21T17:00:14-06:00
cube: Update missing WSI extension messages

Better indicates the error that triggered the message,
and what the user should do about it.

- - - - -
0b819672 by Charles Giessen at 2025-04-23T16:33:59-06:00
build: Update volk dependency to 1.4.313

- - - - -
3e9d7a00 by Charles Giessen at 2025-04-25T13:11:28-06:00
vulkaninfo: Make Presentable Surfaces array unique

Makes each JSON field unique in the Presentatble Surfaces array by
appending the list of surfaces to the object name.

- - - - -
682e42f7 by Charles Giessen at 2025-04-25T13:11:28-06:00
build: Remove Volk dependency

The intent of using Volk for function loading was to validate Volk's
implementation continually with each header update. This didn't end up
occurring, as Volk does not get updated in lock step with Vulkan-Tools,
leading to Vulkan-Tools using an older version of Volk. And then during
SDK release the version would need to be updated at the last minute,
causing churn and extra work.

Function loading now occurs in two new files, cube_functions.h and
vulkaninfo_functions.h. Since both cube and vulkaninfo's function
usage are fixed (as in not code-generated), it is straightforward to
implement the necessary Vulkan-Loader library opening and function
loading code.

- - - - -
ad2f0170 by Charles Giessen at 2025-04-28T20:41:54-06:00
cube: Link to CMAKE_DL_LIBS

Previously volk was doing this for cube, but with that removed
vkcube/vkcubepp have to link it themselves.

- - - - -
af3abdf3 by Nathaniel Cesario at 2025-04-28T22:26:41-06:00
cube: Fix validation warning

Ensures vkCreateDisplayPlaneSurfaceKHR is loaded using
vkGetInstanceProcAddr rather than vkGetDeviceProcAddr.

- - - - -
ba13d38d by Mike Schuchardt at 2025-05-05T15:00:54-06:00
build: Update to header 1.4.314

- - - - -
60b640cb by Mike Schuchardt at 2025-05-09T09:20:03-07:00
build: Update to header 1.4.315

- - - - -
e4fb76dc by Mike Schuchardt at 2025-05-30T12:01:38-07:00
build: Update to header 1.4.316

- - - - -
fbe72265 by Mike Schuchardt at 2025-06-06T10:04:55-07:00
build: Update to header 1.4.317

- - - - -
d6719230 by Mike Schuchardt at 2025-06-13T14:08:03-07:00
build: Update to header 1.4.318

- - - - -
e3fc6439 by Mike Schuchardt at 2025-06-20T13:30:13-07:00
build: Update to header 1.4.319

- - - - -
99365fc2 by Mike Schuchardt at 2025-06-27T10:03:26-07:00
build: Update to header 1.4.320

- - - - -
55f6b397 by Charles Giessen at 2025-06-28T13:30:37-05:00
cube: Move instance function declaration

Wasn't moved after fixing that it was treated as a device function.

- - - - -
abc74519 by Xaver Hugl at 2025-06-30T10:25:22-05:00
cube: prefer Wayland over X11 when available

In Wayland sessions, X11 is still available through a compatibility layer, but 
should
effectively never be used over a native Wayland connection if the application is
capable of that.

- - - - -
27590b43 by Charles Giessen at 2025-06-30T11:21:10-05:00
mock_icd: Fix vkGetPhysicalDeviceSurfacePresentModesKHR not writing count.

- - - - -
b2167f5c by Charles Giessen at 2025-06-30T11:21:10-05:00
mock_icd: Write count in vkEnumerateDeviceExtensionProperties

- - - - -
778f4098 by Charles Giessen at 2025-06-30T11:21:10-05:00
mock_icd: Add VkPhysicalDeviceLayeredApiPropertiesListKHR to output

- - - - -
68441fe7 by Charles Giessen at 2025-06-30T11:21:10-05:00
vulkaninfo: Pretty print vendorID and deviceID in codegen

- - - - -
f0f308ad by Charles Giessen at 2025-06-30T11:21:10-05:00
vulkaninfo: Don't write keys while inside of an array

Adds logic to ignore the key when printing a key-value if the current
context is an array, since that is not valid JSON.

- - - - -
06ae73a3 by Charles Giessen at 2025-07-07T11:34:37-05:00
build: Update to header 1.4.321

Includes necessary changes for VK_KHR_surface_maintenance1

- - - - -
e65fd541 by Timo Aaltonen at 2025-08-13T10:21:59+03:00
Merge branch 'upstream-unstable' into debian-unstable

- - - - -
7f657b94 by Timo Aaltonen at 2025-08-13T10:22:29+03:00
version bump

- - - - -
a89389de by Timo Aaltonen at 2025-08-25T20:44:15+03:00
control: Bump build-deps.

- - - - -


40 changed files:

- .github/workflows/tools.yml
- BUILD.md
- CMakeLists.txt
- + cube/BUILD.gn
- cube/CMakeLists.txt
- cube/cube.c
- cube/cube.cpp
- cube/cube.frag
- cube/cube.frag.inc
- cube/cube.vert.inc
- + cube/cube_functions.h
- + cube/fuchsia/flatland_view.cpp
- + cube/fuchsia/flatland_view.h
- + cube/fuchsia/meta/vkcube-on-fb-protected.cml
- + cube/fuchsia/meta/vkcube-on-fb.cml
- + cube/fuchsia/meta/vkcube-on-scenic-protected.cml
- + cube/fuchsia/meta/vkcube-on-scenic.cml
- debian/changelog
- debian/control
- icd/CMakeLists.txt
- icd/VkICD_mock_icd.json.in
- icd/generated/function_declarations.h
- icd/generated/function_definitions.h
- icd/generated/vk_typemap_helper.h
- scripts/CMakeLists.txt
- scripts/common_codegen.py
- scripts/generate_source.py
- scripts/known_good.json
- scripts/kvt_genvk.py
- scripts/mock_icd_generator.py
- scripts/vulkaninfo_generator.py
- + vulkaninfo/BUILD.gn
- vulkaninfo/CMakeLists.txt
- + vulkaninfo/fuchsia/meta/vulkaninfo.cml
- vulkaninfo/generated/vulkaninfo.hpp
- vulkaninfo/outputprinter.h
- vulkaninfo/vulkaninfo.cpp
- vulkaninfo/vulkaninfo.h
- vulkaninfo/vulkaninfo.md
- + vulkaninfo/vulkaninfo_functions.h


The diff was not included because it is too large.


View it on GitLab: 
https://salsa.debian.org/xorg-team/vulkan/vulkan-tools/-/compare/b35f300eb54c542ab6adbf0e5420baf1be727762...a89389de50fcae4f8310df729171725818cefd90

-- 
View it on GitLab: 
https://salsa.debian.org/xorg-team/vulkan/vulkan-tools/-/compare/b35f300eb54c542ab6adbf0e5420baf1be727762...a89389de50fcae4f8310df729171725818cefd90
You're receiving this email because of your account on salsa.debian.org.


Reply via email to