On Sat, Jan 22, 2022 at 7:43 AM Brad Smith <brad-at-comstyle....@ffmpeg.org> wrote: > > On 1/19/2022 10:23 AM, James Almer wrote: > > > On 1/19/2022 10:48 AM, Anton Khirnov wrote: > >> C11 atomics in some configurations (e.g. 64bit operations on ppc64 with > >> GCC) require linking to libatomic. > >> > >> Fixes #9275 > >> --- > >> configure | 25 ++++++++++++++++--------- > >> 1 file changed, 16 insertions(+), 9 deletions(-) > >> > >> diff --git a/configure b/configure > >> index 1413122d87..3059c154df 100755 > >> --- a/configure > >> +++ b/configure > >> @@ -3794,20 +3794,20 @@ cws2fws_extralibs="zlib_extralibs" > >> # libraries, in any order > >> avcodec_deps="avutil" > >> -avcodec_suggest="libm" > >> +avcodec_suggest="libm stdatomic" > >> avdevice_deps="avformat avcodec avutil" > >> -avdevice_suggest="libm" > >> +avdevice_suggest="libm stdatomic" > >> avfilter_deps="avutil" > >> -avfilter_suggest="libm" > >> +avfilter_suggest="libm stdatomic" > >> avformat_deps="avcodec avutil" > >> -avformat_suggest="libm network zlib" > >> -avutil_suggest="clock_gettime ffnvcodec libm libdrm libmfx opencl > >> user32 vaapi vulkan videotoolbox corefoundation corevideo coremedia > >> bcrypt" > >> +avformat_suggest="libm network zlib stdatomic" > >> +avutil_suggest="clock_gettime ffnvcodec libm libdrm libmfx opencl > >> user32 vaapi vulkan videotoolbox corefoundation corevideo coremedia > >> bcrypt stdatomic" > >> postproc_deps="avutil gpl" > >> -postproc_suggest="libm" > >> +postproc_suggest="libm stdatomic" > >> swresample_deps="avutil" > >> -swresample_suggest="libm libsoxr" > >> +swresample_suggest="libm libsoxr stdatomic" > >> swscale_deps="avutil" > >> -swscale_suggest="libm" > >> +swscale_suggest="libm stdatomic" > >> avcodec_extralibs="pthreads_extralibs iconv_extralibs > >> dxva2_extralibs" > >> avfilter_extralibs="pthreads_extralibs" > >> @@ -6324,7 +6324,14 @@ check_headers asm/types.h > >> # it seems there are versions of clang in some distros that try to > >> use the > >> # gcc headers, which explodes for stdatomic > >> # so we also check that atomics actually work here > >> -check_builtin stdatomic stdatomic.h "atomic_int foo, bar = > >> ATOMIC_VAR_INIT(-1); atomic_store(&foo, 0); foo += bar" > >> +# > >> +# some configurations also require linking to libatomic, so try > >> +# both with -latomic and without > >> +for LATOMIC in "-latomic" ""; do > >> + check_builtin stdatomic > >> stdatomic.h \ > >> + "atomic_int foo, bar = ATOMIC_VAR_INIT(-1); > >> atomic_store(&foo, 0); foo += bar" \ > >> + $LATOMIC && eval stdatomic_extralibs="\$LATOMIC" && break > >> +done > > > > LGTM now, thanks. > > > >> check_lib advapi32 "windows.h" RegCloseKey > >> -ladvapi32 > >> check_lib bcrypt "windows.h bcrypt.h" BCryptGenRandom -lbcrypt && > > Wait, this should be checking without first then with, if the first test > without fails. >
This was covered earlier in the thread for the reason it is not - its deliberate, because exhaustive functionality checks would be very complicated. - Hendrik _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".