[FFmpeg-devel] Can't use __musl__ macro

Ramiro Polla ramiro.polla at gmail.com
Thu Aug 29 16:47:52 EEST 2024


Hi,

On Mon, Aug 12, 2024 at 7:16 AM Lance Fredrickson
<lancethepants at gmail.com> wrote:
> In commit 9e674b31606c805dd31b4bb754364a72a5877238 of ffmpeg this change
> tries to detect musl libc by way of a "__musl__" macro.  This macro
> however, doesn't exist in musl. This results in an "incompatible pointer
> type" error under gcc-14.2 as detection falls through to the #else
> definition. This was in version 6.1.2 and looks like it is still present
> in master.  I can't say what the correct fix would be, I just manually
> patched for now.

musl tries to make itself undetectable. Instead of relying on system
#ifdefs which may or may not be correct, we should instead check for
the proper signature at configure time.

I sent a patch for this (look for the thread "[PATCH] configure:
improve check for POSIX ioctl").

I tested it with musl, glibc, and the android ndk. Brad, could you
test that this works as expected on BSD?

Thanks,
Ramiro


More information about the ffmpeg-devel mailing list