ffmpeg | branch: master | Timo Rothenpieler <t...@rothenpieler.org> | Mon Nov 13 23:43:51 2017 +0100| [4fb20d4e3a48b2008a13fc11ba75015ded2c2fc2] | committer: Timo Rothenpieler
configure: call flatten_extralibs in a subshell By putting the call in a subshell, the problem of it spilling cleanup-decision from a previous library to other libraries is avoided. For example, it could have already cleaned up cuda_extralibs in a previous library that depended on cuda. Then when it gets to avutil, it will never pick up the dependency of avutil to cuda, which depends on libdl, which in turn results in a missing -ldl extralib, resulting in link failures in certain configurations. > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=4fb20d4e3a48b2008a13fc11ba75015ded2c2fc2 --- configure | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/configure b/configure index 84f0a04925..c8e2e35192 100755 --- a/configure +++ b/configure @@ -6495,6 +6495,15 @@ flatten_extralibs(){ fi } +flatten_extralibs_wrapper(){ + list_name=$1 + flatten_extralibs $list_name + unique $list_name + resolve $list_name + eval $list_name=\$\(\$ldflags_filter \$$list_name\) + eval printf \''%s'\' \""\$$list_name"\" +} + for linkunit in $LIBRARY_LIST; do unset current_extralibs eval components=\$$(toupper ${linkunit})_COMPONENTS_LIST @@ -6507,10 +6516,7 @@ for linkunit in $LIBRARY_LIST; do done for linkunit in $LIBRARY_LIST $PROGRAM_LIST $EXTRALIBS_LIST; do - flatten_extralibs ${linkunit}_extralibs - unique ${linkunit}_extralibs - resolve ${linkunit}_extralibs - eval ${linkunit}_extralibs=\$\(\$ldflags_filter \$${linkunit}_extralibs\) + eval ${linkunit}_extralibs=\$\(flatten_extralibs_wrapper ${linkunit}_extralibs\) done map 'enabled $v && intrinsics=${v#intrinsics_}' $INTRINSICS_LIST _______________________________________________ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog