From 25e0e087c4314730d42ac16061962904b8fb3ae6 Mon Sep 17 00:00:00 2001 From: Andreas Rheinhardt Date: Fri, 23 Feb 2024 18:54:10 +0100 Subject: [PATCH] configure: Disable linker warnings for common symbols Common symbols are not part of ISO-C and therefore not used by FFmpeg at all. Yet linker warnings to ensure it stays that way are nevertheless wrong, because the existence of common symbols does not imply that there is a bug in our code. More precisely, Clang's ASAN implementation uses a common symbol ___asan_globals_registered when used on Elf targets with the -fsanitize-address-globals-dead-stripping option; said option is the default since Clang 17 [1]. This leads to 1883 warnings about ___asan_globals_registered when linking here. (Even without that option there were warnings like _ZN14__interception10real_vforkE being overridden.) Said warning is also unnecessary: The proper way to ensure that our code is free of common symbols is to let the compiler enforce this. But this is already the default since GCC 10 and Clang 11, so there is no risk of introducing our own common symbols. [1]: https://reviews.llvm.org/D152604 Signed-off-by: Andreas Rheinhardt --- configure | 1 - 1 file changed, 1 deletion(-) diff --git a/configure b/configure index 2d0e6a444a..bb5e630bad 100755 --- a/configure +++ b/configure @@ -7337,7 +7337,6 @@ void (^block)(void); EOF # add some linker flags -check_ldflags -Wl,--warn-common check_ldflags -Wl,-rpath-link=:libpostproc:libswresample:libswscale:libavfilter:libavdevice:libavformat:libavcodec:libavutil enabled rpath && add_ldexeflags -Wl,-rpath,$libdir && add_ldsoflags -Wl,-rpath,$libdir test_ldflags -Wl,-Bsymbolic && append SHFLAGS -Wl,-Bsymbolic