summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Wijsman <tomwij@gentoo.org>2013-03-04 16:34:51 +0000
committerTom Wijsman <tomwij@gentoo.org>2013-03-04 16:34:51 +0000
commit1fc44bc0f133f2efc907768e0976cb190d86317e (patch)
treeed7ce0a17ad48f48fa1442afaa1cdc911e400e9d /media-video/avidemux
parentversion bump (diff)
downloadgentoo-2-1fc44bc0f133f2efc907768e0976cb190d86317e.tar.gz
gentoo-2-1fc44bc0f133f2efc907768e0976cb190d86317e.tar.bz2
gentoo-2-1fc44bc0f133f2efc907768e0976cb190d86317e.zip
Split magic powder function into EAPI 5 appropriate src_configure, src_compile and src_install functions; cleaned up the ebuild as a first step in preparation of unmasking it.
(Portage version: 2.1.11.52/cvs/Linux x86_64, signed Manifest commit with key 6D34E57D)
Diffstat (limited to 'media-video/avidemux')
-rw-r--r--media-video/avidemux/ChangeLog7
-rw-r--r--media-video/avidemux/avidemux-2.6.1.ebuild232
2 files changed, 127 insertions, 112 deletions
diff --git a/media-video/avidemux/ChangeLog b/media-video/avidemux/ChangeLog
index 348f75794f3c..96fda73d2a4f 100644
--- a/media-video/avidemux/ChangeLog
+++ b/media-video/avidemux/ChangeLog
@@ -1,6 +1,11 @@
# ChangeLog for media-video/avidemux
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-video/avidemux/ChangeLog,v 1.205 2013/03/02 22:06:56 hwoarang Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-video/avidemux/ChangeLog,v 1.206 2013/03/04 16:34:51 tomwij Exp $
+
+ 04 Mar 2013; Tom Wijsman <TomWij@gentoo.org> avidemux-2.6.1.ebuild:
+ Split magic powder function into EAPI 5 appropriate src_configure, src_compile
+ and src_install functions; cleaned up the ebuild as a first step in
+ preparation of unmasking it.
02 Mar 2013; Markos Chandras <hwoarang@gentoo.org> avidemux-2.5.6-r2.ebuild,
avidemux-2.6.0.ebuild, avidemux-2.6.1.ebuild:
diff --git a/media-video/avidemux/avidemux-2.6.1.ebuild b/media-video/avidemux/avidemux-2.6.1.ebuild
index f226c2a791b3..d71521f3469a 100644
--- a/media-video/avidemux/avidemux-2.6.1.ebuild
+++ b/media-video/avidemux/avidemux-2.6.1.ebuild
@@ -1,89 +1,71 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/media-video/avidemux/avidemux-2.6.1.ebuild,v 1.2 2013/03/02 22:06:56 hwoarang Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-video/avidemux/avidemux-2.6.1.ebuild,v 1.3 2013/03/04 16:34:51 tomwij Exp $
+
+EAPI="5"
-EAPI=4
PLOCALES="ca cs de el es fr it ja pt_BR ru sr sr@latin tr"
inherit cmake-utils eutils flag-o-matic l10n toolchain-funcs
-MY_P=${PN}_${PV}
+SLOT="2.6"
+MY_P="${PN}_${PV}"
DESCRIPTION="Video editor designed for simple cutting, filtering and encoding tasks"
-HOMEPAGE="http://fixounet.free.fr/avidemux"
+HOMEPAGE="http://fixounet.free.fr/${PN}"
SRC_URI="mirror://sourceforge/${PN}/${PV}/${MY_P}.tar.gz"
-# Multiple licenses because of all the bundled stuff
-LICENSE="GPL-2 MIT GPL-1 public-domain PSF-2"
-SLOT="2.6"
+# Multiple licenses because of all the bundled stuff.
+LICENSE="GPL-1 GPL-2 MIT PSF-2 public-domain"
KEYWORDS="~amd64 ~x86"
-IUSE="aften a52 alsa amr debug dts fontconfig gtk jack
- lame libsamplerate mmx nls qt4 sdl vorbis truetype xvid xv oss x264"
+IUSE="aften a52 alsa amr debug dts fontconfig gtk jack lame libsamplerate mmx nls qt4 sdl vorbis truetype xvid xv oss x264"
RDEPEND="
- virtual/libiconv
+ >=dev-lang/spidermonkey-1.5-r2
dev-libs/libxml2
media-libs/libpng
- >=dev-lang/spidermonkey-1.5-r2
- gtk? ( >=x11-libs/gtk+-2.6.0:2 )
- qt4? ( >=dev-qt/qtgui-4.8.3:4 )
- x264? ( media-libs/x264 )
- xvid? ( media-libs/xvid )
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXrender
+ virtual/libiconv
aften? ( media-libs/aften )
+ alsa? ( >=media-libs/alsa-lib-1.0.3b-r2 )
amr? ( media-libs/opencore-amr )
- lame? ( media-sound/lame )
dts? ( media-libs/libdca )
- vorbis? ( media-libs/libvorbis )
- alsa? ( >=media-libs/alsa-lib-1.0.3b-r2 )
+ fontconfig? ( media-libs/fontconfig )
+ gtk? ( >=x11-libs/gtk+-2.6.0:2 )
jack? (
media-sound/jack-audio-connection-kit
libsamplerate? ( media-libs/libsamplerate )
)
- truetype? ( >=media-libs/freetype-2.1.5 )
- fontconfig? ( media-libs/fontconfig )
+ lame? ( media-sound/lame )
+ qt4? ( >=dev-qt/qtgui-4.8.3:4 )
sdl? ( media-libs/libsdl )
+ truetype? ( >=media-libs/freetype-2.1.5 )
+ x264? ( media-libs/x264 )
xv? ( x11-libs/libXv )
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXrender
+ xvid? ( media-libs/xvid )
+ vorbis? ( media-libs/libvorbis )
"
DEPEND="
$RDEPEND
oss? ( virtual/os-headers )
- virtual/pkgconfig
nls? ( sys-devel/gettext )
+ virtual/pkgconfig
"
-S=${WORKDIR}/${MY_P}
-BUILD_S=${WORKDIR}/${P}_build
-
-avidemux_build_process() {
- local BUILDDIR="${1}"
- local SOURCEDIR="${2}"
- local mycmakeargs="${3}"
- EXTRA="${mycmakeargs}"
- BUILDER="Unix Makefiles"
- FAKEROOT_DIR="${S}"/gentoo-install
- SOURCEDIR="${2}"
- mkdir ${BUILDDIR} && cd "${BUILDDIR}"
- einfo "Configuring: ${BUILDDIR}"
- cmake -DFAKEROOT="${FAKEROOT_DIR}" -DAVIDEMUX_SOURCE_DIR="${S}" \
- -DCMAKE_INSTALL_PREFIX="/usr" \
- ${EXTRA} -G "${BUILDER}" ../"${SOURCEDIR}/"
- # for some reason, core needs -j1. That's what they do in their
- # script as well
- if [[ ${BUILDDIR} == "buildCore" ]]; then
- extra_opts="-j1"
- else
- unset extra_opts
- fi
- einfo "Building: ${BUILDDIR}"
- emake CC="$(tc-getCC)" CXX="$(tc-getCXX)" ${extra_opts}
- einfo "Fake install: ${BUILDDIR}"
- # pretend that you installed it somewhere
- emake DESTDIR="${FAKEROOT_DIR}" ${extra_opts} install
+S="${WORKDIR}/${MY_P}"
+BUILD_S="${WORKDIR}/${P}_build"
- cd ..
-}
+PROCESSES="buildCore:avidemux_core${POSTFIX}
+ buildCli:avidemux/cli${POSTFIX}
+ buildPluginsCommon:avidemux_plugins${POSTFIX}
+ buildPluginsCLI:avidemux_plugins${POSTFIX}"
+
+use qt4 && PROCESSES+=" buildQt4:avidemux/qt4${POSTFIX}
+ buildPluginsQt4:avidemux_plugins${POSTFIX}"
+
+use gtk && PROCESSES+=" buildGtk:avidemux/gtk${POSTFIX}
+ buildPluginsGtk:avidemux_plugins${POSTFIX}"
src_prepare() {
base_src_prepare
@@ -105,43 +87,33 @@ src_prepare() {
done
sed -i -e "s!FILE(GLOB po_files .*)!SET(po_files ${po_files})!" \
- "${S}/cmake/Po.cmake" || die "sed failed"
+ "${S}/cmake/Po.cmake" || die "po_files sed failed"
+
sed -i -e "s!FILE(GLOB.*qt.*)!SET(ts_files ${qt_ts_files})!" \
-e "s!FILE(GLOB.*avidemux.*)!SET(ts_files ${avidemux_ts_files})!" \
- "${S}/cmake/Ts.cmake" || die "sed failed"
+ "${S}/cmake/Ts.cmake" || die "ts_files sed failed"
# Fix icon name -> avidemux-2.6.png
- sed -i -e "/^Icon/ s:${PN}:${PN}-2.6:" ${PN}2.desktop || die
- # the desktop file is broken. It uses avidemux2 instead of avidemux3
- # so it will actually launch avidemux-2.5 if it is installed
- sed -i -e "/^Exec/ s:${PN}2:${PN}3:" ${PN}2.desktop || die
- # Now rename to not collide with 2.5
- mv ${PN}2.desktop ${PN}-2.6.desktop
- # fix major issues in desktop files wrt bugs #291453, #316599, #430500
- # duplicate desktop file
- cp ${PN}-2.6.desktop ${PN}-2.6-gtk.desktop || die
- # the desktop file is broken. It uses avidemux2 instead of avidemux3
- # so it will actually launch avidemux-2.5 if it is installed
- sed -i -re '/^Exec/ s:(avidemux3_)gtk:\1qt4:' ${PN}-2.6.desktop || die
-}
+ sed -i -e "/^Icon/ s:${PN}:${PN}-2.6:" ${PN}2.desktop || die "Icon name fix failed."
-src_configure() {
- true;
-}
+ # The desktop file is broken. It uses avidemux2 instead of avidemux3
+ # so it will actually launch avidemux-2.5 if it is installed.
+ sed -i -e "/^Exec/ s:${PN}2:${PN}3:" ${PN}2.desktop || die "Desktop file fix failed."
-src_compile() {
- # add lax vector typing for PowerPC
- if use ppc || use ppc64; then
- append-cflags -flax-vector-conversions
- fi
- # bug 432322
- use x86 && replace-flags -O0 -O1
+ # Now rename the desktop file to not collide with 2.5.
+ mv ${PN}2.desktop ${PN}-2.6.desktop || die "Collision rename failed."
+
+ # Fix major issues in desktop files wrt bugs #291453, #316599, #430500
+ # duplicate desktop file.
+ cp ${PN}-2.6.desktop ${PN}-2.6-gtk.desktop || die "Desktop file copy failed."
- local x mycmakeargs
- # default args
- use debug \
- && POSTFIX="_debug" \
- && mycmakeargs+="-DVERBOSE=1 -DCMAKE_BUILD_TYPE=Debug"
+ # The desktop file is broken. It uses avidemux2 instead of avidemux3
+ # so it will actually launch avidemux-2.5 if it is installed.
+ sed -i -re '/^Exec/ s:(avidemux3_)gtk:\1qt4:' ${PN}-2.6.desktop || die "Desktop file fix failed."
+}
+
+src_configure() {
+ local x mycmakeargs plugin_ui
mycmakeargs="
$(for x in ${IUSE}; do cmake-utils_use $x; done)
@@ -152,41 +124,79 @@ src_compile() {
$(cmake-utils_use amr OPENCORE_AMRWB)
$(cmake-utils_use amr OPENCORE_AMRNB)
"
+ use debug && POSTFIX="_debug" && mycmakeargs+="-DVERBOSE=1 -DCMAKE_BUILD_TYPE=Debug"
+
+ for PROCESS in ${PROCESSES} ; do
+ SOURCE="${PROCESS%%:*}"
+ DEST="${PROCESS#*:}"
+
+ cd "${S}" || die "Can't enter source folder."
+ mkdir "${SOURCE}" || die "Can't create build folder."
+ cd "${SOURCE}" || die "Can't enter build folder."
+
+ if [[ "${SOURCE}" == "buildPluginsCommon" ]] ; then
+ plugin_ui="-DPLUGIN_UI=COMMON"
+ elif [[ "${SOURCE}" == "buildPluginsCLI" ]] ; then
+ plugin_ui="-DPLUGIN_UI=CLI"
+ elif [[ "${SOURCE}" == "buildPluginsQt4" ]] ; then
+ plugin_ui="-DPLUGIN_UI=QT4"
+ elif [[ "${SOURCE}" == "buildPluginsGtk" ]]; then
+ plugin_ui="-DPLUGIN_UI=GTK"
+ fi
- # Lets try to do all the s**t that bootStrap.bash is
- # trying to do
- use qt4 && with_qt4=1
- use gtk && with_gtk=1
-
- avidemux_build_process buildCore avidemux_core${POSTFIX} "${mycmakeargs}"
- avidemux_build_process buildCli avidemux/cli${POSTFIX} "${mycmakeargs}"
- mycmakeargs+="-DPLUGIN_UI=COMMON "
- avidemux_build_process buildPluginsCommon avidemux_plugins${POSTFIX} "${mycmakeargs}"
- mycmakeargs+="-DPLUGIN_UI=CLI "
- avidemux_build_process buildPluginsCLI avidemux_plugins${POSTFIX} "${mycmakeargs}"
-
- if use qt4; then
- avidemux_build_process buildQt4 avidemux/qt4${POSTFIX} "${mycmakeargs}"
- mycmakeargs+="-DPLUGIN_UI=QT4 "
- avidemux_build_process buildPluginsQt4 avidemux_plugins${POSTFIX} "${mycmakeargs}"
- fi
- if use gtk; then
- avidemux_build_process buildGtk avidemux/gtk${POSTFIX} "${mycmakeargs}"
- mycmakeargs+="-DPLUGIN_UI=GTK "
- avidemux_build_process buildPluginsGtk avidemux_plugins${POSTFIX} "${mycmakeargs}"
+ cmake -DAVIDEMUX_SOURCE_DIR="${S}" \
+ -DCMAKE_INSTALL_PREFIX="/usr" \
+ ${mycmakeargs} ${plugin_ui} -G "Unix Makefiles" ../"${DEST}/"
+ done
+}
+
+src_compile() {
+ # Add lax vector typing for PowerPC.
+ if use ppc || use ppc64 ; then
+ append-cflags -flax-vector-conversions
fi
+
+ # See bug 432322.
+ use x86 && replace-flags -O0 -O1
+
+ for PROCESS in ${PROCESSES} ; do
+ SOURCE="${PROCESS%%:*}"
+
+ cd "${S}/${SOURCE}" || die "Can't enter build folder."
+
+ if [[ "${SOURCE}" == "buildCore" ]] ; then
+ # TODO: Report this upstream, seems to be within ffmpeg code.
+ emake -j1 CC="$(tc-getCC)" CXX="$(tc-getCXX)"
+ else
+ emake CC="$(tc-getCC)" CXX="$(tc-getCXX)"
+ fi
+ done
}
src_install() {
- # everything is installed(?) in ${S}/gentoo-install.
- # Move it to ${D}.
- insinto /
- doins -r "${S}"/gentoo-install/*
- # Mark executables with +x
- find "${ED}"/usr/bin -exec chmod a+x {} \;
+ for PROCESS in ${PROCESSES} ; do
+ SOURCE="${PROCESS%%:*}"
+
+ cd "${S}/${SOURCE}" || die "Can't enter build folder."
+
+ if [[ "${SOURCE}" == "buildCore" ]] ; then
+ # TODO: Report this upstream, seems to be within ffmpeg code.
+ emake DESTDIR="${ED}" -j1 install
+ else
+ emake DESTDIR="${ED}" install
+ fi
+ done
+
+ cd "${S}" || die "Can't enter source folder."
+
+ fperms +x /usr/bin/avidemux3_cli
+ fperms +x /usr/bin/avidemux3_jobs
+ use gtk && fperms +x /usr/bin/avidemux3_gtk
+ use qt4 && fperms +x /usr/bin/avidemux3_qt4
newicon ${PN}_icon.png ${PN}-2.6.png
use gtk && domenu ${PN}-2.6-gtk.desktop
use qt4 && domenu ${PN}-2.6.desktop
+
dodoc AUTHORS README
}