Windows support

This commit is contained in:
Gabrieal Jimmy
2026-10-02 16:04:30 -05:00
parent 34fa21139f
commit d31689cf86
14 changed files with 242 additions and 57 deletions

View File

@@ -56,8 +56,21 @@ ninja -C build # safari_client, safari_server, safari_bot
Server only (no GPU needed): `cmake -S . -B build_srv -G Ninja -DBS_BUILD_CLIENT=OFF`.
Built files load assets from the source checkout (`BS_ASSET_DIR` and the engine's asset path are
baked in at configure time), so run them where they were built.
Development builds load assets from the source checkout (`BS_ASSET_DIR` and the engine's asset
path are baked in at configure time). A release package instead keeps them next to the
executables (`assets/` and `engine/`), which the programs check first.
### Windows release zip (cross-compiled from Linux)
```sh
sudo pacman -S mingw-w64-gcc zip # once
tools/package_windows.sh v0.1.0 # -> dist/BrandlingSafari-v0.1.0-win64.zip
```
Downloads the Windows builds of GLFW, libepoxy and SQLite from the MSYS2 repository (cached in
`~/.cache/brandling-safari`), builds in `build_win/` with `cmake/mingw-w64-x86_64.cmake`, and
zips the executables, their DLLs, the game and engine assets and a player `README.txt`.
Unzip anywhere and run `safari_client.exe`.
### Windows (MSYS2, recommended)