summaryrefslogtreecommitdiff
path: root/media-video/handbrake
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2019-11-18 10:15:03 +0000
committerV3n3RiX <venerix@redcorelinux.org>2019-11-18 10:15:03 +0000
commitb284a3168fa91a038925d2ecf5e4791011ea5e7d (patch)
tree16fe44748708acacd909d4e2e160a09a7f6d936a /media-video/handbrake
parent77398e424e45d9e98c1cef3c43bdadb9d56e81ef (diff)
gentoo resync : 18.11.2019
Diffstat (limited to 'media-video/handbrake')
-rw-r--r--media-video/handbrake/Manifest8
-rw-r--r--media-video/handbrake/files/handbrake-1.3.0-missing-linker-flags.patch27
-rw-r--r--media-video/handbrake/files/handbrake-9999-fix-missing-x265-link-flag.patch13
-rw-r--r--media-video/handbrake/handbrake-1.3.0-r1.ebuild172
-rw-r--r--media-video/handbrake/handbrake-9999.ebuild2
-rw-r--r--media-video/handbrake/metadata.xml1
6 files changed, 207 insertions, 16 deletions
diff --git a/media-video/handbrake/Manifest b/media-video/handbrake/Manifest
index 83e71a77e4b2..dd2a4c31128c 100644
--- a/media-video/handbrake/Manifest
+++ b/media-video/handbrake/Manifest
@@ -1,9 +1,11 @@
AUX handbrake-1.2.2-backport-hardware-configure.patch 6394 BLAKE2B 64009363b658bea4aaa588339e0f596790eaf584a377b0c76ad5fded84652fa4fc93ef626e5e221b1a742b1cbc34f8a97e2f92bc875fb8e018a34c93948ede3c SHA512 62d8c54ca0148fcac76f356dd4588b1cdfdbec7621fe9a8b426a39ee7b2dc1eb3085f17e8c1ebe23f5d45b69e59e52c7c8dd113308598b3f2378bad32dec6bd5
-AUX handbrake-9999-fix-missing-x265-link-flag.patch 281 BLAKE2B 623f902bb31586513a51db95a63841e6234d4841d6332d2be9a6a0d7fd07f3e9cc694eb8945bebf718e10538fa390bbaa9dcbea81ba5324cbf20bd64bc582fdb SHA512 30d457258dd287cae3df66e7899b66480be2212a3969fe3a4e4f99ed383740e8f597fa7cf869922f29f501f100313b7efd78ebe09e2949ed4c235e2df22d22e5
+AUX handbrake-1.3.0-missing-linker-flags.patch 1283 BLAKE2B 83e20def829699eff6ad8473261cdcdb736e0fb395bebc941a75a4ba7384ad4509958f5e900ce57ed04713bd2ac4e10408dea4c93433edefe450fc8d8a710484 SHA512 810b1329ab47eac284fbb9cf9302cdbe453c2ddf2c8fa5665ae6a7b82ca612ef411fa63cb2aae74504b7ef9b513e42f7e8a4e7c058ffd02e2d9268ef3f837a4e
AUX handbrake-9999-libdl-link.patch 882 BLAKE2B 74b6f367828d267ccefa33a1a88cfe53bf06e7f090e70593800cccec1bbb64df9952851efd94e20ec0e61e73e4ef0657c8238acdccccc85372591bc8b25bc024 SHA512 9990842947ea8eaf738c9d34859444d352a06c46cb15ee18018cdd10d1c666fb953fffb7d15d44d077aca52c1eef21bdc5585f44a94a04ddefcd1656a72dadaa
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.2.2.tar.bz2 18010777 BLAKE2B 75ace4565bef22a6ee8cd3291a393dd20d9a8fcc57b16bca15393f9a5f18949bf104ad69b536453013598ea3dc0ddbceddf85b96e234f09ef2c119810242f48e SHA512 434e6db1acbe01771aeefd2f257bdc58ad84e63ba441f4977f634b9ccb3c708176b928adf1dfa9e20d4948b65876ae9b4dfdc35f9c56f03f34858380090ab29c
+DIST handbrake-1.3.0.tar.bz2 16801695 BLAKE2B 2a71674f557562317ed643064f252f3f88815a0b2fbbf9478f79efdd18282304443a29120effdce8ed9b07d00896d0946be0a7f4a94ae65252f9935c97829fb4 SHA512 40801a5a3756feb33f374e68e7ed743841d33f7a6b22dd2361034f182b32cdcead3ff02a7a6e16f0ffbc7b693541747b048dc606deadf7a8e490aad193e07c4d
EBUILD handbrake-1.2.2-r2.ebuild 4123 BLAKE2B 8195f875d49e0ec7f951e81fed5ab36b82dd989cbfe0845a6414abdd1bee9025f0d84a752b7400fe8d049b5fc64243ca8792cc58f5db88cfa47a293d2cee3adb SHA512 424866e13dff945b238f97686c1c48c42826823be3e924fb6989f1f74a330ed674c45a5e7bb4a0dd222a7b75d12035db37e73bfa8209abc38dc2fc0b98747e8c
-EBUILD handbrake-9999.ebuild 4139 BLAKE2B c606ab0204158e5c2b6e4b752247d8d4e08d06a1c3be8c929932f6b1da47358cb6483624aee982b0e96ece8a4a6c7ca7f0956228e1aec6efb1821c1a8ebede6e SHA512 7d37c3742c2784dc1cd29694d38e373ef23821800d2ff93081c289a134416c7badfb9e18129a719e56ac9d8959ca13667064a5d5d7264a953f74cbea9a1cccce
-MISC metadata.xml 949 BLAKE2B fc4ffd4d804c1098614e24525ae50673620b16e4d9480594cfbf4fc28f4aaa6274a6881548b9dbbbf6e431a839bf1742900faaa1612d11a22ad92f325af22579 SHA512 da975f8436e71359f279b26a2f41b1813f3177bf5768cb848f4feafa352c31084c7f2ba350fc6491400df8e261d2dcb8f32473657ceca6bd18d2fcd67b343185
+EBUILD handbrake-1.3.0-r1.ebuild 4235 BLAKE2B 781eb931d58a00490bfa50757a80fa6bf806289406df840320b3026f4d7bf6d43d934ed5c48e6d4ada466e67b8fee79bd63b313fb7050cc9d61326520b81a069 SHA512 01448c46f48f0ac1dd20b268ecff54558e400a66b82fb520d860d186c7dae304f146a9c97a3a4692cb39e51dcce68075befce131359a74af0cd44ad0fda29ae1
+EBUILD handbrake-9999.ebuild 4183 BLAKE2B 3d09bd94db5587d966e9f8ddf0c4c50617fdb1d8b8a522367346c3a21c00169de1f12d623ec28c00f0624f4d249a8fff396e8f30e7f6ac9e2ac5371eec4faced SHA512 7f1cf99309f39a290494e019fe4a2983131107650af4c9a33e3c0c632c269843f27219e6ca017ab9b5f0a5234afa123d9e92988bee9942b2d61ed52dca11a23f
+MISC metadata.xml 1019 BLAKE2B 041873a5db7246fc3a6c6b5544fc4c28b981e6e15996c68c53413fabc46ada335333936e4e6ab160f6fad2b9eafafdb9f37d6651cb692e0d69f814acb02557f5 SHA512 41bb1e4656da0cf4a99fd158da5dcf9ccef2b4355f2cdb8e0017a84d8a65cc21ab382734dd967eaeeaf2d55c11e617e6dabe28eeb0bdd40388e8325a8e4ae42a
diff --git a/media-video/handbrake/files/handbrake-1.3.0-missing-linker-flags.patch b/media-video/handbrake/files/handbrake-1.3.0-missing-linker-flags.patch
new file mode 100644
index 000000000000..598fc7c6efaa
--- /dev/null
+++ b/media-video/handbrake/files/handbrake-1.3.0-missing-linker-flags.patch
@@ -0,0 +1,27 @@
+diff --git a/gtk/configure.ac b/gtk/configure.ac
+index 92aabcbe8..1f4a1df95 100644
+--- a/gtk/configure.ac
++++ b/gtk/configure.ac
+@@ -199,7 +199,7 @@ PKG_CHECK_MODULES(GHB, [$GHB_PACKAGES])
+
+ GHB_CFLAGS="$HBINC $GHB_CFLAGS"
+
+-HB_LIBS="-lhandbrake -lavformat -lavfilter -lavcodec -lavutil -ldav1d -lswresample -lpostproc -ldvdnav -ldvdread -lmp3lame -lvorbis -lvorbisenc -logg -lx264 -lswscale -ltheoraenc -ltheoradec -lvpx -lz -lbz2 -lbluray -lass -lfontconfig -lfreetype -lxml2 -ljansson -lopus -lspeex -llzma"
++HB_LIBS="-lhandbrake -lavformat -lavfilter -lavcodec -lavutil -ldav1d -lswresample -lpostproc -ldvdnav -ldvdread -lmp3lame -lvorbis -lvorbisenc -logg -lx264 -lswscale -ltheoraenc -ltheoradec -lvpx -lz -lbz2 -lbluray -lass -lfontconfig -lfreetype -lxml2 -ljansson -lopus -lspeex -llzma -ldl"
+
+ if test "x$use_fdk_aac" = "xyes" ; then
+ HB_LIBS="$HB_LIBS -lfdk-aac"
+diff --git a/test/module.defs b/test/module.defs
+index ffc00a8b2..62b01ffd5 100644
+--- a/test/module.defs
++++ b/test/module.defs
+@@ -69,6 +69,9 @@ else ifeq ($(HOST.system),linux)
+ ifeq (1, $(FEATURE.numa))
+ TEST.GCC.l += numa
+ endif
++ifeq (1, $(FEATURE.x265))
++ TEST.GCC.l += x265
++endif
+ else ifeq ($(HOST.system),kfreebsd)
+ TEST.GCC.l += pthread dl m
+ else ifeq ($(HOST.system),freebsd)
diff --git a/media-video/handbrake/files/handbrake-9999-fix-missing-x265-link-flag.patch b/media-video/handbrake/files/handbrake-9999-fix-missing-x265-link-flag.patch
deleted file mode 100644
index a963fe0af216..000000000000
--- a/media-video/handbrake/files/handbrake-9999-fix-missing-x265-link-flag.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Written by: Peter Foley <pefoley2@pefoley.com>
-Gentoo Bug: #552792
-
---- a/test/module.defs
-+++ b/test/module.defs
-@@ -25,6 +25,7 @@
-
- ifeq (1,$(FEATURE.x265))
- TEST.GCC.D += USE_X265
-+ TEST.GCC.l += x265
- endif
-
- TEST.GCC.l += $(foreach m,$(MODULES.NAMES),$($m.OSL.libs))
diff --git a/media-video/handbrake/handbrake-1.3.0-r1.ebuild b/media-video/handbrake/handbrake-1.3.0-r1.ebuild
new file mode 100644
index 000000000000..ddd530597452
--- /dev/null
+++ b/media-video/handbrake/handbrake-1.3.0-r1.ebuild
@@ -0,0 +1,172 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{1,2,3,4,5,6,7} python2_7 )
+
+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://download2.handbrake.fr/${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 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
+ libav? ( >=media-video/libav-12.2:0=[fdk?] )
+ !libav? ( >=media-video/ffmpeg-4.2.1:0=[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/yasm
+ dev-util/intltool
+ 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"
+
+ # Fix missing flags
+ "${FILESDIR}/${P}-missing-linker-flags.patch"
+)
+
+pkg_setup() {
+ python-any-r1_pkg_setup
+}
+
+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
+
+ gnome2_icon_cache_update
+ xdg_desktop_database_update
+}
+
+pkg_preinst() {
+ gnome2_icon_savelist
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+ xdg_desktop_database_update
+}
diff --git a/media-video/handbrake/handbrake-9999.ebuild b/media-video/handbrake/handbrake-9999.ebuild
index f75730cee0d1..13e3bf9a6ad8 100644
--- a/media-video/handbrake/handbrake-9999.ebuild
+++ b/media-video/handbrake/handbrake-9999.ebuild
@@ -31,9 +31,11 @@ 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
diff --git a/media-video/handbrake/metadata.xml b/media-video/handbrake/metadata.xml
index 0bab35dd0f09..66de5356243a 100644
--- a/media-video/handbrake/metadata.xml
+++ b/media-video/handbrake/metadata.xml
@@ -13,6 +13,7 @@
<flag name="gtk">Install the GTK UI, ghb.</flag>
<flag name="fdk">Support for encoding AAC using <pkg>media-libs/fdk-aac</pkg>.</flag>
<flag name="libav-aac">Support for encoding AAC using <pkg>media-video/libav</pkg>'s internal encoder.</flag>
+ <flag name="numa">Adds support for x265's NUMA capabilities.</flag>
<flag name="nvenc">Adds support for NVIDIA Encoder (NVENC) API for hardware accelerated encoding on NVIDIA cards.</flag>
<flag name="x265">Support for encoding h265 using <pkg>media-libs/x265</pkg>.</flag>
</use>