From b284a3168fa91a038925d2ecf5e4791011ea5e7d Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Mon, 18 Nov 2019 10:15:03 +0000 Subject: gentoo resync : 18.11.2019 --- media-video/handbrake/Manifest | 8 +- .../handbrake-1.3.0-missing-linker-flags.patch | 27 ++++ ...handbrake-9999-fix-missing-x265-link-flag.patch | 13 -- media-video/handbrake/handbrake-1.3.0-r1.ebuild | 172 +++++++++++++++++++++ media-video/handbrake/handbrake-9999.ebuild | 2 + media-video/handbrake/metadata.xml | 1 + 6 files changed, 207 insertions(+), 16 deletions(-) create mode 100644 media-video/handbrake/files/handbrake-1.3.0-missing-linker-flags.patch delete mode 100644 media-video/handbrake/files/handbrake-9999-fix-missing-x265-link-flag.patch create mode 100644 media-video/handbrake/handbrake-1.3.0-r1.ebuild (limited to 'media-video/handbrake') 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 -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 @@ Install the GTK UI, ghb. Support for encoding AAC using media-libs/fdk-aac. Support for encoding AAC using media-video/libav's internal encoder. + Adds support for x265's NUMA capabilities. Adds support for NVIDIA Encoder (NVENC) API for hardware accelerated encoding on NVIDIA cards. Support for encoding h265 using media-libs/x265. -- cgit v1.2.3