summaryrefslogtreecommitdiff
path: root/media-video/handbrake
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2020-08-25 10:45:55 +0100
committerV3n3RiX <venerix@redcorelinux.org>2020-08-25 10:45:55 +0100
commit3cf7c3ef441822c889356fd1812ebf2944a59851 (patch)
treec513fe68548b40365c1c2ebfe35c58ad431cdd77 /media-video/handbrake
parent05b8b0e0af1d72e51a3ee61522941bf7605cd01c (diff)
gentoo resync : 25.08.2020
Diffstat (limited to 'media-video/handbrake')
-rw-r--r--media-video/handbrake/Manifest2
-rw-r--r--media-video/handbrake/files/handbrake-1.3.3-x265-link.patch13
-rw-r--r--media-video/handbrake/handbrake-1.3.3-r1.ebuild168
3 files changed, 183 insertions, 0 deletions
diff --git a/media-video/handbrake/Manifest b/media-video/handbrake/Manifest
index 5cf67d50c7b1..e78de5d6a112 100644
--- a/media-video/handbrake/Manifest
+++ b/media-video/handbrake/Manifest
@@ -1,8 +1,10 @@
AUX handbrake-1.3.0-dont-search-for-python.patch 691 BLAKE2B 623654494bf61cedb531df3f9b3e64aa17a2a3d03cf9d71577ba1961961d3d058dfa383ef3bb5215eba8a2c84231531b35f1a331850070ae0bcc5b5fa1586c67 SHA512 044b0cb7d9302f74e1ef92e37162135b8ac76d96bf7d647c269ef19b5cf2a8771ce0cc76cbc8817b2480cc3e40af6bafd717888a3982b3e679d831519aad4e64
AUX handbrake-1.3.2-x265-link.patch 585 BLAKE2B aa46591f144e787212194e937ea594f29b55cac79c7bb659010775c09a4c5e1d9b1345047b377a6bfc0db5ee17e57a41670ad72373f0d01d390cf21b1d2c10b4 SHA512 ea13eab2a080f1d0080247f5a25cb09e2d495077caddd2ad3ce473f79d7bc611795dd1e13847cd982b0a19eddfddc96dbdd3deae8928bb9597d1a6627f17396a
+AUX handbrake-1.3.3-x265-link.patch 277 BLAKE2B 6e5f7d5f59601ebf3c36116f595040d6e884637c8dc9a900774db9db07d1c0686a1b5c2db9276ca1c14612615e3974a7f9b05cb48c23f8f30ed0851238b92c32 SHA512 a74a2d20972a01b89dbfd7b81c070608d57e646de2ce63d9ae2d2e1486d31ca63e96d5ec803052b52e68bee157d5a1882914e0009ae480d1f8192031d79852eb
AUX handbrake-9999-remove-dvdnav-dup.patch 809 BLAKE2B 16cde838dcf59753e5438df0d2c2b81f45667058bd0687a7368c528f61bd2a2fedc4462894daad58c3acb5c51bdd53df3b30e28adba93a0fb2838416e4226217 SHA512 e2005155adf29e8253f4313d209b2ccc642fb1d7f63256d3bdf675ddd0e6b0e15bc6bffd98e19aa7dab3907e161e29c5268dc5656590ce9254b12a91ac3ff6b0
AUX handbrake-9999-remove-faac-dependency.patch 3697 BLAKE2B b0f7d0a1c4d464d3287ab233b756f5036d6ffa7e9e59a2f98a8ffb2ae59e46d25e56edb3e5bf9c04a16330f3dc50f4c2426f252b35834b7c9c9e6b4904244368 SHA512 9d070e50a9b7d4b8ac25b7d56bd341aca6dc979ba506c84f4b95109909f70020723915cd120bed24e84a8fc242ee3c3a5775f43a78b7995e53cd499444c9f6dc
DIST handbrake-1.3.3.tar.bz2 16804119 BLAKE2B c081029e77911dc722764b0bef04e156694f8da0caaa6aedaae13d5c1045dccfc8292a466a8df323b471ca2a9de821b94740e9826fc9e7a2877b1d59653a728a SHA512 a4cca4e45d39eb3d43441abe832e2b8398694917981fa994075e475b68297cae28039e3c75d06442194262a881b9e416e5ebd73d10f86214b95f54c35fd3088c
+EBUILD handbrake-1.3.3-r1.ebuild 4248 BLAKE2B cf150d3f99321b3e207e03e8c7848daecb3169515f3a3a209a8c830b0730874ee75deba489a261f9fcbbc38ba4105714511c2a49ddfc0477f6d462de1378391b SHA512 353c1965d4be68265adb6deaa6f9bf3d74747e32d9600705ea78960c1b2bd156aafc1ff0230482eb8003f3ae874e97b4d65c47c410e838545bd3a8e2754b4d8e
EBUILD handbrake-1.3.3.ebuild 4210 BLAKE2B ce314d9b36abaa3585ae77e29857dd00c6a2e1de5ef59a0a25fbff200d19ac6bb01f5b0e19839af3a9dac014493e38346a912acbfe1f660bde0a497a16eee35a SHA512 34e6de849f3536f2a432c54de9f97a1e36fa16a80edc37f2e2ed6d890747d070bad8dd06035cc8d6c1a62da6507eba865c8b5379c28abc2a44ed5d53802f14df
EBUILD handbrake-9999.ebuild 4141 BLAKE2B 6da162374851a5a0283c9404587e17386913dca3e39c747831007eeb8a102e4d68d828de48e99876c90848679ae0451fb62f5b7c870f676c91de6ef3847a6cbb SHA512 df20db4d5da687c300af75302890028141b9a7acbe7e09dfded90d6454dec6b1579a6ff832e3c7a6ace6377ac88d12cf8902db8e56580162296d18227f48c081
MISC metadata.xml 1019 BLAKE2B 041873a5db7246fc3a6c6b5544fc4c28b981e6e15996c68c53413fabc46ada335333936e4e6ab160f6fad2b9eafafdb9f37d6651cb692e0d69f814acb02557f5 SHA512 41bb1e4656da0cf4a99fd158da5dcf9ccef2b4355f2cdb8e0017a84d8a65cc21ab382734dd967eaeeaf2d55c11e617e6dabe28eeb0bdd40388e8325a8e4ae42a
diff --git a/media-video/handbrake/files/handbrake-1.3.3-x265-link.patch b/media-video/handbrake/files/handbrake-1.3.3-x265-link.patch
new file mode 100644
index 000000000000..6a1464571ec3
--- /dev/null
+++ b/media-video/handbrake/files/handbrake-1.3.3-x265-link.patch
@@ -0,0 +1,13 @@
+--- a/test/module.defs 2020-06-13 15:05:35.000000000 +0100
++++ a/test/module.defs 2020-07-03 11:15:53.951205608 +0100
+@@ -30,6 +30,10 @@
+ endif
+ endif
+
++ifeq (1,$(FEATURE.x265))
++ TEST.GCC.l += x265
++endif
++
+ ifeq (1,$(FEATURE.flatpak))
+ TEST.GCC.l += glib-2.0
+ endif
diff --git a/media-video/handbrake/handbrake-1.3.3-r1.ebuild b/media-video/handbrake/handbrake-1.3.3-r1.ebuild
new file mode 100644
index 000000000000..2dccc821812d
--- /dev/null
+++ b/media-video/handbrake/handbrake-1.3.3-r1.ebuild
@@ -0,0 +1,168 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7,8} )
+
+inherit autotools eutils gnome2-utils python-any-r1 xdg-utils
+
+if [[ ${PV} = *9999* ]]; then
+ EGIT_REPO_URI="https://github.com/HandBrake/HandBrake.git"
+ inherit git-r3
+ KEYWORDS=""
+else
+ MY_P="HandBrake-${PV}"
+ SRC_URI="https://github.com/HandBrake/HandBrake/releases/download/${PV}/${MY_P}-source.tar.bz2 -> ${P}.tar.bz2"
+ S="${WORKDIR}/${MY_P}"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+DESCRIPTION="Open-source, GPL-licensed, multiplatform, multithreaded video transcoder"
+HOMEPAGE="http://handbrake.fr/"
+LICENSE="GPL-2"
+
+SLOT="0"
+IUSE="+fdk gstreamer gtk libav-aac numa nvenc x265"
+
+REQUIRED_USE="^^ ( fdk libav-aac )"
+
+RDEPEND="
+ app-arch/xz-utils
+ media-libs/speex
+ dev-libs/jansson
+ dev-libs/libxml2
+ media-libs/a52dec
+ media-libs/libass:=
+ >=media-libs/libbluray-1.0
+ >=media-libs/dav1d-0.5.1
+ media-libs/libdvdnav
+ media-libs/libdvdread:=
+ media-libs/libsamplerate
+ media-libs/libtheora
+ media-libs/libvorbis
+ >=media-libs/libvpx-1.8
+ nvenc? ( media-libs/nv-codec-headers )
+ media-libs/opus
+ media-libs/x264:=
+ media-sound/lame
+ sys-libs/zlib
+ >=media-video/ffmpeg-4.2.1:0=[postproc,fdk?]
+ gstreamer? (
+ media-libs/gstreamer:1.0
+ media-libs/gst-plugins-base:1.0
+ media-libs/gst-plugins-good:1.0
+ media-libs/gst-plugins-bad:1.0
+ media-libs/gst-plugins-ugly:1.0
+ media-plugins/gst-plugins-a52dec:1.0
+ media-plugins/gst-plugins-libav:1.0
+ media-plugins/gst-plugins-x264:1.0
+ media-plugins/gst-plugins-gdkpixbuf:1.0
+ )
+ gtk? (
+ >=x11-libs/gtk+-3.10
+ dev-libs/dbus-glib
+ dev-libs/glib:2
+ dev-libs/libgudev:=
+ x11-libs/cairo
+ x11-libs/gdk-pixbuf:2
+ x11-libs/libnotify
+ x11-libs/pango
+ )
+ fdk? ( media-libs/fdk-aac )
+ x265? ( >=media-libs/x265-3.2:0=[10bit,12bit,numa?] )
+ "
+
+DEPEND="${RDEPEND}
+ ${PYTHON_DEPS}
+ dev-lang/nasm
+ dev-util/cmake
+ dev-util/intltool
+ dev-util/meson
+ sys-devel/automake"
+
+PATCHES=(
+ # Remove libdvdnav duplication and call it on the original instead.
+ # It may work this way; if not, we should try to mimic the duplication.
+ "${FILESDIR}/${PN}-9999-remove-dvdnav-dup.patch"
+
+ # Remove faac dependency; TODO: figure out if we need to do this at all.
+ "${FILESDIR}/${PN}-9999-remove-faac-dependency.patch"
+
+ # Use whichever python is set by portage
+ "${FILESDIR}/${PN}-1.3.0-dont-search-for-python.patch"
+
+ # Fix x265 linkage... again again #730034
+ "${FILESDIR}/${PN}-1.3.3-x265-link.patch"
+)
+
+src_prepare() {
+ # Get rid of leftover bundled library build definitions,
+ sed -i 's:.*\(/contrib\|contrib/\).*::g' \
+ "${S}"/make/include/main.defs \
+ || die "Contrib removal failed."
+
+ default
+
+ cd "${S}/gtk"
+ # Don't run autogen.sh.
+ sed -i '/autogen.sh/d' module.rules || die "Removing autogen.sh call failed"
+ eautoreconf
+}
+
+src_configure() {
+ # Libav was replaced in 1.2 with ffmpeg by default
+ # but I've elected to not make people change their use flags for AAC
+ # as its the same code anyway
+ ./configure \
+ --force \
+ --verbose \
+ --prefix="${EPREFIX}/usr" \
+ --disable-gtk-update-checks \
+ --disable-flatpak \
+ --disable-gtk4 \
+ $(use_enable libav-aac ffmpeg-aac) \
+ $(use_enable fdk fdk-aac) \
+ $(usex !gtk --disable-gtk) \
+ $(usex !gstreamer --disable-gst) \
+ $(use_enable numa) \
+ $(use_enable nvenc) \
+ $(use_enable x265) || die "Configure failed."
+}
+
+src_compile() {
+ emake -C build
+
+ # TODO: Documentation building is currently broken, try to fix it.
+ #
+ # if use doc ; then
+ # emake -C build doc
+ # fi
+}
+
+src_install() {
+ emake -C build DESTDIR="${D}" install
+
+ dodoc README.markdown AUTHORS.markdown NEWS.markdown THANKS.markdown
+}
+
+pkg_postinst() {
+ einfo "Gentoo builds of HandBrake are NOT SUPPORTED by upstream as they"
+ einfo "do not use the bundled (and often patched) upstream libraries."
+ einfo ""
+ einfo "Please do not raise bugs with upstream because of these ebuilds,"
+ einfo "report bugs to Gentoo's bugzilla or Multimedia forum instead."
+
+ einfo "For the CLI version of HandBrake, you can use \`HandBrakeCLI\`."
+ if use gtk ; then
+ einfo "For the GTK+ version of HandBrake, you can run \`ghb\`."
+ fi
+
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+}
+
+pkg_postrm() {
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+}