wgpu/wgpu-hal/Cargo.toml

205 lines
5.7 KiB
TOML
Raw Normal View History

2021-06-04 05:19:36 +00:00
[package]
name = "wgpu-hal"
2024-04-28 22:06:35 +00:00
version = "0.20.0"
authors = ["gfx-rs developers"]
2022-12-15 20:46:28 +00:00
edition = "2021"
2021-06-04 05:19:36 +00:00
description = "WebGPU hardware abstraction layer"
2022-12-15 20:46:28 +00:00
homepage = "https://wgpu.rs/"
repository = "https://github.com/gfx-rs/wgpu"
keywords = ["graphics"]
license = "MIT OR Apache-2.0"
# Override the workspace's `rust-version` key. Firefox uses `cargo vendor` to
# copy the crates it actually uses out of the workspace, so it's meaningful for
# them to have less restrictive MSRVs individually than the workspace as a
# whole, if their code permits. See `../README.md` for details.
rust-version = "1.74"
2021-06-04 05:19:36 +00:00
[package.metadata.docs.rs]
# Ideally we would enable all the features.
#
2023-12-06 20:12:46 +00:00
# However, the metal features fail to be documented because the docs.rs runner cross-compiling under
# x86_64-unknown-linux-gnu and metal-rs cannot compile in that environment at the moment. The same applies
2023-12-06 20:12:46 +00:00
# for the dx12 feature.
features = ["vulkan", "gles", "renderdoc"]
rustdoc-args = ["--cfg", "docsrs"]
2023-02-09 20:38:40 +00:00
targets = [
"x86_64-unknown-linux-gnu",
"x86_64-apple-darwin",
"x86_64-pc-windows-msvc",
"wasm32-unknown-unknown",
]
[package.metadata.cargo-machete]
# Cargo machete can't check build.rs dependencies. See https://github.com/bnjbvr/cargo-machete/issues/100
ignored = ["cfg_aliases"]
2021-06-04 05:19:36 +00:00
[lib]
[features]
metal = ["naga/msl-out", "dep:block"]
2023-10-25 17:53:22 +00:00
vulkan = [
"naga/spv-out",
"dep:ash",
"dep:gpu-alloc",
"dep:gpu-descriptor",
"dep:libloading",
"dep:smallvec",
"dep:android_system_properties",
]
gles = [
"naga/glsl-out",
"dep:glow",
"dep:glutin_wgl_sys",
"dep:khronos-egl",
"dep:libloading",
"dep:ndk-sys",
"winapi/libloaderapi",
2023-10-25 17:53:22 +00:00
]
dx12 = [
"naga/hlsl-out",
"dep:d3d12",
"dep:bit-set",
"dep:libloading",
"dep:range-alloc",
2023-10-25 17:53:22 +00:00
"winapi/std",
"winapi/winbase",
"winapi/d3d12",
"winapi/d3d12shader",
"winapi/d3d12sdklayers",
"winapi/dxgi1_6",
"winapi/errhandlingapi",
2023-10-25 17:53:22 +00:00
]
# TODO: This is a separate feature until Mozilla okays windows-rs, see https://github.com/gfx-rs/wgpu/issues/3207 for the tracking issue.
windows_rs = ["dep:gpu-allocator"]
dxc_shader_compiler = ["dep:hassle-rs"]
renderdoc = ["dep:libloading", "dep:renderdoc-sys"]
fragile-send-sync-non-atomic-wasm = ["wgt/fragile-send-sync-non-atomic-wasm"]
# Panic when running into an out-of-memory error (for debugging purposes).
#
# Only affects the d3d12 and vulkan backends.
oom_panic = []
# Panic when running into a device lost error (for debugging purposes).
# Only affects the d3d12 and vulkan backends.
device_lost_panic = []
# Panic when running into an internal error other than out-of-memory and device lost
# (for debugging purposes).
#
# Only affects the d3d12 and vulkan backends.
internal_error_panic = []
2021-06-04 05:19:36 +00:00
[[example]]
name = "halmark"
[[example]]
name = "raw-gles"
required-features = ["gles"]
2021-06-04 05:19:36 +00:00
[dependencies]
bitflags = "2"
build(deps): bump the patch-updates group with 19 updates (#5770) Bumps the patch-updates group with 19 updates: | Package | From | To | | --- | --- | --- | | [parking_lot](https://github.com/Amanieu/parking_lot) | `0.12.2` | `0.12.3` | | [serde](https://github.com/serde-rs/serde) | `1.0.202` | `1.0.203` | | [tokio](https://github.com/tokio-rs/tokio) | `1.37.0` | `1.38.0` | | [syn](https://github.com/dtolnay/syn) | `2.0.65` | `2.0.66` | | [backtrace](https://github.com/rust-lang/backtrace-rs) | `0.3.71` | `0.3.72` | | [bytemuck_derive](https://github.com/Lokathor/bytemuck) | `1.6.0` | `1.7.0` | | [crc32fast](https://github.com/srijs/rust-crc32fast) | `1.4.0` | `1.4.2` | | [deno_unsync](https://github.com/denoland/deno_unsync) | `0.3.3` | `0.3.4` | | [gimli](https://github.com/gimli-rs/gimli) | `0.28.1` | `0.29.0` | | [objc-sys](https://github.com/madsmtm/objc2) | `0.3.3` | `0.3.5` | | [object](https://github.com/gimli-rs/object) | `0.32.2` | `0.35.0` | | [plotters](https://github.com/plotters-rs/plotters) | `0.3.5` | `0.3.6` | | [plotters-backend](https://github.com/plotters-rs/plotters) | `0.3.5` | `0.3.6` | | [plotters-svg](https://github.com/plotters-rs/plotters) | `0.3.5` | `0.3.6` | | [polling](https://github.com/smol-rs/polling) | `3.7.0` | `3.7.1` | | [proc-macro2](https://github.com/dtolnay/proc-macro2) | `1.0.83` | `1.0.85` | | [serde_derive](https://github.com/serde-rs/serde) | `1.0.202` | `1.0.203` | | [tokio-macros](https://github.com/tokio-rs/tokio) | `2.2.0` | `2.3.0` | | [wayland-backend](https://github.com/smithay/wayland-rs) | `0.3.3` | `0.3.4` | Updates `parking_lot` from 0.12.2 to 0.12.3 - [Changelog](https://github.com/Amanieu/parking_lot/blob/master/CHANGELOG.md) - [Commits](https://github.com/Amanieu/parking_lot/compare/0.12.2...0.12.3) Updates `serde` from 1.0.202 to 1.0.203 - [Release notes](https://github.com/serde-rs/serde/releases) - [Commits](https://github.com/serde-rs/serde/compare/v1.0.202...v1.0.203) Updates `tokio` from 1.37.0 to 1.38.0 - [Release notes](https://github.com/tokio-rs/tokio/releases) - [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.37.0...tokio-1.38.0) Updates `syn` from 2.0.65 to 2.0.66 - [Release notes](https://github.com/dtolnay/syn/releases) - [Commits](https://github.com/dtolnay/syn/compare/2.0.65...2.0.66) Updates `backtrace` from 0.3.71 to 0.3.72 - [Release notes](https://github.com/rust-lang/backtrace-rs/releases) - [Commits](https://github.com/rust-lang/backtrace-rs/compare/0.3.71...0.3.72) Updates `bytemuck_derive` from 1.6.0 to 1.7.0 - [Changelog](https://github.com/Lokathor/bytemuck/blob/main/changelog.md) - [Commits](https://github.com/Lokathor/bytemuck/compare/bytemuck_derive-v1.6.0...bytemuck_derive-v1.7.0) Updates `crc32fast` from 1.4.0 to 1.4.2 - [Commits](https://github.com/srijs/rust-crc32fast/compare/v1.4.0...v1.4.2) Updates `deno_unsync` from 0.3.3 to 0.3.4 - [Commits](https://github.com/denoland/deno_unsync/commits) Updates `gimli` from 0.28.1 to 0.29.0 - [Changelog](https://github.com/gimli-rs/gimli/blob/master/CHANGELOG.md) - [Commits](https://github.com/gimli-rs/gimli/compare/0.28.1...0.29.0) Updates `objc-sys` from 0.3.3 to 0.3.5 - [Commits](https://github.com/madsmtm/objc2/compare/objc-sys-0.3.3...objc-sys-0.3.5) Updates `object` from 0.32.2 to 0.35.0 - [Changelog](https://github.com/gimli-rs/object/blob/master/CHANGELOG.md) - [Commits](https://github.com/gimli-rs/object/compare/0.32.2...0.35.0) Updates `plotters` from 0.3.5 to 0.3.6 - [Changelog](https://github.com/plotters-rs/plotters/blob/master/CHANGELOG.md) - [Commits](https://github.com/plotters-rs/plotters/compare/v0.3.5...v0.3.6) Updates `plotters-backend` from 0.3.5 to 0.3.6 - [Changelog](https://github.com/plotters-rs/plotters/blob/master/CHANGELOG.md) - [Commits](https://github.com/plotters-rs/plotters/compare/v0.3.5...v0.3.6) Updates `plotters-svg` from 0.3.5 to 0.3.6 - [Changelog](https://github.com/plotters-rs/plotters/blob/master/CHANGELOG.md) - [Commits](https://github.com/plotters-rs/plotters/compare/v0.3.5...v0.3.6) Updates `polling` from 3.7.0 to 3.7.1 - [Release notes](https://github.com/smol-rs/polling/releases) - [Changelog](https://github.com/smol-rs/polling/blob/master/CHANGELOG.md) - [Commits](https://github.com/smol-rs/polling/compare/v3.7.0...v3.7.1) Updates `proc-macro2` from 1.0.83 to 1.0.85 - [Release notes](https://github.com/dtolnay/proc-macro2/releases) - [Commits](https://github.com/dtolnay/proc-macro2/compare/1.0.83...1.0.85) Updates `serde_derive` from 1.0.202 to 1.0.203 - [Release notes](https://github.com/serde-rs/serde/releases) - [Commits](https://github.com/serde-rs/serde/compare/v1.0.202...v1.0.203) Updates `tokio-macros` from 2.2.0 to 2.3.0 - [Release notes](https://github.com/tokio-rs/tokio/releases) - [Commits](https://github.com/tokio-rs/tokio/compare/tokio-macros-2.2.0...tokio-macros-2.3.0) Updates `wayland-backend` from 0.3.3 to 0.3.4 - [Release notes](https://github.com/smithay/wayland-rs/releases) - [Changelog](https://github.com/Smithay/wayland-rs/blob/master/historical_changelog.md) - [Commits](https://github.com/smithay/wayland-rs/commits) --- updated-dependencies: - dependency-name: parking_lot dependency-type: direct:production update-type: version-update:semver-patch dependency-group: patch-updates - dependency-name: serde dependency-type: direct:production update-type: version-update:semver-patch dependency-group: patch-updates - dependency-name: tokio dependency-type: direct:production update-type: version-update:semver-minor dependency-group: patch-updates - dependency-name: syn dependency-type: direct:production update-type: version-update:semver-patch dependency-group: patch-updates - dependency-name: backtrace dependency-type: indirect update-type: version-update:semver-patch dependency-group: patch-updates - dependency-name: bytemuck_derive dependency-type: indirect update-type: version-update:semver-minor dependency-group: patch-updates - dependency-name: crc32fast dependency-type: indirect update-type: version-update:semver-patch dependency-group: patch-updates - dependency-name: deno_unsync dependency-type: indirect update-type: version-update:semver-patch dependency-group: patch-updates - dependency-name: gimli dependency-type: indirect update-type: version-update:semver-minor dependency-group: patch-updates - dependency-name: objc-sys dependency-type: indirect update-type: version-update:semver-patch dependency-group: patch-updates - dependency-name: object dependency-type: indirect update-type: version-update:semver-minor dependency-group: patch-updates - dependency-name: plotters dependency-type: indirect update-type: version-update:semver-patch dependency-group: patch-updates - dependency-name: plotters-backend dependency-type: indirect update-type: version-update:semver-patch dependency-group: patch-updates - dependency-name: plotters-svg dependency-type: indirect update-type: version-update:semver-patch dependency-group: patch-updates - dependency-name: polling dependency-type: indirect update-type: version-update:semver-patch dependency-group: patch-updates - dependency-name: proc-macro2 dependency-type: indirect update-type: version-update:semver-patch dependency-group: patch-updates - dependency-name: serde_derive dependency-type: indirect update-type: version-update:semver-patch dependency-group: patch-updates - dependency-name: tokio-macros dependency-type: indirect update-type: version-update:semver-minor dependency-group: patch-updates - dependency-name: wayland-backend dependency-type: indirect update-type: version-update:semver-patch dependency-group: patch-updates ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-03 07:20:29 +00:00
parking_lot = ">=0.11, <0.13"
2022-12-15 20:46:28 +00:00
profiling = { version = "1", default-features = false }
raw-window-handle = "0.6"
2022-12-15 20:46:28 +00:00
thiserror = "1"
once_cell = "1.19.0"
2021-06-05 05:44:21 +00:00
2021-06-11 06:09:03 +00:00
# backends common
2022-12-15 20:46:28 +00:00
arrayvec = "0.7"
rustc-hash = "1.1"
2022-12-15 20:46:28 +00:00
log = "0.4"
2021-07-14 16:40:01 +00:00
# backend: Gles
2024-01-17 20:23:50 +00:00
glow = { version = "0.13.1", optional = true }
2021-07-14 16:40:01 +00:00
[dependencies.wgt]
2022-12-15 20:46:28 +00:00
package = "wgpu-types"
path = "../wgpu-types"
2024-04-28 22:06:35 +00:00
version = "0.20.0"
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
# backend: Vulkan
ash = { version = "0.38.0", optional = true }
gpu-alloc = { version = "0.6", optional = true }
gpu-descriptor = { version = "0.3", optional = true }
smallvec = { version = "1", optional = true, features = ["union"] }
2023-10-05 18:01:32 +00:00
khronos-egl = { version = "6", features = ["dynamic"], optional = true }
libloading = { version = ">=0.7, <0.9", optional = true }
renderdoc-sys = { version = "1.1.0", optional = true }
2021-06-08 15:46:53 +00:00
2022-01-25 10:35:45 +00:00
[target.'cfg(target_os = "emscripten")'.dependencies]
2023-10-05 18:01:32 +00:00
khronos-egl = { version = "6", features = ["static", "no-pkg-config"] }
2022-01-25 10:35:45 +00:00
#Note: it's unused by emscripten, but we keep it to have single code base in egl.rs
libloading = { version = ">=0.7, <0.9", optional = true }
2022-01-25 10:35:45 +00:00
[target.'cfg(windows)'.dependencies]
# backend: Dx12
bit-set = { version = "0.5", optional = true }
range-alloc = { version = "0.1", optional = true }
gpu-allocator = { version = "0.26", default-features = false, features = [
2023-10-25 17:53:22 +00:00
"d3d12",
"public-winapi",
], optional = true }
hassle-rs = { version = "0.11", optional = true }
# backend: Gles
build(deps): bump the patch-updates group with 12 updates (#5790) Bumps the patch-updates group with 12 updates: | Package | From | To | | --- | --- | --- | | [glutin_wgl_sys](https://github.com/rust-windowing/glutin) | `0.5.0` | `0.6.0` | | [anstyle-query](https://github.com/rust-cli/anstyle) | `1.0.3` | `1.1.0` | | [cc](https://github.com/rust-lang/cc-rs) | `1.0.98` | `1.0.99` | | [clap](https://github.com/clap-rs/clap) | `4.5.4` | `4.5.6` | | [clap_builder](https://github.com/clap-rs/clap) | `4.5.2` | `4.5.6` | | [clap_derive](https://github.com/clap-rs/clap) | `4.5.4` | `4.5.5` | | [clap_lex](https://github.com/clap-rs/clap) | `0.7.0` | `0.7.1` | | [regex](https://github.com/rust-lang/regex) | `1.10.4` | `1.10.5` | | [unicode-width](https://github.com/unicode-rs/unicode-width) | `0.1.12` | `0.1.13` | | [utf8parse](https://github.com/alacritty/vte) | `0.2.1` | `0.2.2` | | [windows-result](https://github.com/microsoft/windows-rs) | `0.1.1` | `0.1.2` | | [xkeysym](https://github.com/notgull/xkeysym) | `0.2.0` | `0.2.1` | Updates `glutin_wgl_sys` from 0.5.0 to 0.6.0 - [Release notes](https://github.com/rust-windowing/glutin/releases) - [Changelog](https://github.com/rust-windowing/glutin/blob/master/CHANGELOG.md) - [Commits](https://github.com/rust-windowing/glutin/commits) Updates `anstyle-query` from 1.0.3 to 1.1.0 - [Commits](https://github.com/rust-cli/anstyle/compare/anstyle-query-v1.0.3...anstyle-query-v1.1.0) Updates `cc` from 1.0.98 to 1.0.99 - [Release notes](https://github.com/rust-lang/cc-rs/releases) - [Commits](https://github.com/rust-lang/cc-rs/compare/1.0.98...1.0.99) Updates `clap` from 4.5.4 to 4.5.6 - [Release notes](https://github.com/clap-rs/clap/releases) - [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md) - [Commits](https://github.com/clap-rs/clap/compare/clap_complete-v4.5.4...v4.5.6) Updates `clap_builder` from 4.5.2 to 4.5.6 - [Release notes](https://github.com/clap-rs/clap/releases) - [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md) - [Commits](https://github.com/clap-rs/clap/compare/v4.5.2...v4.5.6) Updates `clap_derive` from 4.5.4 to 4.5.5 - [Release notes](https://github.com/clap-rs/clap/releases) - [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md) - [Commits](https://github.com/clap-rs/clap/compare/v4.5.4...v4.5.5) Updates `clap_lex` from 0.7.0 to 0.7.1 - [Release notes](https://github.com/clap-rs/clap/releases) - [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md) - [Commits](https://github.com/clap-rs/clap/compare/clap_lex-v0.7.0...clap_lex-v0.7.1) Updates `regex` from 1.10.4 to 1.10.5 - [Release notes](https://github.com/rust-lang/regex/releases) - [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md) - [Commits](https://github.com/rust-lang/regex/compare/1.10.4...1.10.5) Updates `unicode-width` from 0.1.12 to 0.1.13 - [Commits](https://github.com/unicode-rs/unicode-width/compare/v0.1.12...v0.1.13) Updates `utf8parse` from 0.2.1 to 0.2.2 - [Release notes](https://github.com/alacritty/vte/releases) - [Changelog](https://github.com/alacritty/vte/blob/master/CHANGELOG.md) - [Commits](https://github.com/alacritty/vte/compare/utf8parse_v0.2.1...utf8parse_v0.2.2) Updates `windows-result` from 0.1.1 to 0.1.2 - [Release notes](https://github.com/microsoft/windows-rs/releases) - [Commits](https://github.com/microsoft/windows-rs/commits) Updates `xkeysym` from 0.2.0 to 0.2.1 - [Release notes](https://github.com/notgull/xkeysym/releases) - [Changelog](https://github.com/rust-windowing/xkeysym/blob/master/CHANGELOG.md) - [Commits](https://github.com/notgull/xkeysym/compare/v0.2.0...v0.2.1) --- updated-dependencies: - dependency-name: glutin_wgl_sys dependency-type: direct:production update-type: version-update:semver-minor dependency-group: patch-updates - dependency-name: anstyle-query dependency-type: indirect update-type: version-update:semver-minor dependency-group: patch-updates - dependency-name: cc dependency-type: indirect update-type: version-update:semver-patch dependency-group: patch-updates - dependency-name: clap dependency-type: indirect update-type: version-update:semver-patch dependency-group: patch-updates - dependency-name: clap_builder dependency-type: indirect update-type: version-update:semver-patch dependency-group: patch-updates - dependency-name: clap_derive dependency-type: indirect update-type: version-update:semver-patch dependency-group: patch-updates - dependency-name: clap_lex dependency-type: indirect update-type: version-update:semver-patch dependency-group: patch-updates - dependency-name: regex dependency-type: indirect update-type: version-update:semver-patch dependency-group: patch-updates - dependency-name: unicode-width dependency-type: indirect update-type: version-update:semver-patch dependency-group: patch-updates - dependency-name: utf8parse dependency-type: indirect update-type: version-update:semver-patch dependency-group: patch-updates - dependency-name: windows-result dependency-type: indirect update-type: version-update:semver-patch dependency-group: patch-updates - dependency-name: xkeysym dependency-type: indirect update-type: version-update:semver-patch dependency-group: patch-updates ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-10 07:51:27 +00:00
glutin_wgl_sys = { version = "0.6", optional = true }
2023-10-25 17:53:22 +00:00
winapi = { version = "0.3", features = [
"profileapi",
"windef",
"winuser",
"dcomp",
] }
2024-04-28 22:06:35 +00:00
d3d12 = { path = "../d3d12/", version = "0.20.0", optional = true, features = [
"libloading",
] }
[target.'cfg(any(target_os="macos", target_os="ios"))'.dependencies]
# backend: Metal
block = { version = "0.1", optional = true }
2024-04-28 22:06:35 +00:00
metal = { version = "0.28.0" }
2022-12-15 20:46:28 +00:00
objc = "0.2.5"
core-graphics-types = "0.1"
2022-01-25 10:35:45 +00:00
[target.'cfg(all(target_arch = "wasm32", not(target_os = "emscripten")))'.dependencies]
wasm-bindgen = "0.2.87"
web-sys = { version = "0.3.69", features = [
2023-10-25 17:53:22 +00:00
"Window",
"HtmlCanvasElement",
"WebGl2RenderingContext",
"OffscreenCanvas",
] }
js-sys = "0.3.69"
[target.'cfg(unix)'.dependencies]
libc = "0.2"
Acquire texture: `Option<std::time::Duration>` timeouts (#2724) * surface.acquire_texture: pass Option<Duration> for timeout A std::time::Duration allows for timeouts to be specified more clearly in Rust using whatever units are convenient for the caller, and an Option also makes it clearer in case no timeout is wanted, as opposed to passing a bitwise !0 as special timeout value. Notably there was an impedance mismatch with the Vulkan backend that takes a 64bit timeout in nanoseconds and uses u64::MAX to indicate no timeout and the backend was not mapping a given u32::MAX into a u64::MAX * surface.acquire_texture: ignore timeout for Android < 11 Prior to Android 11 then Android's vkAcquireNextImageKHR implementation was non-conformant and didn't support timeouts and additionally would log a verbose warning if a timeout was requested. For reference this version of AcquireNextImageKHR doesn't support timeouts: https://android.googlesource.com/platform/frameworks/native/+/refs/tags/android-mainline-10.0.0_r13/vulkan/libvulkan/swapchain.cpp#1426 and this version does: https://android.googlesource.com/platform/frameworks/native/+/refs/tags/android-mainline-11.0.0_r45/vulkan/libvulkan/swapchain.cpp#1438 (i.e. timeout support was added in Android 11) This patch adds a dependency on the `android-properties` crate that provides a simple wrapper for the `__system_property_set` syscall so that the platform version can be read via the `ro.build.version.sdk` property and then for versions < 30 (corresponds to Android 11) any timeout given to `acquire_texture` will be ignored (and `u64::MAX` will be passed to Vulkan)
2022-06-04 16:05:40 +00:00
[target.'cfg(target_os = "android")'.dependencies]
android_system_properties = { version = "0.1.1", optional = true }
ndk-sys = { version = "0.5.0", optional = true }
Acquire texture: `Option<std::time::Duration>` timeouts (#2724) * surface.acquire_texture: pass Option<Duration> for timeout A std::time::Duration allows for timeouts to be specified more clearly in Rust using whatever units are convenient for the caller, and an Option also makes it clearer in case no timeout is wanted, as opposed to passing a bitwise !0 as special timeout value. Notably there was an impedance mismatch with the Vulkan backend that takes a 64bit timeout in nanoseconds and uses u64::MAX to indicate no timeout and the backend was not mapping a given u32::MAX into a u64::MAX * surface.acquire_texture: ignore timeout for Android < 11 Prior to Android 11 then Android's vkAcquireNextImageKHR implementation was non-conformant and didn't support timeouts and additionally would log a verbose warning if a timeout was requested. For reference this version of AcquireNextImageKHR doesn't support timeouts: https://android.googlesource.com/platform/frameworks/native/+/refs/tags/android-mainline-10.0.0_r13/vulkan/libvulkan/swapchain.cpp#1426 and this version does: https://android.googlesource.com/platform/frameworks/native/+/refs/tags/android-mainline-11.0.0_r45/vulkan/libvulkan/swapchain.cpp#1438 (i.e. timeout support was added in Android 11) This patch adds a dependency on the `android-properties` crate that provides a simple wrapper for the `__system_property_set` syscall so that the platform version can be read via the `ro.build.version.sdk` property and then for versions < 30 (corresponds to Android 11) any timeout given to `acquire_texture` will be ignored (and `u64::MAX` will be passed to Vulkan)
2022-06-04 16:05:40 +00:00
2021-06-05 05:44:21 +00:00
[dependencies.naga]
2023-10-25 20:51:36 +00:00
path = "../naga"
2024-04-28 22:06:35 +00:00
version = "0.20.0"
2021-06-08 18:58:48 +00:00
[build-dependencies]
cfg_aliases.workspace = true
# DEV dependencies
2021-06-08 18:58:48 +00:00
[dev-dependencies.naga]
2023-10-25 20:51:36 +00:00
path = "../naga"
2024-04-28 22:06:35 +00:00
version = "0.20.0"
2021-06-08 18:58:48 +00:00
features = ["wgsl-in"]
[dev-dependencies]
cfg-if = "1"
env_logger = "0.11"
glam = "0.27.0" # for ray-traced-triangle example
winit = { version = "0.29", features = [
"android-native-activity",
] } # for "halmark" example
[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies]
2022-12-15 20:46:28 +00:00
glutin = "0.29.1" # for "gles" example