Gentoo Archives: gentoo-commits

From: Ian Whyman <thev00d00@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: media-video/handbrake/
Date: Sat, 23 May 2020 09:52:00
Message-Id: 1590227505.ddeb26c79cf05eb83f79c29a1743060590bb9b51.thev00d00@gentoo
1 commit: ddeb26c79cf05eb83f79c29a1743060590bb9b51
2 Author: Ian Whyman <thev00d00 <AT> gentoo <DOT> org>
3 AuthorDate: Sat May 23 09:51:30 2020 +0000
4 Commit: Ian Whyman <thev00d00 <AT> gentoo <DOT> org>
5 CommitDate: Sat May 23 09:51:45 2020 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ddeb26c7
7
8 media-video/handbrake: Version bump
9
10 Closes: https://bugs.gentoo.org/713364
11 Closes: https://bugs.gentoo.org/712612
12 Package-Manager: Portage-2.3.99, Repoman-2.3.22
13 Signed-off-by: Ian Whyman <thev00d00 <AT> gentoo.org>
14
15 media-video/handbrake/Manifest | 1 +
16 media-video/handbrake/handbrake-1.3.2.ebuild | 163 +++++++++++++++++++++++++++
17 2 files changed, 164 insertions(+)
18
19 diff --git a/media-video/handbrake/Manifest b/media-video/handbrake/Manifest
20 index 39ca8d3e610..70dab8d3bfb 100644
21 --- a/media-video/handbrake/Manifest
22 +++ b/media-video/handbrake/Manifest
23 @@ -1,2 +1,3 @@
24 DIST handbrake-1.2.2.tar.bz2 18010777 BLAKE2B 75ace4565bef22a6ee8cd3291a393dd20d9a8fcc57b16bca15393f9a5f18949bf104ad69b536453013598ea3dc0ddbceddf85b96e234f09ef2c119810242f48e SHA512 434e6db1acbe01771aeefd2f257bdc58ad84e63ba441f4977f634b9ccb3c708176b928adf1dfa9e20d4948b65876ae9b4dfdc35f9c56f03f34858380090ab29c
25 DIST handbrake-1.3.0.tar.bz2 16801695 BLAKE2B 2a71674f557562317ed643064f252f3f88815a0b2fbbf9478f79efdd18282304443a29120effdce8ed9b07d00896d0946be0a7f4a94ae65252f9935c97829fb4 SHA512 40801a5a3756feb33f374e68e7ed743841d33f7a6b22dd2361034f182b32cdcead3ff02a7a6e16f0ffbc7b693541747b048dc606deadf7a8e490aad193e07c4d
26 +DIST handbrake-1.3.2.tar.bz2 16813741 BLAKE2B b59186f60d12a5478b2a34f736c9450ce6bba98f0606fc42af11c64f55b2324177302d49089003a39d0a8c1d82776211573a7c4ef1b6b6fabdbc35aed2e5cde7 SHA512 857f358a8754b08e55acfddb1431d99cc1035cf52174ab1d5243524fffe60e6cbc7d2a5d5912d55e6dc6b8ec621d503ebd21614a9064706a95c920e72a760f6a
27
28 diff --git a/media-video/handbrake/handbrake-1.3.2.ebuild b/media-video/handbrake/handbrake-1.3.2.ebuild
29 new file mode 100644
30 index 00000000000..e5a5b302194
31 --- /dev/null
32 +++ b/media-video/handbrake/handbrake-1.3.2.ebuild
33 @@ -0,0 +1,163 @@
34 +# Copyright 1999-2020 Gentoo Authors
35 +# Distributed under the terms of the GNU General Public License v2
36 +
37 +EAPI=7
38 +
39 +PYTHON_COMPAT=( python3_{6,7,8} )
40 +
41 +inherit autotools eutils gnome2-utils python-any-r1 xdg-utils
42 +
43 +if [[ ${PV} = *9999* ]]; then
44 + EGIT_REPO_URI="https://github.com/HandBrake/HandBrake.git"
45 + inherit git-r3
46 + KEYWORDS=""
47 +else
48 + MY_P="HandBrake-${PV}"
49 + SRC_URI="https://github.com/HandBrake/HandBrake/releases/download/${PV}/${MY_P}-source.tar.bz2 -> ${P}.tar.bz2"
50 + S="${WORKDIR}/${MY_P}"
51 + KEYWORDS="~amd64 ~x86"
52 +fi
53 +
54 +DESCRIPTION="Open-source, GPL-licensed, multiplatform, multithreaded video transcoder"
55 +HOMEPAGE="http://handbrake.fr/"
56 +LICENSE="GPL-2"
57 +
58 +SLOT="0"
59 +IUSE="+fdk gstreamer gtk libav-aac numa nvenc x265"
60 +
61 +REQUIRED_USE="^^ ( fdk libav-aac )"
62 +
63 +RDEPEND="
64 + app-arch/xz-utils
65 + media-libs/speex
66 + dev-libs/jansson
67 + dev-libs/libxml2
68 + media-libs/a52dec
69 + media-libs/libass:=
70 + >=media-libs/libbluray-1.0
71 + >=media-libs/dav1d-0.5.1
72 + media-libs/libdvdnav
73 + media-libs/libdvdread:=
74 + media-libs/libsamplerate
75 + media-libs/libtheora
76 + media-libs/libvorbis
77 + >=media-libs/libvpx-1.8
78 + nvenc? ( media-libs/nv-codec-headers )
79 + media-libs/opus
80 + media-libs/x264:=
81 + media-sound/lame
82 + sys-libs/zlib
83 + >=media-video/ffmpeg-4.2.1:0=[fdk?]
84 + gstreamer? (
85 + media-libs/gstreamer:1.0
86 + media-libs/gst-plugins-base:1.0
87 + media-libs/gst-plugins-good:1.0
88 + media-libs/gst-plugins-bad:1.0
89 + media-libs/gst-plugins-ugly:1.0
90 + media-plugins/gst-plugins-a52dec:1.0
91 + media-plugins/gst-plugins-libav:1.0
92 + media-plugins/gst-plugins-x264:1.0
93 + media-plugins/gst-plugins-gdkpixbuf:1.0
94 + )
95 + gtk? (
96 + >=x11-libs/gtk+-3.10
97 + dev-libs/dbus-glib
98 + dev-libs/glib:2
99 + dev-libs/libgudev:=
100 + x11-libs/cairo
101 + x11-libs/gdk-pixbuf:2
102 + x11-libs/libnotify
103 + x11-libs/pango
104 + )
105 + fdk? ( media-libs/fdk-aac )
106 + x265? ( >=media-libs/x265-3.2:0=[10bit,12bit,numa?] )
107 + "
108 +
109 +DEPEND="${RDEPEND}
110 + ${PYTHON_DEPS}
111 + dev-lang/yasm
112 + dev-util/intltool
113 + sys-devel/automake"
114 +
115 +PATCHES=(
116 + # Remove libdvdnav duplication and call it on the original instead.
117 + # It may work this way; if not, we should try to mimic the duplication.
118 + "${FILESDIR}/${PN}-9999-remove-dvdnav-dup.patch"
119 +
120 + # Remove faac dependency; TODO: figure out if we need to do this at all.
121 + "${FILESDIR}/${PN}-9999-remove-faac-dependency.patch"
122 +
123 + # Use whichever python is set by portage
124 + "${FILESDIR}/${PN}-1.3.0-dont-search-for-python.patch"
125 +)
126 +
127 +src_prepare() {
128 + # Get rid of leftover bundled library build definitions,
129 + sed -i 's:.*\(/contrib\|contrib/\).*::g' \
130 + "${S}"/make/include/main.defs \
131 + || die "Contrib removal failed."
132 +
133 + default
134 +
135 + cd "${S}/gtk"
136 + # Don't run autogen.sh.
137 + sed -i '/autogen.sh/d' module.rules || die "Removing autogen.sh call failed"
138 + eautoreconf
139 +}
140 +
141 +src_configure() {
142 + # Libav was replaced in 1.2 with ffmpeg by default
143 + # but I've elected to not make people change their use flags for AAC
144 + # as its the same code anyway
145 + ./configure \
146 + --force \
147 + --verbose \
148 + --prefix="${EPREFIX}/usr" \
149 + --disable-gtk-update-checks \
150 + --disable-flatpak \
151 + --disable-gtk4 \
152 + $(use_enable libav-aac ffmpeg-aac) \
153 + $(use_enable fdk fdk-aac) \
154 + $(usex !gtk --disable-gtk) \
155 + $(usex !gstreamer --disable-gst) \
156 + $(use_enable numa) \
157 + $(use_enable nvenc) \
158 + $(use_enable x265) || die "Configure failed."
159 +}
160 +
161 +src_compile() {
162 + emake -C build
163 +
164 + # TODO: Documentation building is currently broken, try to fix it.
165 + #
166 + # if use doc ; then
167 + # emake -C build doc
168 + # fi
169 +}
170 +
171 +src_install() {
172 + emake -C build DESTDIR="${D}" install
173 +
174 + dodoc README.markdown AUTHORS.markdown NEWS.markdown THANKS.markdown
175 +}
176 +
177 +pkg_postinst() {
178 + einfo "Gentoo builds of HandBrake are NOT SUPPORTED by upstream as they"
179 + einfo "do not use the bundled (and often patched) upstream libraries."
180 + einfo ""
181 + einfo "Please do not raise bugs with upstream because of these ebuilds,"
182 + einfo "report bugs to Gentoo's bugzilla or Multimedia forum instead."
183 +
184 + einfo "For the CLI version of HandBrake, you can use \`HandBrakeCLI\`."
185 + if use gtk ; then
186 + einfo "For the GTK+ version of HandBrake, you can run \`ghb\`."
187 + fi
188 +
189 + xdg_icon_cache_update
190 + xdg_desktop_database_update
191 +}
192 +
193 +pkg_postrm() {
194 + xdg_icon_cache_update
195 + xdg_desktop_database_update
196 +}