diff options
Diffstat (limited to 'recipes/pulseaudio')
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/recipes/pulseaudio/pulseaudio-meta/pulseaudio @@ -0,0 +1,50 @@ +#!/bin/sh +# +# pulseaudio This shell script starts and stops pulseaudio. +# +# chkconfig: 345 90 40 +# description: Pulseaudio manages the sound input/output +# processname: pulseaudio + +# Source function library. +#. /etc/rc.d/init.d/functions + +RETVAL=0 +prog="pulseaudio" + +start() { + echo -n "Starting audio server: " + # FIXME once alsa/shm permissions have been fixed, supply --system + start-stop-daemon -S -x /usr/bin/pulseaudio -- --no-cpu-limit --resample-method=sinc-fastest -D -nF /etc/pulse/session + + if [ $? = 0 ]; then + echo "$prog (warning ignores)." # FIXME remove comment on warning + else + echo "(failed.)" + fi +} + +stop() { + echo -n "Stopping audio server: " + start-stop-daemon -K -x /usr/bin/pulseaudio + echo "pulseaudio." +} + +# See how we were called. +case "$1" in + start) + start + ;; + stop) + stop + ;; + restart|reload) + stop + start + ;; + *) + echo "Usage: $0 {start|stop|restart}" + exit 1 +esac + +exit $RETVAL diff --git a/recipes/pulseaudio/pulseaudio-meta/session b/recipes/pulseaudio/pulseaudio-meta/session new file mode 100644 index 0000000000..55f2c16f26 --- /dev/null +++ b/recipes/pulseaudio/pulseaudio-meta/session @@ -0,0 +1,36 @@ +#!/usr/bin/pulseaudio -nF + +# +# Barebones PA Session File for Devices w/ ALSA +# (C) Michael 'Mickey' Lauer <mlauer@vanille-media.de> +# + +# Create autoload entries for the device drivers +add-autoload-sink output module-alsa-sink device=hw:0 sink_name=output +add-autoload-source input module-alsa-source device=hw:0 source_name=input + +# Core protocols +load-module module-esound-protocol-unix +load-module module-simple-protocol-tcp +load-module module-native-protocol-unix +load-module module-cli-protocol-unix + +# Suspend on idle +load-module module-suspend-on-idle + +# Set default sink and source +set-default-sink output +set-default-source input + +# Don't fail if the audio files referred to below don't exist +.nofail + +# Load an audio to the sample cache for usage with module-x11-bell +#load-sample-lazy x11-bell /usr/share/openmoko/sounds/notify_doorbell.wav +#load-module module-x11-bell sample=x11-bell + +# Load samples +#load-sample startup /usr/share/openmoko/sounds/startup_unintrusive.wav +#load-sample touchscreen /usr/share/openmoko/sounds/touchscreen_click.wav +#load-sample ringtone /usr/share/openmoko/sounds/ringtone_classy.wav + diff --git a/recipes/pulseaudio/pulseaudio-meta_0.9.10.bb b/recipes/pulseaudio/pulseaudio-meta_0.9.10.bb new file mode 100644 index 0000000000..7f5f72dad5 --- /dev/null +++ b/recipes/pulseaudio/pulseaudio-meta_0.9.10.bb @@ -0,0 +1,66 @@ +DESCRIPTION = "Pulseaudio Meta package w/ initscript et. al." +SECTION = "audio" +RDEPENDS = "\ + pulseaudio-server \ + pulseaudio-module-alsa-sink \ + pulseaudio-module-alsa-source \ + pulseaudio-module-cli \ + pulseaudio-module-default-device-restore \ + pulseaudio-module-detect\ + pulseaudio-module-esound-protocol-unix \ + pulseaudio-module-simple-protocol-tcp \ + pulseaudio-module-native-protocol-unix \ + pulseaudio-module-cli-protocol-unix \ + pulseaudio-module-rescue-streams\ + pulseaudio-module-suspend-on-idle \ + pulseaudio-module-volume-restore \ + gst-plugin-pulse \ + libasound-module-ctl-pulse \ + libasound-module-pcm-pulse \ +" +PR = "r3" + +inherit update-rc.d + +export TARGET_PFPU = "${TARGET_FPU}" +INITSCRIPT_NAME = "pulseaudio" +INITSCRIPT_PARAMS = "defaults 35" + +SRC_URI = "\ + file://pulseaudio \ + file://session \ + file://asound.conf \ +" +S = "${WORKDIR}" + +do_install() { + install -d ${D}/${sysconfdir}/init.d + install -m 0755 ${WORKDIR}/pulseaudio ${D}/${sysconfdir}/init.d/ + install -d ${D}/${sysconfdir}/pulse + install -m 0755 ${WORKDIR}/session ${D}/${sysconfdir}/pulse/session.pulseaudio-meta + install -m 0644 ${WORKDIR}/asound.conf ${D}/${sysconfdir}/asound.conf.pulseaudio-meta + + if [ "x${TARGET_PFPU}" == "xsoft" ] ; then + sed -i -e s:resample-method=sinc-fastest:resample-method=trivial: ${D}${sysconfdir}/init.d/pulseaudio + fi +} + +PACKAGE_ARCH = "${MACHINE_ARCH}" + +pkg_postinst_${PN} () { +#!/bin/sh +if [ "x$D" != "x" ]; then + exit 1 +fi + +# Overwrite existing configfiles, yuck! +cp /etc/pulse/session.pulseaudio-meta /etc/pulse/session +cp /etc/asound.conf.pulseaudio-meta /etc/asound.conf +} + + +CONFFILES_${PN} = "\ + ${sysconfdir}/init.d/pulseaudio \ + ${sysconfdir}/pulse/session.pulseaudio-meta \ + ${sysconfdir}/asound.conf.pulseaudio-meta \ +" diff --git a/recipes/pulseaudio/pulseaudio.inc b/recipes/pulseaudio/pulseaudio.inc new file mode 100644 index 0000000000..4b13980cc4 --- /dev/null +++ b/recipes/pulseaudio/pulseaudio.inc @@ -0,0 +1,101 @@ +DESCRIPTION = "Pulseaudio is a sound server for Linux and Unix-like operating systems." +HOMEPAGE = "http://www.pulseaudio.org" +AUTHOR = "Lennart Poettering" +SECTION = "libs/multimedia" +LICENSE = "LGPL" +DEPENDS = "libatomics-ops liboil avahi libsamplerate0 libsndfile1 libtool hal" +# optional +DEPENDS += "alsa-lib glib-2.0" + +SRC_URI = "http://0pointer.de/lennart/projects/pulseaudio/pulseaudio-${PV}.tar.gz \ + file://gcc4-compile-fix.patch;patch=1 \ + file://volatiles.04_pulse" + +inherit autotools pkgconfig + +EXTRA_OECONF = "\ + --disable-lynx \ + --without-x \ + --without-jack \ + --with-glib \ + --with-alsa \ + --with-oss \ + --with-hal \ +" + +PARALLEL_MAKE = "" + +export TARGET_PFPU = "${TARGET_FPU}" + +# TODO: Use more fine granular version +#OE_LT_RPATH_ALLOW=":${libdir}/pulse-0.9:" +OE_LT_RPATH_ALLOW = "any" +OE_LT_RPATH_ALLOW[export]="1" + +do_stage() { + autotools_stage_all +} + +do_install_append() { + install -d ${D}${sysconfdir}/default/volatiles + install -m 0644 ${WORKDIR}/volatiles.04_pulse ${D}${sysconfdir}/default/volatiles/volatiles.04_pulse + + if [ "x${TARGET_PFPU}" == "xsoft" ] ; then + sed -i -e s:\;\ resample-method\ =\ sinc-fastest:resample-method\ =\ trivial: ${D}${sysconfdir}/pulse/daemon.conf + fi +} + +PACKAGES =+ "libpulsecore libpulse libpulse-simple libpulse-browse libpulse-mainloop-glib \ + pulseaudio-server pulseaudio-misc pulseaudio-gconf-helper" + +#upgrade path: +RREPLACES_pulseaudio-server = "libpulse-bin libpulse-conf" + +PACKAGES_DYNAMIC = "pulseaudio-lib* pulseaudio-module* libpulse-lib* libpulse-module* " + +FILES_libpulsecore = "${libdir}/libpulsecore.so.*" +FILES_libpulse = "${libdir}/libpulse.so.*" +FILES_libpulse-simple = "${libdir}/libpulse-simple.so.*" +FILES_libpulse-browse = "${libdir}/libpulse-browse.so.*" +FILES_libpulse-mainloop-glib = "${libdir}/libpulse-mainloop-glib.so.*" + +FILES_${PN}-dbg += "${libexecdir}/pulse/.debug \ + ${libdir}/pulse-0.9/modules/.debug" +FILES_${PN}-dev += "${libdir}/pulse-0.9/modules/*.la" +FILES_${PN}-conf = "${sysconfdir}" +FILES_${PN}-bin = "${bindir}/* \ + ${sysconfdir}/default/volatiles/volatiles.04_pulse" +FILES_${PN}-server = "${bindir}/pulseaudio ${sysconfdir}" +FILES_${PN}-gconf-helper = "${libexecdir}/pulse/gconf-helper" +FILES_${PN}-misc = "${bindir}/*" + +CONFFILES_pulseaudio-server = "\ + ${sysconfdir}/pulse/default.pa \ + ${sysconfdir}/pulse/daemon.conf \ + ${sysconfdir}/pulse/client.conf \ + " + +pkg_postinst_${PN}-server() { + # can't do this offline + if [ "x$D" != "x" ]; then + exit 1 + fi + grep -q pulse: /etc/group || addgroup pulse + grep -q pulse: /etc/passwd || \ + adduser --disabled-password --home=/var/run/pulse --system \ + --ingroup pulse --no-create-home -g "Pulse audio daemon" pulse + addgroup pulse audio + /etc/init.d/populate-volatile.sh update +} + +pkg_postrm_${PN}-server() { + deluser pulse || true +} + +python populate_packages_prepend() { + #bb.data.setVar('PKG_pulseaudio', 'pulseaudio', d) + + plugindir = bb.data.expand('${libdir}/pulse-0.9/modules/', d) + do_split_packages(d, plugindir, '^module-(.*)\.so$', 'pulseaudio-module-%s', 'PulseAudio module for %s', extra_depends='' ) + do_split_packages(d, plugindir, '^lib(.*)\.so$', 'pulseaudio-lib-%s', 'PulseAudio library for %s', extra_depends='' ) +} diff --git a/recipes/pulseaudio/pulseaudio_0.9.10.bb b/recipes/pulseaudio/pulseaudio_0.9.10.bb new file mode 100644 index 0000000000..8da4a1c7da --- /dev/null +++ b/recipes/pulseaudio/pulseaudio_0.9.10.bb @@ -0,0 +1,27 @@ +require pulseaudio.inc + +DEPENDS += "dbus" +PR = "r4" + +SRC_URI += "\ + file://disable-using-glibc-tls.patch;patch=1 \ + file://libpulsedsp-references-libpulsecore.patch;patch=1 \ + file://pa-drop-caps-returns-void.patch;patch=1 \ +# file://libtool2.patch;patch=1 \ + file://2113.diff;patch=1;pnum=0 \ + file://2114.diff;patch=1;pnum=0 \ + file://libiconv.patch;patch=1 \ +" + +do_compile_prepend() { + cd ${S} + mkdir -p ${S}/libltdl + cp ${STAGING_LIBDIR}/libltdl* ${S}/libltdl +} + + +# problems w/ pulseaudio 0.9.10 atm: +# 1.) needs libltdl >= 1.5.24 (yes, any older version will NOT work at runtime) +# 2.) doesn't build w/ glibc TLS support (hence patched out) +# 3.) fails with hierarchical pthread stuff w/ gst-pulse (hence patched out) + diff --git a/recipes/pulseaudio/pulseaudio_0.9.11.bb b/recipes/pulseaudio/pulseaudio_0.9.11.bb new file mode 100644 index 0000000000..930b991751 --- /dev/null +++ b/recipes/pulseaudio/pulseaudio_0.9.11.bb @@ -0,0 +1,31 @@ +require pulseaudio.inc + +DEPENDS += "dbus gdbm speex" +PR = "r0" + +# work in progress +DEFAULT_PREFERENCE = "-1" + +SRC_URI += "\ + file://disable-using-glibc-tls.patch;patch=1 \ + file://buildfix.patch;patch=1 \ +# file://libpulsedsp-references-libpulsecore.patch;patch=1 \ +# file://pa-drop-caps-returns-void.patch;patch=1 \ +# file://libtool2.patch;patch=1 \ + file://2113.diff;patch=1;pnum=0 \ + file://2114.diff;patch=1;pnum=0 \ +# file://libiconv.patch;patch=1 \ +" + +do_compile_prepend() { + cd ${S} + mkdir -p ${S}/libltdl + cp ${STAGING_LIBDIR}/libltdl* ${S}/libltdl +} + + +# problems w/ pulseaudio 0.9.10 atm: +# 1.) needs libltdl >= 1.5.24 (yes, any older version will NOT work at runtime) +# 2.) doesn't build w/ glibc TLS support (hence patched out) +# 3.) fails with hierarchical pthread stuff w/ gst-pulse (hence patched out) + diff --git a/recipes/pulseaudio/pulseaudio_0.9.6.bb b/recipes/pulseaudio/pulseaudio_0.9.6.bb new file mode 100644 index 0000000000..8944b664c0 --- /dev/null +++ b/recipes/pulseaudio/pulseaudio_0.9.6.bb @@ -0,0 +1,4 @@ +require pulseaudio.inc + +PR = "r8" + diff --git a/recipes/pulseaudio/pulseaudio_0.9.9.bb b/recipes/pulseaudio/pulseaudio_0.9.9.bb new file mode 100644 index 0000000000..764f891654 --- /dev/null +++ b/recipes/pulseaudio/pulseaudio_0.9.9.bb @@ -0,0 +1,16 @@ +require pulseaudio.inc + +DEPENDS += "dbus" +PR = "r5" + +# this is not correct (see below) +SRC_URI += "\ + file://disable-using-glibc-tls.patch;patch=1 \ + file://fix-dbus-without-hal.patch;patch=1 \ + file://fix-shm.patch;patch=1 \ +" + +# problems w/ pulseaudio 0.9.9 atm: +# 1.) needs libltdl >= 1.5.24 (yes, any older version will NOT work at runtime) +# 2.) doesn't build w/ glibc TLS support (hence patched out) +# 3.) fails with hierarchical pthread stuff w/ gst-pulse (hence patched out) |