From owner-freebsd-multimedia@freebsd.org Sun May 10 13:12:53 2020 Return-Path: Delivered-To: freebsd-multimedia@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 197C52E722D for ; Sun, 10 May 2020 13:12:53 +0000 (UTC) (envelope-from jbeich@freebsd.org) Received: from mailman.nyi.freebsd.org (mailman.nyi.freebsd.org [IPv6:2610:1c1:1:606c::50:13]) by mx1.freebsd.org (Postfix) with ESMTP id 49KkyD70mYz4C3S for ; Sun, 10 May 2020 13:12:52 +0000 (UTC) (envelope-from jbeich@freebsd.org) Received: by mailman.nyi.freebsd.org (Postfix) id F059C2E722C; Sun, 10 May 2020 13:12:52 +0000 (UTC) Delivered-To: multimedia@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id F02462E722A for ; Sun, 10 May 2020 13:12:52 +0000 (UTC) (envelope-from jbeich@freebsd.org) Received: from freefall.freebsd.org (freefall.freebsd.org [96.47.72.132]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "freefall.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 49KkyD64bVz4C3R; Sun, 10 May 2020 13:12:52 +0000 (UTC) (envelope-from jbeich@freebsd.org) Received: by freefall.freebsd.org (Postfix, from userid 1354) id C180E16E60; Sun, 10 May 2020 13:12:52 +0000 (UTC) From: Jan Beich To: Paul Webster Cc: "multimedia@FreeBSD.org" Subject: Re: Recursive dependency when selecting vapoursynth as an option in ffmpeg In-Reply-To: <5eb7f4df.1c69fb81.b1c79.0073@mx.google.com> (Paul Webster's message of "Sun, 10 May 2020 13:34:37 +0100") References: <5eb7f4df.1c69fb81.b1c79.0073@mx.google.com> Date: Sun, 10 May 2020 15:12:50 +0200 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-BeenThere: freebsd-multimedia@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: Multimedia discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 May 2020 13:12:53 -0000 Paul Webster 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