commit:     8c210ba94fee710f73ba4b7881e9ac33f3b9de37
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Jan  7 07:14:03 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Jan  7 07:17:23 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8c210ba9

media-video/avidemux: add 2.8.1

Bug: https://bugs.gentoo.org/830464
Signed-off-by: Sam James <sam <AT> gentoo.org>

 media-video/avidemux/Manifest              |   2 +
 media-video/avidemux/avidemux-2.8.1.ebuild | 139 +++++++++++++++++++++++++++++
 2 files changed, 141 insertions(+)

diff --git a/media-video/avidemux/Manifest b/media-video/avidemux/Manifest
index 0201016418c0..c627393e12a4 100644
--- a/media-video/avidemux/Manifest
+++ b/media-video/avidemux/Manifest
@@ -1,2 +1,4 @@
 DIST avidemux-2.7.8.tar.gz 22080267 BLAKE2B 
a1e56856f44d56afac6ea4015f206a3f9301c025b3c8da1528165bd4c139ccc971074ac21aa05b9b3dfd6d514eabcbb375e671c8df9c9e5cae74a0a6597577c4
 SHA512 
6cd5527ab34517a07bf73e46d01f15b7ff023ff34ed70ee54f1d7dbfb6cf57364a323b4ecb89bb9aadeb9bc05473aacb40d8c4eecc522840a3c1c4b3a8756d82
+DIST avidemux-2.8.1.tar.gz 23207741 BLAKE2B 
766ae9b159d2e48a3d14bdfccf9c665b95ed056831b515d53837bf2bae20baf9b01d15d551b62fb96f3c0cf50b0138448a133bc62e6202af744de558e0fbfe4f
 SHA512 
e7105e555e04dd6768336bdb246037e91045de2e1f572ae362d985424def65499c7f25d92d376ea98af09b436d89e9eb4a5424e93b11df14f2d67ac35661a8a3
 DIST avidemux-i18n-2.7.8.tar.gz 2488165 BLAKE2B 
9e6bfb10e938c880d372570cfe35ba9422a8c0081b116230d831bd421b205a555415350be96b0e3149beb164a0151e04205bded403354d7052aa24884a068407
 SHA512 
a62b06a3d95577cf805be36f991ccb63d044b7c3633ada65bd5810f0e7d8eb41aa874ef5dd63de4fcacc0be073935bed827b2f0bceba77ab735ac8673c1ad39f
+DIST avidemux-i18n-2.8.1.tar.gz 2765272 BLAKE2B 
ecca8a3d6f278e02e37059c1c1dce4d8164661548f29d5e51273d76e46434bc349d93701209fd6a009364244540d75cae09ce456e968d1761ca5540acc4ba678
 SHA512 
aa93add0d72170abf009e5bd86eeb5198907ee8961e366ad396d85315b9908f8f94bf920ba2a0cf9c351dd9c50f7ef883480d88e7475f48d085648bfbfa1f4d4

diff --git a/media-video/avidemux/avidemux-2.8.1.ebuild 
b/media-video/avidemux/avidemux-2.8.1.ebuild
new file mode 100644
index 000000000000..865b4fd3dd09
--- /dev/null
+++ b/media-video/avidemux/avidemux-2.8.1.ebuild
@@ -0,0 +1,139 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CMAKE_MAKEFILE_GENERATOR="emake"
+inherit cmake desktop flag-o-matic qmake-utils xdg
+
+DESCRIPTION="Video editor designed for simple cutting, filtering and encoding 
tasks"
+HOMEPAGE="http://fixounet.free.fr/avidemux";
+SRC_URI="
+       https://github.com/mean00/avidemux2/archive/${PV}.tar.gz -> ${P}.tar.gz
+       https://github.com/mean00/avidemux2_i18n/archive/${PV}.tar.gz -> 
${PN}-i18n-${PV}.tar.gz
+"
+
+# Multiple licenses because of all the bundled stuff.
+LICENSE="GPL-1 GPL-2 MIT PSF-2 public-domain"
+SLOT="2.7"
+KEYWORDS="~amd64 ~x86"
+IUSE="debug nls opengl gui sdl vaapi vdpau xv"
+
+BDEPEND="
+       dev-lang/yasm
+       gui? ( dev-qt/linguist-tools:5 )
+"
+DEPEND="
+       ~media-libs/avidemux-core-${PV}:${SLOT}[nls?,sdl?,vaapi?,vdpau?,xv?]
+       opengl? ( virtual/opengl )
+       gui? (
+               dev-qt/qtcore:5
+               dev-qt/qtgui:5
+               dev-qt/qtnetwork:5
+               dev-qt/qtopengl:5
+               dev-qt/qtwidgets:5
+       )
+       vaapi? ( media-libs/libva:= )
+"
+RDEPEND="
+       ${DEPEND}
+       nls? ( virtual/libintl )
+       !<media-video/avidemux-${PV}
+"
+
+PDEPEND="~media-libs/avidemux-plugins-${PV}:${SLOT}[opengl?,gui?]"
+
+S="${WORKDIR}/avidemux2-${PV}"
+
+src_unpack() {
+       default
+       mv -f -T avidemux2_i18n-"${PV}" "${S}"/avidemux/qt4/i18n >/dev/null || 
die
+}
+
+src_prepare() {
+       eapply "${FILESDIR}/${PN}-2.7.4-qt-5.15.patch"
+
+       processes="buildCli:avidemux/cli"
+       use gui && processes+=" buildQt4:avidemux/qt4"
+
+       for process in ${processes} ; do
+               CMAKE_USE_DIR="${S}"/${process#*:} cmake_src_prepare
+       done
+
+       if use gui; then
+               # Fix icon name -> avidemux-2.7
+               sed -i -e "/^Icon/ s:${PN}\.png:${PN}-${SLOT}:" 
appImage/"${PN}".desktop || die "Icon name fix failed."
+
+               # The desktop file is broken. It uses avidemux3_portable 
instead of avidemux3_qt5
+               sed -i -re '/^Exec/ s:(avidemux3_)portable:\1qt5:' 
appImage/"${PN}".desktop || die "Desktop file fix failed."
+
+               # QA warnings: missing trailing ';' and 'Application' is 
deprecated.
+               sed -i -e 's/Application;AudioVideo/AudioVideo;/g' 
appImage/"${PN}".desktop || die "Desktop file fix failed."
+
+               # Now rename the desktop file to not collide with 2.6.
+               mv appImage/"${PN}".desktop "${PN}-${SLOT}".desktop || die 
"Collision rename failed."
+       fi
+
+       # Remove "Build Option" dialog because it doesn't reflect
+       # what the GUI can or has been built with. (Bug #463628)
+       sed -i -e '/Build Option/d' avidemux/common/ADM_commonUI/myOwnMenu.h || 
die "Couldn't remove \"Build Option\" dialog."
+}
+
+src_configure() {
+       # See bug 432322.
+       use x86 && replace-flags -O0 -O1
+
+       # The build relies on an avidemux-core header that uses 'nullptr'
+       # which is from >=C++11. Let's use the GCC-6 default C++ dialect.
+       append-cxxflags -std=c++14
+
+       local mycmakeargs=(
+               -DGETTEXT="$(usex nls)"
+               -DSDL="$(usex sdl)"
+               -DLibVA="$(usex vaapi)"
+               -DOPENGL="$(usex opengl)"
+               -DVDPAU="$(usex vdpau)"
+               -DXVIDEO="$(usex xv)"
+               -DENABLE_QT4=OFF
+               -DENABLE_QT6=OFF
+       )
+
+       use gui && mycmakeargs+=(
+                       -DENABLE_QT5="$(usex gui)"
+                       -DLRELEASE_EXECUTABLE="$(qt5_get_bindir)/lrelease"
+       )
+
+       use debug && mycmakeargs+=( -DVERBOSE=1 -DADM_DEBUG=1 )
+
+       for process in ${processes} ; do
+               local build="${WORKDIR}/${P}_build/${process%%:*}"
+               CMAKE_USE_DIR="${S}"/${process#*:} BUILD_DIR="${build}" 
cmake_src_configure
+       done
+}
+
+src_compile() {
+       for process in ${processes} ; do
+               local build="${WORKDIR}/${P}_build/${process%%:*}"
+               BUILD_DIR="${build}" cmake_src_compile
+       done
+}
+
+src_test() {
+       for process in ${processes} ; do
+               local build="${WORKDIR}/${P}_build/${process%%:*}"
+               BUILD_DIR="${build}" cmake_src_test
+       done
+}
+
+src_install() {
+       for process in ${processes} ; do
+               local build="${WORKDIR}/${P}_build/${process%%:*}"
+               BUILD_DIR="${build}" cmake_src_install
+       done
+
+       if use gui; then
+               cd "${S}" || die "Can't enter source folder"
+               newicon "${PN}"_icon.png "${PN}-${SLOT}".png
+               domenu "${PN}-${SLOT}".desktop
+       fi
+}

Reply via email to