diff options
Diffstat (limited to 'scripts/build_win.sh')
| -rwxr-xr-x | scripts/build_win.sh | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/scripts/build_win.sh b/scripts/build_win.sh new file mode 100755 index 0000000..493e322 --- /dev/null +++ b/scripts/build_win.sh @@ -0,0 +1,34 @@ +#!/bin/bash +set -e + +# 1. Build native tools (asset_packer) +echo "Building native tools..." +cmake -S . -B build_native -DDEMO_BUILD_TOOLS=OFF -DDEMO_BUILD_TESTS=OFF +cmake --build build_native --target asset_packer + +# 2. Cross-compile for Windows +echo "Cross-compiling for Windows..." +cmake -S . -B build_win \ + -DCMAKE_TOOLCHAIN_FILE=cmake/Toolchain-MinGW-w64.cmake \ + -DCMAKE_BUILD_TYPE=Release \ + -DASSET_PACKER_PATH=$(pwd)/build_native/asset_packer \ + -DDEMO_BUILD_TOOLS=OFF \ + -DDEMO_BUILD_TESTS=OFF + +cmake --build build_win + +# 3. Copy runtime DLLs to build_win so we can run it +cp third_party/windows/lib/wgpu_native.dll build_win/ + +# Copy MinGW DLLs (pthread, etc.) +echo "Copying MinGW DLLs..." +MINGW_BIN=$(dirname $(find /opt/homebrew -name "libwinpthread-1.dll" | grep x86_64 | head -n 1)) +if [ -d "$MINGW_BIN" ]; then + cp "$MINGW_BIN/libwinpthread-1.dll" build_win/ + cp "$MINGW_BIN/libgcc_s_seh-1.dll" build_win/ 2>/dev/null || true + cp "$MINGW_BIN/libstdc++-6.dll" build_win/ 2>/dev/null || true +else + echo "Warning: Could not find MinGW DLLs. You might need them to run the exe." +fi + +echo "Build complete. Output: build_win/demo64k.exe" |
