From 4817c4335f9229f7334016f34e0dac966ed66419 Mon Sep 17 00:00:00 2001 From: Alexis Ballier Date: Sat, 22 Aug 2015 11:29:38 +0200 Subject: [PATCH] media-video/x264-encoder: Fix gpac / mp4 support. https://bugs.gentoo.org/show_bug.cgi?id=499116 Package-Manager: portage-2.2.20.1 --- media-video/x264-encoder/files/gpac.patch | 13 ++++ .../x264-encoder-0.0.20150820-r1.ebuild | 75 +++++++++++++++++++ .../x264-encoder/x264-encoder-9999.ebuild | 8 +- 3 files changed, 94 insertions(+), 2 deletions(-) create mode 100644 media-video/x264-encoder/files/gpac.patch create mode 100644 media-video/x264-encoder/x264-encoder-0.0.20150820-r1.ebuild diff --git a/media-video/x264-encoder/files/gpac.patch b/media-video/x264-encoder/files/gpac.patch new file mode 100644 index 000000000000..94da64cf9d40 --- /dev/null +++ b/media-video/x264-encoder/files/gpac.patch @@ -0,0 +1,13 @@ +Index: x264-snapshot-20150820-2245/configure +=================================================================== +--- x264-snapshot-20150820-2245.orig/configure ++++ x264-snapshot-20150820-2245/configure +@@ -1086,7 +1086,7 @@ fi + + if [ "$gpac" = "auto" -a "$lsmash" != "yes" ] ; then + gpac="no" +- GPAC_LIBS="-lgpac_static" ++ GPAC_LIBS="-lgpac" + cc_check "" -lz && GPAC_LIBS="$GPAC_LIBS -lz" + if [ "$SYS" = "WINDOWS" ] ; then + cc_check "" -lws2_32 && GPAC_LIBS="$GPAC_LIBS -lws2_32" diff --git a/media-video/x264-encoder/x264-encoder-0.0.20150820-r1.ebuild b/media-video/x264-encoder/x264-encoder-0.0.20150820-r1.ebuild new file mode 100644 index 000000000000..71259d770424 --- /dev/null +++ b/media-video/x264-encoder/x264-encoder-0.0.20150820-r1.ebuild @@ -0,0 +1,75 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit flag-o-matic multilib toolchain-funcs eutils + +DESCRIPTION="A free commandline encoder for X264/AVC streams" +HOMEPAGE="http://www.videolan.org/developers/x264.html" +if [[ ${PV} == 9999 ]]; then + inherit git-2 + EGIT_REPO_URI="git://git.videolan.org/x264.git" + SRC_URI="" +else + inherit versionator + MY_P="x264-snapshot-$(get_version_component_range 3)-2245" + SRC_URI="http://download.videolan.org/pub/videolan/x264/snapshots/${MY_P}.tar.bz2" + KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd" + S="${WORKDIR}/${MY_P}" +fi + +LICENSE="GPL-2" +SLOT="0" +IUSE="10bit avs custom-cflags ffmpeg ffmpegsource +interlaced mp4 +threads" + +REQUIRED_USE="ffmpegsource? ( ffmpeg )" + +RDEPEND="ffmpeg? ( virtual/ffmpeg ) + ~media-libs/x264-${PV}[10bit=,interlaced=,threads=] + ffmpegsource? ( media-libs/ffmpegsource ) + mp4? ( >=media-video/gpac-0.5.2 )" + +ASM_DEP=">=dev-lang/yasm-1.2.0" +DEPEND="${RDEPEND} + amd64? ( ${ASM_DEP} ) + x86? ( ${ASM_DEP} ) + x86-fbsd? ( ${ASM_DEP} ) + virtual/pkgconfig" + +src_prepare() { + epatch "${FILESDIR}/gpac.patch" +} + +src_configure() { + tc-export CC + + # let upstream pick the optimization level by default + use custom-cflags || filter-flags -O? + + ./configure \ + --prefix="${EPREFIX}"/usr \ + --libdir="${EPREFIX}"/usr/$(get_libdir) \ + --system-libx264 \ + --host="${CHOST}" \ + --disable-lsmash \ + $(usex 10bit "--bit-depth=10" "") \ + $(usex avs "" "--disable-avs") \ + $(usex ffmpeg "" "--disable-lavf --disable-swscale") \ + $(usex ffmpegsource "" "--disable-ffms") \ + $(usex interlaced "" "--disable-interlaced") \ + $(usex mp4 "" "--disable-gpac") \ + $(usex threads "" "--disable-thread") || die + + # this is a nasty workaround for bug #376925 for x264 that also applies + # here, needed because as upstream doesn't like us fiddling with their CFLAGS + if use custom-cflags; then + local cflags + cflags="$(grep "^CFLAGS=" config.mak | sed 's/CFLAGS=//')" + cflags="${cflags//$(get-flag O)/}" + cflags="${cflags//-O? /$(get-flag O) }" + cflags="${cflags//-g /}" + sed -i "s:^CFLAGS=.*:CFLAGS=${cflags//:/\\:}:" config.mak + fi +} diff --git a/media-video/x264-encoder/x264-encoder-9999.ebuild b/media-video/x264-encoder/x264-encoder-9999.ebuild index 64e7ddc531fc..71259d770424 100644 --- a/media-video/x264-encoder/x264-encoder-9999.ebuild +++ b/media-video/x264-encoder/x264-encoder-9999.ebuild @@ -4,7 +4,7 @@ EAPI=5 -inherit flag-o-matic multilib toolchain-funcs +inherit flag-o-matic multilib toolchain-funcs eutils DESCRIPTION="A free commandline encoder for X264/AVC streams" HOMEPAGE="http://www.videolan.org/developers/x264.html" @@ -29,7 +29,7 @@ REQUIRED_USE="ffmpegsource? ( ffmpeg )" RDEPEND="ffmpeg? ( virtual/ffmpeg ) ~media-libs/x264-${PV}[10bit=,interlaced=,threads=] ffmpegsource? ( media-libs/ffmpegsource ) - mp4? ( >=media-video/gpac-0.4.1_pre20060122 )" + mp4? ( >=media-video/gpac-0.5.2 )" ASM_DEP=">=dev-lang/yasm-1.2.0" DEPEND="${RDEPEND} @@ -38,6 +38,10 @@ DEPEND="${RDEPEND} x86-fbsd? ( ${ASM_DEP} ) virtual/pkgconfig" +src_prepare() { + epatch "${FILESDIR}/gpac.patch" +} + src_configure() { tc-export CC -- 2.26.2