Merge pull request #2047 from billhollings/reduce-deps-disk-space
Reduce disk space consumed after running fetchDependencies.
This commit is contained in:
commit
bb914faa53
4
.github/workflows/CI.yml
vendored
4
.github/workflows/CI.yml
vendored
@ -10,12 +10,12 @@ on:
|
|||||||
|
|
||||||
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
|
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
|
||||||
# See the following, which includes links to supported macOS versions, including supported Xcode versions
|
# See the following, which includes links to supported macOS versions, including supported Xcode versions
|
||||||
# https://docs.github.com/en/actions/using-github-hosted-runners/about-github-hosted-runners#supported-runners-and-hardware-resources
|
# https://docs.github.com/en/actions/using-github-hosted-runners/about-github-hosted-runners/about-github-hosted-runners#supported-runners-and-hardware-resources
|
||||||
jobs:
|
jobs:
|
||||||
build:
|
build:
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
xcode: [ "14.3.1" ]
|
xcode: [ "15.0" ]
|
||||||
platform: [ "all", "macos", "ios" ]
|
platform: [ "all", "macos", "ios" ]
|
||||||
os: [ "macos-13" ]
|
os: [ "macos-13" ]
|
||||||
upload_artifacts: [ true ]
|
upload_artifacts: [ true ]
|
||||||
|
@ -13,6 +13,15 @@ Copyright (c) 2015-2023 [The Brenwill Workshop Ltd.](http://www.brenwill.com)
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
MoltenVK 1.2.7
|
||||||
|
--------------
|
||||||
|
|
||||||
|
Released TBD
|
||||||
|
|
||||||
|
- Reduce disk space consumed after running `fetchDependencies` script by removing intermediate file caches.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
MoltenVK 1.2.6
|
MoltenVK 1.2.6
|
||||||
--------------
|
--------------
|
||||||
|
|
||||||
|
@ -45,7 +45,7 @@ extern "C" {
|
|||||||
*/
|
*/
|
||||||
#define MVK_VERSION_MAJOR 1
|
#define MVK_VERSION_MAJOR 1
|
||||||
#define MVK_VERSION_MINOR 2
|
#define MVK_VERSION_MINOR 2
|
||||||
#define MVK_VERSION_PATCH 6
|
#define MVK_VERSION_PATCH 7
|
||||||
|
|
||||||
#define MVK_MAKE_VERSION(major, minor, patch) (((major) * 10000) + ((minor) * 100) + (patch))
|
#define MVK_MAKE_VERSION(major, minor, patch) (((major) * 10000) + ((minor) * 100) + (patch))
|
||||||
#define MVK_VERSION MVK_MAKE_VERSION(MVK_VERSION_MAJOR, MVK_VERSION_MINOR, MVK_VERSION_PATCH)
|
#define MVK_VERSION MVK_MAKE_VERSION(MVK_VERSION_MAJOR, MVK_VERSION_MINOR, MVK_VERSION_PATCH)
|
||||||
|
@ -2506,7 +2506,8 @@ namespace SPIRV_CROSS_NAMESPACE {
|
|||||||
opt.force_sample_rate_shading,
|
opt.force_sample_rate_shading,
|
||||||
opt.manual_helper_invocation_updates,
|
opt.manual_helper_invocation_updates,
|
||||||
opt.check_discarded_frag_stores,
|
opt.check_discarded_frag_stores,
|
||||||
opt.sample_dref_lod_array_as_grad);
|
opt.sample_dref_lod_array_as_grad,
|
||||||
|
opt.replace_recursive_inputs);
|
||||||
}
|
}
|
||||||
|
|
||||||
template<class Archive>
|
template<class Archive>
|
||||||
|
@ -165,8 +165,8 @@ platforms and simulators. The `--visionos` and `--visionossim` selections must b
|
|||||||
with a separate invocation of `fetchDependencies`, because those selections require
|
with a separate invocation of `fetchDependencies`, because those selections require
|
||||||
Xcode 15+, and will cause a multi-platform build on older versions of Xcode to abort.
|
Xcode 15+, and will cause a multi-platform build on older versions of Xcode to abort.
|
||||||
|
|
||||||
Running `fetchDependencies` repeatedly with different platforms will accumulate
|
Running `fetchDependencies` repeatedly with different platforms will accumulate targets
|
||||||
targets in the `XCFramework`.
|
in the `XCFramework`, if the `--keep-cache` option is used on each invocation.
|
||||||
|
|
||||||
For more information about the external open-source libraries used by **MoltenVK**,
|
For more information about the external open-source libraries used by **MoltenVK**,
|
||||||
see the [`ExternalRevisions/README.md`](ExternalRevisions/README.md) document.
|
see the [`ExternalRevisions/README.md`](ExternalRevisions/README.md) document.
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
|
if [ "${SKIP_PACKAGING}" = "Y" ]; then exit 0; fi
|
||||||
|
|
||||||
. "${PROJECT_DIR}/Scripts/create_xcframework_func.sh"
|
. "${PROJECT_DIR}/Scripts/create_xcframework_func.sh"
|
||||||
|
|
||||||
export MVK_EXT_DIR="${PROJECT_DIR}/External"
|
export MVK_EXT_DIR="${PROJECT_DIR}/External"
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
|
if [ "${SKIP_PACKAGING}" = "Y" ]; then exit 0; fi
|
||||||
|
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
export MVK_EXT_LIB_DST_PATH="${PROJECT_DIR}/External/build/"
|
export MVK_EXT_LIB_DST_PATH="${PROJECT_DIR}/External/build/"
|
||||||
@ -7,6 +9,12 @@ export MVK_EXT_LIB_DST_PATH="${PROJECT_DIR}/External/build/"
|
|||||||
# Assign symlink to Latest
|
# Assign symlink to Latest
|
||||||
ln -sfn "${CONFIGURATION}" "${MVK_EXT_LIB_DST_PATH}/Latest"
|
ln -sfn "${CONFIGURATION}" "${MVK_EXT_LIB_DST_PATH}/Latest"
|
||||||
|
|
||||||
|
# Remove the large Intermediates directory if no longer needed
|
||||||
|
if [ "${KEEP_CACHE}" != "Y" ]; then
|
||||||
|
echo Removing Intermediates library at "${MVK_EXT_LIB_DST_PATH}/Intermediates"
|
||||||
|
rm -rf "${MVK_EXT_LIB_DST_PATH}/Intermediates"
|
||||||
|
fi
|
||||||
|
|
||||||
# Clean MoltenVK to ensure the next MoltenVK build will use the latest external library versions.
|
# Clean MoltenVK to ensure the next MoltenVK build will use the latest external library versions.
|
||||||
make --quiet clean
|
make --quiet clean
|
||||||
|
|
||||||
|
@ -67,6 +67,12 @@
|
|||||||
# --no-parallel-build
|
# --no-parallel-build
|
||||||
# Build the external libraries serially instead of in parallel. This is the default.
|
# Build the external libraries serially instead of in parallel. This is the default.
|
||||||
#
|
#
|
||||||
|
# --keep-cache
|
||||||
|
# Do not remove the External/build/Intermediates cache directory after building.
|
||||||
|
# Removing the Intermediates directory returns significant disk space after the
|
||||||
|
# build, and is the default behaviour. Use this option if you intend to run this
|
||||||
|
# script repeatedly to incrementally build one platform at a time.
|
||||||
|
#
|
||||||
# --glslang-root path
|
# --glslang-root path
|
||||||
# "path" specifies a directory path to a KhronosGroup/glslang repository.
|
# "path" specifies a directory path to a KhronosGroup/glslang repository.
|
||||||
# This repository does need to be built and the build directory must be in the
|
# This repository does need to be built and the build directory must be in the
|
||||||
@ -117,6 +123,7 @@ V_HEADERS_ROOT=""
|
|||||||
SPIRV_CROSS_ROOT=""
|
SPIRV_CROSS_ROOT=""
|
||||||
GLSLANG_ROOT=""
|
GLSLANG_ROOT=""
|
||||||
BLD_SPV_TLS=""
|
BLD_SPV_TLS=""
|
||||||
|
export KEEP_CACHE=""
|
||||||
|
|
||||||
while (( "$#" )); do
|
while (( "$#" )); do
|
||||||
case "$1" in
|
case "$1" in
|
||||||
@ -191,6 +198,10 @@ while (( "$#" )); do
|
|||||||
XC_USE_BCKGND=""
|
XC_USE_BCKGND=""
|
||||||
shift 1
|
shift 1
|
||||||
;;
|
;;
|
||||||
|
--keep-cache)
|
||||||
|
KEEP_CACHE="Y"
|
||||||
|
shift 1
|
||||||
|
;;
|
||||||
-v)
|
-v)
|
||||||
XC_BUILD_VERBOSITY=""
|
XC_BUILD_VERBOSITY=""
|
||||||
shift 1
|
shift 1
|
||||||
@ -410,7 +421,6 @@ function execute_xcodebuild_command () {
|
|||||||
# 2 - Platform
|
# 2 - Platform
|
||||||
# 3 - Destination (Optional. Defaults to same as platform)
|
# 3 - Destination (Optional. Defaults to same as platform)
|
||||||
function build_impl() {
|
function build_impl() {
|
||||||
BLD_SPECIFIED="Y"
|
|
||||||
XC_OS=${1}
|
XC_OS=${1}
|
||||||
XC_PLTFM=${2}
|
XC_PLTFM=${2}
|
||||||
if [ "${3}" != "" ]; then
|
if [ "${3}" != "" ]; then
|
||||||
@ -442,7 +452,9 @@ function build_impl() {
|
|||||||
# Select whether or not to run the build in parallel.
|
# Select whether or not to run the build in parallel.
|
||||||
# 1 - OS
|
# 1 - OS
|
||||||
# 2 - platform
|
# 2 - platform
|
||||||
|
# 3 - Destination (Optional. Defaults to same as platform)
|
||||||
function build() {
|
function build() {
|
||||||
|
BLD_SPECIFIED="Y"
|
||||||
if [ "$XC_USE_BCKGND" != "" ]; then
|
if [ "$XC_USE_BCKGND" != "" ]; then
|
||||||
build_impl "${1}" "${2}" "${3}" &
|
build_impl "${1}" "${2}" "${3}" &
|
||||||
else
|
else
|
||||||
@ -453,6 +465,7 @@ function build() {
|
|||||||
EXT_DEPS=ExternalDependencies
|
EXT_DEPS=ExternalDependencies
|
||||||
XC_PROJ="${EXT_DEPS}.xcodeproj"
|
XC_PROJ="${EXT_DEPS}.xcodeproj"
|
||||||
XC_DD_PATH="${EXT_DIR}/build"
|
XC_DD_PATH="${EXT_DIR}/build"
|
||||||
|
export SKIP_PACKAGING="Y"
|
||||||
|
|
||||||
# Determine if xcpretty is present
|
# Determine if xcpretty is present
|
||||||
XCPRETTY_PATH=$(command -v xcpretty 2> /dev/null || true) # ignore failures
|
XCPRETTY_PATH=$(command -v xcpretty 2> /dev/null || true) # ignore failures
|
||||||
@ -512,9 +525,10 @@ if [ "$XC_USE_BCKGND" != "" ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "$BLD_SPECIFIED" != "" ]; then
|
if [ "$BLD_SPECIFIED" != "" ]; then
|
||||||
# Build XCFrameworks, update latest symlink, and clean MoltenVK for rebuild
|
# Build XCFrameworks, update latest symlink, remove intermediates, and clean MoltenVK for rebuild
|
||||||
PROJECT_DIR="."
|
PROJECT_DIR="."
|
||||||
CONFIGURATION=${XC_CONFIG}
|
CONFIGURATION=${XC_CONFIG}
|
||||||
|
SKIP_PACKAGING=""
|
||||||
. "./Scripts/create_ext_lib_xcframeworks.sh"
|
. "./Scripts/create_ext_lib_xcframeworks.sh"
|
||||||
. "./Scripts/package_ext_libs_finish.sh"
|
. "./Scripts/package_ext_libs_finish.sh"
|
||||||
else
|
else
|
||||||
|
Loading…
x
Reference in New Issue
Block a user