diff options
Diffstat (limited to 'media-video')
-rw-r--r-- | media-video/avidemux/Manifest | 1 | ||||
-rw-r--r-- | media-video/avidemux/avidemux-2.7.4.ebuild | 129 |
2 files changed, 130 insertions, 0 deletions
diff --git a/media-video/avidemux/Manifest b/media-video/avidemux/Manifest index 7e55a202857a..4113f7cd25d6 100644 --- a/media-video/avidemux/Manifest +++ b/media-video/avidemux/Manifest @@ -1,2 +1,3 @@ DIST avidemux-2.7.3.tar.gz 23772654 BLAKE2B f946c267140bc8aebda2ce027ed8cb7c84a98a401255d3e0cdaf7498680e8bd9c78a33c122cb177d397ed2dd6bc3c29d7508578028c2964c2897279bf860b62d SHA512 d7761de1c40de1b824efbcf24173ea738a2e0ba7fa41cefa09e7bac3ec97f3af4b04201e36f9de50ade2b09e394aa99ed1d4907f90bb132f9896e8f1b5e82d7a +DIST avidemux-2.7.4.tar.gz 23815808 BLAKE2B 3a7206f04f568f28dd4d5116c580dd780b057a59e94dd61a2abe5dadfa557291a0c50f917ad1926f9f9a82d01af065c06138f954320e2d9c174fda7583a6b265 SHA512 36d857837cd6a74039a414df16367cd8cbf615173bcc531e57dc0dbfc2e002b1c0c4a80cef73a0d8f25d305deca809af0b5cbcdbad8c311324fa2e64381fd10b DIST avidemux_2.7.0.tar.gz 21474504 BLAKE2B c6e55a0b5220d6d3746fa06162bf11253145fd28f2f6f744702d5e0342fba85e546a28883eb847139eadd34c94037ebc7d68f5576e7505a85288556468d14b96 SHA512 7c92213d3bd2849dbdb5a1aff2acd6da231fd76c561b756fbf4a1d5a41e9705d609d7a35b6ca6b77ceb3bf5138f861cd24ed16d8fcec4fd713f09a2ff07e9015 diff --git a/media-video/avidemux/avidemux-2.7.4.ebuild b/media-video/avidemux/avidemux-2.7.4.ebuild new file mode 100644 index 000000000000..8e047a6a29cc --- /dev/null +++ b/media-video/avidemux/avidemux-2.7.4.ebuild @@ -0,0 +1,129 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +CMAKE_MAKEFILE_GENERATOR="emake" + +inherit cmake-utils desktop 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" + +# 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 nvenc opengl qt5 sdl vaapi vdpau xv" + +COMMON_DEPEND=" + ~media-libs/avidemux-core-${PV}:${SLOT}[nls?,sdl?,vaapi?,vdpau?,xv?,nvenc?] + nvenc? ( amd64? ( media-video/nvidia_video_sdk:0 ) ) + opengl? ( virtual/opengl:0 ) + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtnetwork:5 + dev-qt/qtopengl:5 + dev-qt/qtwidgets:5 + ) + vaapi? ( x11-libs/libva:0= ) +" +DEPEND="${COMMON_DEPEND} + qt5? ( dev-qt/linguist-tools:5 ) +" +RDEPEND="${COMMON_DEPEND} + nls? ( virtual/libintl:0 ) + !<media-video/avidemux-${PV} +" +PDEPEND="~media-libs/avidemux-plugins-${PV}:${SLOT}[opengl?,qt5?]" + +S="${WORKDIR}/avidemux2-${PV}" + +src_prepare() { + processes="buildCli:avidemux/cli" + use qt5 && processes+=" buildQt4:avidemux/qt4" + + for process in ${processes} ; do + CMAKE_USE_DIR="${S}"/${process#*:} cmake-utils_src_prepare + done + + # 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 avidemux2 instead of avidemux3 + # so it will actually launch avidemux-2.7 if it is installed. + sed -i -e "/^Exec/ s:${PN}2:${PN}3:" appImage/${PN}.desktop || \ + die "Desktop file fix failed." + use qt5 && sed -i -re '/^Exec/ s:(avidemux3_)gtk:\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." + + # 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)" + -DVDPAU="$(usex vdpau)" + -DXVIDEO="$(usex xv)" + ) + + use qt5 && mycmakeargs+=( + -DENABLE_QT5="$(usex qt5)" + -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-utils_src_configure + done +} + +src_compile() { + for process in ${processes} ; do + local build="${WORKDIR}/${P}_build/${process%%:*}" + BUILD_DIR="${build}" cmake-utils_src_compile + done +} + +src_test() { + for process in ${processes} ; do + local build="${WORKDIR}/${P}_build/${process%%:*}" + BUILD_DIR="${build}" cmake-utils_src_test + done +} + +src_install() { + for process in ${processes} ; do + local build="${WORKDIR}/${P}_build/${process%%:*}" + BUILD_DIR="${build}" cmake-utils_src_install + done + + cd "${S}" || die "Can't enter source folder" + newicon ${PN}_icon.png ${PN}-${SLOT}.png + + use qt5 && domenu ${PN}-${SLOT}.desktop +} |