Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 10 May 2020 15:12:50 +0200
From:      Jan Beich <jbeich@FreeBSD.org>
To:        Paul Webster <paul.g.webster@googlemail.com>
Cc:        "multimedia@FreeBSD.org" <multimedia@FreeBSD.org>
Subject:   Re: Recursive dependency when selecting vapoursynth as an option in ffmpeg
Message-ID:  <a72g-djcd-wny@FreeBSD.org>
In-Reply-To: <5eb7f4df.1c69fb81.b1c79.0073@mx.google.com> (Paul Webster's message of "Sun, 10 May 2020 13:34:37 %2B0100")
References:  <5eb7f4df.1c69fb81.b1c79.0073@mx.google.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Paul Webster <paul.g.webster@googlemail.com> writes:

> As the title says, if you enable:
>
>=20=20
>
> [ ] VAPOURSYNTH       VapourSynth demuxer
>
>=20=20
>
> Within =E2=80=98make config=E2=80=99 in ffmpeg, it will try to pull:
>
>=20=20
>
> /usr/ports/multimedia/vapoursynth
>
>=20=20
>
> Which has ffmpeg as both a B and R Dep

And? Are you proposing to remove ffmpeg option like r490300?
Another example is print/freetype2 which passes --without-harfbuzz.

If you build manually then recursive dependencies are not an issue e.g.,

  1. Build multimedia/ffmpeg with VAPOURSYNTH option disabled
  2. Build multimedia/vapoursynth with ASS option enabled
  3. Build multimedia/ffmpeg with VAPOURSYNTH option enabled

Recursive dependencies are a long-standing unsolved framework issue that
requires ports being able to specifiy options in dependencies e.g.,

Index: multimedia/vapoursynth/Makefile
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- multimedia/vapoursynth/Makefile	(revision 534294)
+++ multimedia/vapoursynth/Makefile	(working copy)
@@ -74,8 +74,9 @@ VSSCRIPT_CONFIGURE_ENABLE=3D	vsscript
 # PLUGINS group
=20
 ASS_DESC=3D			Subtitles rendering via libass
-ASS_LIB_DEPENDS=3D		libavcodec.so:multimedia/ffmpeg \
-				libass.so:multimedia/libass
+ASS_BUILD_DEPENDS=3D		ffmpeg>0:multimedia/ffmpeg[VAPOURSYNTH=3Doff]
+ASS_RUN_DEPENDS=3D		ffmpeg>0:multimedia/ffmpeg
+ASS_LIB_DEPENDS=3D		libass.so:multimedia/libass
 ASS_USES=3D			iconv
 ASS_CONFIGURE_ENABLE=3D		subtext
=20
or

Index: multimedia/vapoursynth/Makefile
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- multimedia/vapoursynth/Makefile	(revision 534294)
+++ multimedia/vapoursynth/Makefile	(working copy)
@@ -74,7 +74,7 @@ VSSCRIPT_CONFIGURE_ENABLE=3D	vsscript
 # PLUGINS group
=20
 ASS_DESC=3D			Subtitles rendering via libass
-ASS_LIB_DEPENDS=3D		libavcodec.so:multimedia/ffmpeg \
+ASS_LIB_DEPENDS=3D		libavcodec.so:multimedia/ffmpeg[!VAPOURSYNTH=3Dbuild] \
 				libass.so:multimedia/libass
 ASS_USES=3D			iconv
 ASS_CONFIGURE_ENABLE=3D		subtext



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