link to libstdc++ to get C++ plugins to work.
authorMartin Schlemmer <azarah@gentoo.org>
Thu, 17 Oct 2002 21:08:49 +0000 (21:08 +0000)
committerMartin Schlemmer <azarah@gentoo.org>
Thu, 17 Oct 2002 21:08:49 +0000 (21:08 +0000)
media-sound/xmms/ChangeLog
media-sound/xmms/files/digest-xmms-1.2.7-r14 [new file with mode: 0644]
media-sound/xmms/files/xmms-1.2.7-link-libstdc++.patch [new file with mode: 0644]
media-sound/xmms/xmms-1.2.7-r14.ebuild [new file with mode: 0644]

index ed48abd5a1274922af0fe5f273fea5cec0f3c0b3..3a91b0319cbfea30392dbdf3a8bcc0443e8bd0d7 100644 (file)
@@ -1,6 +1,13 @@
 # ChangeLog for media-sound/xmms
 # Copyright 2002 Gentoo Technologies, Inc.; Distributed under the GPL
-# $Header: /var/cvsroot/gentoo-x86/media-sound/xmms/ChangeLog,v 1.29 2002/10/12 11:30:28 seemant Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-sound/xmms/ChangeLog,v 1.30 2002/10/17 21:08:49 azarah Exp $
+
+*xmms-1.2.7-r14 (17 Oct 2002)
+
+  17 Oct 2002; Martin Schlemmer <azarah@gentoo.org> :
+
+  Add back the patch to link xmms against libstdc++, as some plugins
+  need it.
 
 *xmms-1.2.7-r13 (23 Aug 2002)
 
diff --git a/media-sound/xmms/files/digest-xmms-1.2.7-r14 b/media-sound/xmms/files/digest-xmms-1.2.7-r14
new file mode 100644 (file)
index 0000000..89cc7eb
--- /dev/null
@@ -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-1.2.7-link-libstdc++.patch b/media-sound/xmms/files/xmms-1.2.7-link-libstdc++.patch
new file mode 100644 (file)
index 0000000..7dac20e
--- /dev/null
@@ -0,0 +1,12 @@
+--- xmms-1.2.7.original/xmms/Makefile.am       Sun Mar 24 21:35:58 2002
++++ xmms-1.2.7/xmms/Makefile.am        Fri Mar 15 21:47:01 2002
+@@ -6,7 +6,8 @@
+ 
+ xmms_LDFLAGS = -export-dynamic
+ xmms_LDADD += @GTK_LIBS@ @PTHREAD_LIBS@ @SM_LIBS@ @VM_LIBS@ \
+-@POSIX_LIBS@ $(top_builddir)/libxmms/libxmms.la @INTLLIBS@
++@POSIX_LIBS@ $(top_builddir)/libxmms/libxmms.la @INTLLIBS@ \
++-lstdc++
+ 
+ INCLUDES = @GTK_CFLAGS@ @XMMS_DEFINES@ @ARCH_DEFINES@ -I$(top_builddir)/intl
+ 
diff --git a/media-sound/xmms/xmms-1.2.7-r14.ebuild b/media-sound/xmms/xmms-1.2.7-r14.ebuild
new file mode 100644 (file)
index 0000000..27d5cab
--- /dev/null
@@ -0,0 +1,169 @@
+# Copyright 1999-2002 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-r14.ebuild,v 1.1 2002/10/17 21:08:49 azarah Exp $
+
+IUSE="xml nls esd gnome opengl mmx oggvorbis 3dnow mikmod directfb"
+
+inherit libtool flag-o-matic
+
+filter-flags "-fforce-addr"
+
+S="${WORKDIR}/${P}"
+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 sparc64 alpha"
+
+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}
+
+       # For plugins such as avi4xmms, xmms needs to be linked to libstdcxx.
+       #
+       # NOTE: because we change a Makefile.am here, we run auto* at the
+       #       bottom.
+       #
+       # WARNING: Do not remove or feel my anger!!! :P
+       #
+       patch -p1 <${FILESDIR}/${P}-link-libstdc++.patch || die
+
+       # The following optimisations are ONLY for x86 platform
+       use x86 && ( \
+               # 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
+                       cat ${DISTDIR}/${P}-mmx.patch.gz | gunzip -c | patch -p1 || die
+               fi
+       )
+
+       [ ! -f ${S}/config.rpath ] && ( \
+               touch ${S}/config.rpath
+               chmod +x ${S}/config.rpath
+       )
+
+       # 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
+       echo ">>> Reconfiguring..."
+       for x in ${S} ${S}/libxmms
+       do
+               cd ${x}
+               aclocal
+               export WANT_AUTOCONF_2_5=1
+               automake --gnu --include-deps Makefile || die
+               autoconf || die
+       done
+}
+
+src_compile() {
+       local myconf=""
+
+       use gnome \
+               && myconf="${myconf} --with-gnome" \
+               || myconf="${myconf} --without-gnome"
+
+       use 3dnow || use mmx  \
+               && myconf="${myconf} --enable-simd" \
+               || myconf="${myconf} --disable-simd"
+
+       use esd \
+               && myconf="${myconf} --enable-esd --enable-esdtest" \
+               || myconf="${myconf} --disable-esd --disable-esdtest"
+
+       use mikmod \
+               && myconf="${myconf} --enable-mikmod --enable-mikmodtest \
+                       --with-libmikmod" \
+               || myconf="${myconf} --disable-mikmod --disable-mikmodtest \
+                       --without-libmikmod"
+
+       use opengl \
+               && myconf="${myconf} --enable-opengl" \
+               || myconf="${myconf} --disable-opengl"
+       
+       use oggvorbis \
+               && myconf="${myconf} --enable-vorbis --enable-oggtest \
+                       --enable-vorbistest --with-ogg" \
+               || myconf="${myconf} --disable-vorbis --disable-oggtest \
+                       --disable-vorbistest --without-ogg"
+
+       use xml \
+               || myconf="${myconf} --disable-cdindex"
+
+       use nls \
+               || myconf="${myconf} --disable-nls"
+
+       econf ${myconf} || die
+
+       emake || die
+}
+
+src_install() {
+
+       einstall \
+               sysdir=${D}/usr/share/applets/Multimedia \
+               GNOME_SYSCONFDIR=${D}/etc || die
+
+       dodoc AUTHORS ChangeLog COPYING FAQ NEWS README TODO 
+       
+       dodir /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
+
+       use gnome && ( \
+               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
+       ) || ( \
+               rm ${D}/usr/share/man/man1/gnomexmms*
+       )
+}
+
+pkg_postrm() {
+
+       if [ -x ${ROOT}/usr/bin/xmms ] && [ ! -d ${ROOT}/usr/share/xmms/Skins ]
+       then
+               mkdir -p ${ROOT}/usr/share/xmms/Skins
+       fi
+}
+