aboutsummaryrefslogtreecommitdiffstats
path: root/audio
diff options
context:
space:
mode:
authormezz <mezz@FreeBSD.org>2009-08-03 03:36:34 +0800
committermezz <mezz@FreeBSD.org>2009-08-03 03:36:34 +0800
commitaf1fc7a24eda71b11fbfc0bc73c1d53d079e5b57 (patch)
treeb69e5428d2c59fc0cebf129e7ba703a374c1bcf7 /audio
parent3a0a9794815da3b9ae9bf959990263eabe231698 (diff)
downloadfreebsd-ports-gnome-af1fc7a24eda71b11fbfc0bc73c1d53d079e5b57.tar.gz
freebsd-ports-gnome-af1fc7a24eda71b11fbfc0bc73c1d53d079e5b57.tar.zst
freebsd-ports-gnome-af1fc7a24eda71b11fbfc0bc73c1d53d079e5b57.zip
-Repocopy devel/libtool15 -> libtool22 and libltdl15 -> libltdl22.
-Update libtool and libltdl to 2.2.6a. -Remove devel/libtool15 and devel/libltdl15. -Fix ports build with libtool22/libltdl22. -Bump ports that depend on libltdl22 due to shared library version change. -Explain what to do update in the UPDATING. It has been tested with GNOME2, XFCE4, KDE3, KDE4 and other many wm/desktop and applications in the runtime. With help: marcus and kwm Pointyhat-exp: a few times by pav Tested by: pgollucci, "Romain Tartière" <romain@blogreen.org>, and a few MarcusCom CVS users. Also, I might have missed a few. Repocopy by: marcus Approved by: portmgr
Diffstat (limited to 'audio')
-rw-r--r--audio/Maaate/Makefile2
-rw-r--r--audio/akode-plugins-ffmpeg/Makefile2
-rw-r--r--audio/akode-plugins-jack/Makefile2
-rw-r--r--audio/akode-plugins-mpc/Makefile2
-rw-r--r--audio/akode-plugins-mpeg/Makefile2
-rw-r--r--audio/akode-plugins-oss/Makefile2
-rw-r--r--audio/akode-plugins-pulseaudio/Makefile2
-rw-r--r--audio/akode-plugins-resampler/Makefile2
-rw-r--r--audio/akode-plugins-xiph/Makefile2
-rw-r--r--audio/akode/Makefile2
-rw-r--r--audio/amarok/Makefile3
-rw-r--r--audio/amarok/pkg-plist1
-rw-r--r--audio/arts/Makefile2
-rw-r--r--audio/aube/Makefile2
-rw-r--r--audio/bmp-mac/Makefile2
-rw-r--r--audio/bmp-modplug/Makefile2
-rw-r--r--audio/bmp-musepack/Makefile2
-rw-r--r--audio/bmp-wma/Makefile2
-rw-r--r--audio/ccaudio/Makefile4
-rw-r--r--audio/ccaudio2/Makefile2
-rw-r--r--audio/ccaudio2/pkg-plist4
-rw-r--r--audio/dvda-author/Makefile2
-rw-r--r--audio/esound/Makefile2
-rw-r--r--audio/faac/Makefile2
-rw-r--r--audio/faad/Makefile2
-rw-r--r--audio/festalon/Makefile2
-rw-r--r--audio/flac/Makefile2
-rw-r--r--audio/freealut/Makefile2
-rw-r--r--audio/glame/Makefile4
-rw-r--r--audio/gnomoradio/Makefile2
-rw-r--r--audio/gqmpeg/Makefile2
-rw-r--r--audio/grip/Makefile2
-rw-r--r--audio/gstreamer-plugins-moodbar/Makefile2
-rw-r--r--audio/id3lib/Makefile2
-rw-r--r--audio/juk/Makefile2
-rw-r--r--audio/k3bmonkeyaudioplugin/Makefile2
-rw-r--r--audio/kid3/Makefile2
-rw-r--r--audio/kirocker/Makefile2
-rw-r--r--audio/lame/Makefile2
-rw-r--r--audio/liba52/Makefile2
-rw-r--r--audio/libadplug/Makefile2
-rw-r--r--audio/libamrnb/Makefile2
-rw-r--r--audio/libamrwb/Makefile2
-rw-r--r--audio/libao/Makefile2
-rw-r--r--audio/libaudiofile/Makefile2
-rw-r--r--audio/libcanberra/Makefile4
-rw-r--r--audio/libcdaudio/Makefile2
-rw-r--r--audio/libdssialsacompat/Makefile2
-rw-r--r--audio/libmad/Makefile2
-rw-r--r--audio/libmikmod/Makefile2
-rw-r--r--audio/libmp3splt/Makefile2
-rw-r--r--audio/libmpd/Makefile2
-rw-r--r--audio/libnjb/Makefile2
-rw-r--r--audio/libnoise/Makefile15
-rw-r--r--audio/libnoise/files/patch-src_Makefile19
-rw-r--r--audio/libofa/Makefile2
-rw-r--r--audio/libogg/Makefile2
-rw-r--r--audio/liboggz/Makefile2
-rw-r--r--audio/libsamplerate/Makefile2
-rw-r--r--audio/libshout/Makefile2
-rw-r--r--audio/libsidplay/Makefile2
-rw-r--r--audio/libsidplay2/Makefile2
-rw-r--r--audio/libtremor/Makefile2
-rw-r--r--audio/libtunepimp-old/Makefile2
-rw-r--r--audio/libtunepimp/Makefile2
-rw-r--r--audio/libvorbis/Makefile2
-rw-r--r--audio/mac/Makefile2
-rw-r--r--audio/mp3splt/Makefile1
-rw-r--r--audio/mpeglib_artsplug/Makefile2
-rw-r--r--audio/mpg123/Makefile1
-rw-r--r--audio/mpiosh/Makefile16
-rw-r--r--audio/mpiosh/pkg-plist6
-rw-r--r--audio/ncmpcpp/Makefile2
-rw-r--r--audio/openal/Makefile2
-rw-r--r--audio/openspc/Makefile2
-rw-r--r--audio/pocketsphinx/Makefile2
-rw-r--r--audio/pulseaudio/Makefile17
-rw-r--r--audio/pulseaudio/distinfo6
-rw-r--r--audio/pulseaudio/files/patch-src_Makefile.in11
-rw-r--r--audio/pulseaudio/files/patch-src_daemon_default.pa.in13
-rw-r--r--audio/pulseaudio/files/patch-src_modules_oss_module-oss.c (renamed from audio/pulseaudio/files/patch-src_modules_module-oss.c)14
-rw-r--r--audio/pulseaudio/files/patch-src_modules_oss_oss-util.c (renamed from audio/pulseaudio/files/patch-src_modules_oss-util.c)16
-rw-r--r--audio/pulseaudio/files/patch-src_modules_rtp_rtsp_client.c12
-rw-r--r--audio/pulseaudio/files/patch-src_tests_rtstutter.c18
-rw-r--r--audio/pulseaudio/files/patch-ubuntu-bundle2347
-rw-r--r--audio/pulseaudio/pkg-plist129
-rw-r--r--audio/py-taglib/Makefile2
-rw-r--r--audio/resid/Makefile2
-rw-r--r--audio/rhythmbox/Makefile2
-rw-r--r--audio/rioutil/Makefile2
-rw-r--r--audio/sdl_mixer/Makefile2
-rw-r--r--audio/sdl_sound/Makefile2
-rw-r--r--audio/soundtouch/Makefile2
-rw-r--r--audio/sox/Makefile2
-rw-r--r--audio/speex/Makefile2
-rw-r--r--audio/sphinx/Makefile2
-rw-r--r--audio/sphinx3/Makefile2
-rw-r--r--audio/sphinxbase/Makefile7
-rw-r--r--audio/sphinxbase/files/patch-configure (renamed from audio/sphinxbase/files/patch-configure.in)17
-rw-r--r--audio/sweep/Makefile2
-rw-r--r--audio/swhplugins/Makefile2
-rw-r--r--audio/taglib/Makefile2
-rw-r--r--audio/thunar-media-tags-plugin/Makefile2
-rw-r--r--audio/tse3/Makefile2
-rw-r--r--audio/vagalume/Makefile2
-rw-r--r--audio/vsound/Makefile2
-rw-r--r--audio/wsoundserver/Makefile2
-rw-r--r--audio/xanalyser/Makefile2
-rw-r--r--audio/xmms-arts_output/Makefile2
-rw-r--r--audio/xmms-flac/Makefile2
-rw-r--r--audio/xmms-jack/Makefile2
-rw-r--r--audio/xmms-kde/Makefile2
-rw-r--r--audio/xmms-midi/Makefile2
-rw-r--r--audio/xmms-sndfile/Makefile2
-rw-r--r--audio/xmms-tfmx/Makefile2
-rw-r--r--audio/xsynth-dssi/Makefile2
-rw-r--r--audio/yammi/Makefile2
117 files changed, 1106 insertions, 1765 deletions
diff --git a/audio/Maaate/Makefile b/audio/Maaate/Makefile
index 46ff6d2392b1..0f95ea0749f9 100644
--- a/audio/Maaate/Makefile
+++ b/audio/Maaate/Makefile
@@ -16,7 +16,7 @@ MASTER_SITE_SUBDIR= ${PORTNAME:S/M/m/}
MAINTAINER= ports@FreeBSD.org
COMMENT= MPEG audio analysis toolkit
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_GMAKE= yes
GNU_CONFIGURE= yes
USE_LDCONFIG= yes
diff --git a/audio/akode-plugins-ffmpeg/Makefile b/audio/akode-plugins-ffmpeg/Makefile
index 9ae86c3f74ef..ed8c3d5ec9a7 100644
--- a/audio/akode-plugins-ffmpeg/Makefile
+++ b/audio/akode-plugins-ffmpeg/Makefile
@@ -25,7 +25,7 @@ PLUGIN= ffmpeg_decoder
PORTNAMESUFX= ${PLUGIN:S/_sink//:S/_decoder//:S/src_//}
USE_AUTOTOOLS= libltdl
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_BZIP2= yes
USE_GMAKE= yes
WRKSRC= ${WRKDIR}/akode-${PORTVERSION}
diff --git a/audio/akode-plugins-jack/Makefile b/audio/akode-plugins-jack/Makefile
index b3af1ba8b34d..e489db73a32c 100644
--- a/audio/akode-plugins-jack/Makefile
+++ b/audio/akode-plugins-jack/Makefile
@@ -25,7 +25,7 @@ PLUGIN= jack_sink
PORTNAMESUFX= ${PLUGIN:S/_sink//:S/_decoder//:S/src_//}
USE_AUTOTOOLS= libltdl
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_BZIP2= yes
USE_GMAKE= yes
WRKSRC= ${WRKDIR}/akode-${PORTVERSION}
diff --git a/audio/akode-plugins-mpc/Makefile b/audio/akode-plugins-mpc/Makefile
index 8d1b22a55b76..741f35b59096 100644
--- a/audio/akode-plugins-mpc/Makefile
+++ b/audio/akode-plugins-mpc/Makefile
@@ -24,7 +24,7 @@ PLUGIN= mpc_decoder
PORTNAMESUFX= ${PLUGIN:S/_sink//:S/_decoder//:S/src_//}
USE_AUTOTOOLS= libltdl
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_BZIP2= yes
USE_GMAKE= yes
WRKSRC= ${WRKDIR}/akode-${PORTVERSION}
diff --git a/audio/akode-plugins-mpeg/Makefile b/audio/akode-plugins-mpeg/Makefile
index e214721e5dc7..8ad45f05eef2 100644
--- a/audio/akode-plugins-mpeg/Makefile
+++ b/audio/akode-plugins-mpeg/Makefile
@@ -26,7 +26,7 @@ PLUGIN= mpeg_decoder
PORTNAMESUFX= ${PLUGIN:S/_sink//:S/_decoder//:S/src_//}
USE_AUTOTOOLS= libltdl
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_BZIP2= yes
USE_GMAKE= yes
WRKSRC= ${WRKDIR}/akode-${PORTVERSION}
diff --git a/audio/akode-plugins-oss/Makefile b/audio/akode-plugins-oss/Makefile
index 668218e8a41f..2008dd616b1c 100644
--- a/audio/akode-plugins-oss/Makefile
+++ b/audio/akode-plugins-oss/Makefile
@@ -24,7 +24,7 @@ PLUGIN= oss_sink
PORTNAMESUFX= ${PLUGIN:S/_sink//:S/_decoder//:S/src_//}
USE_AUTOTOOLS= libltdl
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_BZIP2= yes
USE_GMAKE= yes
WRKSRC= ${WRKDIR}/akode-${PORTVERSION}
diff --git a/audio/akode-plugins-pulseaudio/Makefile b/audio/akode-plugins-pulseaudio/Makefile
index df16b68fa2d7..e3fdbd248b96 100644
--- a/audio/akode-plugins-pulseaudio/Makefile
+++ b/audio/akode-plugins-pulseaudio/Makefile
@@ -25,7 +25,7 @@ PLUGIN= polyp_sink
PORTNAMESUFX= pulseaudio
USE_AUTOTOOLS= libltdl
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_BZIP2= yes
USE_GMAKE= yes
WRKSRC= ${WRKDIR}/akode-${PORTVERSION}
diff --git a/audio/akode-plugins-resampler/Makefile b/audio/akode-plugins-resampler/Makefile
index f0a6be11fc5f..da7c4bf0faa1 100644
--- a/audio/akode-plugins-resampler/Makefile
+++ b/audio/akode-plugins-resampler/Makefile
@@ -25,7 +25,7 @@ PLUGIN= src_resampler
PORTNAMESUFX= ${PLUGIN:S/_sink//:S/_decoder//:S/src_//}
USE_AUTOTOOLS= libltdl
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_BZIP2= yes
USE_GMAKE= yes
WRKSRC= ${WRKDIR}/akode-${PORTVERSION}
diff --git a/audio/akode-plugins-xiph/Makefile b/audio/akode-plugins-xiph/Makefile
index 1817fa198e66..864870e4ed50 100644
--- a/audio/akode-plugins-xiph/Makefile
+++ b/audio/akode-plugins-xiph/Makefile
@@ -29,7 +29,7 @@ PLUGIN= xiph_decoder
PORTNAMESUFX= ${PLUGIN:S/_sink//:S/_decoder//:S/src_//}
USE_AUTOTOOLS= libltdl
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_BZIP2= yes
USE_GMAKE= yes
WRKSRC= ${WRKDIR}/akode-${PORTVERSION}
diff --git a/audio/akode/Makefile b/audio/akode/Makefile
index fc3767295e41..17b469f140b4 100644
--- a/audio/akode/Makefile
+++ b/audio/akode/Makefile
@@ -28,7 +28,7 @@ OPTIONS= FFMPEG "FFMPEG decoder plugin" off \
XIPH "FLAC/Speex/Vorbis decoder plugin" on
USE_AUTOTOOLS= libltdl
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_BZIP2= yes
USE_GMAKE= yes
WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION}
diff --git a/audio/amarok/Makefile b/audio/amarok/Makefile
index 55b8a682a194..0f7897f24366 100644
--- a/audio/amarok/Makefile
+++ b/audio/amarok/Makefile
@@ -3,6 +3,7 @@
# Whom: Markus Brueffer <markus@FreeBSD.org>
#
# $FreeBSD$
+#
PORTNAME= amarok
PORTVERSION= 1.4.10
@@ -24,7 +25,7 @@ MIN_OPTIONS_VER= ${PORTNAME}-1.4.1
USE_BZIP2= yes
USE_KDEBASE_VER=3
USE_GMAKE= yes
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_GETTEXT= yes
USE_SDL= sdl
USE_RUBY= yes
diff --git a/audio/amarok/pkg-plist b/audio/amarok/pkg-plist
index 92f26b906bc0..5fac640aa557 100644
--- a/audio/amarok/pkg-plist
+++ b/audio/amarok/pkg-plist
@@ -41,7 +41,6 @@ lib/libamarok.la
lib/libamarok.so
lib/libamarok.so.0
lib/ruby_lib/http11.rb
-lib/ruby_lib/libhttp11.a
lib/ruby_lib/libhttp11.la
lib/ruby_lib/libhttp11.so
lib/ruby_lib/libhttp11.so.0
diff --git a/audio/arts/Makefile b/audio/arts/Makefile
index fc3c0a9585ee..57ee91a10f1b 100644
--- a/audio/arts/Makefile
+++ b/audio/arts/Makefile
@@ -28,7 +28,7 @@ PREFIX= ${KDE_PREFIX}
WANT_GNOME= yes
USE_QT_VER= 3
USE_BZIP2= yes
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_GMAKE= yes
USE_LDCONFIG= yes
QTCPPFLAGS+= -L${LOCALBASE}/lib
diff --git a/audio/aube/Makefile b/audio/aube/Makefile
index a8bc8e619eeb..144f919cf161 100644
--- a/audio/aube/Makefile
+++ b/audio/aube/Makefile
@@ -18,7 +18,7 @@ LIB_DEPENDS= audiofile.0:${PORTSDIR}/audio/libaudiofile
USE_GNOME= imlib
USE_GMAKE= yes
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" \
LDFLAGS="-L${LOCALBASE}/lib"
diff --git a/audio/bmp-mac/Makefile b/audio/bmp-mac/Makefile
index 1eff19e97f35..9a70d8676e4b 100644
--- a/audio/bmp-mac/Makefile
+++ b/audio/bmp-mac/Makefile
@@ -21,7 +21,7 @@ LIB_DEPENDS= beep.2:${PORTSDIR}/multimedia/beep-media-player \
USE_GMAKE= yes
GNU_CONFIGURE= yes
CONFIGURE_ENV+= CPPFLAGS="${CPPFLAGS}"
-USE_AUTOTOOLS= autoconf:262 libtool:15
+USE_AUTOTOOLS= autoconf:262 libtool:22
CPPFLAGS+= "-I${LOCALBASE}/include"
PLUGDIR= lib/bmp/Input
PLUGFILE= lib${PKGNAMEPREFIX}${PORTNAME}.so
diff --git a/audio/bmp-modplug/Makefile b/audio/bmp-modplug/Makefile
index 56082790c742..8914a9b4cf46 100644
--- a/audio/bmp-modplug/Makefile
+++ b/audio/bmp-modplug/Makefile
@@ -23,7 +23,7 @@ COMMENT= A modplug-based plugin for beep-media-player
LIB_DEPENDS?= beep.2:${PORTSDIR}/multimedia/beep-media-player
LIB_DEPENDS+= modplug.0:${PORTSDIR}/audio/libmodplug
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_BZIP2= yes
HAS_CONFIGURE= yes
PLUGDIR?= lib/bmp/Input
diff --git a/audio/bmp-musepack/Makefile b/audio/bmp-musepack/Makefile
index 23e874045fa9..ce2e9d84fc47 100644
--- a/audio/bmp-musepack/Makefile
+++ b/audio/bmp-musepack/Makefile
@@ -24,7 +24,7 @@ USE_GMAKE= yes
CPPFLAGS+= "-I${LOCALBASE}/include"
GNU_CONFIGURE= yes
CONFIGURE_ENV+= CPPFLAGS="${CPPFLAGS}"
-USE_AUTOTOOLS= autoconf:262 libtool:15
+USE_AUTOTOOLS= autoconf:262 libtool:22
PLUGDIR= lib/bmp/Input
PLUGFILE= libbmp-mpc.so
PLIST_FILES= ${PLUGDIR}/${PLUGFILE}
diff --git a/audio/bmp-wma/Makefile b/audio/bmp-wma/Makefile
index ba168587bb82..556b95738a62 100644
--- a/audio/bmp-wma/Makefile
+++ b/audio/bmp-wma/Makefile
@@ -21,7 +21,7 @@ PLIST_FILES= lib/bmp/Input/libwma.so \
lib/bmp/Input/libwma.a
GNU_CONFIGURE= yes
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
.include <bsd.port.pre.mk>
diff --git a/audio/ccaudio/Makefile b/audio/ccaudio/Makefile
index 61fd65b9edcf..5879dc930253 100644
--- a/audio/ccaudio/Makefile
+++ b/audio/ccaudio/Makefile
@@ -16,7 +16,9 @@ COMMENT= C++ class framework for manipulating audio files
LIB_DEPENDS= ccgnu2:${PORTSDIR}/devel/commoncpp
-USE_AUTOTOOLS= libtool:15
+BROKEN= Does not build with libtool 2.2.
+
+USE_AUTOTOOLS= libtool:22
USE_GNOME= gnometarget
GNU_CONFIGURE= yes
USE_LDCONFIG= yes
diff --git a/audio/ccaudio2/Makefile b/audio/ccaudio2/Makefile
index c085ffff2518..3721afb41e02 100644
--- a/audio/ccaudio2/Makefile
+++ b/audio/ccaudio2/Makefile
@@ -17,7 +17,7 @@ LIB_DEPENDS= ccgnu2:${PORTSDIR}/devel/commoncpp
CONFLICTS= ccaudio-[0-9]*
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_GNOME= gnometarget gnomehack
GNU_CONFIGURE= yes
USE_LDCONFIG= yes
diff --git a/audio/ccaudio2/pkg-plist b/audio/ccaudio2/pkg-plist
index 06cc6633cde2..60c4730c9c3d 100644
--- a/audio/ccaudio2/pkg-plist
+++ b/audio/ccaudio2/pkg-plist
@@ -1,13 +1,10 @@
bin/audiotool
bin/tonetool
include/cc++/audio2.h
-lib/ccaudio2-%%CCVERSION%%/adpcm.a
lib/ccaudio2-%%CCVERSION%%/adpcm.la
lib/ccaudio2-%%CCVERSION%%/adpcm.so
-lib/ccaudio2-%%CCVERSION%%/g711.a
lib/ccaudio2-%%CCVERSION%%/g711.la
lib/ccaudio2-%%CCVERSION%%/g711.so
-lib/ccaudio2-%%CCVERSION%%/oki.a
lib/ccaudio2-%%CCVERSION%%/oki.la
lib/ccaudio2-%%CCVERSION%%/oki.so
lib/libccaudio2-%%CCVERSION%%.so
@@ -18,4 +15,3 @@ lib/libccaudio2.so
libdata/pkgconfig/libccaudio2.pc
@dirrmtry include/cc++
@dirrm lib/ccaudio2-%%CCVERSION%%
-
diff --git a/audio/dvda-author/Makefile b/audio/dvda-author/Makefile
index 89bf18d9f5a9..3bad75893c48 100644
--- a/audio/dvda-author/Makefile
+++ b/audio/dvda-author/Makefile
@@ -7,7 +7,7 @@
PORTNAME= dvda-author
PORTVERSION= 09.05
-PORTREVISION= 1
+PORTREVISION= 2
PORTEPOCH= 1
CATEGORIES= audio
MASTER_SITES= SF
diff --git a/audio/esound/Makefile b/audio/esound/Makefile
index 43e575039e84..07a9e3432358 100644
--- a/audio/esound/Makefile
+++ b/audio/esound/Makefile
@@ -17,7 +17,7 @@ COMMENT= A sound library for enlightenment package
LIB_DEPENDS= audiofile.0:${PORTSDIR}/audio/libaudiofile
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_BZIP2= yes
USE_GNOME= gnometarget gnomehack
USE_LDCONFIG= yes
diff --git a/audio/faac/Makefile b/audio/faac/Makefile
index 2ad076885ae5..e3ea1329eecb 100644
--- a/audio/faac/Makefile
+++ b/audio/faac/Makefile
@@ -21,7 +21,7 @@ USE_BZIP2= yes
USE_DOS2UNIX= yes
USE_GMAKE= yes
MAKE_JOBS_SAFE= yes
-USE_AUTOTOOLS= aclocal:110 autoheader:262 automake:110 autoconf:262 libtool:15
+USE_AUTOTOOLS= aclocal:110 autoheader:262 automake:110 autoconf:262 libtool:22
ACLOCAL_ARGS= -I . -I ${LOCALBASE}/share/aclocal
AUTOMAKE_ARGS= --add-missing
CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" \
diff --git a/audio/faad/Makefile b/audio/faad/Makefile
index 7883179ce2df..223bd5636c6e 100644
--- a/audio/faad/Makefile
+++ b/audio/faad/Makefile
@@ -19,7 +19,7 @@ USE_BZIP2= yes
USE_DOS2UNIX= yes
USE_GMAKE= yes
MAKE_JOBS_SAFE= yes
-USE_AUTOTOOLS= aclocal:110 autoheader:262 automake:110 autoconf:262 libtool:15
+USE_AUTOTOOLS= aclocal:110 autoheader:262 automake:110 autoconf:262 libtool:22
ACLOCAL_ARGS= -I . -I ${LOCALBASE}/share/aclocal
AUTOMAKE_ARGS= --add-missing
CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include ${PTHREAD_CFLAGS}" \
diff --git a/audio/festalon/Makefile b/audio/festalon/Makefile
index f9431f3bbdc2..36892fd4fe32 100644
--- a/audio/festalon/Makefile
+++ b/audio/festalon/Makefile
@@ -18,7 +18,7 @@ COMMENT?= A command line player for .nsf and .hes audio files
LIB_DEPENDS+= samplerate.1:${PORTSDIR}/audio/libsamplerate
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_BZIP2= yes
MAKE_JOBS_SAFE= yes
diff --git a/audio/flac/Makefile b/audio/flac/Makefile
index 41910b4ff8b1..d8d1ec7c4d5e 100644
--- a/audio/flac/Makefile
+++ b/audio/flac/Makefile
@@ -17,7 +17,7 @@ COMMENT= Free lossless audio codec
LIB_DEPENDS= ogg.6:${PORTSDIR}/audio/libogg
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
GNU_CONFIGURE= yes
CONFIGURE_ARGS= --enable-sse \
--with-ogg="${LOCALBASE}" \
diff --git a/audio/freealut/Makefile b/audio/freealut/Makefile
index 3bbee5e91335..951e56c88fec 100644
--- a/audio/freealut/Makefile
+++ b/audio/freealut/Makefile
@@ -16,7 +16,7 @@ COMMENT= The OpenAL Utility Toolkit
LIB_DEPENDS= openal.0:${PORTSDIR}/audio/openal
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
GNU_CONFIGURE= yes
CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" LDFLAGS="-L${LOCALBASE}/lib"
USE_GMAKE= yes
diff --git a/audio/glame/Makefile b/audio/glame/Makefile
index cbfa93813971..226ebbdd47c5 100644
--- a/audio/glame/Makefile
+++ b/audio/glame/Makefile
@@ -7,7 +7,7 @@
PORTNAME= glame
PORTVERSION= 2.0.1
-PORTREVISION= 13
+PORTREVISION= 14
CATEGORIES= audio gnome
MASTER_SITES= SF
@@ -24,7 +24,7 @@ USE_XORG= xbitmaps x11
USE_GNOME= gnomehack gnomeprefix gnometarget libgnomeui
USE_GETTEXT= yes
GNU_CONFIGURE= yes
-USE_AUTOTOOLS= libltdl:15 libtool:15
+USE_AUTOTOOLS= libltdl:22 libtool:22
USE_GMAKE= yes
CONFIGURE_ENV= CPPFLAGS="${CPPFLAGS}" LDFLAGS="${LDFLAGS}" \
MAKEINFO="makeinfo --no-split"
diff --git a/audio/gnomoradio/Makefile b/audio/gnomoradio/Makefile
index f59ec7eca642..a0ffe6b0c3e8 100644
--- a/audio/gnomoradio/Makefile
+++ b/audio/gnomoradio/Makefile
@@ -23,7 +23,7 @@ LIB_DEPENDS= sigc-2.0:${PORTSDIR}/devel/libsigc++20 \
ao:${PORTSDIR}/audio/libao
USE_GNOME= gnomehack gnomeprefix
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_LDCONFIG= yes
LIBTOOLFLAGS= --tag=CXX
CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" \
diff --git a/audio/gqmpeg/Makefile b/audio/gqmpeg/Makefile
index acac2bc28daf..ba73c487da10 100644
--- a/audio/gqmpeg/Makefile
+++ b/audio/gqmpeg/Makefile
@@ -27,7 +27,7 @@ RUN_DEPENDS+= mpg123:${PORTSDIR}/audio/mpg123
USE_GNOME= gdkpixbuf
WANT_GNOME= yes
-USE_AUTOTOOLS= autoconf:213 libtool:15
+USE_AUTOTOOLS= autoconf:213 libtool:22
CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" \
LDFLAGS="-L${LOCALBASE}/lib" \
diff --git a/audio/grip/Makefile b/audio/grip/Makefile
index 03b7433128e4..ef5013ea882f 100644
--- a/audio/grip/Makefile
+++ b/audio/grip/Makefile
@@ -22,7 +22,7 @@ USE_XORG= x11
USE_GNOME= gnomehack gnomeprefix gnometarget libgnomeui vte
USE_GMAKE= yes
USE_GETTEXT= yes
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" \
LDFLAGS="-L${LOCALBASE}/lib"
diff --git a/audio/gstreamer-plugins-moodbar/Makefile b/audio/gstreamer-plugins-moodbar/Makefile
index 518b63071dbc..30ebc496beb2 100644
--- a/audio/gstreamer-plugins-moodbar/Makefile
+++ b/audio/gstreamer-plugins-moodbar/Makefile
@@ -22,7 +22,7 @@ LIB_DEPENDS= fftw3f:${PORTSDIR}/math/fftw3-float \
CFLAGS:= ${CFLAGS} -O2
USE_GSTREAMER= yes good
USE_GMAKE= yes
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_LDCONFIG= yes
OPTIONS= MP3 "mp3 files support" on \
diff --git a/audio/id3lib/Makefile b/audio/id3lib/Makefile
index 94836e2eead2..63dc4078538f 100644
--- a/audio/id3lib/Makefile
+++ b/audio/id3lib/Makefile
@@ -14,7 +14,7 @@ MASTER_SITES= SF
MAINTAINER= kaeru@inigo-tech.com
COMMENT= Library for manipulating ID3v1/v1.1 and ID3v2 tags
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_ICONV= yes
GNU_CONFIGURE= yes
CONFIGURE_ENV= CPPFLAGS="${CPPFLAGS}" LDFLAGS="${LDFLAGS}"
diff --git a/audio/juk/Makefile b/audio/juk/Makefile
index 951f22db8d3e..ad9dd2483665 100644
--- a/audio/juk/Makefile
+++ b/audio/juk/Makefile
@@ -31,7 +31,7 @@ USE_KDELIBS_VER=3
PREFIX= ${KDE_PREFIX}
USE_BZIP2= yes
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_GMAKE= yes
WRKSRC= ${WRKDIR}/kdemultimedia-${PORTVERSION}
USE_LDCONFIG= yes
diff --git a/audio/k3bmonkeyaudioplugin/Makefile b/audio/k3bmonkeyaudioplugin/Makefile
index bd831df3a7c5..35350635d454 100644
--- a/audio/k3bmonkeyaudioplugin/Makefile
+++ b/audio/k3bmonkeyaudioplugin/Makefile
@@ -19,7 +19,7 @@ LIB_DEPENDS= k3b:${PORTSDIR}/sysutils/k3b
USE_BZIP2= yes
USE_KDELIBS_VER=3
USE_GMAKE= yes
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_LDCONFIG= ${PREFIX}/lib/kde3
post-patch:
diff --git a/audio/kid3/Makefile b/audio/kid3/Makefile
index 9f11f9722df5..cd167bce7f5e 100644
--- a/audio/kid3/Makefile
+++ b/audio/kid3/Makefile
@@ -23,7 +23,7 @@ LIB_DEPENDS= id3-3.8.3:${PORTSDIR}/audio/id3lib \
USE_KDELIBS_VER=3
USE_GMAKE= yes
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_GETTEXT= yes
GNU_CONFIGURE= yes
INSTALLS_ICONS= yes
diff --git a/audio/kirocker/Makefile b/audio/kirocker/Makefile
index d5f1a176acbc..e9c4b6743f2a 100644
--- a/audio/kirocker/Makefile
+++ b/audio/kirocker/Makefile
@@ -20,7 +20,7 @@ COMMENT= Kicker applet for displaying Amarok info
RUN_DEPENDS= amarok:${PORTSDIR}/audio/amarok
GNU_CONFIGURE= yes
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_KDELIBS_VER=3
INSTALLS_ICONS= yes
diff --git a/audio/lame/Makefile b/audio/lame/Makefile
index 6d974e060b31..96ce92f653cf 100644
--- a/audio/lame/Makefile
+++ b/audio/lame/Makefile
@@ -17,7 +17,7 @@ DISTNAME= ${PORTNAME}-${PORTVERSION:S/.//:S/./-/}
MAINTAINER= netchild@FreeBSD.org
COMMENT= Fast MP3 encoder kit
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_LDCONFIG= yes
GNU_CONFIGURE= yes
USE_GMAKE= yes
diff --git a/audio/liba52/Makefile b/audio/liba52/Makefile
index 5d6c6c94a470..35333db2ebfb 100644
--- a/audio/liba52/Makefile
+++ b/audio/liba52/Makefile
@@ -15,7 +15,7 @@ DISTNAME= a52dec-${PORTVERSION:S/.b/b/}
MAINTAINER= multimedia@FreeBSD.org
COMMENT= A free library for decoding ATSC A/52 streams, aka AC-3
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_GMAKE= yes
MAKE_JOBS_SAFE= yes
GNU_CONFIGURE= yes
diff --git a/audio/libadplug/Makefile b/audio/libadplug/Makefile
index 9cdcfb651731..fd7b6c6c2603 100644
--- a/audio/libadplug/Makefile
+++ b/audio/libadplug/Makefile
@@ -17,7 +17,7 @@ COMMENT= AdLib emulator library supporting many formats
LIB_DEPENDS= binio.1:${PORTSDIR}/devel/libbinio
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
GNU_CONFIGURE= yes
USE_LDCONFIG= yes
USE_GNOME= pkgconfig
diff --git a/audio/libamrnb/Makefile b/audio/libamrnb/Makefile
index 7639b7e2c67a..80bafaadfeb0 100644
--- a/audio/libamrnb/Makefile
+++ b/audio/libamrnb/Makefile
@@ -24,7 +24,7 @@ RESTRICTED= license prohibits redistribution
RESTRICTED_FILES= ${SRC3GPP}
USE_BZIP2= yes
USE_GMAKE= yes
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
PORTDOCS= AUTHORS COPYING ChangeLog NEWS README TODO readme.txt
SUB_FILES= pkg-message
GNU_CONFIGURE= yes
diff --git a/audio/libamrwb/Makefile b/audio/libamrwb/Makefile
index a51daefd71dc..ec3d13202b69 100644
--- a/audio/libamrwb/Makefile
+++ b/audio/libamrwb/Makefile
@@ -23,7 +23,7 @@ RESTRICTED= license prohibits redistribution
RESTRICTED_FILES= ${SRC3GPP}
USE_BZIP2= yes
USE_GMAKE= yes
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
PORTDOCS= AUTHORS COPYING ChangeLog NEWS README TODO readme.txt
SUB_FILES= pkg-message
GNU_CONFIGURE= yes
diff --git a/audio/libao/Makefile b/audio/libao/Makefile
index fb26dd1d4bd9..e90efdfe5701 100644
--- a/audio/libao/Makefile
+++ b/audio/libao/Makefile
@@ -14,7 +14,7 @@ MASTER_SITES= http://downloads.xiph.org/releases/ao/
MAINTAINER= naddy@FreeBSD.org
COMMENT= Portable audio output library
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
WANT_GNOME= yes
USE_GNOME= gnomehack pkgconfig
GNU_CONFIGURE= yes
diff --git a/audio/libaudiofile/Makefile b/audio/libaudiofile/Makefile
index 1d640eee7002..54a458904fd3 100644
--- a/audio/libaudiofile/Makefile
+++ b/audio/libaudiofile/Makefile
@@ -16,7 +16,7 @@ DISTNAME= audiofile-${PORTVERSION}
MAINTAINER= gnome@FreeBSD.org
COMMENT= A sound library for SGI audio file
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_GNOME= gnomehack gnometarget pkgconfig
USE_LDCONFIG= yes
GNU_CONFIGURE= yes
diff --git a/audio/libcanberra/Makefile b/audio/libcanberra/Makefile
index 13a1d9f532c7..827f9b310a47 100644
--- a/audio/libcanberra/Makefile
+++ b/audio/libcanberra/Makefile
@@ -7,7 +7,7 @@
PORTNAME= libcanberra
PORTVERSION= 0.10
-PORTREVISION= 4
+PORTREVISION= 5
CATEGORIES= audio devel
MASTER_SITES= http://0pointer.de/lennart/projects/libcanberra/
@@ -19,7 +19,7 @@ LIB_DEPENDS= vorbisfile.6:${PORTSDIR}/audio/libvorbis
USE_GMAKE= yes
USE_GNOME= gnomeprefix gnomehack gtk20 ltverhack gconf2
USE_LDCONFIG= yes
-USE_AUTOTOOLS= libtool:15 libltdl:15
+USE_AUTOTOOLS= libtool:22 libltdl:22
CONFIGURE_ARGS= --disable-lynx
CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" \
LDFLAGS="-L${LOCALBASE}/lib"
diff --git a/audio/libcdaudio/Makefile b/audio/libcdaudio/Makefile
index 879742516dde..cf1ae1d21e42 100644
--- a/audio/libcdaudio/Makefile
+++ b/audio/libcdaudio/Makefile
@@ -15,7 +15,7 @@ MASTER_SITE_SUBDIR= ${PORTNAME}
MAINTAINER= novel@FreeBSD.org
COMMENT= A library for playing audio CDs
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_GNOME= gnomehack gnometarget pkgconfig
GNU_CONFIGURE= yes
USE_LDCONFIG= yes
diff --git a/audio/libdssialsacompat/Makefile b/audio/libdssialsacompat/Makefile
index c369b4f835be..3c7f1b4620c8 100644
--- a/audio/libdssialsacompat/Makefile
+++ b/audio/libdssialsacompat/Makefile
@@ -13,7 +13,7 @@ MASTER_SITES= http://www.smbolton.com/linux/
MAINTAINER= freebsd-ports@coreland.ath.cx
COMMENT= Alsa compatibility library to build DSSI
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
GNU_CONFIGURE= yes
USE_LDCONFIG= yes
diff --git a/audio/libmad/Makefile b/audio/libmad/Makefile
index 3f0a9374f533..07f1002dad51 100644
--- a/audio/libmad/Makefile
+++ b/audio/libmad/Makefile
@@ -16,7 +16,7 @@ MASTER_SITE_SUBDIR= mad
MAINTAINER= dinoex@FreeBSD.org
COMMENT= Libmad library (part of MAD project)
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
GNU_CONFIGURE= yes
USE_GNOME= pkgconfig
USE_LDCONFIG= yes
diff --git a/audio/libmikmod/Makefile b/audio/libmikmod/Makefile
index f1f55bbdcf50..30b5362121eb 100644
--- a/audio/libmikmod/Makefile
+++ b/audio/libmikmod/Makefile
@@ -18,7 +18,7 @@ PATCH_DIST_STRIP= -p1
MAINTAINER= david@trucs.org
COMMENT= MikMod Sound Library
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
WANT_GNOME= yes
USE_GNOME= gnometarget lthack
USE_GMAKE= yes
diff --git a/audio/libmp3splt/Makefile b/audio/libmp3splt/Makefile
index 6bb0c059e229..559d811beb1d 100644
--- a/audio/libmp3splt/Makefile
+++ b/audio/libmp3splt/Makefile
@@ -7,7 +7,7 @@
PORTNAME= libmp3splt
PORTVERSION= 0.5.4
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= audio
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
MASTER_SITE_SUBDIR= mp3splt
diff --git a/audio/libmpd/Makefile b/audio/libmpd/Makefile
index 93fbc74f5128..27f6a13f5547 100644
--- a/audio/libmpd/Makefile
+++ b/audio/libmpd/Makefile
@@ -13,7 +13,7 @@ MASTER_SITES= http://download.sarine.nl/Programs/gmpc/${PORTVERSION}/
MAINTAINER= miwi@FreeBSD.org
COMMENT= Abstraction around libmpdclient
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
GNU_CONFIGURE= yes
USE_GNOME= pkgconfig glib20 gnomehack
USE_LDCONFIG= yes
diff --git a/audio/libnjb/Makefile b/audio/libnjb/Makefile
index 8c0f3fcd1832..048b9659e042 100644
--- a/audio/libnjb/Makefile
+++ b/audio/libnjb/Makefile
@@ -14,7 +14,7 @@ MASTER_SITES= SF
MAINTAINER= ports@FreeBSD.org
COMMENT= C library, API for communicating with Creative and Dell audio players
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
GNU_CONFIGURE= yes
CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" \
LDFLAGS="-L${LOCALBASE}/lib"
diff --git a/audio/libnoise/Makefile b/audio/libnoise/Makefile
index 100b433462cb..16c18e63cf20 100644
--- a/audio/libnoise/Makefile
+++ b/audio/libnoise/Makefile
@@ -14,19 +14,26 @@ DISTNAME= ${PORTNAME}src-${DISTVERSION}
MAINTAINER= ports@FreeBSD.org
COMMENT= Generates three-dimensional coherent noise
-BUILD_DEPENDS= libtool:${PORTSDIR}/devel/libtool15
-
USE_ZIP= yes
USE_GMAKE= yes
+USE_AUTOTOOLS= libtool:22:env
USE_LDCONFIG= yes
CXXFLAGS+= -O3 -fomit-frame-pointer
WRKSRC= ${WRKDIR}/noise
+post-patch:
+ @${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|g' \
+ ${WRKSRC}/src/Makefile
+ @${REINPLACE_CMD} -e 's|include lib:|include:|g' \
+ ${WRKSRC}/Makefile
+
do-install:
- @${CP} -R ${WRKSRC}/lib/${PORTNAME}.* ${PREFIX}/lib/
+ @${CP} -R ${WRKSRC}/src/${PORTNAME}.* ${PREFIX}/lib/
+ @${CP} -R ${WRKSRC}/src/.libs/${PORTNAME}.so.* ${PREFIX}/lib/
@${INSTALL} -d ${PREFIX}/include/noise
@${CP} -R ${WRKSRC}/include/ ${PREFIX}/include/noise/
@${RM} -f ${PREFIX}/include/noise/Makefile
- @${LN} -sf ${PREFIX}/lib/libnoise.so.0.3 ${PREFIX}/lib/libnoise.so.0
+# This line is here to preserve the old behavior of the port.
+ @${LN} -sf ${PREFIX}/lib/libnoise.so.0 ${PREFIX}/lib/libnoise.so.0.3
.include <bsd.port.mk>
diff --git a/audio/libnoise/files/patch-src_Makefile b/audio/libnoise/files/patch-src_Makefile
new file mode 100644
index 000000000000..6bf567fbb7d4
--- /dev/null
+++ b/audio/libnoise/files/patch-src_Makefile
@@ -0,0 +1,19 @@
+--- src/Makefile.orig 2004-10-24 21:21:12.000000000 +0200
++++ src/Makefile 2009-07-16 11:31:48.000000000 +0200
+@@ -12,12 +12,12 @@
+
+ # hooks for future makefiles being able to make multiple SOs, or older SOs
+ libnoise: libnoise.so libnoise.a libnoise.la
+-libnoise.so: libnoise.so.0
+-libnoise.so.0: libnoise.so.0.3
++#libnoise.so: libnoise.so.0
++#libnoise.so.0: libnoise.so.0.3
+
+ # Real build targets
+-libnoise.so.0.3: $(OBJECTS)
+- $(LIBTOOL) --mode=link $(CXX) $(LDFLAGS) -shared -Wl,-soname=libnoise.so.0 -o $@ $(OBJECTS:.o=.lo)
++libnoise: $(OBJECTS)
++ $(LIBTOOL) --mode=link $(CXX) $(LDFLAGS) -shared -o $@.la $(OBJECTS:.o=.lo) -rpath %%LOCALBASE%%/lib
+
+ libnoise.a: $(OBJECTS)
+ $(LIBTOOL) --mode=link $(CXX) $(LDFLAGS) -o $@ $(OBJECTS)
diff --git a/audio/libofa/Makefile b/audio/libofa/Makefile
index f1a38cd1cbf6..e43237fc02d4 100644
--- a/audio/libofa/Makefile
+++ b/audio/libofa/Makefile
@@ -18,7 +18,7 @@ LIB_DEPENDS= fftw3.5:${PORTSDIR}/math/fftw3 \
expat.6:${PORTSDIR}/textproc/expat2 \
curl.5:${PORTSDIR}/ftp/curl
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_GNOME= pkgconfig
GNU_CONFIGURE= yes
CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" \
diff --git a/audio/libogg/Makefile b/audio/libogg/Makefile
index 9060625ef436..3e835ae80556 100644
--- a/audio/libogg/Makefile
+++ b/audio/libogg/Makefile
@@ -14,7 +14,7 @@ MASTER_SITES= http://downloads.xiph.org/releases/ogg/
MAINTAINER= naddy@FreeBSD.org
COMMENT= Ogg bitstream library
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
GNU_CONFIGURE= yes
USE_GNOME= gnomehack
USE_LDCONFIG= yes
diff --git a/audio/liboggz/Makefile b/audio/liboggz/Makefile
index 70dc0735a15d..4c8b63290931 100644
--- a/audio/liboggz/Makefile
+++ b/audio/liboggz/Makefile
@@ -16,7 +16,7 @@ COMMENT= Simple Ogg API
LIB_DEPENDS= ogg.6:${PORTSDIR}/audio/libogg
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_GNOME= pkgconfig
USE_LDCONFIG= yes
GNU_CONFIGURE= yes
diff --git a/audio/libsamplerate/Makefile b/audio/libsamplerate/Makefile
index db8b88d930cf..0559b216bd99 100644
--- a/audio/libsamplerate/Makefile
+++ b/audio/libsamplerate/Makefile
@@ -18,7 +18,7 @@ LIB_DEPENDS= sndfile.1:${PORTSDIR}/audio/libsndfile \
fftw3.5:${PORTSDIR}/math/fftw3
USE_GNOME= gnomehack pkgconfig
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" \
LDFLAGS="-L${LOCALBASE}/lib"
CONFIGURE_ARGS= --disable-gcc-pipe
diff --git a/audio/libshout/Makefile b/audio/libshout/Makefile
index 7b1e39fbeaa2..f49603f0e673 100644
--- a/audio/libshout/Makefile
+++ b/audio/libshout/Makefile
@@ -15,7 +15,7 @@ COMMENT= Connect and transmit data to an Icecast media streaming server
CONFLICTS= libshout2-*
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
GNU_CONFIGURE= yes
USE_LDCONFIG= yes
DOCSDIR= ${PREFIX}/share/doc/${PORTNAME}-${PORTVERSION}
diff --git a/audio/libsidplay/Makefile b/audio/libsidplay/Makefile
index 9e4dcd3dec51..efdcc56daba7 100644
--- a/audio/libsidplay/Makefile
+++ b/audio/libsidplay/Makefile
@@ -14,7 +14,7 @@ EXTRACT_SUFX= .tgz
MAINTAINER= sec@42.org
COMMENT= A Commodore SID-chip emulator library to play SID music files
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_LDCONFIG= yes
.include <bsd.port.pre.mk>
diff --git a/audio/libsidplay2/Makefile b/audio/libsidplay2/Makefile
index a1ede1c5cbd6..81bd7e03bf07 100644
--- a/audio/libsidplay2/Makefile
+++ b/audio/libsidplay2/Makefile
@@ -18,7 +18,7 @@ COMMENT= Library to play Commodore 64 SID-tunes cycle accurate
USE_GNOME= gnomehack gnometarget pkgconfig
USE_GMAKE= yes
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
LIBTOOLFILES= builders/hardsid-builder/configure \
builders/resid-builder/configure \
libsidplay/configure \
diff --git a/audio/libtremor/Makefile b/audio/libtremor/Makefile
index 4cd8a0d84c75..4fc15c6f0a67 100644
--- a/audio/libtremor/Makefile
+++ b/audio/libtremor/Makefile
@@ -18,7 +18,7 @@ COMMENT= Integer-only fully Ogg Vorbis compliant decoder library
SNAP_DATE= 02132004
WRKSRC= ${WRKDIR}/Tremor
-USE_AUTOTOOLS= automake:15 autoconf:262 libtool:15
+USE_AUTOTOOLS= automake:15 autoconf:262 libtool:22
GNU_CONFIGURE= yes
USE_LDCONFIG= yes
diff --git a/audio/libtunepimp-old/Makefile b/audio/libtunepimp-old/Makefile
index 966db21f0060..45c0f45e039e 100644
--- a/audio/libtunepimp-old/Makefile
+++ b/audio/libtunepimp-old/Makefile
@@ -28,7 +28,7 @@ LIB_DEPENDS= FLAC:${PORTSDIR}/audio/flac \
CONFLICTS= trm-0*
USE_GMAKE= yes
USE_GNOME= gnomehack gnometarget pkgconfig
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
CONFIGURE_ARGS= --libdir=${PREFIX}/lib/tunepimp-0.4 --includedir=${PREFIX}/include/tunepimp-0.4
CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" \
LDFLAGS="-L${LOCALBASE}/lib -liconv"
diff --git a/audio/libtunepimp/Makefile b/audio/libtunepimp/Makefile
index 7f6dd8f0aa4e..101938f798e9 100644
--- a/audio/libtunepimp/Makefile
+++ b/audio/libtunepimp/Makefile
@@ -29,7 +29,7 @@ LIB_DEPENDS= FLAC:${PORTSDIR}/audio/flac \
CONFLICTS= trm-0*
USE_GMAKE= yes
USE_GNOME= gnomehack gnometarget pkgconfig
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" \
LDFLAGS="-L${LOCALBASE}/lib -liconv"
USE_LDCONFIG= yes
diff --git a/audio/libvorbis/Makefile b/audio/libvorbis/Makefile
index 3af8a20e8955..b6eb372b09af 100644
--- a/audio/libvorbis/Makefile
+++ b/audio/libvorbis/Makefile
@@ -17,7 +17,7 @@ COMMENT= Audio compression codec library
LIB_DEPENDS= ogg.6:${PORTSDIR}/audio/libogg
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
GNU_CONFIGURE= yes
USE_GNOME= gnomehack
CONFIGURE_ARGS= --with-ogg=${LOCALBASE}
diff --git a/audio/mac/Makefile b/audio/mac/Makefile
index c34954e9f4e2..cc0d7e2a5d5d 100644
--- a/audio/mac/Makefile
+++ b/audio/mac/Makefile
@@ -14,7 +14,7 @@ DISTNAME= ${PORTNAME}-3.99-u4-b5
MAINTAINER= danfe@FreeBSD.org
COMMENT= Monkey's Audio lossless codec
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_LDCONFIG= yes
GNU_CONFIGURE= yes
CONFIGURE_ARGS= --disable-static
diff --git a/audio/mp3splt/Makefile b/audio/mp3splt/Makefile
index 2a972edb0aa5..5b47a2e02acf 100644
--- a/audio/mp3splt/Makefile
+++ b/audio/mp3splt/Makefile
@@ -7,6 +7,7 @@
PORTNAME= mp3splt
PORTVERSION= 2.2.3
+PORTREVISION= 1
CATEGORIES= audio
MASTER_SITES= SF
diff --git a/audio/mpeglib_artsplug/Makefile b/audio/mpeglib_artsplug/Makefile
index dfd78c5710f5..64c0b2cd5193 100644
--- a/audio/mpeglib_artsplug/Makefile
+++ b/audio/mpeglib_artsplug/Makefile
@@ -27,7 +27,7 @@ USE_KDELIBS_VER=3
PREFIX= ${KDE_PREFIX}
USE_BZIP2= yes
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_GMAKE= yes
WRKSRC= ${WRKDIR}/kdemultimedia-${PORTVERSION}
USE_LDCONFIG= yes
diff --git a/audio/mpg123/Makefile b/audio/mpg123/Makefile
index 849531f3b961..4fef38ec302f 100644
--- a/audio/mpg123/Makefile
+++ b/audio/mpg123/Makefile
@@ -7,6 +7,7 @@
PORTNAME= mpg123
PORTVERSION= 1.6.4
+PORTREVISION= 1
CATEGORIES= audio ipv6
MASTER_SITES= SF \
http://www.mpg123.de/download/
diff --git a/audio/mpiosh/Makefile b/audio/mpiosh/Makefile
index 4b1bdff3f0f4..1a9c71fa86b3 100644
--- a/audio/mpiosh/Makefile
+++ b/audio/mpiosh/Makefile
@@ -7,6 +7,7 @@
PORTNAME= mpiosh
PORTVERSION= 0.7.1.p2
+PORTREVISION= 1
CATEGORIES= audio
MASTER_SITES= SF/mpio
DISTNAME= mpio-${PORTVERSION:S|.p|_pre|}
@@ -18,10 +19,11 @@ USE_ICONV= yes
GNU_CONFIGURE= yes
USE_LDCONFIG= yes
-USE_AUTOTOOLS= aclocal:110 automake:110 autoconf:262 libtool:15
+USE_AUTOTOOLS= aclocal:110 automake:110 autoconf:262 libtool:22
ACLOCAL_ARGS= -I . -I ${LOCALBASE}/share/aclocal
AUTOMAKE_ARGS= --add-missing
-CONFIGURE_ENV= CFLAGS="-I${LOCALBASE}/include" LDFLAGS="-L${LOCALBASE}/lib -liconv"
+CONFIGURE_ENV= CFLAGS="-I${LOCALBASE}/include" \
+ LDFLAGS="-L${LOCALBASE}/lib -liconv"
.include <bsd.port.pre.mk>
@@ -31,16 +33,6 @@ LIB_DEPENDS+= usb-0.1:${PORTSDIR}/devel/libusb
EXTRA_PATCHES= ${FILESDIR}/extra-patch-configure.in
.endif
-patch-autotools:
- ${DO_NADA}
-
-#
-# Get rid of .la and static library files
-#
-post-configure:
- @${REINPLACE_CMD} -E -e \
- '/Install the pseudo-library/,/staticlibs=/s,^,#,' ${WRKSRC}/libtool
-
post-patch:
.if ${OSVERSION} >= 800069
${RM} -f ${WRKSRC}/configure
diff --git a/audio/mpiosh/pkg-plist b/audio/mpiosh/pkg-plist
index 7531bd270a5e..8263c7ef5f4f 100644
--- a/audio/mpiosh/pkg-plist
+++ b/audio/mpiosh/pkg-plist
@@ -1,9 +1,11 @@
bin/mpiologo
bin/mpiosh
etc/mpio/mpioshrc
-lib/libmpio.so
-lib/libmpio.so.1
include/mpio/defs.h
include/mpio/mpio.h
+lib/libmpio.a
+lib/libmpio.la
+lib/libmpio.so
+lib/libmpio.so.1
@dirrm include/mpio
@dirrm etc/mpio
diff --git a/audio/ncmpcpp/Makefile b/audio/ncmpcpp/Makefile
index 62d12adddefa..d9bb651939f0 100644
--- a/audio/ncmpcpp/Makefile
+++ b/audio/ncmpcpp/Makefile
@@ -18,7 +18,7 @@ USE_BZIP2= yes
GNU_CONFIGURE= yes
USE_ICONV= yes
USE_GNOME= glib20
-USE_AUTOTOOLS= automake:110 aclocal:110 libtool:15
+USE_AUTOTOOLS= automake:110 aclocal:110 libtool:22
ACLOCAL_ARGS= --acdir=${ACLOCAL_DIR} -I ${LOCALBASE}/share/aclocal
CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" \
LDFLAGS="-L${LOCALBASE}/lib -lpthread"
diff --git a/audio/openal/Makefile b/audio/openal/Makefile
index 849f012a94d5..03f4e785f2b1 100644
--- a/audio/openal/Makefile
+++ b/audio/openal/Makefile
@@ -17,7 +17,7 @@ COMMENT= A 3D positional spatialized sound library
CONFLICTS= openal-soft-[0-9]*
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
GNU_CONFIGURE= yes
CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" LDFLAGS="-L${LOCALBASE}/lib"
CONFIGURE_ARGS= --enable-capture
diff --git a/audio/openspc/Makefile b/audio/openspc/Makefile
index 48ddd8d5f19e..14fdd929b226 100644
--- a/audio/openspc/Makefile
+++ b/audio/openspc/Makefile
@@ -18,7 +18,7 @@ COMMENT= A command line player for .spc and .zst files
ONLY_FOR_ARCHS= i386 # contains x86 asm code
USE_LDCONFIG= yes
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
MAKE_JOBS_SAFE= yes
PORTDOCS= README
diff --git a/audio/pocketsphinx/Makefile b/audio/pocketsphinx/Makefile
index a73994f9619a..1e634213e85d 100644
--- a/audio/pocketsphinx/Makefile
+++ b/audio/pocketsphinx/Makefile
@@ -18,7 +18,7 @@ LIB_DEPENDS= sphinxfe.0:${PORTSDIR}/audio/sphinxbase
USE_LDCONFIG= yes
USE_GMAKE= yes
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include -I${LOCALBASE}/include/sphinxbase" \
LDFLAGS="-L${LOCALBASE}/lib"
diff --git a/audio/pulseaudio/Makefile b/audio/pulseaudio/Makefile
index 7471af1e22ee..6064209564c2 100644
--- a/audio/pulseaudio/Makefile
+++ b/audio/pulseaudio/Makefile
@@ -3,12 +3,12 @@
# Whom: Joe Marcus Clarke <marcus@FreeBSD.org>
#
# $FreeBSD$
-# $MCom: ports-stable/audio/pulseaudio/Makefile,v 1.2 2009/04/18 19:59:03 marcus Exp $
+# $MCom: ports-stable/audio/pulseaudio/Makefile,v 1.5 2009/07/20 21:26:40 marcus Exp $
#
PORTNAME= pulseaudio
-PORTVERSION= 0.9.14
-PORTREVISION= 7
+PORTVERSION= 0.9.15
+PORTREVISION= 2
CATEGORIES= audio
MASTER_SITES= http://0pointer.de/lennart/projects/${PORTNAME}/
@@ -19,20 +19,23 @@ LIB_DEPENDS= samplerate.1:${PORTSDIR}/audio/libsamplerate \
oil-0.3.0:${PORTSDIR}/devel/liboil \
speexdsp.1:${PORTSDIR}/audio/speex \
dbus-1.3:${PORTSDIR}/devel/dbus \
- gdbm.3:${PORTSDIR}/databases/gdbm
+ gdbm.3:${PORTSDIR}/databases/gdbm \
+ execinfo:${PORTSDIR}/devel/libexecinfo
USE_GNOME= gnometarget gnomehack glib20 intltool ltverhack
-USE_XORG= x11 sm
+USE_XORG= x11 sm xtst ice
USE_LDCONFIG= yes
USE_GETTEXT= yes
GNU_CONFIGURE= yes
-USE_AUTOTOOLS= libltdl:15 libtool:15
+USE_AUTOTOOLS= libltdl:22 libtool:22
USE_GMAKE= yes
MAKE_JOBS_UNSAFE=yes
CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" \
LDFLAGS="-L${LOCALBASE}/lib" \
PTHREAD_CFLAGS="${PTHREAD_CFLAGS}" \
PTHREAD_LIBS="${PTHREAD_LIBS}" \
+ OPENSSL_CFLAGS="-I/usr/include" \
+ OPENSSL_LIBS="-lcrypto -lssl" \
LIBS="-lm -lintl"
CONFIGURE_ARGS= --localstatedir=/var \
@@ -43,7 +46,7 @@ OPTIONS= JACK "JACK audio support" Off \
HAL "Enable HAL support" On \
GCONF "Enable GConf support" On
-PULSE_VERSION= ${PORTVERSION:C/^([0-9]+\.[0-9]+).*/\1/}
+PULSE_VERSION= ${PORTVERSION}
PLIST_SUB= PULSE_VERSION=${PULSE_VERSION}
MAN1= esdcompat.1 pabrowse.1 pacat.1 pacmd.1 pactl.1 padsp.1 \
diff --git a/audio/pulseaudio/distinfo b/audio/pulseaudio/distinfo
index 5594f9d76c7b..3a94651289a0 100644
--- a/audio/pulseaudio/distinfo
+++ b/audio/pulseaudio/distinfo
@@ -1,3 +1,3 @@
-MD5 (pulseaudio-0.9.14.tar.gz) = 0ed1115222d1d8c64cc14961cccb2eb0
-SHA256 (pulseaudio-0.9.14.tar.gz) = e6129f9239235981d329de40eeffa55041e6815a93aaa994d1eae242ea7446b5
-SIZE (pulseaudio-0.9.14.tar.gz) = 1303077
+MD5 (pulseaudio-0.9.15.tar.gz) = 4510364eeab219fd100bd1b373b1a002
+SHA256 (pulseaudio-0.9.15.tar.gz) = 1e8ad5b7c5cf3485bd0738c296274ff2c99d26d12a25a225dc250eddea25b9f1
+SIZE (pulseaudio-0.9.15.tar.gz) = 1704374
diff --git a/audio/pulseaudio/files/patch-src_Makefile.in b/audio/pulseaudio/files/patch-src_Makefile.in
new file mode 100644
index 000000000000..0be2eaa8c063
--- /dev/null
+++ b/audio/pulseaudio/files/patch-src_Makefile.in
@@ -0,0 +1,11 @@
+--- src/Makefile.in.orig 2009-07-19 14:49:35.000000000 -0400
++++ src/Makefile.in 2009-07-19 14:56:39.000000000 -0400
+@@ -2668,7 +2668,7 @@ libpulsecommon_@PA_MAJORMINORMICRO@_la_C
+ libpulsecommon_@PA_MAJORMINORMICRO@_la_LDFLAGS = $(AM_LDFLAGS) \
+ -avoid-version $(am__append_17)
+ libpulsecommon_@PA_MAJORMINORMICRO@_la_LIBADD = $(AM_LIBADD) \
+- $(LIBWRAP_LIBS) $(WINSOCK_LIBS) $(LTLIBICONV) $(am__append_19) \
++ $(LIBWRAP_LIBS) $(WINSOCK_LIBS) $(LTLIBICONV) -lexecinfo $(am__append_19) \
+ $(am__append_23)
+
+ ###################################
diff --git a/audio/pulseaudio/files/patch-src_daemon_default.pa.in b/audio/pulseaudio/files/patch-src_daemon_default.pa.in
index 77ba7306a63c..b8291f56dda2 100644
--- a/audio/pulseaudio/files/patch-src_daemon_default.pa.in
+++ b/audio/pulseaudio/files/patch-src_daemon_default.pa.in
@@ -1,5 +1,5 @@
---- src/daemon/default.pa.in.orig 2008-08-19 17:25:03.000000000 -0400
-+++ src/daemon/default.pa.in 2008-09-28 19:48:14.000000000 -0400
+--- src/daemon/default.pa.in.orig 2009-07-19 14:58:14.000000000 -0400
++++ src/daemon/default.pa.in 2009-07-19 14:58:41.000000000 -0400
@@ -22,10 +22,10 @@
.nofail
@@ -15,3 +15,12 @@
.fail
+@@ -101,7 +101,7 @@ load-module module-rescue-streams
+ load-module module-always-sink
+
+ ### Automatically suspend sinks/sources that become idle for too long
+-load-module module-suspend-on-idle
++#load-module module-suspend-on-idle
+
+ ### If autoexit on idle is enabled we want to make sure we only quit
+ ### when no local session needs us anymore.
diff --git a/audio/pulseaudio/files/patch-src_modules_module-oss.c b/audio/pulseaudio/files/patch-src_modules_oss_module-oss.c
index 97cf10e4dde1..a723999af7fd 100644
--- a/audio/pulseaudio/files/patch-src_modules_module-oss.c
+++ b/audio/pulseaudio/files/patch-src_modules_oss_module-oss.c
@@ -1,21 +1,21 @@
---- src/modules/module-oss.c.orig 2009-07-10 02:51:21.000000000 -0400
-+++ src/modules/module-oss.c 2009-07-10 02:52:05.000000000 -0400
-@@ -1204,10 +1204,12 @@ int pa__init(pa_module*m) {
- use_mmap = 0;
+--- src/modules/oss/module-oss.c.orig 2009-04-13 17:11:32.000000000 -0400
++++ src/modules/oss/module-oss.c 2009-07-19 14:24:25.000000000 -0400
+@@ -1214,10 +1214,12 @@ int pa__init(pa_module*m) {
+ use_mmap = FALSE;
}
+#ifndef __FreeBSD__
if (use_mmap && mode == O_WRONLY) {
pa_log_info("Device opened for playback only, cannot do memory mapping, falling back to UNIX write() mode.");
- use_mmap = 0;
+ use_mmap = FALSE;
}
+#endif
if (pa_oss_get_hw_description(dev, hwdesc, sizeof(hwdesc)) >= 0)
pa_log_info("Hardware name is '%s'.", hwdesc);
-@@ -1385,7 +1387,7 @@ int pa__init(pa_module*m) {
+@@ -1399,7 +1401,7 @@ int pa__init(pa_module*m) {
+ if ((u->mixer_fd = pa_oss_open_mixer_for_device(u->device_name)) >= 0) {
pa_bool_t do_close = TRUE;
- u->mixer_devmask = 0;
- if (ioctl(fd, SOUND_MIXER_READ_DEVMASK, &u->mixer_devmask) < 0)
+ if (ioctl(u->mixer_fd, SOUND_MIXER_READ_DEVMASK, &u->mixer_devmask) < 0)
diff --git a/audio/pulseaudio/files/patch-src_modules_oss-util.c b/audio/pulseaudio/files/patch-src_modules_oss_oss-util.c
index bf44d4fdd729..5fe7ec3294d1 100644
--- a/audio/pulseaudio/files/patch-src_modules_oss-util.c
+++ b/audio/pulseaudio/files/patch-src_modules_oss_oss-util.c
@@ -1,5 +1,5 @@
---- src/modules/oss-util.c.orig 2007-11-08 21:45:25.000000000 -0500
-+++ src/modules/oss-util.c 2008-01-09 17:00:45.000000000 -0500
+--- src/modules/oss/oss-util.c.orig 2007-11-08 21:45:25.000000000 -0500
++++ src/modules/oss/oss-util.c 2008-01-09 17:00:45.000000000 -0500
@@ -44,6 +44,22 @@
#include "oss-util.h"
@@ -23,15 +23,3 @@
int pa_oss_open(const char *device, int *mode, int* pcaps) {
int fd = -1;
int caps;
-@@ -300,7 +316,11 @@ static int get_device_number(const char
- int r;
-
- if (!(p = rp = pa_readlink(dev))) {
-+#ifdef ENOLINK
- if (errno != EINVAL && errno != ENOLINK) {
-+#else
-+ if (errno != EINVAL) {
-+#endif
- r = -1;
- goto finish;
- }
diff --git a/audio/pulseaudio/files/patch-src_modules_rtp_rtsp_client.c b/audio/pulseaudio/files/patch-src_modules_rtp_rtsp_client.c
new file mode 100644
index 000000000000..2dbcad26ab0d
--- /dev/null
+++ b/audio/pulseaudio/files/patch-src_modules_rtp_rtsp_client.c
@@ -0,0 +1,12 @@
+--- src/modules/rtp/rtsp_client.c.orig 2009-07-19 14:38:38.000000000 -0400
++++ src/modules/rtp/rtsp_client.c 2009-07-19 14:39:46.000000000 -0400
+@@ -23,6 +23,9 @@
+ #include <config.h>
+ #endif
+
++#include <sys/types.h>
++#include <sys/socket.h>
++#include <netinet/in.h>
+ #include <fcntl.h>
+ #include <stdlib.h>
+ #include <string.h>
diff --git a/audio/pulseaudio/files/patch-src_tests_rtstutter.c b/audio/pulseaudio/files/patch-src_tests_rtstutter.c
deleted file mode 100644
index c8d657481d62..000000000000
--- a/audio/pulseaudio/files/patch-src_tests_rtstutter.c
+++ /dev/null
@@ -1,18 +0,0 @@
---- src/tests/rtstutter.c.orig 2008-07-26 17:10:17.000000000 -0400
-+++ src/tests/rtstutter.c 2008-07-26 17:12:26.000000000 -0400
-@@ -42,6 +42,7 @@ static int msec_lower, msec_upper;
- static void* work(void *p) PA_GCC_NORETURN;
-
- static void* work(void *p) {
-+#ifndef __FreeBSD__
- cpu_set_t mask;
- struct sched_param param;
-
-@@ -83,6 +84,7 @@ static void* work(void *p) {
- } while (now.tv_sec < end.tv_sec ||
- (now.tv_sec == end.tv_sec && now.tv_nsec < end.tv_nsec));
- }
-+#endif
- }
-
- int main(int argc, char*argv[]) {
diff --git a/audio/pulseaudio/files/patch-ubuntu-bundle b/audio/pulseaudio/files/patch-ubuntu-bundle
index 34e0819b97f1..65df94565aef 100644
--- a/audio/pulseaudio/files/patch-ubuntu-bundle
+++ b/audio/pulseaudio/files/patch-ubuntu-bundle
@@ -1,1668 +1,893 @@
-From 121bfc9f1916395e5216927ec3a9e0bbd742395a Mon Sep 17 00:00:00 2001
-From: Sjoerd Simons <sjoerd@debian.org>
-Date: Sun, 19 Oct 2008 13:39:50 +0100
-Subject: [PATCH] load module gconf earlier
+From 876624e3147cf3deac847b11bde4b04988971eee Mon Sep 17 00:00:00 2001
+From: Lennart Poettering <lennart@poettering.net>
+Date: Sun, 19 Apr 2009 19:02:16 +0200
+Subject: [PATCH 02/28] util: if NULL is passed to pa_path_get_filename() just hand it through
---
- src/daemon/default.pa.in | 19 ++++++++++---------
- 1 files changed, 10 insertions(+), 9 deletions(-)
+ src/pulse/util.c | 3 ++-
+ src/pulse/util.h | 2 +-
+ 2 files changed, 3 insertions(+), 2 deletions(-)
-diff --git a/src/daemon/default.pa.in b/src/daemon/default.pa.in
-index 7032038..41322c6 100755
---- src/daemon/default.pa.in
-+++ src/daemon/default.pa.in
-@@ -72,6 +72,16 @@ load-module module-native-protocol-unix
- #load-module module-null-sink sink_name=rtp format=s16be channels=2 rate=44100 description="RTP Multicast Sink"
- #load-module module-rtp-send source=rtp.monitor
-
-+### Load additional modules from GConf settings. This can be configured with the paprefs tool.
-+### Please keep in mind that the modules configured by paprefs might conflict with manually
-+### loaded modules.
-+.ifexists module-gconf@PA_SOEXT@
-+.nofail
-+load-module module-gconf
-+.fail
-+.endif
-+
-+
- ### Automatically restore the volume of streams and devices
- load-module module-stream-restore
- load-module module-device-restore
-@@ -96,15 +106,6 @@ load-module module-console-kit
- ### Enable positioned event sounds
- load-module module-position-event-sounds
-
--### Load additional modules from GConf settings. This can be configured with the paprefs tool.
--### Please keep in mind that the modules configured by paprefs might conflict with manually
--### loaded modules.
--.ifexists module-gconf@PA_SOEXT@
--.nofail
--load-module module-gconf
--.fail
--.endif
--
- # X11 modules should not be started from default.pa so that one daemon
- # can be shared by multiple sessions.
-
-Index: pulseaudio-0.9.14/src/daemon/daemon.conf.in
-===================================================================
---- src/daemon/daemon.conf.in 2009-03-07 05:01:11.000000000 -0500
-+++ src/daemon/daemon.conf.in 2009-03-07 05:01:54.000000000 -0500
-@@ -46,7 +46,7 @@
- ; log-target = auto
- ; log-level = notice
-
--; resample-method = speex-float-3
-+resample-method = src-linear
- ; disable-remixing = no
- ; disable-lfe-remixing = yes
-
-@@ -72,5 +72,5 @@
- ; default-sample-rate = 44100
- ; default-sample-channels = 2
-
--; default-fragments = 4
--; default-fragment-size-msec = 25
-+default-fragments = 8
-+default-fragment-size-msec = 10
-Index: pulseaudio-0.9.13/src/daemon/default.pa.in
-===================================================================
---- src/daemon/default.pa.in 2009-01-06 22:58:47.000000000 -0500
-+++ src/daemon/default.pa.in 2009-01-06 22:59:15.000000000 -0500
-@@ -29,6 +29,9 @@
-
- .fail
+diff --git src/pulse/util.c src/pulse/util.c
+index 54a188d..6f1e40a 100644
+--- src/pulse/util.c
++++ src/pulse/util.c
+@@ -219,7 +219,8 @@ char *pa_get_binary_name(char *s, size_t l) {
+ char *pa_path_get_filename(const char *p) {
+ char *fn;
+
+- pa_assert(p);
++ if (!p)
++ return NULL;
+
+ if ((fn = strrchr(p, PA_PATH_SEP_CHAR)))
+ return fn+1;
+diff --git src/pulse/util.h src/pulse/util.h
+index f6dd40c..ad85653 100644
+--- src/pulse/util.h
++++ src/pulse/util.h
+@@ -51,7 +51,7 @@ char *pa_get_home_dir(char *s, size_t l);
+ char *pa_get_binary_name(char *s, size_t l);
+
+ /** Return a pointer to the filename inside a path (which is the last
+- * component). */
++ * component). If passed NULL will return NULL. */
+ char *pa_path_get_filename(const char *p);
+
+ /** Wait t milliseconds */
+From 7f17882bae9d2b694f440d28dc9bb3fcf133fa1a Mon Sep 17 00:00:00 2001
+From: Lennart Poettering <lennart@poettering.net>
+Date: Fri, 1 May 2009 04:13:15 +0200
+Subject: [PATCH 08/28] endian: fix LE/BE order for 24 bit accessor functions
+
+---
+ src/pulsecore/endianmacros.h | 8 ++++----
+ 1 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git src/pulsecore/endianmacros.h src/pulsecore/endianmacros.h
+index 2257937..2b18cf8 100644
+--- src/pulsecore/endianmacros.h
++++ src/pulsecore/endianmacros.h
+@@ -45,27 +45,27 @@
+ #define PA_UINT32_SWAP(x) ( (uint32_t) ( ((uint32_t) (x) >> 24) | ((uint32_t) (x) << 24) | (((uint32_t) (x) & 0xFF00) << 8) | ((((uint32_t) (x)) >> 8) & 0xFF00) ) )
+ #endif
-+### Automatically suspend sinks/sources that become idle for too long
-+load-module module-suspend-on-idle
-+
- ### Automatically restore the volume of streams and devices
- load-module module-stream-restore
- load-module module-device-restore
-@@ -95,9 +98,6 @@
- ### Make sure we always have a sink around, even if it is a null sink.
- load-module module-always-sink
-
--### Automatically suspend sinks/sources that become idle for too long
--load-module module-suspend-on-idle
--
- ### If autoexit on idle is enabled we want to make sure we only quit
- ### when no local session needs us anymore.
- load-module module-console-kit
-Index: pulseaudio-0.9.13/src/pulsecore/sink-input.c
-===================================================================
---- src/pulsecore/sink-input.c 2008-12-28 23:33:28.000000000 -0500
-+++ src/pulsecore/sink-input.c 2008-12-28 23:35:20.000000000 -0500
-@@ -292,8 +292,6 @@
- pa_assert_se(i->sink->n_corked -- >= 1);
- else if (i->state != PA_SINK_INPUT_CORKED && state == PA_SINK_INPUT_CORKED)
- i->sink->n_corked++;
--
-- pa_sink_update_status(i->sink);
+-static inline uint32_t PA_READ24LE(const uint8_t *p) {
++static inline uint32_t PA_READ24BE(const uint8_t *p) {
+ return
+ ((uint32_t) p[0] << 16) |
+ ((uint32_t) p[1] << 8) |
+ ((uint32_t) p[2]);
}
- /* Called from main context */
-@@ -331,6 +329,8 @@
- pa_hook_fire(&i->sink->core->hooks[PA_CORE_HOOK_SINK_INPUT_STATE_CHANGED], ssync);
- }
-
-+ pa_sink_update_status(i->sink);
-+
- return 0;
+-static inline uint32_t PA_READ24BE(const uint8_t *p) {
++static inline uint32_t PA_READ24LE(const uint8_t *p) {
+ return
+ ((uint32_t) p[2] << 16) |
+ ((uint32_t) p[1] << 8) |
+ ((uint32_t) p[0]);
}
-@@ -381,6 +381,8 @@
- pa_hook_fire(&i->sink->core->hooks[PA_CORE_HOOK_SINK_INPUT_UNLINK_POST], i);
- }
-
-+ pa_sink_update_status(i->sink);
-+
- i->sink = NULL;
- pa_sink_input_unref(i);
+-static inline void PA_WRITE24LE(uint8_t *p, uint32_t u) {
++static inline void PA_WRITE24BE(uint8_t *p, uint32_t u) {
+ p[0] = (uint8_t) (u >> 16);
+ p[1] = (uint8_t) (u >> 8);
+ p[2] = (uint8_t) u;
}
-@@ -442,6 +444,8 @@
- pa_subscription_post(i->sink->core, PA_SUBSCRIPTION_EVENT_SINK_INPUT|PA_SUBSCRIPTION_EVENT_NEW, i->index);
- pa_hook_fire(&i->sink->core->hooks[PA_CORE_HOOK_SINK_INPUT_PUT], i);
-+
-+ pa_sink_update_status(i->sink);
+-static inline void PA_WRITE24BE(uint8_t *p, uint32_t u) {
++static inline void PA_WRITE24LE(uint8_t *p, uint32_t u) {
+ p[2] = (uint8_t) (u >> 16);
+ p[1] = (uint8_t) (u >> 8);
+ p[0] = (uint8_t) u;
+From 11c17636d1d6c7eb4d6278869d3fa91715433ab2 Mon Sep 17 00:00:00 2001
+From: Lennart Poettering <lennart@poettering.net>
+Date: Sun, 19 Apr 2009 19:04:50 +0200
+Subject: [PATCH 09/28] log: print file name only when we have it
+
+---
+ src/pulsecore/log.c | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git src/pulsecore/log.c src/pulsecore/log.c
+index 60ea9c5..919ebe1 100644
+--- src/pulsecore/log.c
++++ src/pulsecore/log.c
+@@ -285,7 +285,7 @@ void pa_log_levelv_meta(
+
+ if ((_flags & PA_LOG_PRINT_META) && file && line > 0 && func)
+ pa_snprintf(location, sizeof(location), "[%s:%i %s()] ", file, line, func);
+- else if (_flags & (PA_LOG_PRINT_META|PA_LOG_PRINT_FILE))
++ else if ((_flags & (PA_LOG_PRINT_META|PA_LOG_PRINT_FILE)) && file)
+ pa_snprintf(location, sizeof(location), "%s: ", pa_path_get_filename(file));
+ else
+ location[0] = 0;
+From 977f59368ba55fac3fe21d7549bc0552daf07d91 Mon Sep 17 00:00:00 2001
+From: Lennart Poettering <lennart@poettering.net>
+Date: Tue, 21 Apr 2009 21:24:33 +0200
+Subject: [PATCH 13/28] mutex: when we fail to fill in mutex into static mutex ptr free it again
+
+---
+ src/pulsecore/mutex-posix.c | 2 ++
+ 1 files changed, 2 insertions(+), 0 deletions(-)
+
+diff --git src/pulsecore/mutex-posix.c src/pulsecore/mutex-posix.c
+index b3e5256..0ff4bee 100644
+--- src/pulsecore/mutex-posix.c
++++ src/pulsecore/mutex-posix.c
+@@ -153,6 +153,8 @@ pa_mutex* pa_static_mutex_get(pa_static_mutex *s, pa_bool_t recursive, pa_bool_t
+ if ((pa_atomic_ptr_cmpxchg(&s->ptr, NULL, m)))
+ return m;
+
++ pa_mutex_free(m);
++
+ /* Him, filling in failed, so someone else must have filled in
+ * already */
+ pa_assert_se(m = pa_atomic_ptr_load(&s->ptr));
+From 776b0817f79b475c9725b53c185484b5e3ff6fbb Mon Sep 17 00:00:00 2001
+From: Lennart Poettering <lennart@poettering.net>
+Date: Tue, 26 May 2009 22:30:36 +0200
+Subject: [PATCH 14/28] oss: don't deadlock when we try to resume an OSS device that lacks a mixer
+
+---
+ src/modules/oss/module-oss.c | 11 +++++++----
+ 1 files changed, 7 insertions(+), 4 deletions(-)
+
+diff --git src/modules/oss/module-oss.c src/modules/oss/module-oss.c
+index 9f7863f..aa5f918 100644
+--- src/modules/oss/module-oss.c
++++ src/modules/oss/module-oss.c
+@@ -477,6 +477,7 @@ static void build_pollfd(struct userdata *u) {
+ pollfd->revents = 0;
}
- /* Called from main context */
-Index: pulseaudio-0.9.13/src/pulsecore/sink.c
-===================================================================
---- src/pulsecore/sink.c 2008-12-28 23:35:05.000000000 -0500
-+++ src/pulsecore/sink.c 2008-12-28 23:35:20.000000000 -0500
-@@ -990,7 +990,9 @@
- unsigned ret;
++/* Called from IO context */
+ static int suspend(struct userdata *u) {
+ pa_assert(u);
+ pa_assert(u->fd >= 0);
+@@ -526,6 +527,7 @@ static int suspend(struct userdata *u) {
+ return 0;
+ }
- pa_sink_assert_ref(s);
-- pa_assert(PA_SINK_IS_LINKED(s->state));
-+
-+ if (!PA_SINK_IS_LINKED(s->state))
-+ return 0;
++/* Called from IO context */
+ static int unsuspend(struct userdata *u) {
+ int m;
+ pa_sample_spec ss, *ss_original;
+@@ -616,10 +618,10 @@ static int unsuspend(struct userdata *u) {
- ret = pa_idxset_size(s->inputs);
- pa_assert(ret >= s->n_corked);
-Index: pulseaudio-0.9.13/src/pulsecore/source-output.c
-===================================================================
---- src/pulsecore/source-output.c 2008-12-28 23:35:05.000000000 -0500
-+++ src/pulsecore/source-output.c 2008-12-28 23:35:20.000000000 -0500
-@@ -246,7 +246,6 @@
- else if (o->state != PA_SOURCE_OUTPUT_CORKED && state == PA_SOURCE_OUTPUT_CORKED)
- o->source->n_corked++;
+ build_pollfd(u);
-- pa_source_update_status(o->source);
- }
+- if (u->sink)
+- pa_sink_get_volume(u->sink, TRUE, FALSE);
+- if (u->source)
+- pa_source_get_volume(u->source, TRUE);
++ if (u->sink && u->sink->get_volume)
++ u->sink->get_volume(u->sink);
++ if (u->source && u->source->get_volume)
++ u->source->get_volume(u->source);
- /* Called from main context */
-@@ -264,6 +263,8 @@
- if (state != PA_SOURCE_OUTPUT_UNLINKED)
- pa_hook_fire(&o->source->core->hooks[PA_CORE_HOOK_SOURCE_OUTPUT_STATE_CHANGED], o);
+ pa_log_info("Resumed successfully...");
-+ pa_source_update_status(o->source);
-+
- return 0;
+@@ -631,6 +633,7 @@ fail:
+ return -1;
}
-@@ -302,6 +303,8 @@
- pa_hook_fire(&o->source->core->hooks[PA_CORE_HOOK_SOURCE_OUTPUT_UNLINK_POST], o);
++/* Called from IO context */
+ static int sink_process_msg(pa_msgobject *o, int code, void *data, int64_t offset, pa_memchunk *chunk) {
+ struct userdata *u = PA_SINK(o)->userdata;
+ int ret;
+From b8e05f113a44f46a91d3343e3e4a1eb15c98e1c9 Mon Sep 17 00:00:00 2001
+From: Lennart Poettering <lennart@poettering.net>
+Date: Wed, 29 Apr 2009 04:13:07 +0200
+Subject: [PATCH 15/28] simple-protocol: don't hit an assert when we call connection_unlink() early
+
+---
+ src/pulsecore/protocol-simple.c | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git src/pulsecore/protocol-simple.c src/pulsecore/protocol-simple.c
+index 44fe597..776d74b 100644
+--- src/pulsecore/protocol-simple.c
++++ src/pulsecore/protocol-simple.c
+@@ -130,7 +130,7 @@ static void connection_unlink(connection *c) {
+ c->io = NULL;
}
-+ pa_source_update_status(o->source);
-+
- o->source = NULL;
- pa_source_output_unref(o);
+- pa_assert_se(pa_idxset_remove_by_data(c->protocol->connections, c, NULL) == c);
++ pa_idxset_remove_by_data(c->protocol->connections, c, NULL);
+ c->protocol = NULL;
+ connection_unref(c);
}
-@@ -353,6 +356,8 @@
+From bee02ee03fc82f447a358a564a4d922c0f29cfcf Mon Sep 17 00:00:00 2001
+From: Lennart Poettering <lennart@poettering.net>
+Date: Wed, 29 Apr 2009 01:46:12 +0200
+Subject: [PATCH 16/28] idxset: add enumeration macro PA_IDXSET_FOREACH
+
+---
+ src/pulsecore/idxset.h | 4 ++++
+ 1 files changed, 4 insertions(+), 0 deletions(-)
+
+diff --git src/pulsecore/idxset.h src/pulsecore/idxset.h
+index 7531ea3..6b9ff47 100644
+--- src/pulsecore/idxset.h
++++ src/pulsecore/idxset.h
+@@ -103,4 +103,8 @@ unsigned pa_idxset_size(pa_idxset*s);
+ /* Return TRUE of the idxset is empty */
+ pa_bool_t pa_idxset_isempty(pa_idxset *s);
- pa_subscription_post(o->source->core, PA_SUBSCRIPTION_EVENT_SOURCE_OUTPUT|PA_SUBSCRIPTION_EVENT_NEW, o->index);
- pa_hook_fire(&o->source->core->hooks[PA_CORE_HOOK_SOURCE_OUTPUT_PUT], o);
+
-+ pa_source_update_status(o->source);
- }
-
- /* Called from main context */
-Index: pulseaudio-0.9.13/src/pulsecore/source.c
-===================================================================
---- src/pulsecore/source.c 2008-12-28 23:35:05.000000000 -0500
-+++ src/pulsecore/source.c 2008-12-28 23:35:20.000000000 -0500
-@@ -637,7 +637,9 @@
- unsigned ret;
-
- pa_source_assert_ref(s);
-- pa_assert(PA_SOURCE_IS_LINKED(s->state));
++#define PA_IDXSET_FOREACH(e, s, idx) \
++ for ((e) = pa_idxset_first((s), &(idx)); (e); (e) = pa_idxset_next((s), &(idx)))
+
-+ if (!PA_SOURCE_IS_LINKED(s->state))
-+ return 0;
-
- ret = pa_idxset_size(s->outputs);
- pa_assert(ret >= s->n_corked);
-Index: pulseaudio-0.9.13/src/pulsecore/sample-util.c
-===================================================================
---- src/pulsecore/sample-util.c 2009-01-03 18:30:13.000000000 -0500
-+++ src/pulsecore/sample-util.c 2009-01-03 18:30:30.000000000 -0500
-@@ -777,7 +777,7 @@
- return (l/fs) * fs;
- }
-
--int pa_frame_aligned(size_t l, const pa_sample_spec *ss) {
-+pa_bool_t pa_frame_aligned(size_t l, const pa_sample_spec *ss) {
- size_t fs;
-
- pa_assert(ss);
-Index: pulseaudio-0.9.13/src/pulsecore/sample-util.h
-===================================================================
---- src/pulsecore/sample-util.h 2009-01-03 18:30:13.000000000 -0500
-+++ src/pulsecore/sample-util.h 2009-01-03 18:30:30.000000000 -0500
-@@ -71,7 +71,7 @@
-
- size_t pa_frame_align(size_t l, const pa_sample_spec *ss) PA_GCC_PURE;
-
--int pa_frame_aligned(size_t l, const pa_sample_spec *ss) PA_GCC_PURE;
-+pa_bool_t pa_frame_aligned(size_t l, const pa_sample_spec *ss) PA_GCC_PURE;
-
- void pa_interleave(const void *src[], unsigned channels, void *dst, size_t ss, unsigned n);
- void pa_deinterleave(const void *src, void *dst[], unsigned channels, size_t ss, unsigned n);
-Index: pulseaudio-0.9.13/src/pulsecore/once.c
-===================================================================
---- src/pulsecore/once.c 2009-01-03 18:47:32.000000000 -0500
-+++ src/pulsecore/once.c 2009-01-03 18:48:07.000000000 -0500
-@@ -28,13 +28,13 @@
-
- #include "once.h"
-
--int pa_once_begin(pa_once *control) {
-+pa_bool_t pa_once_begin(pa_once *control) {
- pa_mutex *m;
-
- pa_assert(control);
-
- if (pa_atomic_load(&control->done))
-- return 0;
-+ return FALSE;
-
- pa_atomic_inc(&control->ref);
-
-@@ -50,15 +50,17 @@
- * wait until it is unlocked */
- pa_mutex_lock(m);
-
-+ pa_assert(pa_atomic_load(&control->done));
-+
- pa_once_end(control);
-- return 0;
-+ return FALSE;
- }
-
- pa_assert_se(m = pa_mutex_new(FALSE, FALSE));
- pa_mutex_lock(m);
-
- if (pa_atomic_ptr_cmpxchg(&control->mutex, NULL, m))
-- return 1;
-+ return TRUE;
-
- pa_mutex_unlock(m);
- pa_mutex_free(m);
-@@ -91,4 +93,3 @@
- pa_once_end(control);
- }
- }
--
-Index: pulseaudio-0.9.13/src/pulsecore/once.h
-===================================================================
---- src/pulsecore/once.h 2009-01-03 18:47:43.000000000 -0500
-+++ src/pulsecore/once.h 2009-01-03 18:48:07.000000000 -0500
-@@ -38,7 +38,7 @@
+ #endif
+From b7eff401100af0de381fba66293d21aca7ff36fa Mon Sep 17 00:00:00 2001
+From: Lennart Poettering <lennart@poettering.net>
+Date: Fri, 17 Apr 2009 20:30:09 +0200
+Subject: [PATCH 17/28] rescue-streams: when one stream move fails try to continue with the remaining ones
+
+---
+ src/modules/module-rescue-streams.c | 16 ++++++----------
+ 1 files changed, 6 insertions(+), 10 deletions(-)
+
+diff --git src/modules/module-rescue-streams.c src/modules/module-rescue-streams.c
+index 4f616e0..7c99a9b 100644
+--- src/modules/module-rescue-streams.c
++++ src/modules/module-rescue-streams.c
+@@ -77,12 +77,10 @@ static pa_hook_result_t sink_hook_callback(pa_core *c, pa_sink *sink, void* user
}
- /* Not to be called directly, use the macros defined below instead */
--int pa_once_begin(pa_once *o);
-+pa_bool_t pa_once_begin(pa_once *o);
- void pa_once_end(pa_once *o);
-
- #define PA_ONCE_BEGIN \
-Index: pulseaudio-0.9.13/src/pulsecore/protocol-native.c
-===================================================================
---- src/pulsecore/protocol-native.c 2009-01-15 17:25:43.000000000 -0500
-+++ src/pulsecore/protocol-native.c 2009-01-15 17:25:56.000000000 -0500
-@@ -3933,7 +3933,7 @@
+ while ((i = pa_idxset_first(sink->inputs, NULL))) {
+- if (pa_sink_input_move_to(i, target, FALSE) < 0) {
++ if (pa_sink_input_move_to(i, target, FALSE) < 0)
+ pa_log_warn("Failed to move sink input %u \"%s\" to %s.", i->index, pa_proplist_gets(i->proplist, PA_PROP_APPLICATION_NAME), target->name);
+- return PA_HOOK_OK;
+- }
+-
+- pa_log_info("Sucessfully moved sink input %u \"%s\" to %s.", i->index, pa_proplist_gets(i->proplist, PA_PROP_APPLICATION_NAME), target->name);
++ else
++ pa_log_info("Sucessfully moved sink input %u \"%s\" to %s.", i->index, pa_proplist_gets(i->proplist, PA_PROP_APPLICATION_NAME), target->name);
}
- CHECK_VALIDITY(c->pstream, c->authorized, tag, PA_ERR_ACCESS);
-- CHECK_VALIDITY(c->pstream, !name || pa_namereg_is_valid_name(name), tag, PA_ERR_INVALID);
-+ CHECK_VALIDITY(c->pstream, !name || pa_namereg_is_valid_name(name) || *name == 0, tag, PA_ERR_INVALID);
- CHECK_VALIDITY(c->pstream, idx != PA_INVALID_INDEX || name, tag, PA_ERR_INVALID);
- CHECK_VALIDITY(c->pstream, idx == PA_INVALID_INDEX || !name, tag, PA_ERR_INVALID);
- CHECK_VALIDITY(c->pstream, !name || idx == PA_INVALID_INDEX, tag, PA_ERR_INVALID);
-@@ -3942,6 +3942,8 @@
- if (idx == PA_INVALID_INDEX && name && !*name) {
+@@ -121,12 +119,10 @@ static pa_hook_result_t source_hook_callback(pa_core *c, pa_source *source, void
+ pa_assert(target != source);
-+ pa_log_debug("%s all sinks", b ? "Suspending" : "Resuming");
-+
- if (pa_sink_suspend_all(c->protocol->core, b) < 0) {
- pa_pstream_send_error(c->pstream, tag, PA_ERR_INVALID);
- return;
-@@ -3967,6 +3969,8 @@
+ while ((o = pa_idxset_first(source->outputs, NULL))) {
+- if (pa_source_output_move_to(o, target, FALSE) < 0) {
++ if (pa_source_output_move_to(o, target, FALSE) < 0)
+ pa_log_warn("Failed to move source output %u \"%s\" to %s.", o->index, pa_proplist_gets(o->proplist, PA_PROP_APPLICATION_NAME), target->name);
+- return PA_HOOK_OK;
+- }
+-
+- pa_log_info("Sucessfully moved source output %u \"%s\" to %s.", o->index, pa_proplist_gets(o->proplist, PA_PROP_APPLICATION_NAME), target->name);
++ else
++ pa_log_info("Sucessfully moved source output %u \"%s\" to %s.", o->index, pa_proplist_gets(o->proplist, PA_PROP_APPLICATION_NAME), target->name);
+ }
- if (idx == PA_INVALID_INDEX && name && !*name) {
-+ pa_log_debug("%s all sources", b ? "Suspending" : "Resuming");
-+
- if (pa_source_suspend_all(c->protocol->core, b) < 0) {
- pa_pstream_send_error(c->pstream, tag, PA_ERR_INVALID);
- return;
-Index: pulseaudio-0.9.14/src/pulsecore/asyncq.c
-===================================================================
---- src/pulsecore/asyncq.c 2009-01-31 15:19:57.000000000 -0500
-+++ src/pulsecore/asyncq.c 2009-01-31 15:20:05.000000000 -0500
-@@ -163,14 +163,14 @@
- return 0;
+From 79510a3b15652b04bffbb798221d27e8d16f4ce2 Mon Sep 17 00:00:00 2001
+From: Lennart Poettering <lennart@poettering.net>
+Date: Fri, 1 May 2009 04:12:24 +0200
+Subject: [PATCH 18/28] sample: correctly pass s24-32 formats
+
+---
+ src/pulse/sample.c | 8 ++++----
+ 1 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git src/pulse/sample.c src/pulse/sample.c
+index 1e67b03..ed7b1b0 100644
+--- src/pulse/sample.c
++++ src/pulse/sample.c
+@@ -231,13 +231,13 @@ pa_sample_format_t pa_parse_sample_format(const char *format) {
+ else if (strcasecmp(format, "s24re") == 0)
+ return PA_SAMPLE_S24RE;
+ else if (strcasecmp(format, "s24-32le") == 0)
+- return PA_SAMPLE_S24LE;
++ return PA_SAMPLE_S24_32LE;
+ else if (strcasecmp(format, "s24-32be") == 0)
+- return PA_SAMPLE_S24BE;
++ return PA_SAMPLE_S24_32BE;
+ else if (strcasecmp(format, "s24-32ne") == 0 || strcasecmp(format, "s24-32") == 0)
+- return PA_SAMPLE_S24NE;
++ return PA_SAMPLE_S24_32NE;
+ else if (strcasecmp(format, "s24-32re") == 0)
+- return PA_SAMPLE_S24RE;
++ return PA_SAMPLE_S24_32RE;
+
+ return -1;
}
+From 397f517aafda4efd00532ba7f19e7045aa853c2a Mon Sep 17 00:00:00 2001
+From: Lennart Poettering <lennart@poettering.net>
+Date: Fri, 1 May 2009 04:14:40 +0200
+Subject: [PATCH 19/28] sample-util: fix iteration loop when adjusting volume of s24 samples
+
+---
+ src/pulsecore/sample-util.c | 8 ++++----
+ 1 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git src/pulsecore/sample-util.c src/pulsecore/sample-util.c
+index 3a9b384..a3e490b 100644
+--- src/pulsecore/sample-util.c
++++ src/pulsecore/sample-util.c
+@@ -831,9 +831,9 @@ void pa_volume_memchunk(
--static pa_bool_t flush_postq(pa_asyncq *l) {
-+static pa_bool_t flush_postq(pa_asyncq *l, pa_bool_t wait) {
- struct localq *q;
-
- pa_assert(l);
-
- while ((q = l->last_localq)) {
-
-- if (push(l, q->data, FALSE) < 0)
-+ if (push(l, q->data, wait) < 0)
- return FALSE;
-
- l->last_localq = q->prev;
-@@ -187,7 +187,7 @@
- int pa_asyncq_push(pa_asyncq*l, void *p, pa_bool_t wait) {
- pa_assert(l);
-
-- if (!flush_postq(l))
-+ if (!flush_postq(l, wait))
- return -1;
-
- return push(l, p, wait);
-@@ -199,8 +199,9 @@
- pa_assert(l);
- pa_assert(p);
-
-- if (pa_asyncq_push(l, p, FALSE) >= 0)
-- return;
-+ if (flush_postq(l, FALSE))
-+ if (pa_asyncq_push(l, p, FALSE) >= 0)
-+ return;
-
- /* OK, we couldn't push anything in the queue. So let's queue it
- * locally and push it later */
-@@ -299,7 +300,7 @@
+ calc_linear_integer_volume(linear, volume);
- for (;;) {
+- e = (uint8_t*) ptr + c->length/3;
++ e = (uint8_t*) ptr + c->length;
-- if (flush_postq(l))
-+ if (flush_postq(l, FALSE))
- break;
+- for (channel = 0, d = ptr; d < e; d++) {
++ for (channel = 0, d = ptr; d < e; d += 3) {
+ int64_t t;
- if (pa_fdsem_before_poll(l->read_fdsem) >= 0) {
-Index: pulseaudio-0.9.14/src/pulsecore/sink.c
-===================================================================
---- src/pulsecore/sink.c 2009-01-31 15:24:30.000000000 -0500
-+++ src/pulsecore/sink.c 2009-01-31 15:24:55.000000000 -0500
-@@ -641,7 +641,7 @@
+ t = (int64_t)((int32_t) (PA_READ24NE(d) << 8));
+@@ -854,9 +854,9 @@ void pa_volume_memchunk(
- pa_assert(length > 0);
+ calc_linear_integer_volume(linear, volume);
-- n = s->thread_info.state == PA_SINK_RUNNING ? fill_mix_info(s, &length, info, MAX_MIX_CHANNELS) : 0;
-+ n = fill_mix_info(s, &length, info, MAX_MIX_CHANNELS);
+- e = (uint8_t*) ptr + c->length/3;
++ e = (uint8_t*) ptr + c->length;
- if (n == 0) {
+- for (channel = 0, d = ptr; d < e; d++) {
++ for (channel = 0, d = ptr; d < e; d += 3) {
+ int64_t t;
-@@ -684,8 +684,7 @@
- result->index = 0;
+ t = (int64_t)((int32_t) (PA_READ24RE(d) << 8));
+From 55244f7a07335115caf2b9cc57aecc0f8cd08030 Mon Sep 17 00:00:00 2001
+From: Lennart Poettering <lennart@poettering.net>
+Date: Fri, 1 May 2009 04:14:02 +0200
+Subject: [PATCH 20/28] sample-util: properly allocate silence block for s24-32 formats
+
+---
+ src/pulsecore/sample-util.c | 4 ++++
+ 1 files changed, 4 insertions(+), 0 deletions(-)
+
+diff --git src/pulsecore/sample-util.c src/pulsecore/sample-util.c
+index a3e490b..dda3883 100644
+--- src/pulsecore/sample-util.c
++++ src/pulsecore/sample-util.c
+@@ -1181,6 +1181,8 @@ pa_memchunk* pa_silence_memchunk_get(pa_silence_cache *cache, pa_mempool *pool,
+ case PA_SAMPLE_S32BE:
+ case PA_SAMPLE_S24LE:
+ case PA_SAMPLE_S24BE:
++ case PA_SAMPLE_S24_32LE:
++ case PA_SAMPLE_S24_32RE:
+ case PA_SAMPLE_FLOAT32LE:
+ case PA_SAMPLE_FLOAT32BE:
+ cache->blocks[PA_SAMPLE_S16LE] = b = silence_memblock_new(pool, 0);
+@@ -1189,6 +1191,8 @@ pa_memchunk* pa_silence_memchunk_get(pa_silence_cache *cache, pa_mempool *pool,
+ cache->blocks[PA_SAMPLE_S32BE] = pa_memblock_ref(b);
+ cache->blocks[PA_SAMPLE_S24LE] = pa_memblock_ref(b);
+ cache->blocks[PA_SAMPLE_S24BE] = pa_memblock_ref(b);
++ cache->blocks[PA_SAMPLE_S24_32LE] = pa_memblock_ref(b);
++ cache->blocks[PA_SAMPLE_S24_32BE] = pa_memblock_ref(b);
+ cache->blocks[PA_SAMPLE_FLOAT32LE] = pa_memblock_ref(b);
+ cache->blocks[PA_SAMPLE_FLOAT32BE] = pa_memblock_ref(b);
+ break;
+From 100af7efac584be9f229f4daf663dbb939f5d929 Mon Sep 17 00:00:00 2001
+From: Lennart Poettering <lennart@poettering.net>
+Date: Fri, 1 May 2009 04:22:08 +0200
+Subject: [PATCH 21/28] sconv: fix a few minor conversion issues
+
+---
+ src/pulsecore/sconv-s16le.c | 10 +++++-----
+ src/pulsecore/sconv.c | 2 +-
+ 2 files changed, 6 insertions(+), 6 deletions(-)
+
+diff --git src/pulsecore/sconv-s16le.c src/pulsecore/sconv-s16le.c
+index 307ce7b..43b8cb3 100644
+--- src/pulsecore/sconv-s16le.c
++++ src/pulsecore/sconv-s16le.c
+@@ -370,7 +370,7 @@ void pa_sconv_s24_32le_to_s16ne(unsigned n, const uint32_t *a, int16_t *b) {
+ pa_assert(b);
+
+ for (; n > 0; n--) {
+- *b = (int16_t) ((int32_t) (UINT32_FROM(*a) << 8) >> 16);
++ *b = (int16_t) (((int32_t) (UINT32_FROM(*a) << 8)) >> 16);
+ a++;
+ b++;
}
-
-- if (s->thread_info.state == PA_SINK_RUNNING)
-- inputs_drop(s, info, n, result);
-+ inputs_drop(s, info, n, result);
-
- pa_sink_unref(s);
- }
-@@ -715,7 +714,7 @@
-
- pa_assert(length > 0);
-
-- n = s->thread_info.state == PA_SINK_RUNNING ? fill_mix_info(s, &length, info, MAX_MIX_CHANNELS) : 0;
-+ n = fill_mix_info(s, &length, info, MAX_MIX_CHANNELS);
-
- if (n == 0) {
- if (target->length > length)
-@@ -764,8 +763,7 @@
- pa_memblock_release(target->memblock);
+@@ -416,8 +416,8 @@ void pa_sconv_s24_32le_to_float32ne(unsigned n, const uint32_t *a, float *b) {
+ pa_assert(b);
+
+ for (; n > 0; n--) {
+- int32_t s = (int16_t) ((int32_t) (UINT32_FROM(*a) << 8));
+- *b = ((float) s) / 0x7FFFFFFF;
++ int32_t s = (int32_t) (UINT32_FROM(*a) << 8);
++ *b = (float) s / (float) 0x7FFFFFFF;
+ a ++;
+ b ++;
}
-
-- if (s->thread_info.state == PA_SINK_RUNNING)
-- inputs_drop(s, info, n, target);
-+ inputs_drop(s, info, n, target);
-
- pa_sink_unref(s);
+@@ -428,8 +428,8 @@ void pa_sconv_s24_32le_to_float32re(unsigned n, const uint32_t *a, float *b) {
+ pa_assert(b);
+
+ for (; n > 0; n--) {
+- int32_t s = (int16_t) ((int32_t) (UINT32_FROM(*a) << 8));
+- float k = ((float) s) / 0x7FFFFFFF;
++ int32_t s = (int32_t) (UINT32_FROM(*a) << 8);
++ float k = (float) s / (float) 0x7FFFFFFF;
+ *b = PA_FLOAT32_SWAP(k);
+ a ++;
+ b ++;
+diff --git src/pulsecore/sconv.c src/pulsecore/sconv.c
+index 29a9a45..d89f428 100644
+--- src/pulsecore/sconv.c
++++ src/pulsecore/sconv.c
+@@ -75,7 +75,7 @@ static void u8_from_s16ne(unsigned n, const int16_t *a, uint8_t *b) {
+ pa_assert(b);
+
+ for (; n > 0; n--, a++, b++)
+- *b = (uint8_t) (*a / 0x100 + 0x80);
++ *b = (uint8_t) ((uint16_t) *a >> 8) + (uint8_t) 0x80U;
}
-Index: pulseaudio-0.9.14/src/pulsecore/source.c
-===================================================================
---- src/pulsecore/source.c 2009-01-31 15:24:30.000000000 -0500
-+++ src/pulsecore/source.c 2009-01-31 15:24:55.000000000 -0500
-@@ -428,9 +428,6 @@
- pa_assert(PA_SOURCE_IS_OPENED(s->thread_info.state));
- pa_assert(chunk);
-
-- if (s->thread_info.state != PA_SOURCE_RUNNING)
-- return;
--
- if (s->thread_info.soft_muted || !pa_cvolume_is_norm(&s->thread_info.soft_volume)) {
- pa_memchunk vchunk = *chunk;
-
-@@ -469,9 +466,6 @@
- pa_assert(o->thread_info.direct_on_input);
- pa_assert(chunk);
-
-- if (s->thread_info.state != PA_SOURCE_RUNNING)
-- return;
--
- if (s->thread_info.soft_muted || !pa_cvolume_is_norm(&s->thread_info.soft_volume)) {
- pa_memchunk vchunk = *chunk;
-
-Index: pulseaudio-0.9.14/src/modules/module-device-restore.c
-===================================================================
---- src/modules/module-device-restore.c 2009-01-31 15:47:31.000000000 -0500
-+++ src/modules/module-device-restore.c 2009-01-31 15:47:55.000000000 -0500
-@@ -98,14 +98,14 @@
- pa_log_info("Synced.");
- }
-
--static struct entry* read_entry(struct userdata *u, char *name) {
-+static struct entry* read_entry(struct userdata *u, const char *name) {
- datum key, data;
- struct entry *e;
-
- pa_assert(u);
- pa_assert(name);
-- key.dptr = name;
-+ key.dptr = (char*) name;
- key.dsize = (int) strlen(name);
-
- data = gdbm_fetch(u->gdbm_file, key);
-@@ -235,13 +235,22 @@
- if ((e = read_entry(u, name))) {
-
- if (u->restore_volume) {
-- pa_log_info("Restoring volume for sink %s.", new_data->name);
-- pa_sink_new_data_set_volume(new_data, pa_cvolume_remap(&e->volume, &e->channel_map, &new_data->channel_map));
-+
-+ if (!new_data->volume_is_set) {
-+ pa_log_info("Restoring volume for sink %s.", new_data->name);
-+ pa_sink_new_data_set_volume(new_data, pa_cvolume_remap(&e->volume, &e->channel_map, &new_data->channel_map));
-+ } else
-+ pa_log_debug("Not restoring volume for sink %s, because already set.", new_data->name);
-+
- }
+ /* float32 */
+From 1ab53c43c17943d49fc80c86ef2b513354eddc63 Mon Sep 17 00:00:00 2001
+From: Lennart Poettering <lennart@poettering.net>
+Date: Thu, 14 May 2009 03:52:13 +0200
+Subject: [PATCH 23/28] rescue: make we don't end up in an endless loop when we can't move a sink input
+
+---
+ src/modules/module-rescue-streams.c | 38 +++++++++++++++++++---------------
+ 1 files changed, 21 insertions(+), 17 deletions(-)
+
+diff --git src/modules/module-rescue-streams.c src/modules/module-rescue-streams.c
+index 7c99a9b..c22711a 100644
+--- src/modules/module-rescue-streams.c
++++ src/modules/module-rescue-streams.c
+@@ -31,6 +31,7 @@
+ #include <pulsecore/modargs.h>
+ #include <pulsecore/log.h>
+ #include <pulsecore/namereg.h>
++#include <pulsecore/core-util.h>
- if (u->restore_muted) {
-- pa_log_info("Restoring mute state for sink %s.", new_data->name);
-- pa_sink_new_data_set_muted(new_data, e->muted);
-+
-+ if (!new_data->muted_is_set) {
-+ pa_log_info("Restoring mute state for sink %s.", new_data->name);
-+ pa_sink_new_data_set_muted(new_data, e->muted);
-+ } else
-+ pa_log_debug("Not restoring mute state for sink %s, because already set.", new_data->name);
- }
+ #include "module-rescue-streams-symdef.h"
- pa_xfree(e);
-@@ -263,13 +272,21 @@
- if ((e = read_entry(u, name))) {
+@@ -49,6 +50,7 @@ struct userdata {
- if (u->restore_volume) {
-- pa_log_info("Restoring volume for source %s.", new_data->name);
-- pa_source_new_data_set_volume(new_data, pa_cvolume_remap(&e->volume, &e->channel_map, &new_data->channel_map));
-+
-+ if (!new_data->volume_is_set) {
-+ pa_log_info("Restoring volume for source %s.", new_data->name);
-+ pa_source_new_data_set_volume(new_data, pa_cvolume_remap(&e->volume, &e->channel_map, &new_data->channel_map));
-+ } else
-+ pa_log_debug("Not restoring volume for source %s, because already set.", new_data->name);
- }
+ static pa_hook_result_t sink_hook_callback(pa_core *c, pa_sink *sink, void* userdata) {
+ pa_sink_input *i;
++ uint32_t idx;
+ pa_sink *target;
- if (u->restore_muted) {
-- pa_log_info("Restoring mute state for source %s.", new_data->name);
-- pa_source_new_data_set_muted(new_data, e->muted);
-+
-+ if (!new_data->muted_is_set) {
-+ pa_log_info("Restoring mute state for source %s.", new_data->name);
-+ pa_source_new_data_set_muted(new_data, e->muted);
-+ } else
-+ pa_log_debug("Not restoring mute state for source %s, because already set.", new_data->name);
- }
-
- pa_xfree(e);
-Index: pulseaudio-0.9.14/src/modules/module-oss.c
-===================================================================
---- src/modules/module-oss.c 2009-01-31 16:09:19.000000000 -0500
-+++ src/modules/module-oss.c 2009-01-31 16:13:16.000000000 -0500
-@@ -121,7 +121,7 @@
- int mixer_fd;
- int mixer_devmask;
-
-- int nfrags, frag_size;
-+ int nfrags, frag_size, orig_frag_size;
-
- pa_bool_t use_mmap;
- unsigned out_mmap_current, in_mmap_current;
-@@ -536,7 +536,7 @@
+ pa_assert(c);
+@@ -58,15 +60,14 @@ static pa_hook_result_t sink_hook_callback(pa_core *c, pa_sink *sink, void* user
+ if (c->state == PA_CORE_SHUTDOWN)
+ return PA_HOOK_OK;
+
+- if (!pa_idxset_size(sink->inputs)) {
++ if (pa_idxset_size(sink->inputs) <= 0) {
+ pa_log_debug("No sink inputs to move away.");
+ return PA_HOOK_OK;
}
- if (u->nfrags >= 2 && u->frag_size >= 1)
-- if (pa_oss_set_fragments(u->fd, u->nfrags, u->frag_size) < 0) {
-+ if (pa_oss_set_fragments(u->fd, u->nfrags, u->orig_frag_size) < 0) {
- pa_log_warn("Resume failed, couldn't set original fragment settings.");
- goto fail;
- }
-@@ -601,10 +601,10 @@
-
- build_pollfd(u);
-
-- if (u->sink)
-- sink_get_volume(u->sink);
-- if (u->source)
-- source_get_volume(u->source);
-+ if (u->sink && u->sink->get_volume)
-+ u->sink->get_volume(u->sink);
-+ if (u->source && u->source->get_volume)
-+ u->source->get_volume(u->source);
-
- pa_log_info("Resumed successfully...");
-
-@@ -877,7 +877,7 @@
-
- /* pa_log("loop"); */
-
-- if (PA_SINK_IS_OPENED(u->sink->thread_info.state))
-+ if (u->sink && PA_SINK_IS_OPENED(u->sink->thread_info.state))
- if (u->sink->thread_info.rewind_requested)
- pa_sink_process_rewind(u->sink, 0);
-
-@@ -1144,7 +1144,7 @@
- struct userdata *u = NULL;
- const char *dev;
- int fd = -1;
-- int nfrags, frag_size;
-+ int nfrags, orig_frag_size, frag_size;
- int mode, caps;
- pa_bool_t record = TRUE, playback = TRUE, use_mmap = TRUE;
- pa_sample_spec ss;
-@@ -1201,14 +1201,14 @@
-
- if (use_mmap && (!(caps & DSP_CAP_MMAP) || !(caps & DSP_CAP_TRIGGER))) {
- pa_log_info("OSS device not mmap capable, falling back to UNIX read/write mode.");
-- use_mmap = 0;
-+ use_mmap = FALSE;
- }
+ if (!(target = pa_namereg_get(c, NULL, PA_NAMEREG_SINK)) || target == sink) {
+- uint32_t idx;
- #ifndef __FreeBSD__
- if (use_mmap && mode == O_WRONLY) {
- pa_log_info("Device opened for playback only, cannot do memory mapping, falling back to UNIX write() mode.");
-- use_mmap = 0;
-+ use_mmap = FALSE;
- }
- #endif
+- for (target = pa_idxset_first(c->sinks, &idx); target; target = pa_idxset_next(c->sinks, &idx))
++ PA_IDXSET_FOREACH(target, c->sinks, idx)
+ if (target != sink)
+ break;
- if (pa_oss_get_hw_description(dev, hwdesc, sizeof(hwdesc)) >= 0)
-@@ -1216,6 +1216,7 @@
-
- pa_log_info("Device opened in %s mode.", mode == O_WRONLY ? "O_WRONLY" : (mode == O_RDONLY ? "O_RDONLY" : "O_RDWR"));
-
-+ orig_frag_size = frag_size;
- if (nfrags >= 2 && frag_size >= 1)
- if (pa_oss_set_fragments(fd, nfrags, frag_size) < 0)
- goto fail;
-@@ -1235,6 +1236,7 @@
- m->userdata = u;
- u->fd = fd;
- u->mixer_fd = -1;
-+ u->mixer_devmask = 0;
- u->use_getospace = u->use_getispace = TRUE;
- u->use_getodelay = TRUE;
- u->mode = mode;
-@@ -1242,6 +1244,7 @@
- u->device_name = pa_xstrdup(dev);
- u->in_nfrags = u->out_nfrags = (uint32_t) (u->nfrags = nfrags);
- u->out_fragment_size = u->in_fragment_size = (uint32_t) (u->frag_size = frag_size);
-+ u->orig_frag_size = orig_frag_size;
- u->use_mmap = use_mmap;
- u->rtpoll = pa_rtpoll_new();
- pa_thread_mq_init(&u->thread_mq, m->core->mainloop, u->rtpoll);
-@@ -1383,7 +1386,6 @@
-
- if ((u->mixer_fd = pa_oss_open_mixer_for_device(u->device_name)) >= 0) {
- pa_bool_t do_close = TRUE;
-- u->mixer_devmask = 0;
-
- if (ioctl(fd, SOUND_MIXER_READ_DEVMASK, &u->mixer_devmask) < 0)
- pa_log_warn("SOUND_MIXER_READ_DEVMASK failed: %s", pa_cstrerror(errno));
-@@ -1409,6 +1411,7 @@
- if (do_close) {
- pa_close(u->mixer_fd);
- u->mixer_fd = -1;
-+ u->mixer_devmask = 0;
+@@ -76,20 +77,24 @@ static pa_hook_result_t sink_hook_callback(pa_core *c, pa_sink *sink, void* user
}
}
-Index: pulseaudio-0.9.14/src/modules/oss-util.c
-===================================================================
---- src/modules/oss-util.c 2009-01-31 16:09:19.000000000 -0500
-+++ src/modules/oss-util.c 2009-01-31 16:12:37.000000000 -0500
-@@ -241,6 +241,8 @@
- int arg;
- arg = ((int) nfrags << 16) | simple_log2(frag_size);
+- while ((i = pa_idxset_first(sink->inputs, NULL))) {
++ pa_assert(target != sink);
++
++ PA_IDXSET_FOREACH(i, sink->inputs, idx) {
+ if (pa_sink_input_move_to(i, target, FALSE) < 0)
+- pa_log_warn("Failed to move sink input %u \"%s\" to %s.", i->index, pa_proplist_gets(i->proplist, PA_PROP_APPLICATION_NAME), target->name);
++ pa_log_info("Failed to move sink input %u \"%s\" to %s.", i->index,
++ pa_strnull(pa_proplist_gets(i->proplist, PA_PROP_APPLICATION_NAME)), target->name);
+ else
+- pa_log_info("Sucessfully moved sink input %u \"%s\" to %s.", i->index, pa_proplist_gets(i->proplist, PA_PROP_APPLICATION_NAME), target->name);
++ pa_log_info("Sucessfully moved sink input %u \"%s\" to %s.", i->index,
++ pa_strnull(pa_proplist_gets(i->proplist, PA_PROP_APPLICATION_NAME)), target->name);
+ }
-+ pa_log_debug("Asking for %i fragments of size %i (requested %i)", nfrags, 1 << simple_log2(frag_size), frag_size);
-+
- if (ioctl(fd, SNDCTL_DSP_SETFRAGMENT, &arg) < 0) {
- pa_log("SNDCTL_DSP_SETFRAGMENT: %s", pa_cstrerror(errno));
- return -1;
-Index: pulseaudio-0.9.14/src/pulse/volume.c
-===================================================================
---- src/pulse/volume.c 2009-01-31 16:22:02.000000000 -0500
-+++ src/pulse/volume.c 2009-01-31 16:22:50.000000000 -0500
-@@ -304,7 +304,7 @@
- p == PA_CHANNEL_POSITION_LFE;
+-
+ return PA_HOOK_OK;
}
--pa_cvolume *pa_cvolume_remap(pa_cvolume *v, pa_channel_map *from, pa_channel_map *to) {
-+pa_cvolume *pa_cvolume_remap(pa_cvolume *v, const pa_channel_map *from, const pa_channel_map *to) {
- int a, b;
- pa_cvolume result;
-
-Index: pulseaudio-0.9.14/src/pulse/volume.h
-===================================================================
---- src/pulse/volume.h 2009-01-31 16:22:02.000000000 -0500
-+++ src/pulse/volume.h 2009-01-31 16:23:21.000000000 -0500
-@@ -207,7 +207,7 @@
- #endif
-
- /** Remap a volume from one channel mapping to a different channel mapping. \since 0.9.12 */
--pa_cvolume *pa_cvolume_remap(pa_cvolume *v, pa_channel_map *from, pa_channel_map *to);
-+pa_cvolume *pa_cvolume_remap(pa_cvolume *v, const pa_channel_map *from, const pa_channel_map *to);
-
- /** Return non-zero if the specified volume is compatible with
- * the specified sample spec. \since 0.9.13 */
-Index: pulseaudio-0.9.14/src/modules/module-esound-sink.c
-===================================================================
---- src/modules/module-esound-sink.c 2009-01-31 16:25:18.000000000 -0500
-+++ src/modules/module-esound-sink.c 2009-01-31 16:25:40.000000000 -0500
-@@ -168,7 +168,7 @@
- w = pa_bytes_to_usec((uint64_t) u->offset + u->memchunk.length, &u->sink->sample_spec);
-
- *((pa_usec_t*) data) = w > r ? w - r : 0;
-- break;
-+ return 0;
- }
-
- case SINK_MESSAGE_PASS_SOCKET: {
-Index: pulseaudio-0.9.14/src/pulsecore/ltdl-helper.c
-===================================================================
---- src/pulsecore/ltdl-helper.c 2009-02-04 18:50:11.000000000 -0500
-+++ src/pulsecore/ltdl-helper.c 2009-02-04 18:50:21.000000000 -0500
-@@ -42,7 +42,9 @@
- pa_assert(handle);
- pa_assert(symbol);
-
-- if ((f = ((pa_void_func_t) (size_t) lt_dlsym(handle, symbol))))
-+ *(void**) &f = lt_dlsym(handle, symbol);
-+
-+ if (f)
- return f;
+ static pa_hook_result_t source_hook_callback(pa_core *c, pa_source *source, void* userdata) {
+ pa_source_output *o;
+ pa_source *target;
++ uint32_t idx;
- if (!module)
-@@ -57,7 +59,7 @@
- if (!isalnum(*c))
- *c = '_';
-
-- f = (pa_void_func_t) (size_t) lt_dlsym(handle, sn);
-+ *(void**) &f = lt_dlsym(handle, sn);
- pa_xfree(sn);
-
- return f;
-Index: pulseaudio-0.9.14/src/pulsecore/sink.c
-===================================================================
---- src/pulsecore/sink.c 2009-02-04 19:05:00.000000000 -0500
-+++ src/pulsecore/sink.c 2009-02-04 19:05:50.000000000 -0500
-@@ -467,6 +467,9 @@
- s->thread_info.rewind_nbytes = 0;
- s->thread_info.rewind_requested = FALSE;
-
-+ if (s->thread_info.state == PA_SINK_SUSPENDED)
-+ return;
-+
- if (nbytes > 0)
- pa_log_debug("Processing rewind...");
-
-@@ -476,7 +479,7 @@
+ pa_assert(c);
+ pa_assert(source);
+@@ -98,15 +103,14 @@ static pa_hook_result_t source_hook_callback(pa_core *c, pa_source *source, void
+ if (c->state == PA_CORE_SHUTDOWN)
+ return PA_HOOK_OK;
+
+- if (!pa_idxset_size(source->outputs)) {
++ if (pa_idxset_size(source->outputs) <= 0) {
+ pa_log_debug("No source outputs to move away.");
+ return PA_HOOK_OK;
}
- if (nbytes > 0)
-- if (s->monitor_source && PA_SOURCE_IS_OPENED(s->monitor_source->thread_info.state))
-+ if (s->monitor_source && PA_SOURCE_IS_LINKED(s->monitor_source->thread_info.state))
- pa_source_process_rewind(s->monitor_source, nbytes);
- }
+ if (!(target = pa_namereg_get(c, NULL, PA_NAMEREG_SOURCE)) || target == source) {
+- uint32_t idx;
-@@ -556,7 +559,7 @@
- /* Drop read data */
- pa_sink_input_drop(i, result->length);
+- for (target = pa_idxset_first(c->sources, &idx); target; target = pa_idxset_next(c->sources, &idx))
++ PA_IDXSET_FOREACH(target, c->sources, idx)
+ if (target != source && !target->monitor_of == !source->monitor_of)
+ break;
-- if (s->monitor_source && PA_SOURCE_IS_OPENED(pa_source_get_state(s->monitor_source))) {
-+ if (s->monitor_source && PA_SOURCE_IS_LINKED(s->monitor_source->thread_info.state)) {
+@@ -118,19 +122,20 @@ static pa_hook_result_t source_hook_callback(pa_core *c, pa_source *source, void
- if (pa_hashmap_size(i->thread_info.direct_outputs) > 0) {
- void *ostate = NULL;
-@@ -612,7 +615,7 @@
- }
+ pa_assert(target != source);
+
+- while ((o = pa_idxset_first(source->outputs, NULL))) {
++ PA_IDXSET_FOREACH(o, source->outputs, idx) {
+ if (pa_source_output_move_to(o, target, FALSE) < 0)
+- pa_log_warn("Failed to move source output %u \"%s\" to %s.", o->index, pa_proplist_gets(o->proplist, PA_PROP_APPLICATION_NAME), target->name);
++ pa_log_info("Failed to move source output %u \"%s\" to %s.", o->index,
++ pa_strnull(pa_proplist_gets(o->proplist, PA_PROP_APPLICATION_NAME)), target->name);
+ else
+- pa_log_info("Sucessfully moved source output %u \"%s\" to %s.", o->index, pa_proplist_gets(o->proplist, PA_PROP_APPLICATION_NAME), target->name);
++ pa_log_info("Sucessfully moved source output %u \"%s\" to %s.", o->index,
++ pa_strnull(pa_proplist_gets(o->proplist, PA_PROP_APPLICATION_NAME)), target->name);
}
-- if (s->monitor_source && PA_SOURCE_IS_OPENED(pa_source_get_state(s->monitor_source)))
-+ if (s->monitor_source && PA_SOURCE_IS_LINKED(s->monitor_source->thread_info.state))
- pa_source_post(s->monitor_source, result);
+-
+ return PA_HOOK_OK;
}
-@@ -623,7 +626,7 @@
- size_t block_size_max;
-
- pa_sink_assert_ref(s);
-- pa_assert(PA_SINK_IS_OPENED(s->thread_info.state));
-+ pa_assert(PA_SINK_IS_LINKED(s->thread_info.state));
- pa_assert(pa_frame_aligned(length, &s->sample_spec));
- pa_assert(result);
+ int pa__init(pa_module*m) {
+- pa_modargs *ma = NULL;
++ pa_modargs *ma;
+ struct userdata *u;
-@@ -632,6 +635,13 @@
- pa_assert(!s->thread_info.rewind_requested);
- pa_assert(s->thread_info.rewind_nbytes == 0);
+ pa_assert(m);
+@@ -153,10 +158,9 @@ void pa__done(pa_module*m) {
-+ if (s->thread_info.state == PA_SINK_SUSPENDED) {
-+ result->memblock = pa_memblock_ref(s->silence.memblock);
-+ result->index = s->silence.index;
-+ result->length = PA_MIN(s->silence.length, length);
-+ return;
-+ }
-+
- if (length <= 0)
- length = pa_frame_align(MIX_BUFFER_LENGTH, &s->sample_spec);
-
-@@ -696,7 +706,7 @@
- size_t length, block_size_max;
-
- pa_sink_assert_ref(s);
-- pa_assert(PA_SINK_IS_OPENED(s->thread_info.state));
-+ pa_assert(PA_SINK_IS_LINKED(s->thread_info.state));
- pa_assert(target);
- pa_assert(target->memblock);
- pa_assert(target->length > 0);
-@@ -707,6 +717,11 @@
- pa_assert(!s->thread_info.rewind_requested);
- pa_assert(s->thread_info.rewind_nbytes == 0);
-
-+ if (s->thread_info.state == PA_SINK_SUSPENDED) {
-+ pa_silence_memchunk(target, &s->sample_spec);
-+ return;
-+ }
-+
- length = target->length;
- block_size_max = pa_mempool_block_size_max(s->core->mempool);
- if (length > block_size_max)
-@@ -774,7 +789,7 @@
- size_t l, d;
-
- pa_sink_assert_ref(s);
-- pa_assert(PA_SINK_IS_OPENED(s->thread_info.state));
-+ pa_assert(PA_SINK_IS_LINKED(s->thread_info.state));
- pa_assert(target);
- pa_assert(target->memblock);
- pa_assert(target->length > 0);
-@@ -804,7 +819,7 @@
- /* Called from IO thread context */
- void pa_sink_render_full(pa_sink *s, size_t length, pa_memchunk *result) {
- pa_sink_assert_ref(s);
-- pa_assert(PA_SINK_IS_OPENED(s->thread_info.state));
-+ pa_assert(PA_SINK_IS_LINKED(s->thread_info.state));
- pa_assert(length > 0);
- pa_assert(pa_frame_aligned(length, &s->sample_spec));
- pa_assert(result);
-@@ -830,7 +845,7 @@
-
- /* The returned value is supposed to be in the time domain of the sound card! */
-
-- if (!PA_SINK_IS_OPENED(s->state))
-+ if (s->state == PA_SINK_SUSPENDED)
- return 0;
-
- if (!(s->flags & PA_SINK_LATENCY))
-@@ -1342,6 +1357,9 @@
- pa_sink_assert_ref(s);
- pa_assert(PA_SINK_IS_LINKED(s->thread_info.state));
-
-+ if (s->thread_info.state == PA_SINK_SUSPENDED)
-+ return;
-+
- if (nbytes == (size_t) -1)
- nbytes = s->thread_info.max_rewind;
-
-@@ -1403,7 +1421,7 @@
- pa_sink_assert_ref(s);
- pa_assert(PA_SINK_IS_LINKED(s->state));
-
-- if (!PA_SINK_IS_OPENED(s->state))
-+ if (s->state == PA_SINK_SUSPENDED)
- return 0;
+ pa_assert(m);
- pa_assert_se(pa_asyncmsgq_send(s->asyncmsgq, PA_MSGOBJECT(s), PA_SINK_MESSAGE_GET_REQUESTED_LATENCY, &usec, 0, NULL) == 0);
-Index: pulseaudio-0.9.14/src/pulsecore/source.c
-===================================================================
---- src/pulsecore/source.c 2009-02-04 19:05:00.000000000 -0500
-+++ src/pulsecore/source.c 2009-02-04 19:05:50.000000000 -0500
-@@ -406,7 +406,10 @@
- void *state = NULL;
-
- pa_source_assert_ref(s);
-- pa_assert(PA_SOURCE_IS_OPENED(s->thread_info.state));
-+ pa_assert(PA_SOURCE_IS_LINKED(s->thread_info.state));
-+
-+ if (s->thread_info.state == PA_SOURCE_SUSPENDED)
-+ return;
-
- if (nbytes <= 0)
+- if (!m->userdata)
++ if (!(u = m->userdata))
return;
-@@ -425,9 +428,12 @@
- void *state = NULL;
- pa_source_assert_ref(s);
-- pa_assert(PA_SOURCE_IS_OPENED(s->thread_info.state));
-+ pa_assert(PA_SOURCE_IS_LINKED(s->thread_info.state));
- pa_assert(chunk);
-
-+ if (s->thread_info.state == PA_SOURCE_SUSPENDED)
-+ return;
-+
- if (s->thread_info.soft_muted || !pa_cvolume_is_norm(&s->thread_info.soft_volume)) {
- pa_memchunk vchunk = *chunk;
-
-@@ -461,11 +467,14 @@
- /* Called from IO thread context */
- void pa_source_post_direct(pa_source*s, pa_source_output *o, const pa_memchunk *chunk) {
- pa_source_assert_ref(s);
-- pa_assert(PA_SOURCE_IS_OPENED(s->thread_info.state));
-+ pa_assert(PA_SOURCE_IS_LINKED(s->thread_info.state));
- pa_source_output_assert_ref(o);
- pa_assert(o->thread_info.direct_on_input);
- pa_assert(chunk);
-
-+ if (s->thread_info.state == PA_SOURCE_SUSPENDED)
-+ return;
-+
- if (s->thread_info.soft_muted || !pa_cvolume_is_norm(&s->thread_info.soft_volume)) {
- pa_memchunk vchunk = *chunk;
-
-@@ -491,7 +500,7 @@
- pa_source_assert_ref(s);
- pa_assert(PA_SOURCE_IS_LINKED(s->state));
-
-- if (!PA_SOURCE_IS_OPENED(s->state))
-+ if (s->state == PA_SOURCE_SUSPENDED)
- return 0;
-
- if (!(s->flags & PA_SOURCE_LATENCY))
-@@ -882,7 +891,7 @@
- pa_source_assert_ref(s);
- pa_assert(PA_SOURCE_IS_LINKED(s->state));
-
-- if (!PA_SOURCE_IS_OPENED(s->state))
-+ if (s->state == PA_SOURCE_SUSPENDED)
- return 0;
-
- pa_assert_se(pa_asyncmsgq_send(s->asyncmsgq, PA_MSGOBJECT(s), PA_SOURCE_MESSAGE_GET_REQUESTED_LATENCY, &usec, 0, NULL) == 0);
-Index: pulseaudio-0.9.14/src/pulsecore/sink.c
-===================================================================
---- src/pulsecore/sink.c 2009-02-04 19:19:17.000000000 -0500
-+++ src/pulsecore/sink.c 2009-02-04 19:19:24.000000000 -0500
-@@ -464,6 +464,11 @@
- pa_sink_assert_ref(s);
- pa_assert(PA_SINK_IS_LINKED(s->thread_info.state));
-
-+ /* If nobody requested this and this is actually no real rewind
-+ * then we can short cut this */
-+ if (!s->thread_info.rewind_requested && nbytes <= 0)
-+ return;
-+
- s->thread_info.rewind_nbytes = 0;
- s->thread_info.rewind_requested = FALSE;
-
-Index: pulseaudio-0.9.14/src/pulsecore/sink.c
-===================================================================
---- src/pulsecore/sink.c 2009-02-04 19:21:36.000000000 -0500
-+++ src/pulsecore/sink.c 2009-02-04 19:21:54.000000000 -0500
-@@ -1235,6 +1235,10 @@
- case PA_SINK_MESSAGE_SET_STATE:
+- u = m->userdata;
+ if (u->sink_slot)
+ pa_hook_slot_free(u->sink_slot);
+ if (u->source_slot)
+From c41d9c71667de6d6e9aab077ac58b7371594bbef Mon Sep 17 00:00:00 2001
+From: Lennart Poettering <lennart@poettering.net>
+Date: Fri, 8 May 2009 01:56:21 +0200
+Subject: [PATCH 24/28] core: introduce pa_{sink,source}_set_fixed_latency()
+
+This allows us to forward the fixed latency directly from the sink to
+the monitor source withut having to wait for pa_sink_put().
+---
+ src/modules/alsa/alsa-sink.c | 4 ++--
+ src/modules/alsa/alsa-source.c | 4 ++--
+ src/modules/bluetooth/module-bluetooth-device.c | 12 ++++++------
+ src/modules/module-pipe-sink.c | 2 +-
+ src/modules/module-pipe-source.c | 2 +-
+ src/modules/module-sine-source.c | 3 +--
+ src/modules/oss/module-oss.c | 4 ++--
+ src/pulsecore/sink.c | 16 ++++++++++++++++
+ src/pulsecore/sink.h | 1 +
+ src/pulsecore/source.c | 15 +++++++++++++++
+ src/pulsecore/source.h | 1 +
+ 11 files changed, 48 insertions(+), 16 deletions(-)
+
+diff --git src/modules/alsa/alsa-sink.c src/modules/alsa/alsa-sink.c
+index a544b58..94e15df 100644
+--- src/modules/alsa/alsa-sink.c
++++ src/modules/alsa/alsa-sink.c
+@@ -473,7 +473,7 @@ static int mmap_write(struct userdata *u, pa_usec_t *sleep_usec, pa_bool_t polle
+ u->since_start += frames * u->frame_size;
+
+ #ifdef DEBUG_TIMING
+- pa_log_debug("Wrote %lu bytes", (unsigned long) (frames * u->frame_size));
++ pa_log_debug("Wrote %lu bytes (of possible %lu bytes)", (unsigned long) (frames * u->frame_size), (unsigned long) n_bytes);
+ #endif
- s->thread_info.state = PA_PTR_TO_UINT(userdata);
-+
-+ if (s->thread_info.state == PA_SINK_SUSPENDED)
-+ s->thread_info.rewind_requested = FALSE;
-+
- return 0;
+ if ((size_t) frames * u->frame_size >= n_bytes)
+@@ -1730,7 +1730,7 @@ pa_sink *pa_alsa_sink_new(pa_module *m, pa_modargs *ma, const char*driver, pa_ca
+ pa_log_info("Time scheduling watermark is %0.2fms",
+ (double) pa_bytes_to_usec(u->tsched_watermark, &ss) / PA_USEC_PER_MSEC);
+ } else
+- u->sink->fixed_latency = pa_bytes_to_usec(u->hwbuf_size, &ss);
++ pa_sink_set_fixed_latency(u->sink, pa_bytes_to_usec(u->hwbuf_size, &ss));
+
+ reserve_update(u);
+
+diff --git src/modules/alsa/alsa-source.c src/modules/alsa/alsa-source.c
+index 5d8e349..c2f905a 100644
+--- src/modules/alsa/alsa-source.c
++++ src/modules/alsa/alsa-source.c
+@@ -455,7 +455,7 @@ static int mmap_read(struct userdata *u, pa_usec_t *sleep_usec, pa_bool_t polled
+ u->read_count += frames * u->frame_size;
+
+ #ifdef DEBUG_TIMING
+- pa_log_debug("Read %lu bytes", (unsigned long) (frames * u->frame_size));
++ pa_log_debug("Read %lu bytes (of possible %lu bytes)", (unsigned long) (frames * u->frame_size), (unsigned long) n_bytes);
+ #endif
- case PA_SINK_MESSAGE_DETACH:
-Index: pulseaudio-0.9.14/src/utils/pacmd.c
-===================================================================
---- src/utils/pacmd.c 2009-02-04 19:35:26.000000000 -0500
-+++ src/utils/pacmd.c 2009-02-04 19:35:33.000000000 -0500
-@@ -47,16 +47,16 @@
- int fd = -1;
- int ret = 1, i;
- struct sockaddr_un sa;
-- char ibuf[256], obuf[256];
-+ char ibuf[PIPE_BUF], obuf[PIPE_BUF];
- size_t ibuf_index, ibuf_length, obuf_index, obuf_length;
-- fd_set ifds, ofds;
- char *cli;
-+ pa_bool_t ibuf_eof, obuf_eof, ibuf_closed, obuf_closed;
-
- setlocale(LC_ALL, "");
- bindtextdomain(GETTEXT_PACKAGE, PULSE_LOCALEDIR);
-
- if (pa_pid_file_check_running(&pid, "pulseaudio") < 0) {
-- pa_log("No PulseAudio daemon running");
-+ pa_log("No PulseAudio daemon running, or not running as session daemon.");
- goto fail;
+ if ((size_t) frames * u->frame_size >= n_bytes)
+@@ -1582,7 +1582,7 @@ pa_source *pa_alsa_source_new(pa_module *m, pa_modargs *ma, const char*driver, p
+ pa_log_info("Time scheduling watermark is %0.2fms",
+ (double) pa_bytes_to_usec(u->tsched_watermark, &ss) / PA_USEC_PER_MSEC);
+ } else
+- u->source->fixed_latency = pa_bytes_to_usec(u->hwbuf_size, &ss);
++ pa_source_set_fixed_latency(u->source, pa_bytes_to_usec(u->hwbuf_size, &ss));
+
+ reserve_update(u);
+
+diff --git src/modules/bluetooth/module-bluetooth-device.c src/modules/bluetooth/module-bluetooth-device.c
+index 90f6486..3465b80 100644
+--- src/modules/bluetooth/module-bluetooth-device.c
++++ src/modules/bluetooth/module-bluetooth-device.c
+@@ -1608,9 +1608,9 @@ static int add_sink(struct userdata *u) {
+ u->sink->parent.process_msg = sink_process_msg;
+
+ pa_sink_set_max_request(u->sink, u->block_size);
+- u->sink->fixed_latency =
+- (u->profile == PROFILE_A2DP ? FIXED_LATENCY_PLAYBACK_A2DP : FIXED_LATENCY_PLAYBACK_HSP) +
+- pa_bytes_to_usec(u->block_size, &u->sample_spec);
++ pa_sink_set_fixed_latency(u->sink,
++ (u->profile == PROFILE_A2DP ? FIXED_LATENCY_PLAYBACK_A2DP : FIXED_LATENCY_PLAYBACK_HSP) +
++ pa_bytes_to_usec(u->block_size, &u->sample_spec));
}
-@@ -99,15 +99,47 @@
+ if (u->profile == PROFILE_HSP) {
+@@ -1659,9 +1659,9 @@ static int add_source(struct userdata *u) {
+ u->source->userdata = u;
+ u->source->parent.process_msg = source_process_msg;
+
+- u->source->fixed_latency =
+- (/* u->profile == PROFILE_A2DP ? FIXED_LATENCY_RECORD_A2DP : */ FIXED_LATENCY_RECORD_HSP) +
+- pa_bytes_to_usec(u->block_size, &u->sample_spec);
++ pa_source_set_fixed_latency(u->source,
++ (/* u->profile == PROFILE_A2DP ? FIXED_LATENCY_RECORD_A2DP : */ FIXED_LATENCY_RECORD_HSP) +
++ pa_bytes_to_usec(u->block_size, &u->sample_spec));
}
- ibuf_index = ibuf_length = obuf_index = obuf_length = 0;
-+ ibuf_eof = obuf_eof = ibuf_closed = obuf_closed = FALSE;
-
-+ if (argc > 1) {
-+ for (i = 1; i < argc; i++) {
-+ size_t k;
-+
-+ k = PA_MIN(sizeof(ibuf) - ibuf_length, strlen(argv[i]));
-+ memcpy(ibuf + ibuf_length, argv[1], k);
-+ ibuf_length += k;
-+
-+ if (ibuf_length < sizeof(ibuf)) {
-+ ibuf[ibuf_length] = i < argc-1 ? ' ' : '\n';
-+ ibuf_length++;
-+ }
-+ }
-
-- FD_ZERO(&ifds);
-- FD_SET(0, &ifds);
-- FD_SET(fd, &ifds);
+ if (u->profile == PROFILE_HSP) {
+diff --git src/modules/module-pipe-sink.c src/modules/module-pipe-sink.c
+index 9d3e55d..304d01c 100644
+--- src/modules/module-pipe-sink.c
++++ src/modules/module-pipe-sink.c
+@@ -293,7 +293,7 @@ int pa__init(pa_module*m) {
+ pa_sink_set_asyncmsgq(u->sink, u->thread_mq.inq);
+ pa_sink_set_rtpoll(u->sink, u->rtpoll);
+ pa_sink_set_max_request(u->sink, PIPE_BUF);
+- u->sink->fixed_latency = pa_bytes_to_usec(PIPE_BUF, &u->sink->sample_spec);
++ pa_sink_set_fixed_latency(u->sink, pa_bytes_to_usec(PIPE_BUF, &u->sink->sample_spec));
+
+ u->rtpoll_item = pa_rtpoll_item_new(u->rtpoll, PA_RTPOLL_NEVER, 1);
+ pollfd = pa_rtpoll_item_get_pollfd(u->rtpoll_item, NULL);
+diff --git src/modules/module-pipe-source.c src/modules/module-pipe-source.c
+index df72d79..6ed4fbf 100644
+--- src/modules/module-pipe-source.c
++++ src/modules/module-pipe-source.c
+@@ -277,7 +277,7 @@ int pa__init(pa_module*m) {
+
+ pa_source_set_asyncmsgq(u->source, u->thread_mq.inq);
+ pa_source_set_rtpoll(u->source, u->rtpoll);
+- u->source->fixed_latency = pa_bytes_to_usec(PIPE_BUF, &u->source->sample_spec);
++ pa_source_set_fixed_latency(u->source, pa_bytes_to_usec(PIPE_BUF, &u->source->sample_spec));
+
+ u->rtpoll_item = pa_rtpoll_item_new(u->rtpoll, PA_RTPOLL_NEVER, 1);
+ pollfd = pa_rtpoll_item_get_pollfd(u->rtpoll_item, NULL);
+diff --git src/modules/module-sine-source.c src/modules/module-sine-source.c
+index a5f1ce7..a6e15d8 100644
+--- src/modules/module-sine-source.c
++++ src/modules/module-sine-source.c
+@@ -264,8 +264,7 @@ int pa__init(pa_module*m) {
+
+ pa_source_set_asyncmsgq(u->source, u->thread_mq.inq);
+ pa_source_set_rtpoll(u->source, u->rtpoll);
+- u->source->fixed_latency = u->block_usec;
-
-- FD_ZERO(&ofds);
-+ ibuf_eof = TRUE;
-+ }
++ pa_source_set_fixed_latency(u->source, u->block_usec);
+
+ if (!(u->thread = pa_thread_new(thread_func, u))) {
+ pa_log("Failed to create thread.");
+diff --git src/modules/oss/module-oss.c src/modules/oss/module-oss.c
+index aa5f918..d6f549c 100644
+--- src/modules/oss/module-oss.c
++++ src/modules/oss/module-oss.c
+@@ -1328,8 +1328,8 @@ int pa__init(pa_module*m) {
+
+ pa_source_set_asyncmsgq(u->source, u->thread_mq.inq);
+ pa_source_set_rtpoll(u->source, u->rtpoll);
++ pa_source_set_fixed_latency(u->source, pa_bytes_to_usec(u->in_hwbuf_size, &u->source->sample_spec));
+ u->source->refresh_volume = TRUE;
+- u->source->fixed_latency = pa_bytes_to_usec(u->in_hwbuf_size, &u->source->sample_spec);
+
+ if (use_mmap)
+ u->in_mmap_memblocks = pa_xnew0(pa_memblock*, u->in_nfrags);
+@@ -1390,8 +1390,8 @@ int pa__init(pa_module*m) {
+
+ pa_sink_set_asyncmsgq(u->sink, u->thread_mq.inq);
+ pa_sink_set_rtpoll(u->sink, u->rtpoll);
++ pa_sink_set_fixed_latency(u->sink, pa_bytes_to_usec(u->out_hwbuf_size, &u->sink->sample_spec));
+ u->sink->refresh_volume = TRUE;
+- u->sink->fixed_latency = pa_bytes_to_usec(u->out_hwbuf_size, &u->sink->sample_spec);
+
+ pa_sink_set_max_request(u->sink, u->out_hwbuf_size);
+
+diff --git src/pulsecore/sink.c src/pulsecore/sink.c
+index c99f9a8..2225886 100644
+--- src/pulsecore/sink.c
++++ src/pulsecore/sink.c
+@@ -2054,6 +2054,22 @@ void pa_sink_set_latency_range_within_thread(pa_sink *s, pa_usec_t min_latency,
+ pa_source_set_latency_range_within_thread(s->monitor_source, min_latency, max_latency);
+ }
- for (;;) {
-+ fd_set ifds, ofds;
++/* Called from main thread, before the sink is put */
++void pa_sink_set_fixed_latency(pa_sink *s, pa_usec_t latency) {
++ pa_sink_assert_ref(s);
+
-+ if (ibuf_eof &&
-+ obuf_eof &&
-+ ibuf_length <= 0 &&
-+ obuf_length <= 0)
-+ break;
++ pa_assert(pa_sink_get_state(s) == PA_SINK_INIT);
+
-+ FD_ZERO(&ifds);
-+ FD_ZERO(&ofds);
++ if (latency < ABSOLUTE_MIN_LATENCY)
++ latency = ABSOLUTE_MIN_LATENCY;
+
-+ if (obuf_length > 0)
-+ FD_SET(1, &ofds);
-+ else if (!obuf_eof)
-+ FD_SET(fd, &ifds);
++ if (latency > ABSOLUTE_MAX_LATENCY)
++ latency = ABSOLUTE_MAX_LATENCY;
+
-+ if (ibuf_length > 0)
-+ FD_SET(fd, &ofds);
-+ else if (!ibuf_eof)
-+ FD_SET(0, &ifds);
++ s->fixed_latency = latency;
++ pa_source_set_fixed_latency(s->monitor_source, latency);
++}
+
- if (select(FD_SETSIZE, &ifds, &ofds, NULL, NULL) < 0) {
- pa_log(_("select(): %s"), strerror(errno));
- goto fail;
-@@ -118,15 +150,16 @@
- assert(!ibuf_length);
-
- if ((r = read(0, ibuf, sizeof(ibuf))) <= 0) {
-- if (r == 0)
-- break;
--
-- pa_log(_("read(): %s"), strerror(errno));
-- goto fail;
-+ if (r < 0) {
-+ pa_log(_("read(): %s"), strerror(errno));
-+ goto fail;
-+ }
-+
-+ ibuf_eof = TRUE;
-+ } else {
-+ ibuf_length = (size_t) r;
-+ ibuf_index = 0;
- }
--
-- ibuf_length = (size_t) r;
-- ibuf_index = 0;
- }
-
- if (FD_ISSET(fd, &ifds)) {
-@@ -134,15 +167,16 @@
- assert(!obuf_length);
-
- if ((r = read(fd, obuf, sizeof(obuf))) <= 0) {
-- if (r == 0)
-- break;
--
-- pa_log(_("read(): %s"), strerror(errno));
-- goto fail;
-+ if (r < 0) {
-+ pa_log(_("read(): %s"), strerror(errno));
-+ goto fail;
-+ }
-+
-+ obuf_eof = TRUE;
-+ } else {
-+ obuf_length = (size_t) r;
-+ obuf_index = 0;
- }
--
-- obuf_length = (size_t) r;
-- obuf_index = 0;
- }
-
- if (FD_ISSET(1, &ofds)) {
-@@ -170,28 +204,26 @@
-
- ibuf_length -= (size_t) r;
- ibuf_index += obuf_index;
--
- }
-
-- FD_ZERO(&ifds);
-- FD_ZERO(&ofds);
--
-- if (obuf_length <= 0)
-- FD_SET(fd, &ifds);
-- else
-- FD_SET(1, &ofds);
-+ if (ibuf_length <= 0 && ibuf_eof && !ibuf_closed) {
-+ close(0);
-+ shutdown(fd, SHUT_WR);
-+ ibuf_closed = TRUE;
-+ }
-
-- if (ibuf_length <= 0)
-- FD_SET(0, &ifds);
-- else
-- FD_SET(fd, &ofds);
-+ if (obuf_length <= 0 && obuf_eof && !obuf_closed) {
-+ shutdown(fd, SHUT_RD);
-+ close(1);
-+ obuf_closed = TRUE;
-+ }
- }
-
- ret = 0;
-
- fail:
- if (fd >= 0)
-- close(fd);
-+ pa_close(fd);
-
- return ret;
+ /* Called from main context */
+ size_t pa_sink_get_max_rewind(pa_sink *s) {
+ size_t r;
+diff --git src/pulsecore/sink.h src/pulsecore/sink.h
+index 352282b..e33b3cf 100644
+--- src/pulsecore/sink.h
++++ src/pulsecore/sink.h
+@@ -229,6 +229,7 @@ void pa_sink_set_rtpoll(pa_sink *s, pa_rtpoll *p);
+ void pa_sink_set_max_rewind(pa_sink *s, size_t max_rewind);
+ void pa_sink_set_max_request(pa_sink *s, size_t max_request);
+ void pa_sink_set_latency_range(pa_sink *s, pa_usec_t min_latency, pa_usec_t max_latency);
++void pa_sink_set_fixed_latency(pa_sink *s, pa_usec_t latency);
+
+ void pa_sink_detach(pa_sink *s);
+ void pa_sink_attach(pa_sink *s);
+diff --git src/pulsecore/source.c src/pulsecore/source.c
+index 0baaed1..e8deaf7 100644
+--- src/pulsecore/source.c
++++ src/pulsecore/source.c
+@@ -1280,6 +1280,21 @@ void pa_source_set_latency_range_within_thread(pa_source *s, pa_usec_t min_laten
+ pa_source_invalidate_requested_latency(s);
}
-Index: pulseaudio-0.9.14/src/modules/rtp/module-rtp-recv.c
-===================================================================
---- src/modules/rtp/module-rtp-recv.c 2009-02-06 18:04:53.000000000 -0500
-+++ src/modules/rtp/module-rtp-recv.c 2009-02-06 18:07:32.000000000 -0500
-@@ -453,7 +453,7 @@
- data.module = u->module;
- pa_sink_input_new_data_set_sample_spec(&data, &sdp_info->sample_spec);
-
-- s->sink_input = pa_sink_input_new(u->module->core, &data, 0);
-+ s->sink_input = pa_sink_input_new(u->module->core, &data, PA_SINK_INPUT_VARIABLE_RATE);
- pa_sink_input_new_data_done(&data);
-
- if (!s->sink_input) {
-Index: pulseaudio-0.9.14/src/modules/module-suspend-on-idle.c
-===================================================================
---- src/modules/module-suspend-on-idle.c 2009-02-12 18:28:26.000000000 -0500
-+++ src/modules/module-suspend-on-idle.c 2009-02-13 01:37:53.000000000 -0500
-@@ -158,6 +158,9 @@
- pa_sink_input_assert_ref(s);
- pa_assert(u);
-+ if (!s->sink)
-+ return PA_HOOK_OK;
++/* Called from main thread, before the source is put */
++void pa_source_set_fixed_latency(pa_source *s, pa_usec_t latency) {
++ pa_source_assert_ref(s);
+
- if (pa_sink_used_by(s->sink) <= 0) {
- struct device_info *d;
- if ((d = pa_hashmap_get(u->device_infos, s->sink)))
-@@ -172,6 +175,9 @@
- pa_source_output_assert_ref(s);
- pa_assert(u);
-
-+ if (!s->source)
-+ return PA_HOOK_OK;
++ pa_assert(pa_source_get_state(s) == PA_SOURCE_INIT);
+
- if (pa_source_used_by(s->source) <= 0) {
- struct device_info *d;
- if ((d = pa_hashmap_get(u->device_infos, s->source)))
-Index: pulseaudio-0.9.14/src/pulse/channelmap.c
-===================================================================
---- src/pulse/channelmap.c 2009-02-13 22:55:36.000000000 -0500
-+++ src/pulse/channelmap.c 2009-02-13 22:55:44.000000000 -0500
-@@ -216,10 +216,10 @@
-
- case 6:
- m->map[0] = PA_CHANNEL_POSITION_FRONT_LEFT;
-- m->map[1] = PA_CHANNEL_POSITION_SIDE_LEFT;
-+ m->map[1] = PA_CHANNEL_POSITION_REAR_LEFT;
- m->map[2] = PA_CHANNEL_POSITION_FRONT_CENTER;
- m->map[3] = PA_CHANNEL_POSITION_FRONT_RIGHT;
-- m->map[4] = PA_CHANNEL_POSITION_SIDE_RIGHT;
-+ m->map[4] = PA_CHANNEL_POSITION_REAR_RIGHT;
- m->map[5] = PA_CHANNEL_POSITION_LFE;
- return m;
-
-Index: pulseaudio-0.9.14/src/pulse/scache.c
-===================================================================
---- src/pulse/scache.c 2009-02-13 22:58:05.000000000 -0500
-+++ src/pulse/scache.c 2009-02-13 22:58:26.000000000 -0500
-@@ -66,10 +66,8 @@
- pa_tagstruct_put_channel_map(t, &s->channel_map);
- pa_tagstruct_putu32(t, (uint32_t) length);
-
-- if (s->context->version >= 13) {
-- pa_init_proplist(s->proplist);
-+ if (s->context->version >= 13)
- pa_tagstruct_put_proplist(t, s->proplist);
-- }
-
- pa_pstream_send_tagstruct(s->context->pstream, t);
- pa_pdispatch_register_reply(s->context->pdispatch, tag, DEFAULT_TIMEOUT, pa_create_stream_callback, s, NULL);
-Index: pulseaudio-0.9.14/src/pulse/gccmacro.h
-===================================================================
---- src/pulse/gccmacro.h 2009-02-13 23:07:17.000000000 -0500
-+++ src/pulse/gccmacro.h 2009-02-13 23:09:29.000000000 -0500
-@@ -85,7 +85,7 @@
- #endif
-
- #ifndef PA_GCC_PACKED
--#ifdef __GNUCC__
-+#ifdef __GNUC__
- #define PA_GCC_PACKED __attribute__ ((packed))
- #else
- /** Structure shall be packed in memory **/
-@@ -105,7 +105,7 @@
- #endif
-
- #ifndef PA_GCC_MALLOC
--#ifdef __GNUCC__
-+#ifdef __GNUC__
- #define PA_GCC_MALLOC __attribute__ ((malloc))
- #else
- /** Macro for usage of GCC's malloc attribute */
-Index: pulseaudio-0.9.14/src/pulsecore/shm.c
-===================================================================
---- src/pulsecore/shm.c 2009-02-13 23:07:17.000000000 -0500
-+++ src/pulsecore/shm.c 2009-02-13 23:09:29.000000000 -0500
-@@ -70,14 +70,14 @@
-
- /* We now put this SHM marker at the end of each segment. It's
- * optional, to not require a reboot when upgrading, though */
--struct shm_marker PA_GCC_PACKED {
-+struct shm_marker {
- pa_atomic_t marker; /* 0xbeefcafe */
- pa_atomic_t pid;
- uint64_t _reserved1;
- uint64_t _reserved2;
- uint64_t _reserved3;
- uint64_t _reserved4;
--};
-+} PA_GCC_PACKED;
-
- static char *segment_name(char *fn, size_t l, unsigned id) {
- pa_snprintf(fn, l, "/pulse-shm-%u", id);
-Index: pulseaudio-0.9.14/src/pulsecore/memblock.c
-===================================================================
---- src/pulsecore/memblock.c 2009-02-18 16:40:03.000000000 -0500
-+++ src/pulsecore/memblock.c 2009-02-18 16:40:13.000000000 -0500
-@@ -57,7 +57,7 @@
-
- #define PA_MEMEXPORT_SLOTS_MAX 128
-
--#define PA_MEMIMPORT_SLOTS_MAX 128
-+#define PA_MEMIMPORT_SLOTS_MAX 160
- #define PA_MEMIMPORT_SEGMENTS_MAX 16
-
- struct pa_memblock {
-Index: pulseaudio-0.9.14/src/pulse/context.c
-===================================================================
---- src/pulse/context.c 2009-02-18 16:45:34.000000000 -0500
-+++ src/pulse/context.c 2009-02-18 16:46:22.000000000 -0500
-@@ -332,8 +332,7 @@
-
- pa_assert(p);
- pa_assert(chunk);
-- pa_assert(chunk->memblock);
-- pa_assert(chunk->length);
-+ pa_assert(chunk->length > 0);
- pa_assert(c);
- pa_assert(PA_REFCNT_VALUE(c) >= 1);
-
-@@ -341,11 +340,11 @@
-
- if ((s = pa_dynarray_get(c->record_streams, channel))) {
-
-- pa_assert(seek == PA_SEEK_RELATIVE);
-- pa_assert(offset == 0);
--
-- pa_memblockq_seek(s->record_memblockq, offset, seek);
-- pa_memblockq_push_align(s->record_memblockq, chunk);
-+ if (chunk->memblock) {
-+ pa_memblockq_seek(s->record_memblockq, offset, seek);
-+ pa_memblockq_push_align(s->record_memblockq, chunk);
-+ } else
-+ pa_memblockq_seek(s->record_memblockq, offset+chunk->length, seek);
-
- if (s->read_callback) {
- size_t l;
-Index: pulseaudio-0.9.14/src/pulsecore/protocol-native.c
-===================================================================
---- src/pulsecore/protocol-native.c 2009-02-18 16:45:34.000000000 -0500
-+++ src/pulsecore/protocol-native.c 2009-02-18 16:46:22.000000000 -0500
-@@ -4075,17 +4075,20 @@
- if (playback_stream_isinstance(stream)) {
- playback_stream *ps = PLAYBACK_STREAM(stream);
-
-- if (seek != PA_SEEK_RELATIVE || offset != 0)
-- pa_asyncmsgq_post(ps->sink_input->sink->asyncmsgq, PA_MSGOBJECT(ps->sink_input), SINK_INPUT_MESSAGE_SEEK, PA_UINT_TO_PTR(seek), offset, NULL, NULL);
--
-- pa_asyncmsgq_post(ps->sink_input->sink->asyncmsgq, PA_MSGOBJECT(ps->sink_input), SINK_INPUT_MESSAGE_POST_DATA, NULL, 0, chunk, NULL);
-+ if (chunk->memblock) {
-+ if (seek != PA_SEEK_RELATIVE || offset != 0)
-+ pa_asyncmsgq_post(ps->sink_input->sink->asyncmsgq, PA_MSGOBJECT(ps->sink_input), SINK_INPUT_MESSAGE_SEEK, PA_UINT_TO_PTR(seek), offset, NULL, NULL);
++ if (latency < ABSOLUTE_MIN_LATENCY)
++ latency = ABSOLUTE_MIN_LATENCY;
+
-+ pa_asyncmsgq_post(ps->sink_input->sink->asyncmsgq, PA_MSGOBJECT(ps->sink_input), SINK_INPUT_MESSAGE_POST_DATA, NULL, 0, chunk, NULL);
-+ } else
-+ pa_asyncmsgq_post(ps->sink_input->sink->asyncmsgq, PA_MSGOBJECT(ps->sink_input), SINK_INPUT_MESSAGE_SEEK, PA_UINT_TO_PTR(seek), offset+chunk->length, NULL, NULL);
-
- } else {
- upload_stream *u = UPLOAD_STREAM(stream);
- size_t l;
-
- if (!u->memchunk.memblock) {
-- if (u->length == chunk->length) {
-+ if (u->length == chunk->length && chunk->memblock) {
- u->memchunk = *chunk;
- pa_memblock_ref(u->memchunk.memblock);
- u->length = 0;
-@@ -4101,17 +4104,22 @@
- if (l > chunk->length)
- l = chunk->length;
-
--
- if (l > 0) {
-- void *src, *dst;
-+ void *dst;
- dst = pa_memblock_acquire(u->memchunk.memblock);
-- src = pa_memblock_acquire(chunk->memblock);
-
-- memcpy((uint8_t*) dst + u->memchunk.index + u->memchunk.length,
-- (uint8_t*) src+chunk->index, l);
-+ if (chunk->memblock) {
-+ void *src;
-+ src = pa_memblock_acquire(chunk->memblock);
-+
-+ memcpy((uint8_t*) dst + u->memchunk.index + u->memchunk.length,
-+ (uint8_t*) src + chunk->index, l);
++ if (latency > ABSOLUTE_MAX_LATENCY)
++ latency = ABSOLUTE_MAX_LATENCY;
+
-+ pa_memblock_release(chunk->memblock);
-+ } else
-+ pa_silence_memory((uint8_t*) dst + u->memchunk.index + u->memchunk.length, l, &u->sample_spec);
-
- pa_memblock_release(u->memchunk.memblock);
-- pa_memblock_release(chunk->memblock);
-
- u->memchunk.length += l;
- u->length -= l;
-Index: pulseaudio-0.9.14/src/pulsecore/pstream.c
-===================================================================
---- src/pulsecore/pstream.c 2009-02-18 16:45:34.000000000 -0500
-+++ src/pulsecore/pstream.c 2009-02-18 16:48:15.000000000 -0500
-@@ -832,8 +832,7 @@
- ntohl(p->read.shm_info[PA_PSTREAM_SHM_INDEX]),
- ntohl(p->read.shm_info[PA_PSTREAM_SHM_LENGTH])))) {
-
-- pa_log_warn("Failed to import memory block.");
-- return -1;
-+ pa_log_debug("Failed to import memory block.");
- }
-
- if (p->recieve_memblock_callback) {
-@@ -842,7 +841,7 @@
-
- chunk.memblock = b;
- chunk.index = 0;
-- chunk.length = pa_memblock_get_length(b);
-+ chunk.length = b ? pa_memblock_get_length(b) : ntohl(p->read.shm_info[PA_PSTREAM_SHM_LENGTH]);
-
- offset = (int64_t) (
- (((uint64_t) ntohl(p->read.descriptor[PA_PSTREAM_DESCRIPTOR_OFFSET_HI])) << 32) |
-@@ -857,7 +856,8 @@
- p->recieve_memblock_callback_userdata);
- }
-
-- pa_memblock_unref(b);
-+ if (b)
-+ pa_memblock_unref(b);
- }
-
- goto frame_done;
-Index: pulseaudio-0.9.14/src/pulsecore/core-error.c
-===================================================================
---- src/pulsecore/core-error.c 2009-03-05 17:12:02.000000000 -0500
-+++ src/pulsecore/core-error.c 2009-03-05 17:12:16.000000000 -0500
-@@ -47,6 +47,9 @@
- char *translated, *t;
- char errbuf[128];
-
-+ if (errnum < 0)
-+ errnum = -errnum;
-+
- if ((t = PA_STATIC_TLS_GET(cstrerror)))
- pa_xfree(t);
-
-Index: pulseaudio-0.9.14/src/pulse/error.c
-===================================================================
---- src/pulse/error.c 2009-03-05 17:12:34.000000000 -0500
-+++ src/pulse/error.c 2009-03-05 17:12:54.000000000 -0500
-@@ -66,7 +66,10 @@
-
- pa_init_i18n();
-
-- if (error < 0 || error >= PA_ERR_MAX)
-+ if (error < 0)
-+ error = -error;
-+
-+ if (error >= PA_ERR_MAX)
- return NULL;
-
- return _(errortab[error]);
-Index: pulseaudio-0.9.14/src/pulsecore/sink.c
-===================================================================
---- src/pulsecore/sink.c 2009-02-19 18:45:44.000000000 -0500
-+++ src/pulsecore/sink.c 2009-02-19 18:46:04.000000000 -0500
-@@ -1557,6 +1557,9 @@
-
- pa_sink_assert_ref(s);
-
-+ pa_assert(!min_latency || !max_latency ||
-+ min_latency <= max_latency);
-+
- s->thread_info.min_latency = min_latency;
- s->thread_info.max_latency = max_latency;
-
-Index: pulseaudio-0.9.14/src/pulsecore/source.c
-===================================================================
---- src/pulsecore/source.c 2009-02-19 18:46:57.000000000 -0500
-+++ src/pulsecore/source.c 2009-02-19 18:47:08.000000000 -0500
-@@ -994,6 +994,9 @@
-
- pa_source_assert_ref(s);
-
-+ pa_assert(!min_latency || !max_latency ||
-+ min_latency <= max_latency);
++ s->fixed_latency = latency;
++}
+
- s->thread_info.min_latency = min_latency;
- s->thread_info.max_latency = max_latency;
+ /* Called from main thread */
+ size_t pa_source_get_max_rewind(pa_source *s) {
+ size_t r;
+diff --git src/pulsecore/source.h src/pulsecore/source.h
+index b502c22..2978f57 100644
+--- src/pulsecore/source.h
++++ src/pulsecore/source.h
+@@ -210,6 +210,7 @@ void pa_source_set_rtpoll(pa_source *s, pa_rtpoll *p);
-Index: pulseaudio-0.9.14/src/utils/paplay.c
-===================================================================
---- src/utils/paplay.c 2009-02-19 19:25:01.000000000 -0500
-+++ src/utils/paplay.c 2009-02-19 19:25:10.000000000 -0500
-@@ -400,7 +400,10 @@
- pa_context_set_state_callback(context, context_state_callback, NULL);
-
- /* Connect the context */
-- pa_context_connect(context, server, 0, NULL);
-+ if (pa_context_connect(context, server, 0, NULL) < 0) {
-+ fprintf(stderr, _("pa_context_connect() failed: %s"), pa_strerror(pa_context_errno(context)));
-+ goto quit;
-+ }
+ void pa_source_set_max_rewind(pa_source *s, size_t max_rewind);
+ void pa_source_set_latency_range(pa_source *s, pa_usec_t min_latency, pa_usec_t max_latency);
++void pa_source_set_fixed_latency(pa_source *s, pa_usec_t latency);
- /* Run the main loop */
- if (pa_mainloop_run(m, &ret) < 0) {
-Index: pulseaudio-0.9.14/src/utils/pactl.c
-===================================================================
---- src/utils/pactl.c 2009-02-19 19:25:01.000000000 -0500
-+++ src/utils/pactl.c 2009-02-19 19:25:10.000000000 -0500
-@@ -561,6 +561,7 @@
- pa_xfree(d);
- fprintf(stderr, _("Premature end of file\n"));
- quit(1);
-+ return;
- }
-
- pa_stream_write(s, d, length, pa_xfree, 0, PA_SEEK_RELATIVE);
-@@ -925,7 +926,10 @@
- }
-
- pa_context_set_state_callback(context, context_state_callback, NULL);
-- pa_context_connect(context, server, 0, NULL);
-+ if (pa_context_connect(context, server, 0, NULL) < 0) {
-+ fprintf(stderr, _("pa_context_connect() failed: %s"), pa_strerror(pa_context_errno(context)));
-+ goto quit;
-+ }
-
- if (pa_mainloop_run(m, &ret) < 0) {
- fprintf(stderr, _("pa_mainloop_run() failed.\n"));
-Index: pulseaudio-0.9.14/src/pulsecore/protocol-native.c
-===================================================================
---- src/pulsecore/protocol-native.c 2009-02-19 19:25:10.000000000 -0500
-+++ src/pulsecore/protocol-native.c 2009-02-19 19:25:11.000000000 -0500
-@@ -2472,7 +2472,10 @@
- if (!(name = pa_proplist_gets(p, PA_PROP_EVENT_ID)))
- name = pa_proplist_gets(p, PA_PROP_MEDIA_NAME);
-
-- CHECK_VALIDITY(c->pstream, name && pa_namereg_is_valid_name(name), tag, PA_ERR_INVALID);
-+ if (!name || !pa_namereg_is_valid_name(name)) {
-+ pa_proplist_free(p);
-+ CHECK_VALIDITY(c->pstream, FALSE, tag, PA_ERR_INVALID);
-+ }
-
- s = upload_stream_new(c, &ss, &map, name, length, p);
- pa_proplist_free(p);
-@@ -3426,24 +3429,29 @@
- }
- }
-
-- CHECK_VALIDITY(c->pstream, mode == PA_UPDATE_SET || mode == PA_UPDATE_MERGE || mode == PA_UPDATE_REPLACE, tag, PA_ERR_INVALID);
-+ if (!(mode == PA_UPDATE_SET || mode == PA_UPDATE_MERGE || mode == PA_UPDATE_REPLACE)) {
-+ pa_proplist_free(p);
-+ CHECK_VALIDITY(c->pstream, FALSE, tag, PA_ERR_INVALID);
+ void pa_source_detach(pa_source *s);
+ void pa_source_attach(pa_source *s);
+From c73733777f11080373264ed4e992c6860809898e Mon Sep 17 00:00:00 2001
+From: Lennart Poettering <lennart@poettering.net>
+Date: Fri, 8 May 2009 02:02:36 +0200
+Subject: [PATCH 25/28] core: cache requested latency only when we are running, not while we are still constructing
+
+---
+ src/pulsecore/sink.c | 7 +++++--
+ src/pulsecore/source.c | 7 +++++--
+ 2 files changed, 10 insertions(+), 4 deletions(-)
+
+diff --git src/pulsecore/sink.c src/pulsecore/sink.c
+index 2225886..161b7c9 100644
+--- src/pulsecore/sink.c
++++ src/pulsecore/sink.c
+@@ -1867,8 +1867,11 @@ pa_usec_t pa_sink_get_requested_latency_within_thread(pa_sink *s) {
+ if (result != (pa_usec_t) -1)
+ result = PA_CLAMP(result, s->thread_info.min_latency, s->thread_info.max_latency);
+
+- s->thread_info.requested_latency = result;
+- s->thread_info.requested_latency_valid = TRUE;
++ if (PA_SINK_IS_LINKED(s->thread_info.state)) {
++ /* Only cache if properly initialized */
++ s->thread_info.requested_latency = result;
++ s->thread_info.requested_latency_valid = TRUE;
+ }
- if (command == PA_COMMAND_UPDATE_PLAYBACK_STREAM_PROPLIST) {
- playback_stream *s;
-
- s = pa_idxset_get_by_index(c->output_streams, idx);
-- CHECK_VALIDITY(c->pstream, s, tag, PA_ERR_NOENTITY);
-- CHECK_VALIDITY(c->pstream, playback_stream_isinstance(s), tag, PA_ERR_NOENTITY);
--
-+ if (!s || !playback_stream_isinstance(s)) {
-+ pa_proplist_free(p);
-+ CHECK_VALIDITY(c->pstream, FALSE, tag, PA_ERR_NOENTITY);
-+ }
- pa_proplist_update(s->sink_input->proplist, mode, p);
- pa_subscription_post(c->protocol->core, PA_SUBSCRIPTION_EVENT_SINK_INPUT|PA_SUBSCRIPTION_EVENT_CHANGE, s->sink_input->index);
-
- } else if (command == PA_COMMAND_UPDATE_RECORD_STREAM_PROPLIST) {
- record_stream *s;
-
-- s = pa_idxset_get_by_index(c->record_streams, idx);
-- CHECK_VALIDITY(c->pstream, s, tag, PA_ERR_NOENTITY);
--
-+ if (!(s = pa_idxset_get_by_index(c->record_streams, idx))) {
-+ pa_proplist_free(p);
-+ CHECK_VALIDITY(c->pstream, FALSE, tag, PA_ERR_NOENTITY);
-+ }
- pa_proplist_update(s->source_output->proplist, mode, p);
- pa_subscription_post(c->protocol->core, PA_SUBSCRIPTION_EVENT_SOURCE_OUTPUT|PA_SUBSCRIPTION_EVENT_CHANGE, s->source_output->index);
- } else {
-@@ -3454,6 +3462,7 @@
- }
-
- pa_pstream_send_simple_ack(c->pstream, tag);
-+ pa_proplist_free(p);
+ return result;
}
+diff --git src/pulsecore/source.c src/pulsecore/source.c
+index e8deaf7..8a4c8c4 100644
+--- src/pulsecore/source.c
++++ src/pulsecore/source.c
+@@ -1122,8 +1122,11 @@ pa_usec_t pa_source_get_requested_latency_within_thread(pa_source *s) {
+ if (result != (pa_usec_t) -1)
+ result = PA_CLAMP(result, s->thread_info.min_latency, s->thread_info.max_latency);
+
+- s->thread_info.requested_latency = result;
+- s->thread_info.requested_latency_valid = TRUE;
++ if (PA_SOURCE_IS_LINKED(s->thread_info.state)) {
++ /* Only cache this if we are fully set up */
++ s->thread_info.requested_latency = result;
++ s->thread_info.requested_latency_valid = TRUE;
++ }
- static void command_remove_proplist(pa_pdispatch *pd, uint32_t command, uint32_t tag, pa_tagstruct *t, void *userdata) {
-@@ -4034,7 +4043,7 @@
- CHECK_VALIDITY(c->pstream, m->load_once || idx != PA_INVALID_INDEX, tag, PA_ERR_INVALID);
-
- cb = (pa_native_protocol_ext_cb_t) pa_hashmap_get(c->protocol->extensions, m);
-- CHECK_VALIDITY(c->pstream, m, tag, PA_ERR_NOEXTENSION);
-+ CHECK_VALIDITY(c->pstream, cb, tag, PA_ERR_NOEXTENSION);
-
- if (cb(c->protocol, m, c, tag, t) < 0)
- protocol_error(c);
-Index: pulseaudio-0.9.14/src/utils/padsp.c
-===================================================================
---- src/utils/padsp.c 2009-02-19 19:25:01.000000000 -0500
-+++ src/utils/padsp.c 2009-02-19 19:25:11.000000000 -0500
-@@ -1202,7 +1202,7 @@
- static void sink_info_cb(pa_context *context, const pa_sink_info *si, int eol, void *userdata) {
- fd_info *i = userdata;
-
-- if (!si && eol < 0) {
-+ if (!si || eol < 0) {
- i->operation_success = 0;
- pa_threaded_mainloop_signal(i->mainloop, 0);
- return;
-@@ -1224,7 +1224,7 @@
- static void source_info_cb(pa_context *context, const pa_source_info *si, int eol, void *userdata) {
- fd_info *i = userdata;
-
-- if (!si && eol < 0) {
-+ if (!si || eol < 0) {
- i->operation_success = 0;
- pa_threaded_mainloop_signal(i->mainloop, 0);
- return;
-Index: pulseaudio-0.9.14/src/pulsecore/core-util.c
-===================================================================
---- src/pulsecore/core-util.c 2009-02-19 19:25:01.000000000 -0500
-+++ src/pulsecore/core-util.c 2009-02-19 19:26:05.000000000 -0500
-@@ -1376,6 +1376,7 @@
- return -1;
- }
-
-+ pa_xfree(p);
- return 0;
+ return result;
}
-
-@@ -1408,6 +1409,7 @@
-
- if (pa_make_secure_dir(d, m, (uid_t) -1, (gid_t) -1) < 0) {
- pa_log_error("Failed to create secure directory: %s", pa_cstrerror(errno));
-+ pa_xfree(d);
- goto fail;
- }
-
-@@ -2424,7 +2426,7 @@
-
- pa_strip_nl(ln);
-
-- if (ln[0])
-+ if (r && ln[0])
- return pa_xstrdup(ln);
- }
-
-Index: pulseaudio-0.9.14/src/daemon/daemon-conf.c
-===================================================================
---- src/daemon/daemon-conf.c 2009-02-19 19:25:01.000000000 -0500
-+++ src/daemon/daemon-conf.c 2009-02-19 19:25:11.000000000 -0500
-@@ -643,7 +643,7 @@
- if (c->config_file)
- pa_strbuf_printf(s, _("### Read from configuration file: %s ###\n"), c->config_file);
-
-- pa_assert(c->log_level <= PA_LOG_LEVEL_MAX);
-+ pa_assert(c->log_level < PA_LOG_LEVEL_MAX);
-
- pa_strbuf_printf(s, "daemonize = %s\n", pa_yes_no(c->daemonize));
- pa_strbuf_printf(s, "fail = %s\n", pa_yes_no(c->fail));
-Index: pulseaudio-0.9.14/src/pulsecore/protocol-esound.c
-===================================================================
---- src/pulsecore/protocol-esound.c 2009-02-19 19:25:01.000000000 -0500
-+++ src/pulsecore/protocol-esound.c 2009-02-19 19:25:11.000000000 -0500
-@@ -926,7 +926,7 @@
-
- c->request = PA_MAYBE_INT32_SWAP(c->swap_byte_order, c->request);
-
-- if (c->request < ESD_PROTO_CONNECT || c->request > ESD_PROTO_MAX) {
-+ if (c->request < ESD_PROTO_CONNECT || c->request >= ESD_PROTO_MAX) {
- pa_log("recieved invalid request.");
- return -1;
- }
-Index: pulseaudio-0.9.14/src/modules/module-stream-restore.c
+From 85fb360fe3b9d3b3fb4e537373f4dc9202ca5e13 Mon Sep 17 00:00:00 2001
+From: Lennart Poettering <lennart@poettering.net>
+Date: Mon, 8 Jun 2009 18:22:19 +0200
+Subject: [PATCH 26/28] sample: fix build on BE archs
+
+---
+ src/pulsecore/sample-util.c | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git src/pulsecore/sample-util.c src/pulsecore/sample-util.c
+index dda3883..5b8ccf5 100644
+--- src/pulsecore/sample-util.c
++++ src/pulsecore/sample-util.c
+@@ -1182,7 +1182,7 @@ pa_memchunk* pa_silence_memchunk_get(pa_silence_cache *cache, pa_mempool *pool,
+ case PA_SAMPLE_S24LE:
+ case PA_SAMPLE_S24BE:
+ case PA_SAMPLE_S24_32LE:
+- case PA_SAMPLE_S24_32RE:
++ case PA_SAMPLE_S24_32BE:
+ case PA_SAMPLE_FLOAT32LE:
+ case PA_SAMPLE_FLOAT32BE:
+ cache->blocks[PA_SAMPLE_S16LE] = b = silence_memblock_new(pool, 0);
+Index: pulseaudio-0.9.14/src/daemon/daemon.conf.in
===================================================================
---- src/modules/module-stream-restore.c 2009-02-19 19:25:01.000000000 -0500
-+++ src/modules/module-stream-restore.c 2009-02-19 19:25:11.000000000 -0500
-@@ -429,6 +429,7 @@
- pa_xfree(n);
- continue;
- }
-+ pa_xfree(n);
+--- src/daemon/daemon.conf.in 2009-03-07 05:01:11.000000000 -0500
++++ src/daemon/daemon.conf.in 2009-03-07 05:01:54.000000000 -0500
+@@ -46,7 +46,7 @@
+ ; log-target = auto
+ ; log-level = notice
- if (u->restore_volume) {
- pa_cvolume v = e->volume;
-@@ -460,6 +461,7 @@
- pa_xfree(n);
- continue;
- }
-+ pa_xfree(n);
+-; resample-method = speex-float-3
++resample-method = speex-float-1
+ ; disable-remixing = no
+ ; disable-lfe-remixing = yes
- if (u->restore_device &&
- (s = pa_namereg_get(u->core, e->device, PA_NAMEREG_SOURCE, TRUE))) {
-Index: pulseaudio-0.9.14/src/modules/alsa-util.c
-===================================================================
---- src/modules/alsa-util.c 2009-02-19 19:28:55.000000000 -0500
-+++ src/modules/alsa-util.c 2009-02-19 19:29:23.000000000 -0500
-@@ -107,7 +107,7 @@
- static void defer_cb(pa_mainloop_api*a, pa_defer_event* e, void *userdata) {
- struct pa_alsa_fdlist *fdl = userdata;
- unsigned num_fds, i;
-- int err;
-+ int err, n;
- struct pollfd *temp;
-
- pa_assert(a);
-@@ -116,7 +116,11 @@
-
- a->defer_enable(fdl->defer, 0);
-
-- num_fds = (unsigned) snd_mixer_poll_descriptors_count(fdl->mixer);
-+ if ((n = snd_mixer_poll_descriptors_count(fdl->mixer)) < 0) {
-+ pa_log("snd_mixer_poll_descriptors_count() failed: %s", snd_strerror(n));
-+ return;
-+ }
-+ num_fds = (unsigned) n;
+@@ -72,5 +72,5 @@
+ ; default-sample-rate = 44100
+ ; default-sample-channels = 2
- if (num_fds != fdl->num_fds) {
- if (fdl->fds)
-Index: pulseaudio-0.9.14/src/daemon/cmdline.c
-===================================================================
---- src/daemon/cmdline.c 2009-02-22 00:19:36.000000000 -0500
-+++ src/daemon/cmdline.c 2009-02-22 00:21:01.000000000 -0500
-@@ -292,7 +292,7 @@
-
- case ARG_DISALLOW_EXIT:
- if ((conf->disallow_exit = optarg ? pa_parse_boolean(optarg) : TRUE) < 0) {
-- pa_log(_("--disallow-exit boolean argument"));
-+ pa_log(_("--disallow-exit expects boolean argument"));
- goto fail;
- }
- break;
-Index: pulseaudio-0.9.14/src/pulsecore/protocol-esound.c
-===================================================================
---- src/pulsecore/protocol-esound.c 2009-03-05 17:15:48.000000000 -0500
-+++ src/pulsecore/protocol-esound.c 2009-03-05 17:15:49.000000000 -0500
-@@ -1198,6 +1198,9 @@
- connection *c = CONNECTION(o);
- connection_assert_ref(c);
-
-+ if (!c->protocol)
-+ return -1;
-+
- switch (code) {
- case CONNECTION_MESSAGE_REQUEST_DATA:
- do_work(c);
-Index: pulseaudio-0.9.14/src/pulsecore/protocol-simple.c
+-; default-fragments = 4
+-; default-fragment-size-msec = 25
++default-fragments = 8
++default-fragment-size-msec = 10
===================================================================
---- src/pulsecore/protocol-simple.c 2009-03-05 17:12:00.000000000 -0500
-+++ src/pulsecore/protocol-simple.c 2009-03-05 17:15:49.000000000 -0500
-@@ -283,6 +283,9 @@
- connection *c = CONNECTION(o);
- connection_assert_ref(c);
-
-+ if (!c->protocol)
-+ return -1;
-+
- switch (code) {
- case CONNECTION_MESSAGE_REQUEST_DATA:
- do_work(c);
+--- src/daemon/default.pa.in 2009-02-13 19:12:33.000000000 -0500
++++ src/daemon/default.pa.in 2009-02-13 19:13:03.000000000 -0500
+@@ -58,7 +58,7 @@
+
+ ### Automatically load driver modules depending on the hardware available
+ .ifexists module-hal-detect@PA_SOEXT@
+-load-module module-hal-detect
++load-module module-hal-detect tsched=0
+ .else
+ ### Alternatively use the static hardware detection module (for systems that
+ ### lack HAL support)
diff --git a/audio/pulseaudio/pkg-plist b/audio/pulseaudio/pkg-plist
index d84110daef1b..e6c39d46b70f 100644
--- a/audio/pulseaudio/pkg-plist
+++ b/audio/pulseaudio/pkg-plist
@@ -67,84 +67,141 @@ lib/libpulse.a
lib/libpulse.la
lib/libpulse.so
lib/libpulse.so.0
-lib/libpulsecore.a
-lib/libpulsecore.la
-lib/libpulsecore.so
-lib/libpulsecore.so.9
+lib/libpulsecommon-%%PULSE_VERSION%%.a
+lib/libpulsecommon-%%PULSE_VERSION%%.la
+lib/libpulsecommon-%%PULSE_VERSION%%.so
+lib/libpulsecore-%%PULSE_VERSION%%.a
+lib/libpulsecore-%%PULSE_VERSION%%.la
+lib/libpulsecore-%%PULSE_VERSION%%.so
+lib/libpulsedsp.a
lib/libpulsedsp.so
-lib/pulse-%%PULSE_VERSION%%/modules/libauth-cookie.so
-lib/pulse-%%PULSE_VERSION%%/modules/libauthkey.so
+%%AVAHI%%lib/pulse-%%PULSE_VERSION%%/modules/libavahi-wrap.a
%%AVAHI%%lib/pulse-%%PULSE_VERSION%%/modules/libavahi-wrap.so
+lib/pulse-%%PULSE_VERSION%%/modules/libcli.a
lib/pulse-%%PULSE_VERSION%%/modules/libcli.so
-%%HAL%%lib/pulse-%%PULSE_VERSION%%/modules/libdbus-util.so
-lib/pulse-%%PULSE_VERSION%%/modules/libiochannel.so
-lib/pulse-%%PULSE_VERSION%%/modules/libioline.so
-lib/pulse-%%PULSE_VERSION%%/modules/libipacl.so
+lib/pulse-%%PULSE_VERSION%%/modules/liboss-util.a
lib/pulse-%%PULSE_VERSION%%/modules/liboss-util.so
-lib/pulse-%%PULSE_VERSION%%/modules/libpacket.so
-lib/pulse-%%PULSE_VERSION%%/modules/libparseaddr.so
-lib/pulse-%%PULSE_VERSION%%/modules/libpdispatch.so
+lib/pulse-%%PULSE_VERSION%%/modules/libprotocol-cli.a
lib/pulse-%%PULSE_VERSION%%/modules/libprotocol-cli.so
+lib/pulse-%%PULSE_VERSION%%/modules/libprotocol-esound.a
lib/pulse-%%PULSE_VERSION%%/modules/libprotocol-esound.so
+lib/pulse-%%PULSE_VERSION%%/modules/libprotocol-http.a
lib/pulse-%%PULSE_VERSION%%/modules/libprotocol-http.so
+lib/pulse-%%PULSE_VERSION%%/modules/libprotocol-native.a
lib/pulse-%%PULSE_VERSION%%/modules/libprotocol-native.so
+lib/pulse-%%PULSE_VERSION%%/modules/libprotocol-simple.a
lib/pulse-%%PULSE_VERSION%%/modules/libprotocol-simple.so
-lib/pulse-%%PULSE_VERSION%%/modules/libpstream-util.so
-lib/pulse-%%PULSE_VERSION%%/modules/libpstream.so
+lib/pulse-%%PULSE_VERSION%%/modules/libraop.a
+lib/pulse-%%PULSE_VERSION%%/modules/libraop.so
+lib/pulse-%%PULSE_VERSION%%/modules/librtp.a
lib/pulse-%%PULSE_VERSION%%/modules/librtp.so
-lib/pulse-%%PULSE_VERSION%%/modules/libsocket-client.so
-lib/pulse-%%PULSE_VERSION%%/modules/libsocket-server.so
-lib/pulse-%%PULSE_VERSION%%/modules/libsocket-util.so
-lib/pulse-%%PULSE_VERSION%%/modules/libstrlist.so
-lib/pulse-%%PULSE_VERSION%%/modules/libtagstruct.so
-lib/pulse-%%PULSE_VERSION%%/modules/libx11prop.so
-lib/pulse-%%PULSE_VERSION%%/modules/libx11wrap.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-always-sink.a
lib/pulse-%%PULSE_VERSION%%/modules/module-always-sink.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-augment-properties.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-augment-properties.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-card-restore.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-card-restore.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-cli-protocol-tcp.a
lib/pulse-%%PULSE_VERSION%%/modules/module-cli-protocol-tcp.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-cli-protocol-unix.a
lib/pulse-%%PULSE_VERSION%%/modules/module-cli-protocol-unix.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-cli.a
lib/pulse-%%PULSE_VERSION%%/modules/module-cli.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-combine.a
lib/pulse-%%PULSE_VERSION%%/modules/module-combine.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-console-kit.a
lib/pulse-%%PULSE_VERSION%%/modules/module-console-kit.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-cork-music-on-phone.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-cork-music-on-phone.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-default-device-restore.a
lib/pulse-%%PULSE_VERSION%%/modules/module-default-device-restore.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-detect.a
lib/pulse-%%PULSE_VERSION%%/modules/module-detect.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-device-restore.a
lib/pulse-%%PULSE_VERSION%%/modules/module-device-restore.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-esound-compat-spawnfd.a
lib/pulse-%%PULSE_VERSION%%/modules/module-esound-compat-spawnfd.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-esound-compat-spawnpid.a
lib/pulse-%%PULSE_VERSION%%/modules/module-esound-compat-spawnpid.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-esound-protocol-tcp.a
lib/pulse-%%PULSE_VERSION%%/modules/module-esound-protocol-tcp.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-esound-protocol-unix.a
lib/pulse-%%PULSE_VERSION%%/modules/module-esound-protocol-unix.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-esound-sink.a
lib/pulse-%%PULSE_VERSION%%/modules/module-esound-sink.so
+%%GCONF%%lib/pulse-%%PULSE_VERSION%%/modules/module-gconf.a
%%GCONF%%lib/pulse-%%PULSE_VERSION%%/modules/module-gconf.so
+%%HAL%%lib/pulse-%%PULSE_VERSION%%/modules/module-hal-detect.a
%%HAL%%lib/pulse-%%PULSE_VERSION%%/modules/module-hal-detect.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-http-protocol-tcp.a
lib/pulse-%%PULSE_VERSION%%/modules/module-http-protocol-tcp.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-http-protocol-unix.a
lib/pulse-%%PULSE_VERSION%%/modules/module-http-protocol-unix.so
+%%JACK%%lib/pulse-%%PULSE_VERSION%%/modules/module-jack-sink.a
%%JACK%%lib/pulse-%%PULSE_VERSION%%/modules/module-jack-sink.so
+%%JACK%%lib/pulse-%%PULSE_VERSION%%/modules/module-jack-source.a
%%JACK%%lib/pulse-%%PULSE_VERSION%%/modules/module-jack-source.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-ladspa-sink.a
lib/pulse-%%PULSE_VERSION%%/modules/module-ladspa-sink.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-match.a
lib/pulse-%%PULSE_VERSION%%/modules/module-match.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-native-protocol-fd.a
lib/pulse-%%PULSE_VERSION%%/modules/module-native-protocol-fd.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-native-protocol-tcp.a
lib/pulse-%%PULSE_VERSION%%/modules/module-native-protocol-tcp.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-native-protocol-unix.a
lib/pulse-%%PULSE_VERSION%%/modules/module-native-protocol-unix.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-null-sink.a
lib/pulse-%%PULSE_VERSION%%/modules/module-null-sink.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-oss.a
lib/pulse-%%PULSE_VERSION%%/modules/module-oss.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-pipe-sink.a
lib/pulse-%%PULSE_VERSION%%/modules/module-pipe-sink.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-pipe-source.a
lib/pulse-%%PULSE_VERSION%%/modules/module-pipe-source.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-position-event-sounds.a
lib/pulse-%%PULSE_VERSION%%/modules/module-position-event-sounds.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-raop-discover.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-raop-discover.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-raop-sink.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-raop-sink.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-remap-sink.a
lib/pulse-%%PULSE_VERSION%%/modules/module-remap-sink.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-rescue-streams.a
lib/pulse-%%PULSE_VERSION%%/modules/module-rescue-streams.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-rtp-recv.a
lib/pulse-%%PULSE_VERSION%%/modules/module-rtp-recv.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-rtp-send.a
lib/pulse-%%PULSE_VERSION%%/modules/module-rtp-send.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-simple-protocol-tcp.a
lib/pulse-%%PULSE_VERSION%%/modules/module-simple-protocol-tcp.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-simple-protocol-unix.a
lib/pulse-%%PULSE_VERSION%%/modules/module-simple-protocol-unix.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-sine.a
lib/pulse-%%PULSE_VERSION%%/modules/module-sine.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-sine-source.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-sine-source.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-stream-restore.a
lib/pulse-%%PULSE_VERSION%%/modules/module-stream-restore.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-suspend-on-idle.a
lib/pulse-%%PULSE_VERSION%%/modules/module-suspend-on-idle.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-tunnel-sink.a
lib/pulse-%%PULSE_VERSION%%/modules/module-tunnel-sink.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-tunnel-source.a
lib/pulse-%%PULSE_VERSION%%/modules/module-tunnel-source.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-volume-restore.a
lib/pulse-%%PULSE_VERSION%%/modules/module-volume-restore.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-x11-bell.a
lib/pulse-%%PULSE_VERSION%%/modules/module-x11-bell.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-x11-cork-request.a
+lib/pulse-%%PULSE_VERSION%%/modules/module-x11-cork-request.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-x11-publish.a
lib/pulse-%%PULSE_VERSION%%/modules/module-x11-publish.so
+lib/pulse-%%PULSE_VERSION%%/modules/module-x11-xsmp.a
lib/pulse-%%PULSE_VERSION%%/modules/module-x11-xsmp.so
+%%AVAHI%%lib/pulse-%%PULSE_VERSION%%/modules/module-zeroconf-discover.a
%%AVAHI%%lib/pulse-%%PULSE_VERSION%%/modules/module-zeroconf-discover.so
+%%AVAHI%%lib/pulse-%%PULSE_VERSION%%/modules/module-zeroconf-publish.a
%%AVAHI%%lib/pulse-%%PULSE_VERSION%%/modules/module-zeroconf-publish.so
%%AVAHI%%libdata/pkgconfig/libpulse-browse.pc
libdata/pkgconfig/libpulse-mainloop-glib.pc
@@ -152,12 +209,40 @@ libdata/pkgconfig/libpulse-simple.pc
libdata/pkgconfig/libpulse.pc
%%GCONF%%libexec/pulse/gconf-helper
%%HAL%%share/PolicyKit/policy/org.pulseaudio.policy
+share/locale/as/LC_MESSAGES/pulseaudio.mo
+share/locale/bn_IN/LC_MESSAGES/pulseaudio.mo
+share/locale/ca/LC_MESSAGES/pulseaudio.mo
+share/locale/cs/LC_MESSAGES/pulseaudio.mo
share/locale/de/LC_MESSAGES/pulseaudio.mo
share/locale/el/LC_MESSAGES/pulseaudio.mo
+share/locale/es/LC_MESSAGES/pulseaudio.mo
+share/locale/fi/LC_MESSAGES/pulseaudio.mo
share/locale/fr/LC_MESSAGES/pulseaudio.mo
+share/locale/gu/LC_MESSAGES/pulseaudio.mo
+share/locale/it/LC_MESSAGES/pulseaudio.mo
+share/locale/kn/LC_MESSAGES/pulseaudio.mo
+share/locale/mr/LC_MESSAGES/pulseaudio.mo
+share/locale/nl/LC_MESSAGES/pulseaudio.mo
+share/locale/or/LC_MESSAGES/pulseaudio.mo
+share/locale/pa/LC_MESSAGES/pulseaudio.mo
+share/locale/pl/LC_MESSAGES/pulseaudio.mo
+share/locale/pt_BR/LC_MESSAGES/pulseaudio.mo
+share/locale/sr/LC_MESSAGES/pulseaudio.mo
+share/locale/sr@latin/LC_MESSAGES/pulseaudio.mo
share/locale/sv/LC_MESSAGES/pulseaudio.mo
+share/locale/ta/LC_MESSAGES/pulseaudio.mo
+share/locale/te/LC_MESSAGES/pulseaudio.mo
+share/locale/zh_CN/LC_MESSAGES/pulseaudio.mo
%%GCONF%%@dirrm libexec/pulse
@dirrm lib/pulse-%%PULSE_VERSION%%/modules
@dirrm lib/pulse-%%PULSE_VERSION%%
@dirrm include/pulse
@dirrm etc/pulse
+@dirrmtry share/locale/sr@latin/LC_MESSAGES
+@dirrmtry share/locale/sr@latin
+@dirrmtry share/locale/mr/LC_MESSAGES
+@dirrmtry share/locale/mr
+@dirrmtry share/locale/bn_IN/LC_MESSAGES
+@dirrmtry share/locale/bn_IN
+@dirrmtry share/locale/as/LC_MESSAGES
+@dirrmtry share/locale/as
diff --git a/audio/py-taglib/Makefile b/audio/py-taglib/Makefile
index aba6e01f2a6a..b0ae4ed33079 100644
--- a/audio/py-taglib/Makefile
+++ b/audio/py-taglib/Makefile
@@ -20,7 +20,7 @@ LIB_DEPENDS= tag.6:${PORTSDIR}/audio/taglib
WRKSRC= ${WRKDIR}/python-taglib-${PORTVERSION}
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_PYTHON= -2.4
USE_PYTHON_PREFIX= yes
GNU_CONFIGURE= yes
diff --git a/audio/resid/Makefile b/audio/resid/Makefile
index 08166eb6c8bf..8cec4e720aa1 100644
--- a/audio/resid/Makefile
+++ b/audio/resid/Makefile
@@ -14,7 +14,7 @@ MASTER_SITES= CRITICAL
MAINTAINER= ehaupt@FreeBSD.org
COMMENT= Cycle-based SID emulator engine
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
GNU_CONFIGURE= yes
USE_LDCONFIG= yes
MAKE_JOBS_SAFE= yes
diff --git a/audio/rhythmbox/Makefile b/audio/rhythmbox/Makefile
index 2def21a2bf1c..34ae229f38a8 100644
--- a/audio/rhythmbox/Makefile
+++ b/audio/rhythmbox/Makefile
@@ -33,7 +33,7 @@ USE_GMAKE= yes
USE_GNOME= gnomehack intlhack gnomeprefix gtk20 nautilus2
WANT_GNOME= yes
USE_GSTREAMER= flac mp3 gnomevfs gconf jpeg
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
CONFIGURE_ARGS= --disable-vala --with-libbrasero-media \
--without-libnautilus-burn
INSTALLS_ICONS= yes
diff --git a/audio/rioutil/Makefile b/audio/rioutil/Makefile
index f2ae6eef104f..3202683ce57d 100644
--- a/audio/rioutil/Makefile
+++ b/audio/rioutil/Makefile
@@ -13,7 +13,7 @@ MASTER_SITES= SF
MAINTAINER= ports@FreeBSD.org
COMMENT= A program to inferface with the Rio600, Rio800, and psa[play devices
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_GMAKE= yes
GNU_CONFIGURE= yes
CONFIGURE_ENV= CPPFLAGS="${CPPFLAGS}" LDFLAGS="${LDFLAGS}"
diff --git a/audio/sdl_mixer/Makefile b/audio/sdl_mixer/Makefile
index 9da37db816ac..fc99855b396b 100644
--- a/audio/sdl_mixer/Makefile
+++ b/audio/sdl_mixer/Makefile
@@ -15,7 +15,7 @@ DISTNAME= SDL_mixer-${PORTVERSION}
MAINTAINER= mva@FreeBSD.org
COMMENT= A sample multi-channel audio mixer library
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_SDL= sdl
USE_GMAKE= yes
GNU_CONFIGURE= yes
diff --git a/audio/sdl_sound/Makefile b/audio/sdl_sound/Makefile
index 03ad25d1f7d2..8d052ccc0734 100644
--- a/audio/sdl_sound/Makefile
+++ b/audio/sdl_sound/Makefile
@@ -16,7 +16,7 @@ DISTNAME= SDL_sound-${PORTVERSION}
MAINTAINER= mva@FreeBSD.org
COMMENT= A SDL audio library and player for some popular sound file formats
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_LDCONFIG= yes
USE_SDL= sdl
CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" LDFLAGS="-L${LOCALBASE}/lib"
diff --git a/audio/soundtouch/Makefile b/audio/soundtouch/Makefile
index e2c29d2a919a..4e5a61487a60 100644
--- a/audio/soundtouch/Makefile
+++ b/audio/soundtouch/Makefile
@@ -15,7 +15,7 @@ MAINTAINER= danfe@FreeBSD.org
COMMENT= An open-source audio processing library
CONFIGURE_ARGS= --enable-shared=yes
-USE_AUTOTOOLS= autoconf:262 automake:19:env libtool:15
+USE_AUTOTOOLS= autoconf:262 automake:19:env libtool:22
USE_LDCONFIG= yes
pre-configure:
diff --git a/audio/sox/Makefile b/audio/sox/Makefile
index b74aef946fac..7ad5b93b401b 100644
--- a/audio/sox/Makefile
+++ b/audio/sox/Makefile
@@ -7,7 +7,7 @@
PORTNAME= sox
PORTVERSION= 14.2.0
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= audio
MASTER_SITES= SF
diff --git a/audio/speex/Makefile b/audio/speex/Makefile
index 68a30b80b947..b1dea7d27236 100644
--- a/audio/speex/Makefile
+++ b/audio/speex/Makefile
@@ -21,7 +21,7 @@ CONFLICTS= speex-devel-[0-9]*
USE_GNOME= gnomehack gnometarget ltverhack
USE_LDCONFIG= yes
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
GNU_CONFIGURE= yes
MAKE_JOBS_SAFE= yes
CONFIGURE_ARGS= --with-ogg-dir=${LOCALBASE}
diff --git a/audio/sphinx/Makefile b/audio/sphinx/Makefile
index 0b5fade4d2e7..7031d4908ce3 100644
--- a/audio/sphinx/Makefile
+++ b/audio/sphinx/Makefile
@@ -20,7 +20,7 @@ DEST= ${WRKSRC}/src/libsphinx2/
USE_LDCONFIG= yes
PKGMESSAGE= ${WRKDIR}/pkg-message
USE_GMAKE= yes
-USE_AUTOTOOLS=libtool:15
+USE_AUTOTOOLS=libtool:22
# contains i386 sound code
ONLY_FOR_ARCHS= i386
diff --git a/audio/sphinx3/Makefile b/audio/sphinx3/Makefile
index 0071c4f3f370..d3ec55f2ae6b 100644
--- a/audio/sphinx3/Makefile
+++ b/audio/sphinx3/Makefile
@@ -18,7 +18,7 @@ LIB_DEPENDS= sphinxfe.0:${PORTSDIR}/audio/sphinxbase
USE_LDCONFIG= yes
USE_GMAKE= yes
-USE_AUTOTOOLS=libtool:15
+USE_AUTOTOOLS=libtool:22
CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include -I${LOCALBASE}/include/sphinxbase" \
LDFLAGS="-L${LOCALBASE}/lib"
diff --git a/audio/sphinxbase/Makefile b/audio/sphinxbase/Makefile
index 0cb09061b8ef..c27e8bfb1735 100644
--- a/audio/sphinxbase/Makefile
+++ b/audio/sphinxbase/Makefile
@@ -7,6 +7,7 @@
PORTNAME= sphinxbase
PORTVERSION= 0.3
+PORTREVISION= 1
CATEGORIES= audio accessibility
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
MASTER_SITE_SUBDIR= cmusphinx
@@ -17,7 +18,8 @@ COMMENT= CMU SPhinx Speech recognition system base
USE_LDCONFIG= yes
PKGMESSAGE= ${WRKDIR}/pkg-message
USE_GMAKE= yes
-USE_AUTOTOOLS= libtool:15 automake:19
+USE_GNOME= gnomehack
+USE_AUTOTOOLS= libtool:22
CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" \
LDFLAGS="-L${LOCALBASE}/lib"
@@ -25,7 +27,4 @@ CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" \
MAKE_ENV= MKDIR="${MKDIR}" \
OSVERSION=${OSVERSION}
-post-patch:
- @${REINPLACE_CMD} -e 's|(libdir)/pkgconfig|(prefix)/libdata/pkgconfig|' ${WRKSRC}/Makefile.am
-
.include <bsd.port.mk>
diff --git a/audio/sphinxbase/files/patch-configure.in b/audio/sphinxbase/files/patch-configure
index bba277a6037e..f536d39e1773 100644
--- a/audio/sphinxbase/files/patch-configure.in
+++ b/audio/sphinxbase/files/patch-configure
@@ -1,6 +1,6 @@
---- configure.in (revision 7550)
-+++ configure.in (working copy)
-@@ -105,18 +105,12 @@
+--- configure.orig 2009-07-13 10:53:01.000000000 -0500
++++ configure 2009-07-13 10:54:06.000000000 -0500
+@@ -7166,7 +7166,8 @@
if test "x$ad_files" = "x"; then
case $host in
@@ -9,14 +9,21 @@
+ *-*-freebsd*|*-*-netbsd*|*-*-openbsd*)
ad_files="ad_oss.lo"
ad_backend="AD_BACKEND_OSS"
- AC_DEFINE(AD_BACKEND_OSS, [], [Use OSS interface for sound I/O])
+
+@@ -7175,17 +7176,6 @@
+ _ACEOF
+
;;
- # FIXME: isn't this the same OSS as on Linux?
- *-*-freebsd*|*-*-netbsd*|*-*-openbsd*)
- ad_files="ad_oss_bsd.lo mulaw_base.lo"
- ad_libs="-lossaudio"
- ad_backend="AD_BACKEND_OSS_BSD"
-- AC_DEFINE(AD_BACKEND_OSS_BSD, [], [Use OSS interface for sound I/O])
+-
+-cat >>confdefs.h <<\_ACEOF
+-#define AD_BACKEND_OSS_BSD
+-_ACEOF
+-
- ;;
*-*-osf*)
ad_files="ad_osf.lo mulaw_base.lo"
diff --git a/audio/sweep/Makefile b/audio/sweep/Makefile
index 19aa8589034c..00862c527ede 100644
--- a/audio/sweep/Makefile
+++ b/audio/sweep/Makefile
@@ -25,7 +25,7 @@ USE_BZIP2= yes
USE_GNOME= gnomehack gnometarget gtk20
USE_GETTEXT= yes
USE_GMAKE= yes
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" \
LDFLAGS="-L${LOCALBASE}/lib"
CONFIGURE_ARGS= --with-extralibdir=${LOCALBASE}/lib \
diff --git a/audio/swhplugins/Makefile b/audio/swhplugins/Makefile
index 52b636ea6298..226e23bee77b 100644
--- a/audio/swhplugins/Makefile
+++ b/audio/swhplugins/Makefile
@@ -22,7 +22,7 @@ LIB_DEPENDS= fftw3f.5:${PORTSDIR}/math/fftw3-float
# includes assembler code
ONLY_FOR_ARCHS= i386 amd64
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_GMAKE= yes
GNU_CONFIGURE= yes
CPPFLAGS= -I${LOCALBASE}/include
diff --git a/audio/taglib/Makefile b/audio/taglib/Makefile
index f972a635dade..6873ad1384ee 100644
--- a/audio/taglib/Makefile
+++ b/audio/taglib/Makefile
@@ -13,7 +13,7 @@ MASTER_SITES= http://ktown.kde.org/~wheeler/files/src/
MAINTAINER= bsdkaffee@gmail.com
COMMENT= Library for manipulating ID3 tags and Ogg comments
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
GNU_CONFIGURE= yes
USE_GMAKE= yes
USE_LDCONFIG= yes
diff --git a/audio/thunar-media-tags-plugin/Makefile b/audio/thunar-media-tags-plugin/Makefile
index 745bc6f46629..c8c5967a9a8a 100644
--- a/audio/thunar-media-tags-plugin/Makefile
+++ b/audio/thunar-media-tags-plugin/Makefile
@@ -24,6 +24,6 @@ USE_GETTEXT= yes
GNU_CONFIGURE= yes
USE_GNOME= gnometarget gnomehack gtk20 intltool intlhack pkgconfig
USE_XFCE= configenv libexo thunar
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
.include <bsd.port.mk>
diff --git a/audio/tse3/Makefile b/audio/tse3/Makefile
index ff75a5eb8d25..483daab7040b 100644
--- a/audio/tse3/Makefile
+++ b/audio/tse3/Makefile
@@ -14,7 +14,7 @@ MAINTAINER= ports@FreeBSD.org
COMMENT= A MIDI library
USE_GMAKE= yes
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
CONFIGURE_ARGS= --without-doc-install
CONFIGURE_ENV= CPPFLAGS="${PTHREAD_CFLAGS}" LDFLAGS="${PTHREAD_LIBS}"
USE_LDCONFIG= yes
diff --git a/audio/vagalume/Makefile b/audio/vagalume/Makefile
index 5f0ad7c7ef72..987cb0451100 100644
--- a/audio/vagalume/Makefile
+++ b/audio/vagalume/Makefile
@@ -23,7 +23,7 @@ LIB_DEPENDS= xml2:${PORTSDIR}/textproc/libxml2 \
WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION}.orig
GNU_CONFIGURE= yes
-USE_AUTOTOOLS= libtool:15 autoconf:262
+USE_AUTOTOOLS= libtool:22 autoconf:262
USE_GNOME= pkgconfig gtk20
USE_GSTREAMER= good mad
INSTALLS_ICONS= yes
diff --git a/audio/vsound/Makefile b/audio/vsound/Makefile
index 0c40b5c91a5f..8da7c3bef845 100644
--- a/audio/vsound/Makefile
+++ b/audio/vsound/Makefile
@@ -17,7 +17,7 @@ COMMENT= Utility for capturing audio streams from programs with OSS output
BUILD_DEPENDS= sox:${PORTSDIR}/audio/sox
RUN_DEPENDS= sox:${PORTSDIR}/audio/sox
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
post-install:
.if !defined(NOPORTDOCS)
diff --git a/audio/wsoundserver/Makefile b/audio/wsoundserver/Makefile
index 2f7525c451de..39add0ba2390 100644
--- a/audio/wsoundserver/Makefile
+++ b/audio/wsoundserver/Makefile
@@ -21,7 +21,7 @@ LIB_DEPENDS= PropList.2:${PORTSDIR}/devel/libPropList \
dockapp.2:${PORTSDIR}/x11-wm/libdockapp
RUN_DEPENDS= wmaker:${PORTSDIR}/x11-wm/windowmaker
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
WANT_GNOME= yes
USE_LDCONFIG= yes
GNU_CONFIGURE= yes
diff --git a/audio/xanalyser/Makefile b/audio/xanalyser/Makefile
index f3818464e70b..30934a68ce87 100644
--- a/audio/xanalyser/Makefile
+++ b/audio/xanalyser/Makefile
@@ -20,7 +20,7 @@ USE_BZIP2= yes
USE_MOTIF= yes
USE_GMAKE= yes
GNU_CONFIGURE= yes
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
MAN1= xanalyser.1
PLIST_FILES= bin/xanalyser \
lib/X11/app-defaults/XAnalyser
diff --git a/audio/xmms-arts_output/Makefile b/audio/xmms-arts_output/Makefile
index 7cc3974e9951..20e239ed1a30 100644
--- a/audio/xmms-arts_output/Makefile
+++ b/audio/xmms-arts_output/Makefile
@@ -19,7 +19,7 @@ LIB_DEPENDS= xmms.4:${PORTSDIR}/multimedia/xmms \
artsc.0:${PORTSDIR}/audio/arts
USE_GNOME= gtk12
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_LDCONFIG= yes
PLIST_FILES= lib/xmms/Output/libarts.a \
lib/xmms/Output/libarts.la \
diff --git a/audio/xmms-flac/Makefile b/audio/xmms-flac/Makefile
index 81b2e3ac62ba..3ae842d12229 100644
--- a/audio/xmms-flac/Makefile
+++ b/audio/xmms-flac/Makefile
@@ -18,7 +18,7 @@ COMMENT= XMMS input plugin for playing FLAC files
LIB_DEPENDS= xmms.4:${PORTSDIR}/multimedia/xmms \
FLAC.10:${PORTSDIR}/audio/flac
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
CONFIGURE_ARGS= --with-libiconv-prefix="${LOCALBASE}" \
--with-ogg="${LOCALBASE}" \
--with-xmms-prefix="${LOCALBASE}"
diff --git a/audio/xmms-jack/Makefile b/audio/xmms-jack/Makefile
index 737e295b21e9..87c04f2b288b 100644
--- a/audio/xmms-jack/Makefile
+++ b/audio/xmms-jack/Makefile
@@ -20,7 +20,7 @@ WRKSRC= ${WRKDIR}/${PORTNAME}
USE_GNOME= gtk12
USE_GMAKE= yes
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
CONFIGURE_ENV= CPPFLAGS="${CPPFLAGS}" LDFLAGS="${LDFLAGS}"
PLIST_FILES= lib/xmms/Output/libjackout.so
diff --git a/audio/xmms-kde/Makefile b/audio/xmms-kde/Makefile
index 36240631471e..6ab1c85058bc 100644
--- a/audio/xmms-kde/Makefile
+++ b/audio/xmms-kde/Makefile
@@ -23,7 +23,7 @@ LIB_DEPENDS= id3-3.8.3:${PORTSDIR}/audio/id3lib \
USE_KDELIBS_VER= 3
USE_GNOME= gtk12 gnometarget
USE_SDL= sdl
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
CONFIGURE_ARGS= --with-xmms-prefix=${LOCALBASE} \
--with-smpeg-prefix=${LOCALBASE} \
--with-vorbis-prefix=${LOCALBASE} \
diff --git a/audio/xmms-midi/Makefile b/audio/xmms-midi/Makefile
index 0c23aa1b8774..40192ece52d6 100644
--- a/audio/xmms-midi/Makefile
+++ b/audio/xmms-midi/Makefile
@@ -18,7 +18,7 @@ LIB_DEPENDS= xmms.4:${PORTSDIR}/multimedia/xmms
RUN_DEPENDS= timidity:${PORTSDIR}/audio/timidity
USE_GNOME= gtk12
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
USE_GMAKE= yes
PLIST_FILES= lib/xmms/Input/libmid.a \
diff --git a/audio/xmms-sndfile/Makefile b/audio/xmms-sndfile/Makefile
index 68cd592c5228..334e14eb499c 100644
--- a/audio/xmms-sndfile/Makefile
+++ b/audio/xmms-sndfile/Makefile
@@ -26,7 +26,7 @@ PLIST_FILES= lib/xmms/Input/libxmms_sndfile.so \
lib/xmms/Input/libxmms_sndfile.la
USE_GNOME= gtk12
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
GNU_CONFIGURE= yes
USE_XORG= x11 xext xmu xi
USE_LDCONFIG= yes
diff --git a/audio/xmms-tfmx/Makefile b/audio/xmms-tfmx/Makefile
index 2603297a9364..a82be1351947 100644
--- a/audio/xmms-tfmx/Makefile
+++ b/audio/xmms-tfmx/Makefile
@@ -19,7 +19,7 @@ LIB_DEPENDS= xmms.4:${PORTSDIR}/multimedia/xmms
USE_GNOME= gnometarget gtk12 lthack
USE_GMAKE= yes
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
PLIST_FILES= lib/xmms/Input/libtfmx.so
diff --git a/audio/xsynth-dssi/Makefile b/audio/xsynth-dssi/Makefile
index fbc8e3bb717c..044a8e07d197 100644
--- a/audio/xsynth-dssi/Makefile
+++ b/audio/xsynth-dssi/Makefile
@@ -24,6 +24,6 @@ GNU_CONFIGURE= yes
USE_GMAKE= yes
USE_GNOME= gtk20
CFLAGS+= -I${LOCALBASE}/include/dssi
-USE_AUTOTOOLS= libtool:15
+USE_AUTOTOOLS= libtool:22
.include <bsd.port.mk>
diff --git a/audio/yammi/Makefile b/audio/yammi/Makefile
index d45e2e5f8b39..903c5a535f09 100644
--- a/audio/yammi/Makefile
+++ b/audio/yammi/Makefile
@@ -22,7 +22,7 @@ OPTIONS= XMMS "XMMS backend support" off
USE_KDELIBS_VER= 3
USE_GMAKE= yes
-USE_AUTOTOOLS= autoconf:262:env automake:19:env libtool:15
+USE_AUTOTOOLS= autoconf:262:env automake:19:env libtool:22
GNU_CONFIGURE= yes
CONFIGURE_ARGS= --disable-gstreamer