Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
2 changes: 1 addition & 1 deletion examples/09-heterogeneous/multi-backend/mcpp.toml
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@ cuda-driver = "2026.09.05"
# is a payload and the hardware ones are the host's.
[target.'cfg(accelerator = "vulkan")'.dependencies.compat]
vulkan = "1.4.357.0"
vulkan-runtime = "2026.09.10"
vulkan-runtime = "2026.09.11"

[build]
# The device sources carry the accel they are for. A CONSTRAINED glob gates
Expand Down
2 changes: 1 addition & 1 deletion examples/09-heterogeneous/sycl/app/mcpp.toml
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ plugins = { version = "0.5.2", features = ["rules-sycl", "tools-island"], host-m
# message (#596). The farm now mirrors what the driver sentinel publishes
# rather than naming a file.
[dependencies.compat]
sycl-runtime = "2026.09.10"
sycl-runtime = "2026.09.11"

# NO [xlings.workspace]. `mcpp.rules.sycl` declares all five payloads this lane
# needs, each closing one hole the host would otherwise fill: `dpcpp` (the
Expand Down
2 changes: 1 addition & 1 deletion examples/09-heterogeneous/vulkan/app/mcpp.toml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ plugins = { version = "0.5.2", features = ["rules-spirv"], host-module = true }
# below is a payload and the hardware ones are the host's.
[dependencies.compat]
vulkan = "1.4.357.0"
vulkan-runtime = "2026.09.10"
vulkan-runtime = "2026.09.11"

# ONE payload here, and the shader compiler is not it: `mcpp.rules.spirv`
# declares `xim:glslang` for itself. What stays is a DEVICE, and the boundary is
Expand Down
23 changes: 16 additions & 7 deletions examples/10-graphics/offscreen/mcpp.toml
Original file line number Diff line number Diff line change
Expand Up @@ -28,14 +28,23 @@ plugins = { version = "0.5.2", features = ["rules-spirv"], host-module = true }
# seam work: the CPU leg below is selected by the accelerator, and only the
# packages are unconditional.
[dependencies.compat]
vulkan = "1.4.357.1"
vulkan = "1.4.357.2"

# The adapter that makes the host's own ICDs reachable from a binary running
# under mcpp's private loader. An OS predicate, which IS allowed, and a Linux
# concern by construction: macOS resolves through dyld and Windows through the
# PE loader, and neither has a private loader to work around.
[target.'cfg(linux)'.dependencies.compat]
vulkan-runtime = "2026.09.10"
# THE ADAPTER IS NOT NAMED HERE, AND THAT IS THE POINT.
#
# `compat.vulkan` declares `compat.vulkan-runtime` itself on Linux -- the
# adapter that makes the host's own ICDs reachable from a binary running under
# mcpp's private loader, which macOS and Windows do not need because dyld and
# the PE loader have no private-loader problem to work around.
#
# Naming it here as well pinned one version in two places, in two repositories,
# with nothing enforcing that they agree. They drifted three times in one day:
# the loader package moved its pin, this file moved its own, and an installed
# copy of `compat.vulkan` still recorded the previous one -- each time the build
# stopped with `irreconcilable versions`, and each time the fix was to edit the
# other place. A dependency that another dependency already declares is a
# second copy of a decision; the version it needs is the one that package says
# it needs.

# A Vulkan device that needs no GPU, so this example runs on a machine that has
# none. It is a DEVICE and therefore a payload; the drivers a real GPU needs are
Expand Down
Loading