- Fix StormLib package name: libstormlib-dev → libstorm-dev (correct
Ubuntu package name) across all CI workflows and extract_assets.sh
- Build StormLib from source on Windows CI (no MSYS2 package exists),
ensuring asset_extract.exe is included in release archives
- Update extract_assets.sh/.ps1 to prefer pre-built asset_extract
binary next to the script (release archives) before trying build dir
- Move ADTTerrain allocations from stack to heap in prepareTile() to
fix stack overflow on macOS (worker threads default to 512 KB stack,
two ADTTerrain structs ≈ 560 KB exceeded that)
- extract_assets.sh: detect Homebrew and pass CMAKE_PREFIX_PATH,
OPENSSL_ROOT_DIR, and PKG_CONFIG_PATH when auto-building on macOS
(bare cmake couldn't find Homebrew deps)
- README.md: fix macOS brew command that had comments after line
continuations (breaks shell execution)
- BUILD_INSTRUCTIONS.md: expand macOS asset extraction section with
auto-build note and expansion targets
The sanity check `ls *.MPQ *.mpq` fails under `set -o pipefail`
when only one case variant exists, because ls exits non-zero for
the unmatched glob pattern and pipefail propagates that failure.
Use `compgen -G` to check each glob pattern independently instead.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>