Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 14 Jan 2019 21:05:26 +0100
From:      Jan Beich <jbeich@FreeBSD.org>
To:        Mathieu Arnold <mat@FreeBSD.org>
Cc:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   Re: svn commit: r490300 - head/multimedia/ffmpeg
Message-ID:  <36pv-hunt-wny@FreeBSD.org>
In-Reply-To: <201901141616.x0EGGnNA048855@repo.freebsd.org> (Mathieu Arnold's message of "Mon, 14 Jan 2019 16:16:49 %2B0000 (UTC)")
References:  <201901141616.x0EGGnNA048855@repo.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Mathieu Arnold <mat@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
 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?36pv-hunt-wny>