24 lines
888 B
Bash
Executable File
24 lines
888 B
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
|
MINGW_CXX="${MINGW_CXX:-x86_64-w64-mingw32-g++}"
|
|
|
|
if [[ -z "${NVSDK_NGX_INCLUDE:-}" || ! -f "$NVSDK_NGX_INCLUDE/nvsdk_ngx_vk.h" ]]; then
|
|
printf '%s\n' "Set NVSDK_NGX_INCLUDE to a directory containing NVIDIA's nvsdk_ngx_vk.h and nvsdk_ngx_defs.h" >&2
|
|
exit 2
|
|
fi
|
|
|
|
VULKAN_INCLUDE="${VULKAN_INCLUDE:-$(dirname "$NVSDK_NGX_INCLUDE")/vulkan/include}"
|
|
if [[ ! -f "$VULKAN_INCLUDE/vulkan/vulkan.h" ]]; then
|
|
printf '%s\n' "Set VULKAN_INCLUDE to a Windows-target Vulkan-Headers include root" >&2
|
|
exit 2
|
|
fi
|
|
|
|
mkdir -p "$ROOT/build"
|
|
"$MINGW_CXX" -std=c++20 -O2 -Wall -Wextra -static -static-libgcc -static-libstdc++ \
|
|
-I"$NVSDK_NGX_INCLUDE" -I"$VULKAN_INCLUDE" \
|
|
"$ROOT/tools/ngx_vulkan_probe.cpp" \
|
|
-o "$ROOT/build/ngx_vulkan_probe.exe"
|
|
printf 'Built %s\n' "$ROOT/build/ngx_vulkan_probe.exe"
|