| # Copyright 1999-2015 Gentoo Foundation |
| # Distributed under the terms of the GNU General Public License v2 |
| # $Id$ |
| |
| EAPI="5" |
| |
| 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 |
| |
| SLOT="2.6" |
| MY_PN="${PN/-core/}" |
| MY_P="${MY_PN}_${PV}" |
| |
| DESCRIPTION="Core libraries for a video editor designed for simple cutting, filtering and encoding tasks" |
| HOMEPAGE="http://fixounet.free.fr/avidemux" |
| SRC_URI="mirror://sourceforge/${MY_PN}/${PV}/${MY_P}.tar.gz" |
| |
| # 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 jack lame libsamplerate cpu_flags_x86_mmx oss nls sdl -system-ffmpeg vorbis truetype xvid x264 xv" |
| |
| RDEPEND=" |
| !<media-video/avidemux-2.6.2-r1:${SLOT} |
| >=dev-lang/spidermonkey-1.5-r2:0 |
| dev-libs/libxml2 |
| media-libs/libpng |
| virtual/libiconv |
| aften? ( media-libs/aften ) |
| alsa? ( >=media-libs/alsa-lib-1.0.3b-r2 ) |
| amr? ( media-libs/opencore-amr ) |
| dts? ( media-libs/libdca ) |
| fontconfig? ( media-libs/fontconfig ) |
| jack? ( |
| media-sound/jack-audio-connection-kit |
| libsamplerate? ( media-libs/libsamplerate ) |
| ) |
| lame? ( media-sound/lame ) |
| sdl? ( media-libs/libsdl ) |
| system-ffmpeg? ( >=media-video/ffmpeg-1.0:0[aac,cpudetection,mp3,theora] ) |
| truetype? ( >=media-libs/freetype-2.1.5 ) |
| x264? ( media-libs/x264:= ) |
| xv? ( x11-libs/libXv ) |
| xvid? ( media-libs/xvid ) |
| vorbis? ( media-libs/libvorbis ) |
| " |
| DEPEND=" |
| $RDEPEND |
| oss? ( virtual/os-headers ) |
| nls? ( sys-devel/gettext ) |
| virtual/pkgconfig |
| " |
| RDEPEND=" |
| nls? ( virtual/libintl:0 ) |
| $RDEPEND |
| " |
| S="${WORKDIR}/${MY_P}" |
| |
| src_prepare() { |
| default |
| |
| # Preparations to support the system ffmpeg. |
| if use system-ffmpeg ; then |
| rm -rf cmake/admFFmpeg* cmake/ffmpeg* avidemux_core/ffmpeg_package buildCore/ffmpeg || die "Failed to remove ffmpeg." |
| |
| sed -i -e 's/include(admFFmpegUtil)//g' avidemux/commonCmakeApplication.cmake || die "Failed to remove ffmpeg." |
| sed -i -e '/registerFFmpeg/d' avidemux/commonCmakeApplication.cmake || die "Failed to remove ffmpeg." |
| sed -i -e 's/include(admFFmpegBuild)//g' avidemux_core/CMakeLists.txt || die "Failed to remove ffmpeg." |
| fi |
| |
| # Avoid existing avidemux installations from making the build process fail, bug #461496. |
| sed -i -e "s:getFfmpegLibNames(\"\${sourceDir}\"):getFfmpegLibNames(\"${S}/buildCore/ffmpeg/source/\"):g" cmake/admFFmpegUtil.cmake || die "Failed to avoid existing avidemux installation from making the build fail." |
| } |
| |
| src_configure() { |
| local x mycmakeargs |
| |
| mycmakeargs=" |
| $(for x in ${IUSE}; do cmake-utils_use ${x/#-/}; done) |
| $(cmake-utils_use amr OPENCORE_AMRWB) |
| $(cmake-utils_use amr OPENCORE_AMRNB) |
| $(cmake-utils_use dts LIBDCA) |
| $(cmake-utils_use nls GETTEXT) |
| $(cmake-utils_use truetype FREETYPE2) |
| $(cmake-utils_use xv XVIDEO) |
| " |
| use debug && POSTFIX="_debug" && mycmakeargs+="-DVERBOSE=1 -DCMAKE_BUILD_TYPE=Debug" |
| |
| mkdir "${S}"/buildCore || die "Can't creante build folder." |
| cd "${S}"/buildCore || die "Can't enter build folder." |
| |
| cmake -DAVIDEMUX_SOURCE_DIR="${S}" \ |
| -DCMAKE_INSTALL_PREFIX="/usr" \ |
| ${mycmakeargs} -G "Unix Makefiles" ../"avidemux_core${POSTFIX}/" || die "cmake failed." |
| } |
| |
| 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 |
| |
| # TODO: Report -j1 problem upstream, seems to be within ffmpeg code. |
| cd "${S}"/buildCore || die "Can't enter build folder." |
| emake -j1 CC="$(tc-getCC)" CXX="$(tc-getCXX)" |
| } |
| |
| src_install() { |
| # TODO: Report -j1 problem upstream, seems to be within ffmpeg code. |
| cd "${S}"/buildCore || die "Can't enter build folder." |
| emake DESTDIR="${ED}" -j1 install |
| |
| dodoc "${S}"/{AUTHORS,README} |
| } |