Skip to content

Commit c0c9349

Browse files
committed
coreaudio: split implementation by SDK version (pre-10.7 legacy path)
The current implementation uses C11 <stdatomic.h> and Grand Central Dispatch (<dispatch/dispatch.h>), both of which require 10.6/10.7-era SDKs and toolchains. On Xcode 3.1 / 10.4-10.5 / PowerPC neither header exists and the file cannot be compiled at all. Earlier shim attempts (24157a0, 1c5c124) tried to reimplement the C11/GCD subset on top of OSAtomic and Mach semaphores, but kept running into header-visibility issues that are impractical to solve portably. Simpler approach: pick one of two full implementations at preprocess time. - Pre-10.7: restore the pre-rewrite implementation (from 5b9763b) that uses RetroArch's slock_t/scond_t and fifo_buffer_t. The audio_driver_t initializer gains a NULL write_raw slot to match the current struct shape; the frontend's generic resampler handles what the hardware-accelerated path used to. - 10.7+: unchanged current code path. Selected via AvailabilityMacros.h: RARCH_COREAUDIO_LEGACY is defined when MAC_OS_X_VERSION_10_7 is absent or MIN_REQUIRED < 10.7. Modern builds are bit-for-bit identical.
1 parent 0071a5a commit c0c9349

1 file changed

Lines changed: 450 additions & 0 deletions

File tree

0 commit comments

Comments
 (0)