Files
dusk/.claude/platform-macos.md
T
2026-06-16 10:15:59 -05:00

1.3 KiB

Platform -- macOS

DUSK_TARGET_SYSTEM: macos
Source layer: src/duskmacos/ (planned, does not exist yet)
Status: Planned -- not yet implemented


Overview

macOS desktop is a planned target. No source layer, CMake target file, or toolchain exists yet. The intended architecture mirrors Linux: SDL2 for windowing/input, OpenGL (or Metal via MoltenVK/SDL2) for rendering.


Expected macros (when implemented)

Macro Expected
DUSK_MACOS yes
DUSK_SDL2 yes
DUSK_OPENGL yes
DUSK_DISPLAY_SIZE_DYNAMIC yes
DUSK_INPUT_KEYBOARD yes
DUSK_INPUT_POINTER yes
DUSK_INPUT_GAMEPAD yes
DUSK_PLATFORM_ENDIAN_LITTLE yes
DUSK_TIME_DYNAMIC yes
DUSK_THREAD_PTHREAD yes

Notes

  • Will be little-endian (Apple Silicon and Intel x86-64).
  • Apple deprecated OpenGL on macOS in 10.14 (Mojave). The implementation will need to either target the deprecated OpenGL path or use MoltenVK (Vulkan-over-Metal) with an SDL2 OpenGL layer. This decision is pending.
  • Save files will likely live in ~/Library/Application Support/.
  • Expected to share src/dusksdl2/ and src/duskgl/ with Linux.
  • Toolchain: native Clang via Xcode Command Line Tools, or a cross-compile from Linux with osxcross.

Update this document when the macOS target is implemented.