Update to Vulkan SDK 1.2.135 library dependencies.
Add Scripts/packagePregenSpirvToolsHeaders script to automate packaging Spirv-Tools headers in support of the fetchDependencies --skip-spirv-tools-build option. Update Docs/Whats_New.md.
This commit is contained in:
parent
df11916217
commit
a58f6bc441
@ -17,7 +17,7 @@ For best results, use a Markdown reader.*
|
|||||||
MoltenVK 1.0.41
|
MoltenVK 1.0.41
|
||||||
---------------
|
---------------
|
||||||
|
|
||||||
Released 2020/03/30
|
Released 2020/04/05
|
||||||
|
|
||||||
- Accurately populate Vulkan `VkFormatProperties` from `MTLPixelFormat` capabilities,
|
- Accurately populate Vulkan `VkFormatProperties` from `MTLPixelFormat` capabilities,
|
||||||
taking into consideration variations across `MTLDevice` Features Sets.
|
taking into consideration variations across `MTLDevice` Features Sets.
|
||||||
@ -29,6 +29,7 @@ Released 2020/03/30
|
|||||||
- Add ability to disable command memory pooling using `MVK_CONFIG_USE_COMMAND_POOLING`
|
- Add ability to disable command memory pooling using `MVK_CONFIG_USE_COMMAND_POOLING`
|
||||||
environment variable.
|
environment variable.
|
||||||
- Fix memory leak when pre-filling `MTLCommandBuffers` using `MVK_CONFIG_PREFILL_METAL_COMMAND_BUFFERS`.
|
- Fix memory leak when pre-filling `MTLCommandBuffers` using `MVK_CONFIG_PREFILL_METAL_COMMAND_BUFFERS`.
|
||||||
|
- Fix issue causing screen captures from swapchain image to deadlock.
|
||||||
- Broaden conditions for host read sync for image memory barriers on macOS.
|
- Broaden conditions for host read sync for image memory barriers on macOS.
|
||||||
- Update the `README.md` and `MoltenVK_Runtime_UserGuide.md` documents to clarify that
|
- Update the `README.md` and `MoltenVK_Runtime_UserGuide.md` documents to clarify that
|
||||||
**MoltenVK** is not a fully-compliant implementation of *Vulkan*.
|
**MoltenVK** is not a fully-compliant implementation of *Vulkan*.
|
||||||
@ -37,6 +38,7 @@ Released 2020/03/30
|
|||||||
- Update to latest SPIRV-Cross version:
|
- Update to latest SPIRV-Cross version:
|
||||||
- MSL: Support inline uniform blocks in argument buffers.
|
- MSL: Support inline uniform blocks in argument buffers.
|
||||||
- MSL: Move inline uniform blocks to the end of the argument buffer.
|
- MSL: Move inline uniform blocks to the end of the argument buffer.
|
||||||
|
- MSL: Fix access chain for deep struct hierarchy on array of buffers.
|
||||||
- MSL: Remove old memory_scope flag from iOS barriers.
|
- MSL: Remove old memory_scope flag from iOS barriers.
|
||||||
- MSL: Fixes to array handling.
|
- MSL: Fixes to array handling.
|
||||||
|
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -180,17 +180,7 @@ library. However, after updating the version of *glslang* (which adds *SPIRV-Too
|
|||||||
as described [above](#updating), if you encounter any building errors, you may need to re-add
|
as described [above](#updating), if you encounter any building errors, you may need to re-add
|
||||||
the *SPIRV-Tools* library to the `ExternalDependencies` *Xcode* project as follows:
|
the *SPIRV-Tools* library to the `ExternalDependencies` *Xcode* project as follows:
|
||||||
|
|
||||||
1. In the *Project Navigator*, remove the *Group* named `source` from under the *Group* named
|
1. In the *Project Navigator* panel, select the `ExternalDependencies` *Xcode* project, then
|
||||||
`External/SPIRV-Tools`.
|
|
||||||
|
|
||||||
2. Drag the `External/glslang/External/spirv-tools/source` file folder to the `External/SPIRV-Tools`
|
|
||||||
group in the *Project Navigator* panel. In the _**Choose options for adding these files**_ dialog
|
|
||||||
that opens, select the _**Create groups**_ option, add the files to *both* the `SPIRV-Tools-macOS`
|
|
||||||
and `SPIRV-Tools-iOS` targets, and click the ***Finish*** button.
|
|
||||||
|
|
||||||
3. Remove the *Group* named `fuzz` from under the *Group* named `External/SPIRV-Tools/source`.
|
|
||||||
|
|
||||||
4. In the *Project Navigator* panel, select the `ExternalDependencies` *Xcode* project, then
|
|
||||||
select the `SPIRV-Tools-macOS` target, and open the *Build Settings* tab. Locate the build
|
select the `SPIRV-Tools-macOS` target, and open the *Build Settings* tab. Locate the build
|
||||||
setting entry **Header Search Paths** (`HEADER_SEARCH_PATHS`) and add the following paths:
|
setting entry **Header Search Paths** (`HEADER_SEARCH_PATHS`) and add the following paths:
|
||||||
|
|
||||||
@ -200,11 +190,21 @@ the *SPIRV-Tools* library to the `ExternalDependencies` *Xcode* project as follo
|
|||||||
"$(SRCROOT)/External/glslang/External/spirv-tools/external/spirv-headers/include"
|
"$(SRCROOT)/External/glslang/External/spirv-tools/external/spirv-headers/include"
|
||||||
"$(SRCROOT)/External/glslang/External/spirv-tools/build"
|
"$(SRCROOT)/External/glslang/External/spirv-tools/build"
|
||||||
|
|
||||||
5. Repeat *Step 4* for the `SPIRV-Tools-iOS` target within the `ExternalDependencies` *Xcode* project
|
2. Repeat *Step 1* for the `SPIRV-Tools-iOS` target within the `ExternalDependencies` *Xcode* project
|
||||||
|
|
||||||
6. Update `Templates/spirv-tools/build.zip` from the `*.h` and `*.inc` files in
|
3. In the *Project Navigator*, remove the *Group* named `source` from under the *Group* named
|
||||||
`External/glslang/External/spirv-tools/build`, remove hidden `.*` files, and test
|
`External/SPIRV-Tools`.
|
||||||
by running `./fetchDependencies --skip-spirv-tools-build`, and a **MoltenVK** build.
|
|
||||||
|
4. Drag the `External/glslang/External/spirv-tools/source` file folder to the `External/SPIRV-Tools`
|
||||||
|
group in the *Project Navigator* panel. In the _**Choose options for adding these files**_ dialog
|
||||||
|
that opens, select the _**Create groups**_ option, add the files to *both* the `SPIRV-Tools-macOS`
|
||||||
|
and `SPIRV-Tools-iOS` targets, and click the ***Finish*** button.
|
||||||
|
|
||||||
|
5. Remove the *Group* named `fuzz` from under the *Group* named `External/SPIRV-Tools/source`.
|
||||||
|
|
||||||
|
6. In the `Scripts` folder, run `./packagePregenSpirvToolsHeaders` to update `Templates/spirv-tools/build.zip`
|
||||||
|
from the `*.h` and `*.inc` files in `External/glslang/External/spirv-tools/build`, and test by running
|
||||||
|
`./fetchDependencies --skip-spirv-tools-build`, and a **MoltenVK** build.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -217,10 +217,19 @@ library. However, after updating the version of *glslang*, as described [above](
|
|||||||
if you encounter any building errors, you may need to re-add the *glslang* library to the
|
if you encounter any building errors, you may need to re-add the *glslang* library to the
|
||||||
`ExternalDependencies` *Xcode* project as follows:
|
`ExternalDependencies` *Xcode* project as follows:
|
||||||
|
|
||||||
1. In the *Project Navigator*, remove all *Groups* from under the *Group* named
|
1. In the *Project Navigator* panel, select the `ExternalDependencies` *Xcode* project, then
|
||||||
|
select the `glslang-macOS` target, and open the *Build Settings* tab. Locate the build
|
||||||
|
setting entry **Header Search Paths** (`HEADER_SEARCH_PATHS`) and add the following paths:
|
||||||
|
|
||||||
|
$(inherited)
|
||||||
|
"$(SRCROOT)/External/glslang"
|
||||||
|
|
||||||
|
2. Repeat *Step 1* for the `glslang-iOS` target within the `ExternalDependencies` *Xcode* project
|
||||||
|
|
||||||
|
3. In the *Project Navigator*, remove all *Groups* from under the *Group* named
|
||||||
`External/glslang`.
|
`External/glslang`.
|
||||||
|
|
||||||
2. Drag the following folders from the `External/glslang` file folder to the `External/glslang`
|
4. Drag the following folders from the `External/glslang` file folder to the `External/glslang`
|
||||||
*Group* in the *Project Navigator* panel:
|
*Group* in the *Project Navigator* panel:
|
||||||
|
|
||||||
glslang
|
glslang
|
||||||
@ -230,19 +239,11 @@ if you encounter any building errors, you may need to re-add the *glslang* libra
|
|||||||
In the ***Choose options for adding these files*** dialog that opens, select the ***Create groups*** option,
|
In the ***Choose options for adding these files*** dialog that opens, select the ***Create groups*** option,
|
||||||
add the files to *both* the `glslang-macOS` and `glslang-iOS` targets, and click the ***Finish*** button.
|
add the files to *both* the `glslang-macOS` and `glslang-iOS` targets, and click the ***Finish*** button.
|
||||||
|
|
||||||
3. In the *Project Navigator* panel, remove the references to the following files and folders:
|
5. In the *Project Navigator* panel, remove the references to the following files and folders:
|
||||||
|
|
||||||
External/glslang/glslang/MachineIndependant/glslang.y
|
External/glslang/glslang/MachineIndependant/glslang.y
|
||||||
External/glslang/glslang/OSDependent/Windows
|
External/glslang/glslang/OSDependent/Windows
|
||||||
|
|
||||||
|
|
||||||
4. In the *Project Navigator* panel, select the `ExternalDependencies` *Xcode* project, then
|
|
||||||
select the `glslang-macOS` target, and open the *Build Settings* tab. Locate the build
|
|
||||||
setting entry **Header Search Paths** (`HEADER_SEARCH_PATHS`) and add the following paths:
|
|
||||||
|
|
||||||
$(inherited)
|
|
||||||
"$(SRCROOT)/External/glslang"
|
|
||||||
|
|
||||||
5. Repeat *Step 4* for the `glslang-iOS` target within the `ExternalDependencies` *Xcode* project
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -1 +1 @@
|
|||||||
9b3c5e12be12c55533f3bd3ab9cc617ec0f393d8
|
e58e8d5dbe03ea2cc755dbaf43ffefa1b8d77bef
|
||||||
|
@ -1 +1 @@
|
|||||||
4792a6854238ba3f6d10b8c7fcd11c102cae4ca6
|
7844b9b4e180612c7ca35bcb07ce7f86610b22c4
|
||||||
|
@ -1 +1 @@
|
|||||||
9f72cf123c673e47679bb72caa06a17d7b0258dd
|
036541ca8f65333bf911b3957afa2c49f83fa0cd
|
||||||
|
@ -1 +1 @@
|
|||||||
4fc7a33910fb8e40b970d160e1b38ab3f67fe0f3
|
e157435c1e777aa1052f446dafed162b4a722e03
|
||||||
|
29
Scripts/packagePregenSpirvToolsHeaders
Executable file
29
Scripts/packagePregenSpirvToolsHeaders
Executable file
@ -0,0 +1,29 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
#
|
||||||
|
# Copyright (c) 2016-2020 The Brenwill Workshop Ltd.
|
||||||
|
#
|
||||||
|
# packagePregenSpirvToolsHeaders - Packages Spirv-Tools headers to simplify building glslang
|
||||||
|
#
|
||||||
|
# macOS usage: ./packagePregenSpirvToolsHeaders
|
||||||
|
#
|
||||||
|
|
||||||
|
set -o errexit
|
||||||
|
|
||||||
|
|
||||||
|
# ----------------- Main -------------------
|
||||||
|
|
||||||
|
EXT_DIR=../External
|
||||||
|
SPV_TLS_BLD_DIR="${EXT_DIR}/glslang/External/spirv-tools/build"
|
||||||
|
TPLT_DIR=../Templates/spirv-tools
|
||||||
|
TPLT_BLD_DIR="${TPLT_DIR}/build"
|
||||||
|
|
||||||
|
rm -rf "${TPLT_BLD_DIR}"
|
||||||
|
mkdir -p "${TPLT_BLD_DIR}"
|
||||||
|
cp -a "${SPV_TLS_BLD_DIR}/"*.h "${SPV_TLS_BLD_DIR}/"*.inc "${TPLT_BLD_DIR}"
|
||||||
|
|
||||||
|
cd "${TPLT_DIR}"
|
||||||
|
rm -f build.zip
|
||||||
|
zip -qr build.zip build
|
||||||
|
rm -rf build/
|
||||||
|
cd - > /dev/null
|
||||||
|
|
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user