[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [RFC PATCH 3/4] audio: Rename coreaudio extension to use Objective-C
From: |
Christian Schoenebeck |
Subject: |
Re: [RFC PATCH 3/4] audio: Rename coreaudio extension to use Objective-C compiler |
Date: |
Tue, 15 Feb 2022 14:37:56 +0100 |
On Dienstag, 15. Februar 2022 13:06:24 CET Philippe Mathieu-Daudé via wrote:
> The coreaudio library includes Objective-C declarations (using the
> caret '^' symbol to declare block references [*]). When building
> with a C compiler we get:
>
> [175/839] Compiling C object libcommon.fa.p/audio_coreaudio.c.o
> In file included from
> /Library/Developer/CommandLineTools/SDKs/MacOSX12.sdk/System/Library/Framew
> orks/CoreAudio.framework/Headers/CoreAudio.h:18, from
> ../../audio/coreaudio.c:26:
>
> /Library/Developer/CommandLineTools/SDKs/MacOSX12.sdk/System/Library/Framew
> orks/CoreAudio.framework/Headers/AudioHardware.h:162:2: error: expected
> identifier or '(' before '^' token 162 |
> (^AudioObjectPropertyListenerBlock)( UInt32
> inNumberAddresses,
> | ^
>
> FAILED: libcommon.fa.p/audio_coreaudio.c.o
>
> Rename the file to use the Objective-C default extension (.m) so
> meson calls the correct compiler.
>
> [*]
> https://developer.apple.com/library/archive/documentation/Cocoa/Conceptual/
> ProgrammingWithObjectiveC/WorkingwithBlocks/WorkingwithBlocks.html
>
> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> ---
We already had a similar discussion before [1] whether to use .c and add
required compiler flags or using .m. I find this solution more appropriate.
Reviewed-by: Christian Schoenebeck <qemu_oss@crudebyte.com>
[1] https://lore.kernel.org/all/7053351.4JHWUSIRgT@silver/
Best regards,
Christian Schoenebeck
> audio/{coreaudio.c => coreaudio.m} | 0
> audio/meson.build | 2 +-
> 2 files changed, 1 insertion(+), 1 deletion(-)
> rename audio/{coreaudio.c => coreaudio.m} (100%)
>
> diff --git a/audio/coreaudio.c b/audio/coreaudio.m
> similarity index 100%
> rename from audio/coreaudio.c
> rename to audio/coreaudio.m
> diff --git a/audio/meson.build b/audio/meson.build
> index d9b295514f..94dab16891 100644
> --- a/audio/meson.build
> +++ b/audio/meson.build
> @@ -7,7 +7,7 @@ softmmu_ss.add(files(
> 'wavcapture.c',
> ))
>
> -softmmu_ss.add(when: coreaudio, if_true: files('coreaudio.c'))
> +softmmu_ss.add(when: coreaudio, if_true: files('coreaudio.m'))
> softmmu_ss.add(when: dsound, if_true: files('dsoundaudio.c',
> 'audio_win_int.c'))
>
> audio_modules = {}
[PATCH 2/4] osdep: Un-inline qemu_thread_jit_execute/write, Philippe Mathieu-Daudé, 2022/02/15