On Freitag, 11. Februar 2022 17:34:31 CET Philippe Mathieu-Daudé via wrote: > When building on macOS 12 we get: > > audio/coreaudio.c:50:5: error: 'kAudioObjectPropertyElementMaster' is > deprecated: first deprecated in macOS 12.0 > [-Werror,-Wdeprecated-declarations] kAudioObjectPropertyElementMaster > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > kAudioObjectPropertyElementMain > > /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Framewor > ks/CoreAudio.framework/Headers/AudioHardwareBase.h:208:5: note: > 'kAudioObjectPropertyElementMaster' has been explicitly marked deprecated > here kAudioObjectPropertyElementMaster > API_DEPRECATED_WITH_REPLACEMENT("kAudioObjectPropertyElementMain", > macos(10.0, 12.0), ios(2.0, 15.0), watchos(1.0, 8.0), tvos(9.0, 15.0)) = > kAudioObjectPropertyElementMain ^ > > Replace by kAudioObjectPropertyElementMain, redefining it to > kAudioObjectPropertyElementMaster if not available. > > Suggested-by: Akihiko Odaki <akihiko.od...@gmail.com> > Suggested-by: Christian Schoenebeck <qemu_...@crudebyte.com> > Suggested-by: Roman Bolshakov <ro...@roolebo.dev> > Signed-off-by: Philippe Mathieu-Daudé <f4...@amsat.org> > ---
Reviewed-by: Christian Schoenebeck <qemu_...@crudebyte.com> > audio/coreaudio.c | 17 +++++++++++------ > 1 file changed, 11 insertions(+), 6 deletions(-) > > diff --git a/audio/coreaudio.c b/audio/coreaudio.c > index d8a21d3e50..5b3aeaced0 100644 > --- a/audio/coreaudio.c > +++ b/audio/coreaudio.c > @@ -44,10 +44,15 @@ typedef struct coreaudioVoiceOut { > bool enabled; > } coreaudioVoiceOut; > > +#if !defined(MAC_OS_VERSION_12_0) \ > + || (MAC_OS_X_VERSION_MAX_ALLOWED < MAC_OS_VERSION_12_0) > +#define kAudioObjectPropertyElementMain kAudioObjectPropertyElementMaster > +#endif > + > static const AudioObjectPropertyAddress voice_addr = { > kAudioHardwarePropertyDefaultOutputDevice, > kAudioObjectPropertyScopeGlobal, > - kAudioObjectPropertyElementMaster > + kAudioObjectPropertyElementMain > }; > > static OSStatus coreaudio_get_voice(AudioDeviceID *id) > @@ -69,7 +74,7 @@ static OSStatus coreaudio_get_framesizerange(AudioDeviceID > id, AudioObjectPropertyAddress addr = { > kAudioDevicePropertyBufferFrameSizeRange, > kAudioDevicePropertyScopeOutput, > - kAudioObjectPropertyElementMaster > + kAudioObjectPropertyElementMain > }; > > return AudioObjectGetPropertyData(id, > @@ -86,7 +91,7 @@ static OSStatus coreaudio_get_framesize(AudioDeviceID id, > UInt32 *framesize) AudioObjectPropertyAddress addr = { > kAudioDevicePropertyBufferFrameSize, > kAudioDevicePropertyScopeOutput, > - kAudioObjectPropertyElementMaster > + kAudioObjectPropertyElementMain > }; > > return AudioObjectGetPropertyData(id, > @@ -103,7 +108,7 @@ static OSStatus coreaudio_set_framesize(AudioDeviceID > id, UInt32 *framesize) AudioObjectPropertyAddress addr = { > kAudioDevicePropertyBufferFrameSize, > kAudioDevicePropertyScopeOutput, > - kAudioObjectPropertyElementMaster > + kAudioObjectPropertyElementMain > }; > > return AudioObjectSetPropertyData(id, > @@ -121,7 +126,7 @@ static OSStatus coreaudio_set_streamformat(AudioDeviceID > id, AudioObjectPropertyAddress addr = { > kAudioDevicePropertyStreamFormat, > kAudioDevicePropertyScopeOutput, > - kAudioObjectPropertyElementMaster > + kAudioObjectPropertyElementMain > }; > > return AudioObjectSetPropertyData(id, > @@ -138,7 +143,7 @@ static OSStatus coreaudio_get_isrunning(AudioDeviceID > id, UInt32 *result) AudioObjectPropertyAddress addr = { > kAudioDevicePropertyDeviceIsRunning, > kAudioDevicePropertyScopeOutput, > - kAudioObjectPropertyElementMaster > + kAudioObjectPropertyElementMain > }; > > return AudioObjectGetPropertyData(id,