Skip to content

[pull] master from beyond-all-reason:master#5

Merged
pull[bot] merged 4 commits into
ExaDev:masterfrom
beyond-all-reason:master
Jun 20, 2026
Merged

[pull] master from beyond-all-reason:master#5
pull[bot] merged 4 commits into
ExaDev:masterfrom
beyond-all-reason:master

Conversation

@pull

@pull pull Bot commented Jun 20, 2026

Copy link
Copy Markdown

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

tomjn added 4 commits June 20, 2026 15:15
util_fileSelector was declared with a non-const struct dirent* on
__APPLE__ and const elsewhere. macOS scandir() expects the selector
argument as int(*)(const struct dirent*), so the non-const Apple variant
failed to compile under GCC:

  Util.c:500: error: passing argument 3 of 'scandir' from incompatible
  pointer type

Both branches were otherwise identical, so drop the __APPLE__ split and
use const struct dirent* unconditionally (matches POSIX scandir). No
effect on Linux/Windows.

Assisted by Claude Code; verified by compiling the macOS headless build.
The legacy build did find_package(X11 REQUIRED) under a plain if(UNIX)
guard. macOS is UNIX in CMake but does not use X11 (it uses Cocoa), so
configuring the engine on macOS failed at find_package(X11). An if(APPLE)
block already follows for Foundation, so exclude Apple from the X11
branch: if(UNIX AND NOT APPLE).

Surfaced configuring the spring-headless target on macOS (which reuses
the legacy Game target). No effect on Linux/Windows.

Assisted by Claude Code; verified by configuring the macOS build.
Modern 7-Zip ships its CLI as '7zz' (Homebrew's 'sevenzip' formula
installs /opt/homebrew/bin/7zz; recent Linux distros likewise package
'7zz'). FindSevenZip only searched for '7z'/'7za', so configure failed
with 'Could NOT find SevenZip (missing: SEVENZIP_BIN)' on such systems.

Add '7zz' to the searched NAMES. No effect where 7z/7za already exist.
rts/System/Platform/Mac/SDLMain.m and SDLMain.h are the classic SDL 1.2
Cocoa main wrapper (the Darrell Walisser / Max Horn template). They are:

- not listed in any CMakeLists (never compiled)
- not #included by any source file
- built on Carbon (<Carbon/Carbon.h>), which is 32-bit-only and
  unavailable on modern macOS / Apple Silicon

SDL2 provides its own SDL_main, so this wrapper is obsolete. Remove the
dead files so the macOS platform layer reflects what is actually built.
@pull pull Bot locked and limited conversation to collaborators Jun 20, 2026
@pull pull Bot added the ⤵️ pull label Jun 20, 2026
@pull pull Bot merged commit 0da81b4 into ExaDev:master Jun 20, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant