diff options
author | mezz <mezz@FreeBSD.org> | 2009-08-03 03:36:34 +0800 |
---|---|---|
committer | mezz <mezz@FreeBSD.org> | 2009-08-03 03:36:34 +0800 |
commit | af1fc7a24eda71b11fbfc0bc73c1d53d079e5b57 (patch) | |
tree | b69e5428d2c59fc0cebf129e7ba703a374c1bcf7 /audio | |
parent | 3a0a9794815da3b9ae9bf959990263eabe231698 (diff) | |
download | freebsd-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')
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 |