summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Hadaway <raker@gentoo.org>2003-07-28 02:22:24 +0000
committerNick Hadaway <raker@gentoo.org>2003-07-28 02:22:24 +0000
commitca890971ec303cbc8a8a2987872655f116dbf857 (patch)
tree8146901e2ecd74da5957f21583a3b314a935d270 /media-sound/xmms
parentadd a diskwriter plugin patch (diff)
downloadgentoo-2-ca890971ec303cbc8a8a2987872655f116dbf857.tar.gz
gentoo-2-ca890971ec303cbc8a8a2987872655f116dbf857.tar.bz2
gentoo-2-ca890971ec303cbc8a8a2987872655f116dbf857.zip
add a diskwriter plugin patch
Diffstat (limited to 'media-sound/xmms')
-rw-r--r--media-sound/xmms/ChangeLog9
-rw-r--r--media-sound/xmms/Manifest4
-rw-r--r--media-sound/xmms/files/digest-xmms-1.2.7-r242
-rw-r--r--media-sound/xmms/files/xmms-diskwriter-audio.patch35
-rw-r--r--media-sound/xmms/xmms-1.2.7-r24.ebuild187
5 files changed, 234 insertions, 3 deletions
diff --git a/media-sound/xmms/ChangeLog b/media-sound/xmms/ChangeLog
index ebd9ea309474..c7f877288830 100644
--- a/media-sound/xmms/ChangeLog
+++ b/media-sound/xmms/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for media-sound/xmms
# Copyright 2002-2003 Gentoo Technologies, Inc.; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-sound/xmms/ChangeLog,v 1.58 2003/07/22 23:00:12 gmsoft Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-sound/xmms/ChangeLog,v 1.59 2003/07/28 02:22:19 raker Exp $
+
+*xmms-1.2.7-r24 (28 Jul 2003)
+
+ 28 Jul 2003; Nick Hadaway <raker@gentoo.org> xmms-1.2.7-r24.ebuild,
+ files/xmms-diskwriter-audio.patch:
+ Adds a patch for running audio through output effect plugins
+ before recording to disk with the diskwriter plugin. See bug #25380.
18 Jul 2003; Seemant Kulleen <seemant@gentoo.org> xmms-1.2.7-r23.ebuild:
gettext patch only applied if gettext-0.12 or greater is installed
diff --git a/media-sound/xmms/Manifest b/media-sound/xmms/Manifest
index 5fbe972c88c8..7b913b2f70c8 100644
--- a/media-sound/xmms/Manifest
+++ b/media-sound/xmms/Manifest
@@ -2,8 +2,8 @@ MD5 5618f4d14fd98b813b7be2b4df0087e7 xmms-1.2.7-r21.ebuild 4830
MD5 38f3c86b97d6c40051d4964d1994bcff xmms-1.2.7-r23.ebuild 5233
MD5 9babb98a35c1c40729cdede9bd3588a3 xmms-1.2.7-r20.ebuild 4960
MD5 90740c69a0e1cdd3a65b037af5fe8a5a xmms-1.2.7-r22.ebuild 4989
-MD5 fe0fc77c8f5fc4abad82b6aeff3af96e xmms-1.2.7-r24.ebuild 5349
-MD5 23e66c69baea4f23fe9a0474e12c5268 ChangeLog 10889
+MD5 bdd53d025963ea79c56c4edd097044a2 xmms-1.2.7-r24.ebuild 5472
+MD5 6829972053892f6e0a13f4b4c235c491 ChangeLog 11162
MD5 e7e0c91780b115aaad1a1ed534bf7ae8 files/xmms-ipv6-20020408-mmx.patch 9210
MD5 7ab233f0953be4760d3e5b784cc0bba4 files/xmms-fhs-skinsdir.patch 372
MD5 3268d7f38e954fd7ab541fa9e6f385ca files/digest-xmms-1.2.7-r20 130
diff --git a/media-sound/xmms/files/digest-xmms-1.2.7-r24 b/media-sound/xmms/files/digest-xmms-1.2.7-r24
new file mode 100644
index 000000000000..89cc7eba5fd4
--- /dev/null
+++ b/media-sound/xmms/files/digest-xmms-1.2.7-r24
@@ -0,0 +1,2 @@
+MD5 8aa14a305d1eeb1bb53dba2197ba695a xmms-1.2.7.tar.gz 2860908
+MD5 daea40648c3ae296597dcd3e78500279 xmms-1.2.7-mmx.patch.gz 14990
diff --git a/media-sound/xmms/files/xmms-diskwriter-audio.patch b/media-sound/xmms/files/xmms-diskwriter-audio.patch
new file mode 100644
index 000000000000..d752dde70d72
--- /dev/null
+++ b/media-sound/xmms/files/xmms-diskwriter-audio.patch
@@ -0,0 +1,35 @@
+diff -urN xmms-1.2.7/Output/disk_writer/disk_writer.c xmms-1.2.7-modified/Output/disk_writer/disk_writer.c
+--- xmms-1.2.7/Output/disk_writer/disk_writer.c 2002-01-08 08:09:07.000000000 -0600
++++ xmms-1.2.7-modified/Output/disk_writer/disk_writer.c 2003-07-27 20:36:59.000000000 -0500
+@@ -56,6 +56,8 @@
+ static struct wavhead header;
+ static guint64 written = 0;
+ static AFormat afmt;
++static gint arate, anch;
++static EffectPlugin *ep;
+ gint ctrlsocket_get_session_id(void); /* FIXME */
+
+ static void disk_init(void);
+@@ -121,6 +123,12 @@
+
+ written = 0;
+ afmt = fmt;
++ arate = rate;
++ anch = nch;
++ if (effects_enabled())
++ ep = get_current_effect_plugin();
++ else
++ ep = NULL;
+
+ if (xmms_check_realtime_priority())
+ {
+@@ -234,6 +242,9 @@
+
+ static void disk_write(void *ptr, gint length)
+ {
++ if (ep)
++ length = ep->mod_samples(&ptr, length, afmt, arate, anch);
++
+ #ifdef WORDS_BIGENDIAN
+ if (afmt == FMT_S8 || afmt == FMT_S16_BE || afmt == FMT_S16_NE || afmt == FMT_U16_LE || afmt == FMT_U16_BE || afmt == FMT_U16_NE)
+ #else
diff --git a/media-sound/xmms/xmms-1.2.7-r24.ebuild b/media-sound/xmms/xmms-1.2.7-r24.ebuild
new file mode 100644
index 000000000000..55c834cb946d
--- /dev/null
+++ b/media-sound/xmms/xmms-1.2.7-r24.ebuild
@@ -0,0 +1,187 @@
+# Copyright 1999-2003 Gentoo Technologies, Inc.
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-sound/xmms/xmms-1.2.7-r24.ebuild,v 1.1 2003/07/28 02:22:19 raker Exp $
+
+IUSE="xml nls esd gnome opengl mmx oggvorbis 3dnow mikmod directfb ipv6 cjk"
+
+inherit libtool flag-o-matic eutils
+filter-flags -fforce-addr -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
+
+DESCRIPTION="X MultiMedia System"
+SRC_URI="http://www.xmms.org/files/1.2.x/${P}.tar.gz
+ mmx? ( http://members.jcom.home.ne.jp/jacobi/linux/etc/${P}-mmx.patch.gz )"
+HOMEPAGE="http://www.xmms.org/"
+
+SLOT="0"
+LICENSE="GPL-2"
+KEYWORDS="~x86 ~ppc ~sparc ~alpha ~hppa"
+
+DEPEND="app-arch/unzip
+ =x11-libs/gtk+-1.2*
+ mikmod? ( >=media-libs/libmikmod-3.1.6 )
+ esd? ( >=media-sound/esound-0.2.22 )
+ xml? ( >=dev-libs/libxml-1.8.15 )
+ gnome? ( <gnome-base/gnome-panel-1.5.0 )
+ opengl? ( virtual/opengl )
+ oggvorbis? ( >=media-libs/libvorbis-1.0_beta4 )"
+RDEPEND="${DEPEND}
+ directfb? ( dev-libs/DirectFB )
+ nls? ( dev-util/intltool )"
+
+src_unpack() {
+ unpack ${P}.tar.gz
+ cd ${S}
+
+ # Patch to allow external programmes to have the "jump to" dialog box
+ epatch ${FILESDIR}/xmms-jump.patch
+
+ # Save playlist, etc on SIGTERM and SIGINT, bug #13604.
+ epatch ${FILESDIR}/xmms-sigterm.patch
+
+ # The following optimisations are ONLY for x86 platform
+ if [ `use x86` ] ; then
+ # For mmx/3dnow enabled CPUs, this patch adds mmx/3dnow optimisations
+ #
+ # ( use mmx || use 3dnow ) && \
+ # cat ${DISTDIR}/${P}-mmx.patch.gz | gunzip -c | patch -p1 || die
+ #
+ # For you guys who favour this kind of USE flag checking ... this
+ # is exactly why I do NOT like it, because the actual
+ # "cat ${DISTDIR}/${P}-mmx.patch.gz | gunzip -c | patch -p1 || die"
+ # was not in a subshell, it would ALWAYS fail to build if "mmx" or
+ # "3dnow" was not in USE, because of the || die at the end. So
+ # PLEASE, PLEASE test things with all possible USE flags if you use
+ # this style!!!! Then, if in a subshell, it do not detect if the
+ # command fails :/
+ #
+ # Azarah - 30 Jun 2002
+ #
+ if use mmx || use 3dnow
+ then
+ epatch ${DISTDIR}/${P}-mmx.patch.gz
+ use ipv6 && epatch ${FILESDIR}/xmms-ipv6-20020408-mmx.patch
+ else
+ use ipv6 && epatch ${FILESDIR}/xmms-ipv6-20020408-nommx.patch
+ fi
+ else
+ use ipv6 && epatch ${FILESDIR}/xmms-ipv6-20020408-nommx.patch
+ fi
+
+ # Patch for mpg123 to convert Japanese character code of MP3 tag info
+ # the Japanese patch and the Russian one overlap, so its one or the other
+ if use cjk; then
+ epatch ${FILESDIR}/${P}-mpg123j.patch
+ else
+ # add russian charset support
+ epatch ${FILESDIR}/xmms-russian-charset.patch
+ fi
+
+ if [ ! -f ${S}/config.rpath ] ; then
+ touch ${S}/config.rpath
+ chmod +x ${S}/config.rpath
+ fi
+
+ # Add /usr/local/share/xmms/Skins to the search path for skins
+ epatch ${FILESDIR}/${PN}-fhs-skinsdir.patch
+
+ # We run automake and autoconf here else we get a lot of warning/errors.
+ # I have tested this with gcc-2.95.3 and gcc-3.1.
+ elibtoolize
+
+ if use nls; then
+ if has_version '>=sys-devel/gettext-0.12'; then
+ epatch ${FILESDIR}/${PN}-gettext-fix.patch
+ fi
+ fi
+
+ # This patch passes audio output through the output plugin
+ # before recording via the diskwriter plugin
+ # http://forum.xmms.org/viewtopic.php?t=500&sid=c286e1c01fb924a2f81f519969f33764
+ epatch ${FILESDIR}/xmms-diskwriter-audio.patch
+
+ echo ">>> Reconfiguring..."
+ for x in ${S} ${S}/libxmms
+ do
+ cd ${x}
+ aclocal
+ export WANT_AUTOCONF_2_5=1
+ automake --gnu --add-missing --include-deps Makefile || die
+ autoconf || die
+ done
+}
+
+src_compile() {
+ local myconf=""
+
+ use 3dnow || use mmx \
+ && myconf="${myconf} --enable-simd" \
+ || myconf="${myconf} --disable-simd"
+
+ use xml \
+ || myconf="${myconf} --disable-cdindex"
+
+ econf \
+ --with-dev-dsp=/dev/sound/dsp \
+ --with-dev-mixer=/dev/sound/mixer \
+ `use_with gnome` \
+ `use_enable oggvorbis vorbis` \
+ `use_enable oggvorbis oggtest` \
+ `use_enable oggvorbis vorbistest` \
+ `use_with oggvorbis ogg` \
+ `use_enable esd` \
+ `use_enable esd esdtest` \
+ `use_enable mikmod` \
+ `use_enable mikmod mikmodtest` \
+ `use_with mikmod libmikmod` \
+ `use_enable opengl` \
+ `use_enable nls` \
+ `use_enable ipv6` \
+ ${myconf} || die
+
+ ### emake seems to break some compiles, please keep @ make
+ make || die
+}
+
+src_install() {
+ make prefix=${D}/usr \
+ datadir=${D}/usr/share \
+ incdir=${D}/usr/include \
+ infodir=${D}/usr/share/info \
+ localstatedir=${D}/var/lib \
+ mandir=${D}/usr/share/man \
+ sysconfdir=${D}/etc \
+ sysdir=${D}/usr/share/applets/Multimedia \
+ GNOME_SYSCONFDIR=${D}/etc install || die "FOO"
+
+ dodoc AUTHORS ChangeLog COPYING FAQ NEWS README TODO
+
+ keepdir /usr/share/xmms/Skins
+ insinto /usr/share/pixmaps/
+ donewins gnomexmms/gnomexmms.xpm xmms.xpm
+ doins xmms/xmms_logo.xpm
+ insinto /usr/share/pixmaps/mini
+ doins xmms/xmms_mini.xpm
+
+ insinto /etc/X11/wmconfig
+ donewins xmms/xmms.wmconfig xmms
+
+ if [ `use gnome` ] ; then
+ insinto /usr/share/gnome/apps/Multimedia
+ doins xmms/xmms.desktop
+ dosed "s:xmms_mini.xpm:mini/xmms_mini.xpm:" \
+ /usr/share/gnome/apps/Multimedia/xmms.desktop
+ else
+ rm ${D}/usr/share/man/man1/gnomexmms*
+ fi
+
+ # causes segfaults for ppc users #10309 and after talking
+ # to xmms dev's, they've punted this from the src tree anyways ...
+ rm -rf ${D}/usr/lib/xmms/Input/libidcin.so
+}
+
+pkg_postrm() {
+ if [ -x ${ROOT}/usr/bin/xmms ] && [ ! -d ${ROOT}/usr/share/xmms/Skins ]
+ then
+ mkdir -p ${ROOT}/usr/share/xmms/Skins
+ fi
+}