An entry-point array of buffers, that is not part of a Metal argument
buffer, requires a known length, so it can be emitted as discrete buffers.
For runtime arrays of resources, this can be retrieved from the resource
binding information added via add_msl_resource_binding().
- Redefine get_resource_array_size() to consolidate array sizing using both var
type, and runtime array sizing from resource bindings, if not found in type.
- Use get_resource_array_size() to fix issue for runtime arrays of buffers.
- Update runtime arrays of images and samplers to use get_resource_array_size().
- Add .DS_Store to .gitignore (unrelated).
This enables out-of-tree builds, and the use of other build tools.
This will not overwrite Makefile if you are building in the
source tree. To use makefiles generated from CMake, you must
build out of the source tree.
Usage: If SPIRV-Cross source is in $SPIRV_CROSS_ROOT, then to
build with ninja in a different directory:
cmake -G Ninja $SPIRV_CROSS_ROOT
ninja
# Run tests, if enabled
ctest
Tests will be enabled if you have python3.