--- /dev/null
+diff -ru sndpeek-1.1~/src/sndpeek/makefile.alsa sndpeek-1.1/src/sndpeek/makefile.alsa
+--- sndpeek-1.1~/src/sndpeek/makefile.alsa 2006-07-29 12:50:41.000000000 +0200
++++ sndpeek-1.1/src/sndpeek/makefile.alsa 2006-07-29 12:57:13.000000000 +0200
+@@ -4,63 +4,63 @@
+ Centroid.o DownSampler.o Flux.o LPC.o MFCC.o RMS.o Rolloff.o System.o fvec.o \
+ AutoCorrelation.o Communicator.o Hamming.o MagFFT.o NormRMS.o MarSignal.o fmatrix.o
+
+-CC=gcc
+-CPP=g++
++CC?=gcc
++CXX?=g++
+ INCLUDES=-I../marsyas/
+ MARSYAS_DIR=../marsyas/
+-CFLAGS=-D__LINUX_ALSA__ -D__LITTLE_ENDIAN__ $(INCLUDES) -O3 -c
+-LIBS=-L/usr/X11R6/lib -lglut -lGL -lGLU -lasound -lXmu -lX11 -lXext -lXi -lm
++CFLAGS+=-D__LINUX_ALSA__ -D__LITTLE_ENDIAN__ $(INCLUDES) -c
++LIBS=-L/usr/X11R6/lib -lpthread -lstdc++ -lglut -lGL -lGLU -lasound -lXmu -lX11 -lXext -lXi -lm
+
+ sndpeek: $(OBJS)
+- $(CPP) -o $@ $(OBJS) $(LIBS)
++ $(CXX) -o $@ $(OBJS) $(LIBS)
+
+ Centroid.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ DownSampler.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ Flux.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ LPC.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ MFCC.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ RMS.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ Rolloff.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ System.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ fvec.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ AutoCorrelation.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ Communicator.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ Hamming.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ MagFFT.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ NormRMS.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ MarSignal.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ fmatrix.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ .o: $*.h
+
+@@ -68,7 +68,7 @@
+ $(CC) $(CFLAGS) $*.c
+
+ .cpp.o: $*.h $*.cpp
+- $(CC) $(CFLAGS) $*.cpp
++ $(CXX) $(CFLAGS) $*.cpp
+
+ clean:
+ rm -f sndpeek *~ *.o
+diff -ru sndpeek-1.1~/src/sndpeek/makefile.jack sndpeek-1.1/src/sndpeek/makefile.jack
+--- sndpeek-1.1~/src/sndpeek/makefile.jack 2006-07-29 12:50:41.000000000 +0200
++++ sndpeek-1.1/src/sndpeek/makefile.jack 2006-07-29 12:56:20.000000000 +0200
+@@ -4,63 +4,63 @@
+ Centroid.o DownSampler.o Flux.o LPC.o MFCC.o RMS.o Rolloff.o System.o fvec.o \
+ AutoCorrelation.o Communicator.o Hamming.o MagFFT.o NormRMS.o MarSignal.o fmatrix.o
+
+-CC=gcc
+-CPP=g++
++CC?=gcc
++CXX?=g++
+ INCLUDES=-I../marsyas/
+ MARSYAS_DIR=../marsyas/
+-CFLAGS=-D__LINUX_JACK__ -D__LITTLE_ENDIAN__ $(INCLUDES) -O3 -c
++CFLAGS+=-D__LINUX_JACK__ -D__LITTLE_ENDIAN__ $(INCLUDES) -c
+ LIBS=-L/usr/X11R6/lib -lpthread -lstdc++ -lglut -lGL -lGLU -lasound -ljack -lXmu -lX11 -lXext -lXi -lm
+
+ sndpeek: $(OBJS)
+- $(CPP) -o $@ $(OBJS) $(LIBS)
++ $(CXX) -o $@ $(OBJS) $(LIBS)
+
+ Centroid.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ DownSampler.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ Flux.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ LPC.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ MFCC.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ RMS.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ Rolloff.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ System.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ fvec.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ AutoCorrelation.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ Communicator.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ Hamming.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ MagFFT.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ NormRMS.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ MarSignal.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ fmatrix.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ .o: $*.h
+
+@@ -68,7 +68,7 @@
+ $(CC) $(CFLAGS) $*.c
+
+ .cpp.o: $*.h $*.cpp
+- $(CC) $(CFLAGS) $*.cpp
++ $(CXX) $(CFLAGS) $*.cpp
+
+ clean:
+ rm -f sndpeek *~ *.o
+diff -ru sndpeek-1.1~/src/sndpeek/makefile.oss sndpeek-1.1/src/sndpeek/makefile.oss
+--- sndpeek-1.1~/src/sndpeek/makefile.oss 2006-07-29 12:50:41.000000000 +0200
++++ sndpeek-1.1/src/sndpeek/makefile.oss 2006-07-29 12:58:02.000000000 +0200
+@@ -4,63 +4,63 @@
+ Centroid.o DownSampler.o Flux.o LPC.o MFCC.o RMS.o Rolloff.o System.o fvec.o \
+ AutoCorrelation.o Communicator.o Hamming.o MagFFT.o NormRMS.o MarSignal.o fmatrix.o
+
+-CC=gcc
+-CPP=g++
++CC?=gcc
++CXX?=g++
+ INCLUDES=-I../marsyas/
+ MARSYAS_DIR=../marsyas/
+-CFLAGS=-D__LINUX_OSS__ -D__LITTLE_ENDIAN__ $(INCLUDES) -O3 -c
++CFLAGS+=-D__LINUX_OSS__ -D__LITTLE_ENDIAN__ $(INCLUDES) -c
+ LIBS=-L/usr/X11R6/lib -lpthread -lstdc++ -lglut -lGL -lGLU -lXmu -lX11 -lXext -lXi -lm
+
+ sndpeek: $(OBJS)
+- $(CPP) -o $@ $(OBJS) $(LIBS)
++ $(CXX) -o $@ $(OBJS) $(LIBS)
+
+ Centroid.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ DownSampler.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ Flux.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ LPC.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ MFCC.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ RMS.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ Rolloff.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ System.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ fvec.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ AutoCorrelation.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ Communicator.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ Hamming.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ MagFFT.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ NormRMS.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ MarSignal.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ fmatrix.o:
+- $(CC) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
++ $(CXX) $(CFLAGS) $(MARSYAS_DIR)$*.cpp
+
+ .o: $*.h
+
+@@ -68,7 +68,7 @@
+ $(CC) $(CFLAGS) $*.c
+
+ .cpp.o: $*.h $*.cpp
+- $(CC) $(CFLAGS) $*.cpp
++ $(CXX) $(CFLAGS) $*.cpp
+
+ clean:
+ rm -f sndpeek *~ *.o
--- /dev/null
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="real-time audio visualization"
+HOMEPAGE="http://soundlab.cs.princeton.edu/software/sndpeek/"
+SRC_URI="http://soundlab.cs.princeton.edu/software/${PN}/files/${P}.tgz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~x86"
+IUSE="oss jack alsa"
+
+DEPEND="media-libs/glut
+ virtual/opengl
+ virtual/glu
+ || ( ( x11-libs/libXmu
+ x11-libs/libX11
+ x11-libs/libXext )
+ virtual/x11 )
+ jack? ( media-sound/jack-audio-connection-kit )
+ alsa? ( media-libs/alsa-lib )"
+RDEPEND="${DEPEND}"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}/${P}-makefile.patch"
+}
+
+pkg_setup() {
+ local cnt=0
+ use jack && cnt="$((${cnt} + 1))"
+ use alsa && cnt="$((${cnt} + 1))"
+ use oss && cnt="$((${cnt} + 1))"
+ if [[ "${cnt}" -eq 0 ]]; then
+ eerror "One of the following USE flags is needed: jack, alsa or oss"
+ die "Please set one audio engine type"
+ elif [[ "${cnt}" -ne 1 ]]; then
+ eerror "You have set ${P} to use multiple audio engine."
+ eerror "I don't know which to use!"
+ eerror "You can use /etc/portage/package.use to set per-package USE flags"
+ eerror "Set it so only one audio engine type jack, alsa or oss"
+ die "Please set only one audio engine type"
+ fi
+}
+
+src_compile() {
+ cd "${S}/src/sndpeek"
+
+ local backend
+ if use jack; then
+ backend="jack"
+ elif use alsa; then
+ backend="alsa"
+ elif use oss; then
+ backend="oss"
+ fi
+ einfo "Compiling against ${backend}"
+ emake -f "makefile.${backend}" CC=$(tc-getCC) CXX=$(tc-getCXX) || die "emake failed"
+}
+
+src_install() {
+ dobin src/sndpeek/sndpeek
+
+ dodoc AUTHORS README THANKS TODO VERSIONS
+}