Skip to content
Open
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
9 changes: 8 additions & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@ jobs:
steps:
- uses: actions/checkout@v4
- uses: ./
id: composite
with:
version: ${{ fromJSON(github.event.inputs.versions)[0] }}
cache: false
Expand All @@ -75,7 +76,13 @@ jobs:
dir .\tests\build\test_vulkan.exe
echo testing...
set PATH=%PATH%;%VULKAN_SDK%/Bin
.\tests\build\test_vulkan || echo COMPILE TEST ONLY COULD NOT RUN || exit /b 4
.\tests\build\test_vulkan || echo COMPILE TEST ONLY COULD NOT RUN || exit /b 4
- name: Setup tmate session on failure
if: failure()
uses: mxschmitt/[email protected]
with:
limit-access-to-actor: true


test-prebuilt-linux:
if: ${{ contains(github.event.inputs.extra_tests, 'prebuilt-linux') }}
Expand Down
27 changes: 26 additions & 1 deletion vulkan_prebuilt_helpers.sh
Original file line number Diff line number Diff line change
Expand Up @@ -45,10 +45,35 @@ function install_linux() {
tar -C "$VULKAN_SDK" --strip-components 2 -xf vulkan_sdk.tar.gz $VULKAN_SDK_VERSION/x86_64
}

function install_windows() {
# newer SDK installers apparently need to be executed (7z only sees Bin/)
function _install_windows_qt() {
test -d $VULKAN_SDK && test -f vulkan_sdk.exe
echo "Executing Vulkan SDK installer headlessly to $VULKAN_SDK..." >&2
./vulkan_sdk.exe --root "$VULKAN_SDK" --accept-licenses --default-answer --confirm-command install
}
# older SDK installers could be reliably extracteed via 7z.exe
function _install_windows_7z() {
test -d $VULKAN_SDK && test -f vulkan_sdk.exe
echo "Using 7z to unpack Vulkan SDK installer headlessly to $VULKAN_SDK..." >&2
7z x vulkan_sdk.exe -aoa -o$VULKAN_SDK
}
# FIXME: to avoid breaking those using "older" SDKs this checks 7z viability
# and delegates accordingly
function install_windows() {
test -d $VULKAN_SDK && test -f vulkan_sdk.exe
if 7z l vulkan_sdk.exe | grep Include/ >/dev/null ; then
_install_windows_7z
else
_install_windows_qt
fi
# Verify that the installation was successful by checking for a key directory
if [ ! -d "$VULKAN_SDK/Include" ]; then
echo "Installer did not create the expected Include directory." >&2
# You can add more detailed logging here, like listing the contents of VULKAN_SDK
ls -l "$VULKAN_SDK" >&2
exit 1
fi
}

function install_mac() {
test -d $VULKAN_SDK && test -f vulkan_sdk.zip
Expand Down
Loading