Add claude docs
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
# 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.
|
||||
Reference in New Issue
Block a user