On 2/9/2018 12:21 PM, Muhammad Faiz wrote: > On Fri, Feb 9, 2018 at 6:53 PM, James Almer <jamr...@gmail.com> wrote: >> On 2/9/2018 7:56 AM, Muhammad Faiz wrote: >>> On Thu, Feb 8, 2018 at 7:04 AM, Michael Niedermayer >>> <mich...@niedermayer.cc> wrote: >>>> On Wed, Feb 07, 2018 at 01:52:33PM +0100, Nicolas George wrote: >>>>> Josh de Kock (2018-02-06): >>>>>> ffmpeg | branch: master | Josh de Kock <j...@itanimul.li> | Fri Dec 22 >>>>>> 22:17:00 2017 +0000| [7e8eba2d8755962d9dca5eade57bf8f591a73c0c] | >>>>>> committer: Josh de Kock >>>>>> >>>>>> lavc: add new API for iterating codecs and codec parsers >>>>>> >>>>>> Based on an unfinished patch by atomnuker. >>>> >>>> This commit also breaks >>>> >>>> ./configure --enable-libsoxr && make -j12 fate-checkasm >>>> make -j12 fate-checkasm >>>> ... >>>> LD tests/checkasm/checkasm >>>> libswresample/libswresample.a(soxr_resample.o): In function >>>> `get_out_samples': >>>> ffmpeg/libswresample/soxr_resample.c:118: undefined reference to >>>> `soxr_delay' >>>> libswresample/libswresample.a(soxr_resample.o): In function `get_delay': >>>> ffmpeg/libswresample/soxr_resample.c:100: undefined reference to >>>> `soxr_delay' >>>> libswresample/libswresample.a(soxr_resample.o): In function `flush': >>>> ffmpeg/libswresample/soxr_resample.c:70: undefined reference to >>>> `soxr_delay' >>>> ffmpeg/libswresample/soxr_resample.c:72: undefined reference to >>>> `soxr_process' >>>> ffmpeg/libswresample/soxr_resample.c:77: undefined reference to >>>> `soxr_process' >>>> ffmpeg/libswresample/soxr_resample.c:78: undefined reference to >>>> `soxr_delay' >>>> libswresample/libswresample.a(soxr_resample.o): In function `process': >>>> ffmpeg/libswresample/soxr_resample.c:88: undefined reference to >>>> `soxr_set_num_channels' >>>> ffmpeg/libswresample/soxr_resample.c:88: undefined reference to >>>> `soxr_set_error' >>>> ffmpeg/libswresample/soxr_resample.c:90: undefined reference to >>>> `soxr_process' >>>> libswresample/libswresample.a(soxr_resample.o): In function `destroy': >>>> ffmpeg/libswresample/soxr_resample.c:65: undefined reference to >>>> `soxr_delete' >>>> libswresample/libswresample.a(soxr_resample.o): In function `create': >>>> ffmpeg/libswresample/soxr_resample.c:46: undefined reference to >>>> `soxr_io_spec' >>>> ffmpeg/libswresample/soxr_resample.c:48: undefined reference to >>>> `soxr_quality_spec' >>>> ffmpeg/libswresample/soxr_resample.c:56: undefined reference to >>>> `soxr_delete' >>>> ffmpeg/libswresample/soxr_resample.c:57: undefined reference to >>>> `soxr_create' >>>> collect2: error: ld returned 1 exit status >>>> make: *** [tests/checkasm/checkasm] Error 1 >>> >>> Fixed in 81d6501be77b273053a66eeced94d78e2021f1d1 >>> >>> Thank's. >> >> This is not a proper solution. swr is pulled by avcodec only if Opus >> decoder is enabled. There's no reason to hardcode it for checkasm otherwise. >> The problem here is that the Makefile should pull all the dependencies >> of its hardcoded dependencies. This is what FFLIBS and FFEXTRALIBS do in >> common.mak to link the actual libraries. > > Probably, this is not a proper solution, but it is trivial enough. > (I'm sorry that I pushed it without posting).
It's a trivial change that does the job of fixing the regression, so it's fine. > So, please fix it with the proper solution. Probably, by adding > swresample-extralibs to avcodec-extralibs when avcodec has dependency > to swresample. I don't know how to do it. I guess the best way is with Makefile magic, like i mentioned FFLIBS and FFXEXTRALIBS do for each library. I'll take a look at it later. > >> >> That said, was this really a regression generated by this commit? It >> looks unrelated. > > Actually, it was a bug even before this commit. Just, previously it > was hidden because linker was smart enough to discard unneeded > dependency. But now when the list is changed to array, the linker is > unable to do it. > > Thank's. > _______________________________________________ > ffmpeg-devel mailing list > ffmpeg-devel@ffmpeg.org > http://ffmpeg.org/mailman/listinfo/ffmpeg-devel > _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel