summaryrefslogtreecommitdiff
path: root/recipes/pulseaudio
diff options
context:
space:
mode:
authorDenys Dmytriyenko <denis@denix.org>2009-03-17 14:32:59 -0400
committerDenys Dmytriyenko <denis@denix.org>2009-03-17 14:32:59 -0400
commit709c4d66e0b107ca606941b988bad717c0b45d9b (patch)
tree37ee08b1eb308f3b2b6426d5793545c38396b838 /recipes/pulseaudio
parentfa6cd5a3b993f16c27de4ff82b42684516d433ba (diff)
rename packages/ to recipes/ per earlier agreement
See links below for more details: http://thread.gmane.org/gmane.comp.handhelds.openembedded/21326 http://thread.gmane.org/gmane.comp.handhelds.openembedded/21816 Signed-off-by: Denys Dmytriyenko <denis@denix.org> Acked-by: Mike Westerhof <mwester@dls.net> Acked-by: Philip Balister <philip@balister.org> Acked-by: Khem Raj <raj.khem@gmail.com> Acked-by: Marcin Juszkiewicz <hrw@openembedded.org> Acked-by: Koen Kooi <koen@openembedded.org> Acked-by: Frans Meulenbroeks <fransmeulenbroeks@gmail.com>
Diffstat (limited to 'recipes/pulseaudio')
-rw-r--r--recipes/pulseaudio/files/asound.conf.pulseaudio7
-rw-r--r--recipes/pulseaudio/files/disable-using-glibc-tls.patch25
-rw-r--r--recipes/pulseaudio/files/fix-dbus-without-hal.patch15
-rw-r--r--recipes/pulseaudio/files/fix-shm.patch20
-rw-r--r--recipes/pulseaudio/files/gcc4-compile-fix.patch18
-rw-r--r--recipes/pulseaudio/files/volatiles.04_pulse2
-rw-r--r--recipes/pulseaudio/libatomics-ops/fedora/libatomic_ops-1.2-ppclwzfix.patch15
-rw-r--r--recipes/pulseaudio/libatomics-ops_1.2.bb17
-rw-r--r--recipes/pulseaudio/libcanberra_0.10.bb27
-rw-r--r--recipes/pulseaudio/padevchooser_0.9.3.bb9
-rw-r--r--recipes/pulseaudio/pulseaudio-0.9.10/2113.diff19
-rw-r--r--recipes/pulseaudio/pulseaudio-0.9.10/2114.diff15
-rw-r--r--recipes/pulseaudio/pulseaudio-0.9.10/libiconv.patch22
-rw-r--r--recipes/pulseaudio/pulseaudio-0.9.10/libpulsedsp-references-libpulsecore.patch24
-rw-r--r--recipes/pulseaudio/pulseaudio-0.9.10/libtool2.patch48
-rw-r--r--recipes/pulseaudio/pulseaudio-0.9.10/pa-drop-caps-returns-void.patch17
-rw-r--r--recipes/pulseaudio/pulseaudio-0.9.11/2113.diff19
-rw-r--r--recipes/pulseaudio/pulseaudio-0.9.11/2114.diff15
-rw-r--r--recipes/pulseaudio/pulseaudio-0.9.11/buildfix.patch13
-rw-r--r--recipes/pulseaudio/pulseaudio-0.9.11/libiconv.patch22
-rw-r--r--recipes/pulseaudio/pulseaudio-0.9.11/libpulsedsp-references-libpulsecore.patch24
-rw-r--r--recipes/pulseaudio/pulseaudio-0.9.11/libtool2.patch48
-rw-r--r--recipes/pulseaudio/pulseaudio-0.9.11/pa-drop-caps-returns-void.patch17
-rw-r--r--recipes/pulseaudio/pulseaudio-alsa-wrapper.bb43
-rw-r--r--recipes/pulseaudio/pulseaudio-esd-wrapper.bb42
-rw-r--r--recipes/pulseaudio/pulseaudio-meta/asound.conf8
-rwxr-xr-xrecipes/pulseaudio/pulseaudio-meta/pulseaudio50
-rw-r--r--recipes/pulseaudio/pulseaudio-meta/session36
-rw-r--r--recipes/pulseaudio/pulseaudio-meta_0.9.10.bb66
-rw-r--r--recipes/pulseaudio/pulseaudio.inc101
-rw-r--r--recipes/pulseaudio/pulseaudio_0.9.10.bb27
-rw-r--r--recipes/pulseaudio/pulseaudio_0.9.11.bb31
-rw-r--r--recipes/pulseaudio/pulseaudio_0.9.6.bb4
-rw-r--r--recipes/pulseaudio/pulseaudio_0.9.9.bb16
34 files changed, 882 insertions, 0 deletions
diff --git a/recipes/pulseaudio/files/asound.conf.pulseaudio b/recipes/pulseaudio/files/asound.conf.pulseaudio
new file mode 100644
index 0000000000..71f01f2c3c
--- /dev/null
+++ b/recipes/pulseaudio/files/asound.conf.pulseaudio
@@ -0,0 +1,7 @@
+pcm.pulse {
+ type pulse
+}
+
+ctl.pulse {
+ type pulse
+}
diff --git a/recipes/pulseaudio/files/disable-using-glibc-tls.patch b/recipes/pulseaudio/files/disable-using-glibc-tls.patch
new file mode 100644
index 0000000000..31d147be7d
--- /dev/null
+++ b/recipes/pulseaudio/files/disable-using-glibc-tls.patch
@@ -0,0 +1,25 @@
+Index: pulseaudio-0.9.9/configure.ac
+===================================================================
+--- pulseaudio-0.9.9.orig/configure.ac 2008-01-24 01:06:06.000000000 +0000
++++ pulseaudio-0.9.9/configure.ac 2008-02-05 17:45:59.000000000 +0000
+@@ -139,8 +139,8 @@
+ ret=$?
+ rm -f conftest.o conftest
+ if test $ret -eq 0 ; then
+- AC_DEFINE([HAVE_TLS_BUILTIN], 1, [Have __thread().])
+- AC_MSG_RESULT([yes])
++dnl AC_DEFINE([HAVE_TLS_BUILTIN], 1, [Have __thread().])
++ AC_MSG_RESULT([no])
+ else
+ AC_MSG_RESULT([no])
+ fi
+@@ -325,8 +325,7 @@
+ rm -f conftest.o conftest
+
+ if test $ret -eq 0 ; then
+- AC_DEFINE([HAVE_PTHREAD_PRIO_INHERIT], 1, [Have PTHREAD_PRIO_INHERIT.])
+- AC_MSG_RESULT([yes])
++ AC_MSG_RESULT([no])
+ else
+ AC_MSG_RESULT([no])
+ fi
diff --git a/recipes/pulseaudio/files/fix-dbus-without-hal.patch b/recipes/pulseaudio/files/fix-dbus-without-hal.patch
new file mode 100644
index 0000000000..f8ac5674a6
--- /dev/null
+++ b/recipes/pulseaudio/files/fix-dbus-without-hal.patch
@@ -0,0 +1,15 @@
+Index: pulseaudio-0.9.8/src/Makefile.am
+===================================================================
+--- pulseaudio-0.9.8.orig/src/Makefile.am
++++ pulseaudio-0.9.8/src/Makefile.am
+@@ -1424,8 +1424,8 @@
+ # HAL
+ libdbus_util_la_SOURCES = modules/dbus-util.c modules/dbus-util.h
+ libdbus_util_la_LDFLAGS = -avoid-version
+-libdbus_util_la_LIBADD = $(AM_LIBADD) $(HAL_LIBS) libpulsecore.la
+-libdbus_util_la_CFLAGS = $(AM_CFLAGS) $(HAL_CFLAGS)
++libdbus_util_la_LIBADD = $(AM_LIBADD) $(HAL_LIBS) $(DBUS_LIBS) libpulsecore.la
++libdbus_util_la_CFLAGS = $(AM_CFLAGS) $(HAL_CFLAGS) $(DBUS_CFLAGS)
+
+ module_hal_detect_la_SOURCES = modules/module-hal-detect.c
+ module_hal_detect_la_LDFLAGS = -module -avoid-version
diff --git a/recipes/pulseaudio/files/fix-shm.patch b/recipes/pulseaudio/files/fix-shm.patch
new file mode 100644
index 0000000000..3bf61d0d34
--- /dev/null
+++ b/recipes/pulseaudio/files/fix-shm.patch
@@ -0,0 +1,20 @@
+# fixes building against uclibc
+# fixed upstream, see http://www.pulseaudio.org/ticket/200
+Index: pulseaudio-0.9.9/src/pulsecore/shm.c
+===================================================================
+--- pulseaudio-0.9.9/src/pulsecore/shm.c (revision 1971)
++++ pulseaudio-0.9.9/src/pulsecore/shm.c (revision 2110)
+@@ -319,4 +319,5 @@
+ int pa_shm_cleanup(void) {
+
++#ifdef HAVE_SHM_OPEN
+ #ifdef SHM_PATH
+ DIR *d;
+@@ -376,5 +377,6 @@
+
+ closedir(d);
+-#endif
++#endif /* SHM_PATH */
++#endif /* HAVE_SHM_OPEN */
+
+ return 0;
diff --git a/recipes/pulseaudio/files/gcc4-compile-fix.patch b/recipes/pulseaudio/files/gcc4-compile-fix.patch
new file mode 100644
index 0000000000..34ad026e4d
--- /dev/null
+++ b/recipes/pulseaudio/files/gcc4-compile-fix.patch
@@ -0,0 +1,18 @@
+| fix for more strict syntax compliance in gcc4.x
+| pulsecore/core-util.c: In function 'pa_raise_priority':
+| pulsecore/core-util.c:547: error: label at end of compound statement
+| Signed off: mickey@openmoko.org
+|
+Index: pulseaudio-0.9.6/src/pulsecore/core-util.c
+===================================================================
+--- pulseaudio-0.9.6.orig/src/pulsecore/core-util.c
++++ pulseaudio-0.9.6/src/pulsecore/core-util.c
+@@ -535,7 +535,7 @@ void pa_raise_priority(void) {
+ pa_log_info("Successfully gained high priority class.");
+ #endif
+
+-fail:
++fail:;
+
+ #if defined(HAVE_SYS_CAPABILITY_H)
+ if (caps) {
diff --git a/recipes/pulseaudio/files/volatiles.04_pulse b/recipes/pulseaudio/files/volatiles.04_pulse
new file mode 100644
index 0000000000..5b1998032b
--- /dev/null
+++ b/recipes/pulseaudio/files/volatiles.04_pulse
@@ -0,0 +1,2 @@
+# <type> <owner> <group> <mode> <path> <linksource>
+d pulse pulse 0755 /var/run/pulse none
diff --git a/recipes/pulseaudio/libatomics-ops/fedora/libatomic_ops-1.2-ppclwzfix.patch b/recipes/pulseaudio/libatomics-ops/fedora/libatomic_ops-1.2-ppclwzfix.patch
new file mode 100644
index 0000000000..51161dbe0f
--- /dev/null
+++ b/recipes/pulseaudio/libatomics-ops/fedora/libatomic_ops-1.2-ppclwzfix.patch
@@ -0,0 +1,15 @@
+http://cvs.fedoraproject.org/viewcvs/devel/libatomic_ops/libatomic_ops-1.2-ppclwzfix.patch
+
+* add fix for bad variable handling on PPC
+
+--- libatomic_ops-1.2.orig/src/atomic_ops/sysdeps/gcc/powerpc.h 2007-05-29 19:29:52.000000000 +0200
++++ libatomic_ops-1.2/src/atomic_ops/sysdeps/gcc/powerpc.h 2007-05-29 19:30:48.000000000 +0200
+@@ -72,7 +72,7 @@
+ /* registers. I always got "impossible constraint" when I */
+ /* tried the "y" constraint. */
+ __asm__ __volatile__ (
+- "lwz %0,%1\n"
++ "lwz%U1%X1 %0,%1\n"
+ "cmpw cr7,%0,%0\n"
+ "bne- cr7,1f\n"
+ "1: isync\n"
diff --git a/recipes/pulseaudio/libatomics-ops_1.2.bb b/recipes/pulseaudio/libatomics-ops_1.2.bb
new file mode 100644
index 0000000000..847b4cc660
--- /dev/null
+++ b/recipes/pulseaudio/libatomics-ops_1.2.bb
@@ -0,0 +1,17 @@
+DESCRIPTION = "A library for atomic integer operations"
+LICENSE = "MIT"
+
+PR = "r1"
+
+SRC_URI = "http://www.hpl.hp.com/research/linux/atomic_ops/download/libatomic_ops-1.2.tar.gz \
+ file://fedora/libatomic_ops-1.2-ppclwzfix.patch;patch=1"
+
+S = "${WORKDIR}/libatomic_ops-${PV}"
+
+ARM_INSTRUCTION_SET = "arm"
+
+inherit autotools pkgconfig
+
+do_stage() {
+ autotools_stage_all
+}
diff --git a/recipes/pulseaudio/libcanberra_0.10.bb b/recipes/pulseaudio/libcanberra_0.10.bb
new file mode 100644
index 0000000000..c88ad4e731
--- /dev/null
+++ b/recipes/pulseaudio/libcanberra_0.10.bb
@@ -0,0 +1,27 @@
+DESCRIPTION = "Libcanberra is an implementation of the XDG Sound Theme and Name Specifications, for generating event sounds on free desktops."
+LICENSE = "LGPL"
+DEPENDS = "gtk+ pulseaudio alsa-lib"
+
+inherit gconf autotools
+
+SRC_URI = "http://0pointer.de/lennart/projects/libcanberra/libcanberra-${PV}.tar.gz"
+
+EXTRA_OECONF = " --disable-oss "
+# This needs autoconf 2.62, which isn't used by any distro in OE atm
+do_configure() {
+ gnu-configize --force
+ oe_runconf
+}
+
+FILES_${PN} += "${libdir}/gtk-2.0/modules/ ${datadir}/gnome"
+FILES_${PN}-dbg += "${libdir}/gtk-2.0/modules/.debug"
+
+AUTOTOOLS_STAGE_PKGCONFIG = "1"
+
+do_stage() {
+ autotools_stage_all
+}
+
+
+
+
diff --git a/recipes/pulseaudio/padevchooser_0.9.3.bb b/recipes/pulseaudio/padevchooser_0.9.3.bb
new file mode 100644
index 0000000000..535e871242
--- /dev/null
+++ b/recipes/pulseaudio/padevchooser_0.9.3.bb
@@ -0,0 +1,9 @@
+DESCRIPTION = "PulseAudio Device Chooser (padevchooser) is a simple GTK tool which registers an icon in the tray area and allows quick access to some features of the PulseAudio sound server"
+LICENSE = "GPLv2"
+DEPENDS = "gtk+ libnotify gconf pulseaudio"
+
+SRC_URI = "http://0pointer.de/lennart/projects/padevchooser/padevchooser-${PV}.tar.gz"
+
+inherit autotools
+
+
diff --git a/recipes/pulseaudio/pulseaudio-0.9.10/2113.diff b/recipes/pulseaudio/pulseaudio-0.9.10/2113.diff
new file mode 100644
index 0000000000..666ed34ad3
--- /dev/null
+++ b/recipes/pulseaudio/pulseaudio-0.9.10/2113.diff
@@ -0,0 +1,19 @@
+from upstream svn r2113
+
+Index: configure.ac
+===================================================================
+--- configure.ac (wersja 2112)
++++ configure.ac (wersja 2113)
+@@ -172,6 +172,12 @@
+ AC_SUBST(LIBLTDL)
+ AC_CONFIG_SUBDIRS(libltdl)
+
++old_LIBS=$LIBS
++LIBS="$LIBS $LIBLTDL"
++AC_CHECK_FUNCS([lt_dlmutex_register])
++LIBS=$old_LIBS
++AC_CHECK_TYPES([lt_user_dlloader, lt_dladvise], , , [#include <ltdl.h>])
++
+ if test "x$enable_ltdl_install" = "xno" && test "x$ac_cv_lib_ltdl_lt_dlinit" = "xno" ; then
+ AC_MSG_ERROR([[
+
diff --git a/recipes/pulseaudio/pulseaudio-0.9.10/2114.diff b/recipes/pulseaudio/pulseaudio-0.9.10/2114.diff
new file mode 100644
index 0000000000..cbd82eeb84
--- /dev/null
+++ b/recipes/pulseaudio/pulseaudio-0.9.10/2114.diff
@@ -0,0 +1,15 @@
+from upstream svn r2114
+
+Index: configure.ac
+===================================================================
+--- configure.ac (wersja 2113)
++++ configure.ac (wersja 2114)
+@@ -176,7 +176,7 @@
+ LIBS="$LIBS $LIBLTDL"
+ AC_CHECK_FUNCS([lt_dlmutex_register])
+ LIBS=$old_LIBS
+-AC_CHECK_TYPES([lt_user_dlloader, lt_dladvise], , , [#include <ltdl.h>])
++AC_CHECK_TYPES([struct lt_user_dlloader, lt_dladvise], , , [#include <ltdl.h>])
+
+ if test "x$enable_ltdl_install" = "xno" && test "x$ac_cv_lib_ltdl_lt_dlinit" = "xno" ; then
+ AC_MSG_ERROR([[
diff --git a/recipes/pulseaudio/pulseaudio-0.9.10/libiconv.patch b/recipes/pulseaudio/pulseaudio-0.9.10/libiconv.patch
new file mode 100644
index 0000000000..273b446d78
--- /dev/null
+++ b/recipes/pulseaudio/pulseaudio-0.9.10/libiconv.patch
@@ -0,0 +1,22 @@
+Index: pulseaudio-0.9.10/src/Makefile.am
+===================================================================
+--- pulseaudio-0.9.10.orig/src/Makefile.am 2008-07-20 13:16:51.548858829 +0200
++++ pulseaudio-0.9.10/src/Makefile.am 2008-07-20 13:43:39.842031837 +0200
+@@ -551,7 +551,7 @@
+
+ libpulse_la_CFLAGS = $(AM_CFLAGS)
+ libpulse_la_LDFLAGS = -version-info $(LIBPULSE_VERSION_INFO) -Wl,-version-script=$(srcdir)/map-file
+-libpulse_la_LIBADD = $(AM_LIBADD) $(WINSOCK_LIBS) $(LIBICONV)
++libpulse_la_LIBADD = $(AM_LIBADD) $(WINSOCK_LIBS) $(LTLIBICONV)
+
+ if HAVE_X11
+ libpulse_la_CFLAGS += $(X_CFLAGS)
+@@ -771,7 +771,7 @@
+
+ libpulsecore_la_CPPFLAGS = $(AM_CPPFLAGS) $(LIBOIL_CFLAGS)
+ libpulsecore_la_LDFLAGS = -version-info $(LIBPULSECORE_VERSION_INFO)
+-libpulsecore_la_LIBADD = $(AM_LIBADD) $(LIBLTDL) $(LIBSAMPLERATE_LIBS) $(LIBSNDFILE_LIBS) $(WINSOCK_LIBS) $(LIBOIL_LIBS) $(LIBICONV) libspeex-resampler-fixed.la libspeex-resampler-float.la libffmpeg-resampler.la
++libpulsecore_la_LIBADD = $(AM_LIBADD) $(LIBLTDL) $(LIBSAMPLERATE_LIBS) $(LIBSNDFILE_LIBS) $(WINSOCK_LIBS) $(LIBOIL_LIBS) $(LTLIBICONV) libspeex-resampler-fixed.la libspeex-resampler-float.la libffmpeg-resampler.la
+
+ ###################################
+ # Plug-in support libraries #
diff --git a/recipes/pulseaudio/pulseaudio-0.9.10/libpulsedsp-references-libpulsecore.patch b/recipes/pulseaudio/pulseaudio-0.9.10/libpulsedsp-references-libpulsecore.patch
new file mode 100644
index 0000000000..4234af5f53
--- /dev/null
+++ b/recipes/pulseaudio/pulseaudio-0.9.10/libpulsedsp-references-libpulsecore.patch
@@ -0,0 +1,24 @@
+upstream: http://pulseaudio.org/ticket/287
+
+Index: pulseaudio-0.9.10/src/Makefile.am
+===================================================================
+--- pulseaudio-0.9.10.orig/src/Makefile.am 2008-03-30 03:43:05.000000000 +0200
++++ pulseaudio-0.9.10/src/Makefile.am 2008-05-03 11:55:46.000000000 +0200
+@@ -605,7 +605,7 @@
+
+ libpulsedsp_la_SOURCES = utils/padsp.c
+ libpulsedsp_la_CFLAGS = $(AM_CFLAGS)
+-libpulsedsp_la_LIBADD = $(AM_LIBADD) libpulse.la
++libpulsedsp_la_LIBADD = $(AM_LIBADD) libpulse.la libpulsecore.la
+ libpulsedsp_la_LDFLAGS = -avoid-version
+
+ ###################################
+@@ -888,7 +888,7 @@
+
+ libpstream_util_la_SOURCES = pulsecore/pstream-util.c pulsecore/pstream-util.h
+ libpstream_util_la_LDFLAGS = -avoid-version
+-libpstream_util_la_LIBADD = $(AM_LIBADD) libpacket.la libpstream.la libtagstruct.la
++libpstream_util_la_LIBADD = $(AM_LIBADD) libpacket.la libpstream.la libtagstruct.la libpulsecore.la
+
+ libpdispatch_la_SOURCES = pulsecore/pdispatch.c pulsecore/pdispatch.h
+ libpdispatch_la_LDFLAGS = -avoid-version
diff --git a/recipes/pulseaudio/pulseaudio-0.9.10/libtool2.patch b/recipes/pulseaudio/pulseaudio-0.9.10/libtool2.patch
new file mode 100644
index 0000000000..9e9e5f55d3
--- /dev/null
+++ b/recipes/pulseaudio/pulseaudio-0.9.10/libtool2.patch
@@ -0,0 +1,48 @@
+Tell where is libltdl from libtool - was needed to get it built with libtool 2.2.4
+
+---
+ configure.ac | 26 +++++++++++++++++++-------
+ 1 file changed, 19 insertions(+), 7 deletions(-)
+
+--- pulseaudio-0.9.10.orig/configure.ac
++++ pulseaudio-0.9.10/configure.ac
+@@ -242,20 +242,32 @@ if test $ret -eq 0 ; then
+ else
+ AC_MSG_RESULT([no])
+ fi
+
+ #### libtool stuff ####
+-
+-AC_LTDL_ENABLE_INSTALL
+-AC_LIBLTDL_INSTALLABLE
+-AC_LIBTOOL_DLOPEN
+-AC_LIBTOOL_WIN32_DLL
++LT_PREREQ([2.2])
++LT_INIT([dlopen win32-dll])
+ AC_PROG_LIBTOOL
+-AC_SUBST(LTDLINCL)
+-AC_SUBST(LIBLTDL)
++#AC_SUBST(LTDLINCL)
++#AC_SUBST(LIBLTDL)
+ AC_CONFIG_SUBDIRS(libltdl)
+
++AC_ARG_WITH(libltdl-libs,
++ [ --with-libltdl-libs=DIR path to libltdl libs], libltdl_libs_prefix=$withval)
++if test x$libltdl_libs_prefix != x; then
++ LIBLTDL="-L${libltdl_libs_prefix}/libltdl.so -lltdl"
++fi
++AC_SUBST(LIBLTDL)
++
++AC_ARG_WITH(libltdl-includes,
++ [ --with-libltdl-includes=DIR path to libltdl includes], libltdl_prefix=$withval)
++if test x$libltdl_prefix != x; then
++ LTDLINCL="-I${libltdl_prefix} ${libltdl_libs_prefix}/libltdl.so"
++fi
++AC_SUBST(LTDLINCL)
++
++
+ old_LIBS=$LIBS
+ LIBS="$LIBS $LIBLTDL"
+ AC_CHECK_FUNCS([lt_dlmutex_register])
+ LIBS=$old_LIBS
+ AC_CHECK_TYPES([struct lt_user_dlloader, lt_dladvise], , , [#include <ltdl.h>])
diff --git a/recipes/pulseaudio/pulseaudio-0.9.10/pa-drop-caps-returns-void.patch b/recipes/pulseaudio/pulseaudio-0.9.10/pa-drop-caps-returns-void.patch
new file mode 100644
index 0000000000..74ea6ac060
--- /dev/null
+++ b/recipes/pulseaudio/pulseaudio-0.9.10/pa-drop-caps-returns-void.patch
@@ -0,0 +1,17 @@
+upstream: http://pulseaudio.org/changeset/2213
+
+Index: pulseaudio-0.9.10/src/daemon/caps.c
+===================================================================
+--- pulseaudio-0.9.10.orig/src/daemon/caps.c 2008-05-03 12:10:26.000000000 +0200
++++ pulseaudio-0.9.10/src/daemon/caps.c 2008-05-03 12:10:30.000000000 +0200
+@@ -131,9 +131,8 @@
+ return 0;
+ }
+
+-int pa_drop_caps(void) {
++void pa_drop_caps(void) {
+ pa_drop_root();
+- return 0;
+ }
+
+ #endif
diff --git a/recipes/pulseaudio/pulseaudio-0.9.11/2113.diff b/recipes/pulseaudio/pulseaudio-0.9.11/2113.diff
new file mode 100644
index 0000000000..666ed34ad3
--- /dev/null
+++ b/recipes/pulseaudio/pulseaudio-0.9.11/2113.diff
@@ -0,0 +1,19 @@
+from upstream svn r2113
+
+Index: configure.ac
+===================================================================
+--- configure.ac (wersja 2112)
++++ configure.ac (wersja 2113)
+@@ -172,6 +172,12 @@
+ AC_SUBST(LIBLTDL)
+ AC_CONFIG_SUBDIRS(libltdl)
+
++old_LIBS=$LIBS
++LIBS="$LIBS $LIBLTDL"
++AC_CHECK_FUNCS([lt_dlmutex_register])
++LIBS=$old_LIBS
++AC_CHECK_TYPES([lt_user_dlloader, lt_dladvise], , , [#include <ltdl.h>])
++
+ if test "x$enable_ltdl_install" = "xno" && test "x$ac_cv_lib_ltdl_lt_dlinit" = "xno" ; then
+ AC_MSG_ERROR([[
+
diff --git a/recipes/pulseaudio/pulseaudio-0.9.11/2114.diff b/recipes/pulseaudio/pulseaudio-0.9.11/2114.diff
new file mode 100644
index 0000000000..cbd82eeb84
--- /dev/null
+++ b/recipes/pulseaudio/pulseaudio-0.9.11/2114.diff
@@ -0,0 +1,15 @@
+from upstream svn r2114
+
+Index: configure.ac
+===================================================================
+--- configure.ac (wersja 2113)
++++ configure.ac (wersja 2114)
+@@ -176,7 +176,7 @@
+ LIBS="$LIBS $LIBLTDL"
+ AC_CHECK_FUNCS([lt_dlmutex_register])
+ LIBS=$old_LIBS
+-AC_CHECK_TYPES([lt_user_dlloader, lt_dladvise], , , [#include <ltdl.h>])
++AC_CHECK_TYPES([struct lt_user_dlloader, lt_dladvise], , , [#include <ltdl.h>])
+
+ if test "x$enable_ltdl_install" = "xno" && test "x$ac_cv_lib_ltdl_lt_dlinit" = "xno" ; then
+ AC_MSG_ERROR([[
diff --git a/recipes/pulseaudio/pulseaudio-0.9.11/buildfix.patch b/recipes/pulseaudio/pulseaudio-0.9.11/buildfix.patch
new file mode 100644
index 0000000000..ca01e0d80f
--- /dev/null
+++ b/recipes/pulseaudio/pulseaudio-0.9.11/buildfix.patch
@@ -0,0 +1,13 @@
+Index: pulseaudio-0.9.11/src/pulsecore/atomic.h
+===================================================================
+--- pulseaudio-0.9.11.orig/src/pulsecore/atomic.h
++++ pulseaudio-0.9.11/src/pulsecore/atomic.h
+@@ -40,6 +40,8 @@
+ #error "Please include config.h before including this file!"
+ #endif
+
++#include "macro.h"
++
+ #ifdef HAVE_ATOMIC_BUILTINS
+
+ /* __sync based implementation */
diff --git a/recipes/pulseaudio/pulseaudio-0.9.11/libiconv.patch b/recipes/pulseaudio/pulseaudio-0.9.11/libiconv.patch
new file mode 100644
index 0000000000..273b446d78
--- /dev/null
+++ b/recipes/pulseaudio/pulseaudio-0.9.11/libiconv.patch
@@ -0,0 +1,22 @@
+Index: pulseaudio-0.9.10/src/Makefile.am
+===================================================================
+--- pulseaudio-0.9.10.orig/src/Makefile.am 2008-07-20 13:16:51.548858829 +0200
++++ pulseaudio-0.9.10/src/Makefile.am 2008-07-20 13:43:39.842031837 +0200
+@@ -551,7 +551,7 @@
+
+ libpulse_la_CFLAGS = $(AM_CFLAGS)
+ libpulse_la_LDFLAGS = -version-info $(LIBPULSE_VERSION_INFO) -Wl,-version-script=$(srcdir)/map-file
+-libpulse_la_LIBADD = $(AM_LIBADD) $(WINSOCK_LIBS) $(LIBICONV)
++libpulse_la_LIBADD = $(AM_LIBADD) $(WINSOCK_LIBS) $(LTLIBICONV)
+
+ if HAVE_X11
+ libpulse_la_CFLAGS += $(X_CFLAGS)
+@@ -771,7 +771,7 @@
+
+ libpulsecore_la_CPPFLAGS = $(AM_CPPFLAGS) $(LIBOIL_CFLAGS)
+ libpulsecore_la_LDFLAGS = -version-info $(LIBPULSECORE_VERSION_INFO)
+-libpulsecore_la_LIBADD = $(AM_LIBADD) $(LIBLTDL) $(LIBSAMPLERATE_LIBS) $(LIBSNDFILE_LIBS) $(WINSOCK_LIBS) $(LIBOIL_LIBS) $(LIBICONV) libspeex-resampler-fixed.la libspeex-resampler-float.la libffmpeg-resampler.la
++libpulsecore_la_LIBADD = $(AM_LIBADD) $(LIBLTDL) $(LIBSAMPLERATE_LIBS) $(LIBSNDFILE_LIBS) $(WINSOCK_LIBS) $(LIBOIL_LIBS) $(LTLIBICONV) libspeex-resampler-fixed.la libspeex-resampler-float.la libffmpeg-resampler.la
+
+ ###################################
+ # Plug-in support libraries #
diff --git a/recipes/pulseaudio/pulseaudio-0.9.11/libpulsedsp-references-libpulsecore.patch b/recipes/pulseaudio/pulseaudio-0.9.11/libpulsedsp-references-libpulsecore.patch
new file mode 100644
index 0000000000..4234af5f53
--- /dev/null
+++ b/recipes/pulseaudio/pulseaudio-0.9.11/libpulsedsp-references-libpulsecore.patch
@@ -0,0 +1,24 @@
+upstream: http://pulseaudio.org/ticket/287
+
+Index: pulseaudio-0.9.10/src/Makefile.am
+===================================================================
+--- pulseaudio-0.9.10.orig/src/Makefile.am 2008-03-30 03:43:05.000000000 +0200
++++ pulseaudio-0.9.10/src/Makefile.am 2008-05-03 11:55:46.000000000 +0200
+@@ -605,7 +605,7 @@
+
+ libpulsedsp_la_SOURCES = utils/padsp.c
+ libpulsedsp_la_CFLAGS = $(AM_CFLAGS)
+-libpulsedsp_la_LIBADD = $(AM_LIBADD) libpulse.la
++libpulsedsp_la_LIBADD = $(AM_LIBADD) libpulse.la libpulsecore.la
+ libpulsedsp_la_LDFLAGS = -avoid-version
+
+ ###################################
+@@ -888,7 +888,7 @@
+
+ libpstream_util_la_SOURCES = pulsecore/pstream-util.c pulsecore/pstream-util.h
+ libpstream_util_la_LDFLAGS = -avoid-version
+-libpstream_util_la_LIBADD = $(AM_LIBADD) libpacket.la libpstream.la libtagstruct.la
++libpstream_util_la_LIBADD = $(AM_LIBADD) libpacket.la libpstream.la libtagstruct.la libpulsecore.la
+
+ libpdispatch_la_SOURCES = pulsecore/pdispatch.c pulsecore/pdispatch.h
+ libpdispatch_la_LDFLAGS = -avoid-version
diff --git a/recipes/pulseaudio/pulseaudio-0.9.11/libtool2.patch b/recipes/pulseaudio/pulseaudio-0.9.11/libtool2.patch
new file mode 100644
index 0000000000..9e9e5f55d3
--- /dev/null
+++ b/recipes/pulseaudio/pulseaudio-0.9.11/libtool2.patch
@@ -0,0 +1,48 @@
+Tell where is libltdl from libtool - was needed to get it built with libtool 2.2.4
+
+---
+ configure.ac | 26 +++++++++++++++++++-------
+ 1 file changed, 19 insertions(+), 7 deletions(-)
+
+--- pulseaudio-0.9.10.orig/configure.ac
++++ pulseaudio-0.9.10/configure.ac
+@@ -242,20 +242,32 @@ if test $ret -eq 0 ; then
+ else
+ AC_MSG_RESULT([no])
+ fi
+
+ #### libtool stuff ####
+-
+-AC_LTDL_ENABLE_INSTALL
+-AC_LIBLTDL_INSTALLABLE
+-AC_LIBTOOL_DLOPEN
+-AC_LIBTOOL_WIN32_DLL
++LT_PREREQ([2.2])
++LT_INIT([dlopen win32-dll])
+ AC_PROG_LIBTOOL
+-AC_SUBST(LTDLINCL)
+-AC_SUBST(LIBLTDL)
++#AC_SUBST(LTDLINCL)
++#AC_SUBST(LIBLTDL)
+ AC_CONFIG_SUBDIRS(libltdl)
+
++AC_ARG_WITH(libltdl-libs,
++ [ --with-libltdl-libs=DIR path to libltdl libs], libltdl_libs_prefix=$withval)
++if test x$libltdl_libs_prefix != x; then
++ LIBLTDL="-L${libltdl_libs_prefix}/libltdl.so -lltdl"
++fi
++AC_SUBST(LIBLTDL)
++
++AC_ARG_WITH(libltdl-includes,
++ [ --with-libltdl-includes=DIR path to libltdl includes], libltdl_prefix=$withval)
++if test x$libltdl_prefix != x; then
++ LTDLINCL="-I${libltdl_prefix} ${libltdl_libs_prefix}/libltdl.so"
++fi
++AC_SUBST(LTDLINCL)
++
++
+ old_LIBS=$LIBS
+ LIBS="$LIBS $LIBLTDL"
+ AC_CHECK_FUNCS([lt_dlmutex_register])
+ LIBS=$old_LIBS
+ AC_CHECK_TYPES([struct lt_user_dlloader, lt_dladvise], , , [#include <ltdl.h>])
diff --git a/recipes/pulseaudio/pulseaudio-0.9.11/pa-drop-caps-returns-void.patch b/recipes/pulseaudio/pulseaudio-0.9.11/pa-drop-caps-returns-void.patch
new file mode 100644
index 0000000000..74ea6ac060
--- /dev/null
+++ b/recipes/pulseaudio/pulseaudio-0.9.11/pa-drop-caps-returns-void.patch
@@ -0,0 +1,17 @@
+upstream: http://pulseaudio.org/changeset/2213
+
+Index: pulseaudio-0.9.10/src/daemon/caps.c
+===================================================================
+--- pulseaudio-0.9.10.orig/src/daemon/caps.c 2008-05-03 12:10:26.000000000 +0200
++++ pulseaudio-0.9.10/src/daemon/caps.c 2008-05-03 12:10:30.000000000 +0200
+@@ -131,9 +131,8 @@
+ return 0;
+ }
+
+-int pa_drop_caps(void) {
++void pa_drop_caps(void) {
+ pa_drop_root();
+- return 0;
+ }
+
+ #endif
diff --git a/recipes/pulseaudio/pulseaudio-alsa-wrapper.bb b/recipes/pulseaudio/pulseaudio-alsa-wrapper.bb
new file mode 100644
index 0000000000..e555d50075
--- /dev/null
+++ b/recipes/pulseaudio/pulseaudio-alsa-wrapper.bb
@@ -0,0 +1,43 @@
+DESCRIPTION = "Meta package to make alsa transparently use pulseaudio"
+LICENSE = "GPLv2"
+
+PR = "r1"
+
+SRC_URI = "file://asound.conf.pulseaudio"
+
+RDEPENDS = "hal \
+ pulseaudio-server \
+ pulseaudio-misc \
+ pulseaudio-module-alsa-sink \
+ pulseaudio-module-alsa-source \
+ pulseaudio-module-hal-detect \
+ pulseaudio-module-volume-restore \
+ pulseaudio-module-default-device-restore \
+ pulseaudio-module-rescue-streams \
+ pulseaudio-module-suspend-on-idle \
+ libasound-module-ctl-pulse \
+ libasound-module-pcm-pulse \
+"
+
+do_install() {
+ install -d ${D}/${sysconfdir}
+ install -m 0644 ${WORKDIR}/asound.conf.pulseaudio ${D}/${sysconfdir}
+}
+
+PACKAGE_ARCH = "all"
+
+pkg_postinst_${PN} () {
+#!/bin/sh
+if [ "x$D" != "x" ]; then
+ exit 1
+fi
+
+mkdir -p /etc/pulse || true
+# Remove existing entries
+if [ -e /etc/pulse/session ] ; then
+ sed -i -e /load-module\ module-hal-detect/d /etc/pulse/session
+fi
+# Load hal-detect module to avoid alsa->pulse-alsa-pulse->.. loops
+echo "load-module module-hal-detect" >> /etc/pulse/session
+}
+
diff --git a/recipes/pulseaudio/pulseaudio-esd-wrapper.bb b/recipes/pulseaudio/pulseaudio-esd-wrapper.bb
new file mode 100644
index 0000000000..d1ae362c14
--- /dev/null
+++ b/recipes/pulseaudio/pulseaudio-esd-wrapper.bb
@@ -0,0 +1,42 @@
+DESCRIPTION = "Drop-in Esound replacement"
+LICENSE = "GPLv2"
+
+PR = "r1"
+
+RCONFLICTS = "esd"
+RREPLACES = "esd"
+
+RDEPENDS = " \
+ pulseaudio-server \
+ pulseaudio-misc \
+ pulseaudio-lib-protocol-esound \
+ pulseaudio-module-esound-compat-spawnfd \
+ pulseaudio-module-esound-compat-spawnpid \
+ pulseaudio-module-esound-protocol-tcp \
+ pulseaudio-module-esound-protocol-unix \
+"
+
+do_install() {
+ install -d ${D}/${bindir}
+ ln -sf ${bindir}/esdcompat ${D}/${bindir}/esd
+}
+
+
+PACKAGE_ARCH = "all"
+
+pkg_postinst_${PN} () {
+#!/bin/sh
+if [ "x$D" != "x" ]; then
+ exit 1
+fi
+
+mkdir -p /etc/pulse || true
+# Remove existing entries
+if [ -e /etc/pulse/session ] ; then
+ sed -i -e /load-module\ module-esound-protocol-unix/d -e /load-module\ module-esound-protocol-tcp/d /etc/pulse/session
+fi
+# Load esound modules
+echo "load-module module-esound-protocol-tcp" >> /etc/pulse/session
+echo "load-module module-esound-protocol-unix" >> /etc/pulse/session
+}
+
diff --git a/recipes/pulseaudio/pulseaudio-meta/asound.conf b/recipes/pulseaudio/pulseaudio-meta/asound.conf
new file mode 100644
index 0000000000..b435184575
--- /dev/null
+++ b/recipes/pulseaudio/pulseaudio-meta/asound.conf
@@ -0,0 +1,8 @@
+# set default output to pulseaudio
+pcm.!default {
+ type pulse
+}
+
+ctl.!default {
+ type pulse
+}
diff --git a/recipes/pulseaudio/pulseaudio-meta/pulseaudio b/recipes/pulseaudio/pulseaudio-meta/pulseaudio
new file mode 100755
index 0000000000..e0d33bd2b9
--- /dev/null
+++ b/