[vlc-devel] [RFC][PATCH] chromaprint: conditionally build the ffmpeg/libav target

Rémi Denis-Courmont remi at remlab.net
Fri Feb 20 16:15:59 CET 2015


Le 2015-02-20 03:21, Sean McGovern a écrit :
> Previously, this would forcibly build the ffmpeg contrib,
> even if there was a locally installed version.
> ---
>
> This is actually only half of the fix for this issue -- I need help 
> from
> someone who understands cmake enough to explain why it can not find
> a system-installed libavcodec.
>
> I tried on both my Solaris 11 box and a 64-bit Ubuntu Trusty VM.
> Both of these machines have libav 9.16 currently installed.
>
> I think it's something to do with contrib/<config>/toolchain.cmake, 
> but
> I'm not well versed enough with cmake to say why.
>
> ---
>  contrib/src/chromaprint/rules.mak |    4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/contrib/src/chromaprint/rules.mak
> b/contrib/src/chromaprint/rules.mak
> index dcccd28..66d0d9f 100644
> --- a/contrib/src/chromaprint/rules.mak
> +++ b/contrib/src/chromaprint/rules.mak
> @@ -20,9 +20,11 @@ chromaprint:
> chromaprint-$(CHROMAPRINT_VERSION).tar.gz .sum-chromaprint
>  	$(APPLY) $(SRC)/chromaprint/osxpkgconfig.patch
>  	$(MOVE)
>
> +ifneq ($(call need_pkg,"libavcodec libavutil"),)
>  DEPS_chromaprint = ffmpeg $(DEPS_ffmpeg)
> +endif

That does not seem right. Literaly, that means chromaprint requires 
libavcodec only if libavcodec is not provided by the system.

>
> -.chromaprint: chromaprint .ffmpeg toolchain.cmake
> +.chromaprint: chromaprint toolchain.cmake

Now that looks more sensible.

>  	cd $< && $(HOSTVARS_PIC) $(CMAKE) -DBUILD_SHARED_LIBS:BOOL=OFF
>  	cd $< && $(MAKE) install
>  	touch $@

-- 
Rémi Denis-Courmont



More information about the vlc-devel mailing list