commit:     9594b7d4552c7d4c3e8b4aaaa2660812f78ecec0
Author:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
AuthorDate: Wed Aug  3 05:40:38 2022 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Wed Aug  3 05:43:52 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9594b7d4

media-video/ffmpeg: add notes about chromaprint circular dependency

 - ffmpeg[chromaprint] depends on chromaprint, and chromaprint[tools] depends
   on ffmpeg, this causes breakages while updating.

Closes: https://bugs.gentoo.org/862996
Bug: https://bugs.gentoo.org/625210
Bug: https://bugs.gentoo.org/833821
Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 media-video/ffmpeg/ffmpeg-4.4.2.ebuild | 14 ++++++++++++++
 media-video/ffmpeg/ffmpeg-5.0.1.ebuild | 14 ++++++++++++++
 media-video/ffmpeg/ffmpeg-9999.ebuild  | 14 ++++++++++++++
 3 files changed, 42 insertions(+)

diff --git a/media-video/ffmpeg/ffmpeg-4.4.2.ebuild 
b/media-video/ffmpeg/ffmpeg-4.4.2.ebuild
index 1a4bbf4e4830..161cb301720b 100644
--- a/media-video/ffmpeg/ffmpeg-4.4.2.ebuild
+++ b/media-video/ffmpeg/ffmpeg-4.4.2.ebuild
@@ -343,6 +343,20 @@ build_separate_libffmpeg() {
        use opencl
 }
 
+pkg_setup() {
+       # ffmpeg[chromaprint] depends on chromaprint, and chromaprint[tools] 
depends on ffmpeg.
+       # May cause breakage while updating, #862996, #625210, #833821.
+       if has_version media-libs/chromaprint[tools] && use chromaprint; then
+               ewarn "You have media-libs/chromaprint installed with 'tools' 
USE flag, which "
+               ewarn "links to ffmpeg, and you have enabled 'chromaprint' USE 
flag for ffmpeg, "
+               ewarn "which links to chromaprint. This may cause issues while 
rebuilding ffmpeg."
+               ewarn ""
+               ewarn "If your build fails to 'ERROR: chromaprint not found', 
rebuild chromaprint "
+               ewarn "without the 'tools' use flag first, then rebuild ffmpeg, 
and then finally enable "
+               ewarn "'tools' USE flag for chromaprint. See #862996."
+       fi
+}
+
 src_prepare() {
        if [[ "${PV%_p*}" != "${PV}" ]] ; then # Snapshot
                export revision=git-N-${FFMPEG_REVISION}

diff --git a/media-video/ffmpeg/ffmpeg-5.0.1.ebuild 
b/media-video/ffmpeg/ffmpeg-5.0.1.ebuild
index d3e7c93b04de..17f3f4c919f0 100644
--- a/media-video/ffmpeg/ffmpeg-5.0.1.ebuild
+++ b/media-video/ffmpeg/ffmpeg-5.0.1.ebuild
@@ -343,6 +343,20 @@ build_separate_libffmpeg() {
        use opencl
 }
 
+pkg_setup() {
+       # ffmpeg[chromaprint] depends on chromaprint, and chromaprint[tools] 
depends on ffmpeg.
+       # May cause breakage while updating, #862996, #625210, #833821.
+       if has_version media-libs/chromaprint[tools] && use chromaprint; then
+               ewarn "You have media-libs/chromaprint installed with 'tools' 
USE flag, which "
+               ewarn "links to ffmpeg, and you have enabled 'chromaprint' USE 
flag for ffmpeg, "
+               ewarn "which links to chromaprint. This may cause issues while 
rebuilding ffmpeg."
+               ewarn ""
+               ewarn "If your build fails to 'ERROR: chromaprint not found', 
rebuild chromaprint "
+               ewarn "without the 'tools' use flag first, then rebuild ffmpeg, 
and then finally enable "
+               ewarn "'tools' USE flag for chromaprint. See #862996."
+       fi
+}
+
 src_prepare() {
        if [[ "${PV%_p*}" != "${PV}" ]] ; then # Snapshot
                export revision=git-N-${FFMPEG_REVISION}

diff --git a/media-video/ffmpeg/ffmpeg-9999.ebuild 
b/media-video/ffmpeg/ffmpeg-9999.ebuild
index 28afbd6ce4a2..222d27490cb1 100644
--- a/media-video/ffmpeg/ffmpeg-9999.ebuild
+++ b/media-video/ffmpeg/ffmpeg-9999.ebuild
@@ -342,6 +342,20 @@ build_separate_libffmpeg() {
        use opencl
 }
 
+pkg_setup() {
+       # ffmpeg[chromaprint] depends on chromaprint, and chromaprint[tools] 
depends on ffmpeg.
+       # May cause breakage while updating, #862996, #625210, #833821.
+       if has_version media-libs/chromaprint[tools] && use chromaprint; then
+               ewarn "You have media-libs/chromaprint installed with 'tools' 
USE flag, which "
+               ewarn "links to ffmpeg, and you have enabled 'chromaprint' USE 
flag for ffmpeg, "
+               ewarn "which links to chromaprint. This may cause issues while 
rebuilding ffmpeg."
+               ewarn ""
+               ewarn "If your build fails to 'ERROR: chromaprint not found', 
rebuild chromaprint "
+               ewarn "without the 'tools' use flag first, then rebuild ffmpeg, 
and then finally enable "
+               ewarn "'tools' USE flag for chromaprint. See #862996."
+       fi
+}
+
 src_prepare() {
        if [[ "${PV%_p*}" != "${PV}" ]] ; then # Snapshot
                export revision=git-N-${FFMPEG_REVISION}

Reply via email to