summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteve Dibb <beandog@gentoo.org>2007-07-26 16:05:11 +0000
committerSteve Dibb <beandog@gentoo.org>2007-07-26 16:05:11 +0000
commit01a6c06151fd6c6e57e7c98e0cf11b6c82c79f02 (patch)
tree6176f4f1ee9115572f676ea1c7a264a4bc824c38 /media-video/transcode
parentInitial import, a QT4 gui for recordmydesktop (diff)
downloadgentoo-2-01a6c06151fd6c6e57e7c98e0cf11b6c82c79f02.tar.gz
gentoo-2-01a6c06151fd6c6e57e7c98e0cf11b6c82c79f02.tar.bz2
gentoo-2-01a6c06151fd6c6e57e7c98e0cf11b6c82c79f02.zip
Fix tomsmocomp filter building against gcc4, bug 181239
(Portage version: 2.1.3_rc9)
Diffstat (limited to 'media-video/transcode')
-rw-r--r--media-video/transcode/ChangeLog8
-rw-r--r--media-video/transcode/files/digest-transcode-1.0.3-r16
-rw-r--r--media-video/transcode/files/transcode-1.0.3-tomsmocomp-gcc4.patch48
-rw-r--r--media-video/transcode/transcode-1.0.3-r1.ebuild126
4 files changed, 187 insertions, 1 deletions
diff --git a/media-video/transcode/ChangeLog b/media-video/transcode/ChangeLog
index 4a2ce8ab2b3c..9c8ca1bfc20b 100644
--- a/media-video/transcode/ChangeLog
+++ b/media-video/transcode/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for media-video/transcode
# Copyright 2002-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-video/transcode/ChangeLog,v 1.179 2007/07/03 21:57:24 aballier Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-video/transcode/ChangeLog,v 1.180 2007/07/26 16:05:11 beandog Exp $
+
+*transcode-1.0.3-r1 (26 Jul 2007)
+
+ 26 Jul 2007; Steve Dibb <beandog@gentoo.org>
+ +files/transcode-1.0.3-tomsmocomp-gcc4.patch, +transcode-1.0.3-r1.ebuild:
+ Fix tomsmocomp filter building against gcc4, bug 181239
03 Jul 2007; Alexis Ballier <aballier@gentoo.org>
+files/transcode-1.0.3-ffmpeg_codecs_are_not_in_public_api.patch,
diff --git a/media-video/transcode/files/digest-transcode-1.0.3-r1 b/media-video/transcode/files/digest-transcode-1.0.3-r1
new file mode 100644
index 000000000000..1c396b21f49c
--- /dev/null
+++ b/media-video/transcode/files/digest-transcode-1.0.3-r1
@@ -0,0 +1,6 @@
+MD5 4f6eb832123ea28c54f0d4952733bcb6 transcode-1.0.3.tar.bz2 1987499
+RMD160 f7c2db91be55c14a8e59eee4467a7f6a1bd73c83 transcode-1.0.3.tar.bz2 1987499
+SHA256 9a98e307f78fde36bb55b891dcbf8d2be3d2def9ae016255959e0664be9785f9 transcode-1.0.3.tar.bz2 1987499
+MD5 ece32a8f6bce5bd9d06841bec8cc263e transcode-types.patch.bz2 5021
+RMD160 956ea116495a57e304ab71a20ccd45ffd7416544 transcode-types.patch.bz2 5021
+SHA256 02bf6ac9a2e039336e103d43acbe7c86975bc3b587dc9dfa23992bd949fc2170 transcode-types.patch.bz2 5021
diff --git a/media-video/transcode/files/transcode-1.0.3-tomsmocomp-gcc4.patch b/media-video/transcode/files/transcode-1.0.3-tomsmocomp-gcc4.patch
new file mode 100644
index 000000000000..52456684cf8b
--- /dev/null
+++ b/media-video/transcode/files/transcode-1.0.3-tomsmocomp-gcc4.patch
@@ -0,0 +1,48 @@
+diff --exclude=Makefile.in -ru transcode-1.0.3.original/filter/Makefile.am transcode-1.0.3/filter/Makefile.am
+--- transcode-1.0.3.original/filter/Makefile.am 2007-06-07 20:40:53.000000000 +0200
++++ transcode-1.0.3/filter/Makefile.am 2007-06-07 20:43:32.000000000 +0200
+@@ -40,20 +40,14 @@
+ if HAVE_GCC2
+ F_TOMSMOCOMP =
+ else
+-if HAVE_GCC4
+-F_TOMSMOCOMP =
+-else
+ if ARCH_X86
+ if HAVE_MMX
+ if HAVE_SSE
+-if HAVE_3DNOW
+ F_TOMSMOCOMP = tomsmocomp
+ endif
+ endif
+ endif
+ endif
+-endif
+-endif
+
+ AM_CFLAGS = $(ALTIVEC)
+
+diff --exclude=Makefile.in -ru transcode-1.0.3.original/filter/tomsmocomp/Makefile.am transcode-1.0.3/filter/tomsmocomp/Makefile.am
+--- transcode-1.0.3.original/filter/tomsmocomp/Makefile.am 2007-06-07 20:40:53.000000000 +0200
++++ transcode-1.0.3/filter/tomsmocomp/Makefile.am 2007-06-07 21:33:11.000000000 +0200
+@@ -8,6 +8,20 @@
+
+ AM_CFLAGS = -fno-omit-frame-pointer
+
++#####################################################################
++# gcc-4.x only allows mmx inline assembly keywords when
++# -mmmx is specified.
++# (http://osdir.com/ml/video.transcode.devel/2005-07/msg00004.html)
++#
++# A dirty workaround would be to compile the problematic file
++# (tomsmocompfilter_mmx.c) as a pseudo-library so that we're able to
++# specify CFLAGS for it although it's okay in this case to add
++# -mmmx to the CFLAGS for the whole library because it won't be built
++# without an MMX capable CPU anyway, as specified in ../Makefile.am.
++#
++filter_tomsmocomp_la_CFLAGS = -mmmx
++#####################################################################
++
+ pkgdir = $(MOD_PATH)
+
+ pkg_LTLIBRARIES = filter_tomsmocomp.la
diff --git a/media-video/transcode/transcode-1.0.3-r1.ebuild b/media-video/transcode/transcode-1.0.3-r1.ebuild
new file mode 100644
index 000000000000..24198ba4d098
--- /dev/null
+++ b/media-video/transcode/transcode-1.0.3-r1.ebuild
@@ -0,0 +1,126 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-video/transcode/transcode-1.0.3-r1.ebuild,v 1.1 2007/07/26 16:05:11 beandog Exp $
+
+WANT_AUTOMAKE=latest
+WANT_AUTOCONF=latest
+
+inherit libtool flag-o-matic eutils multilib autotools
+
+DESCRIPTION="video stream processing tool"
+HOMEPAGE="http://www.transcoding.org/cgi-bin/transcode"
+SRC_URI="http://fromani.exit1.org/${P}.tar.bz2
+ mirror://gentoo/transcode-types.patch.bz2"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="X 3dnow a52 altivec dv dvdread extrafilters mp3 fame truetype gtk iconv imagemagick jpeg lzo mjpeg mpeg mmx network ogg vorbis quicktime sdl sse sse2 theora v4l2 xvid xml"
+
+RDEPEND="a52? ( >=media-libs/a52dec-0.7.4 )
+ dv? ( >=media-libs/libdv-0.99 )
+ dvdread? ( >=media-libs/libdvdread-0.9.0 )
+ xvid? ( >=media-libs/xvid-1.0.2 )
+ mjpeg? ( >=media-video/mjpegtools-1.6.2-r3 )
+ lzo? ( =dev-libs/lzo-1* )
+ fame? ( >=media-libs/libfame-0.9.1 )
+ imagemagick? ( >=media-gfx/imagemagick-5.5.6.0 )
+ mpeg? ( media-libs/libmpeg3 )
+ mp3? ( >=media-sound/lame-3.93 )
+ sdl? ( media-libs/libsdl )
+ quicktime? ( >=media-libs/libquicktime-0.9.8 )
+ vorbis? ( media-libs/libvorbis )
+ ogg? ( media-libs/libogg )
+ theora? ( media-libs/libtheora )
+ jpeg? ( media-libs/jpeg )
+ gtk? ( =x11-libs/gtk+-1.2* )
+ truetype? ( >=media-libs/freetype-2 )
+ >=media-video/ffmpeg-0.4.9_p20050226-r3
+ || ( sys-libs/glibc dev-libs/libiconv )
+ >=media-libs/libmpeg2-0.4.0b
+ xml? ( dev-libs/libxml2 )
+ X? ( x11-libs/libXaw
+ x11-libs/libXv )"
+
+DEPEND="${RDEPEND}
+ v4l2? ( >=sys-kernel/linux-headers-2.6.11 )"
+# Make sure the assembler USE flags are unmasked on amd64
+# Remove this once default-linux/amd64/2006.1 is deprecated
+DEPEND="${DEPEND} amd64? ( >=sys-apps/portage-2.1.2 )"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+
+ epatch "${DISTDIR}/${PN}-types.patch.bz2"
+ epatch "${FILESDIR}/${P}-libmpeg3-1.7.patch"
+ epatch "${FILESDIR}/${P}-ffmpeg_codecs_are_not_in_public_api.patch"
+ epatch "${FILESDIR}/${P}-tomsmocomp-gcc4.patch"
+
+ dosed -i -e "s:\$(datadir)/doc/transcode:\$(datadir)/doc/${PF}:" \
+ "${S}"/Makefile.am "${S}"/docs/Makefile.am "${S}"/docs/html/Makefile.am \
+ "${S}"/docs/release-notes/Makefile.am
+
+ eautoreconf
+}
+
+src_compile() {
+ filter-flags -maltivec -mabi=altivec -momit-leaf-frame-pointer
+ #145849
+ use amd64 && filter-flags -fweb
+
+ if use ppc || use ppc64 ; then
+ append-flags -U__ALTIVEC__
+ fi
+
+ append-flags -DDCT_YUV_PRECISION=1
+
+ use xvid && myconf="${myconf} --with-default-xvid=xvid4"
+ # Follow upstreams suggestion about a52, libac3 is deprecated
+ use a52 && myconf="${myconf} --enable-a52 --enable-a52-default-decoder"
+ myconf="${myconf} \
+ $(use_enable mmx) \
+ $(use_enable sse) \
+ $(use_enable sse2) \
+ $(use_enable 3dnow) \
+ $(use_enable altivec) \
+ $(use_enable network netstream) \
+ $(use_enable truetype freetype2) \
+ $(use_enable v4l2 v4l) \
+ $(use_enable mp3 lame) \
+ $(use_enable ogg) \
+ $(use_enable vorbis) \
+ $(use_enable theora) \
+ $(use_enable dvdread libdvdread) \
+ $(use_enable dv libdv) \
+ $(use_enable quicktime libquicktime) \
+ $(use_enable lzo) \
+ $(use_enable iconv) \
+ $(use_enable mpeg libmpeg3) \
+ $(use_enable xml libxml2) \
+ $(use_enable mjpeg mjpegtools) \
+ $(use_enable sdl) \
+ $(use_enable gtk) \
+ $(use_enable fame libfame) \
+ $(use_enable imagemagick) \
+ $(use_enable jpeg libjpeg) \
+ $(use_with X x) \
+ --with-mod-path=/usr/$(get_libdir)/transcode \
+ --with-libpostproc-builddir="/usr/$(get_libdir)" \
+ --disable-avifile \
+ --disable-xio"
+ econf ${myconf} || die
+
+ emake all || die
+}
+
+src_install () {
+ make DESTDIR="${D}" install || die
+
+ #do not install the filters that make dvdrip hang unless we ask for them
+ if ! use extrafilters ; then
+ rm "${D}"/usr/$(get_libdir)/transcode/filter_logo.*
+ rm "${D}"/usr/$(get_libdir)/transcode/filter_compare.*
+ fi
+
+ dodoc AUTHORS ChangeLog README TODO
+}