svn commit: r490300 - head/multimedia/ffmpeg

Jan Beich jbeich at FreeBSD.org
Mon Jan 14 20:05:31 UTC 2019


Mathieu Arnold <mat at FreeBSD.org> writes:

> Author: mat
> Date: Mon Jan 14 16:16:49 2019
> New Revision: 490300
> URL: https://svnweb.freebsd.org/changeset/ports/490300
>
> Log:
>   Disable CHROMAPRINT option, it is creates a loop, and is marked broken.
>
> Modified:
>   head/multimedia/ffmpeg/Makefile   (contents, props changed)
>
> Modified: head/multimedia/ffmpeg/Makefile
> ==============================================================================
> --- head/multimedia/ffmpeg/Makefile	Mon Jan 14 16:06:03 2019	(r490299)
> +++ head/multimedia/ffmpeg/Makefile	Mon Jan 14 16:16:49 2019	(r490300)
> @@ -28,7 +28,8 @@ NOPRECIOUSMAKEVARS=	yes # ARCH
>  
>  PORTSCOUT=	limit:^4\.
>  
> -OPTIONS_DEFINE=	ALSA AMR_NB AMR_WB AOM ASS BEIGNET BS2B CACA CDIO CELT CHROMAPRINT CODEC2 DAV1D DAVS2 DC1394 \
> +# Option CHROMAPRINT disabled, it cannot work and people are baffled.
> +OPTIONS_DEFINE=	ALSA AMR_NB AMR_WB AOM ASS BEIGNET BS2B CACA CDIO CELT CODEC2 DAV1D DAVS2 DC1394 \
>  		DEBUG DOCS DRM FDK_AAC FLITE FONTCONFIG \
>  		FREETYPE FREI0R FRIBIDI GME GSM ICONV ILBC JACK KLVANC KVAZAAR LADSPA \
>  		LAME LENSFUN LIBBLURAY LIBRSVG2 LIBXML2 LV2 MODPLUG MYSOFA OPENAL OPENCL OPENCV OPENGL \

Since when BROKEN options are not allowed to be listed? Please, revert.
The loop can be bypassed by building manually:

  $ pkg info -d chromaprint | fgrep ffmpeg
          ffmpeg-4.1_4,1
  $ pkg info -d ffmpeg | fgrep chromaprint
          chromaprint-1.4.3_4

As explained in bug 208877 there're several ways to fix but the actual
issue is lack of control over dependencies' options. This has been
requested for years (if not decades) but probably requires implementing
variable dependencies first. To borrow Gentoo syntax the fix'd look like

diff --git a/audio/chromaprint/Makefile b/audio/chromaprint/Makefile
index d2e361d428d9..02c4977ba25c 100644
--- a/audio/chromaprint/Makefile
+++ b/audio/chromaprint/Makefile
@@ -13,6 +13,8 @@ LICENSE=	LGPL21 MIT
 LICENSE_COMB=	multi
 LICENSE_FILE_MIT=	${WRKSRC}/LICENSE.md
 
+# Build against ffmpeg without chromaprint but register against any variant
+BUILD_DEPENDS=	ffmpeg>0:multimedia/ffmpeg[CHROMAPRINT=off]
 LIB_DEPENDS=	libavcodec.so:multimedia/ffmpeg
 
 USES=		cmake compiler:c++11-lib pathfix
diff --git a/multimedia/ffmpeg/Makefile b/multimedia/ffmpeg/Makefile
index a692f1858fe8..2b183992a9cd 100644
--- a/multimedia/ffmpeg/Makefile
+++ b/multimedia/ffmpeg/Makefile
@@ -164,7 +164,6 @@ CELT_LIB_DEPENDS=	libcelt0.so:audio/celt
 CELT_CONFIGURE_ENABLE=	libcelt
 
 # chromaprint
-CHROMAPRINT_BROKEN=		Dependency loop
 CHROMAPRINT_LIB_DEPENDS=	libchromaprint.so:audio/chromaprint
 CHROMAPRINT_CONFIGURE_ENABLE=	chromaprint
 


More information about the svn-ports-all mailing list