summaryrefslogtreecommitdiffstats
path: root/meta/recipes-multimedia/pulseaudio
diff options
context:
space:
mode:
authorDongxiao Xu <dongxiao.xu@intel.com>2010-12-07 17:03:40 +0800
committerRichard Purdie <rpurdie@linux.intel.com>2010-12-09 12:37:10 +0000
commit033e4303d35140eb18c9973d3f63e1c8f50d7cd7 (patch)
treec3d52d4e03171992594e3959c93834bfe8fb0518 /meta/recipes-multimedia/pulseaudio
parent2c05c868a08516b1fa4156b9d668d8ad1bcd8eae (diff)
downloadpoky-033e4303d35140eb18c9973d3f63e1c8f50d7cd7.tar.gz
pulseaudio: upgrade to version 0.9.21
There is a bug in pulseaudio uptream which uses new instructions on old arm platform. So we keep arm version of pulseaudio unchanged. Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Diffstat (limited to 'meta/recipes-multimedia/pulseaudio')
-rw-r--r--meta/recipes-multimedia/pulseaudio/pulseaudio-0.9.21/armv4+v5asm.patch59
-rw-r--r--meta/recipes-multimedia/pulseaudio/pulseaudio-0.9.21/autoconf_version.patch15
-rw-r--r--meta/recipes-multimedia/pulseaudio/pulseaudio-0.9.21/buildfix.patch15
-rw-r--r--meta/recipes-multimedia/pulseaudio/pulseaudio-0.9.21/configure_silent_rules.patch31
-rw-r--r--meta/recipes-multimedia/pulseaudio/pulseaudio-0.9.21/gcc4-compile-fix.patch20
-rw-r--r--meta/recipes-multimedia/pulseaudio/pulseaudio-0.9.21/tls_m4.patch32
-rw-r--r--meta/recipes-multimedia/pulseaudio/pulseaudio-0.9.21/volatiles.04_pulse2
-rw-r--r--meta/recipes-multimedia/pulseaudio/pulseaudio_0.9.21.bb28
8 files changed, 202 insertions, 0 deletions
diff --git a/meta/recipes-multimedia/pulseaudio/pulseaudio-0.9.21/armv4+v5asm.patch b/meta/recipes-multimedia/pulseaudio/pulseaudio-0.9.21/armv4+v5asm.patch
new file mode 100644
index 0000000000..f07ee672ee
--- /dev/null
+++ b/meta/recipes-multimedia/pulseaudio/pulseaudio-0.9.21/armv4+v5asm.patch
@@ -0,0 +1,59 @@
1Derived from OE by Dongxiao Xu <dongxiao.xu@intel.com>
2
3Index: pulseaudio-0.9.21/src/pulsecore/svolume_arm.c
4===================================================================
5--- pulseaudio-0.9.21.orig/src/pulsecore/svolume_arm.c
6+++ pulseaudio-0.9.21/src/pulsecore/svolume_arm.c
7@@ -37,6 +37,14 @@
8
9 #if defined (__arm__)
10
11+/*
12+ the code below uses armv6 instructions; we can safely ifdef this away as the code is only
13+ called if the arm architecture is v6 or higher
14+*/
15+#if (!defined (__ARM_ARCH_4__) && !defined (__ARM_ARCH_4T__) \
16+ && !defined (__ARM_ARCH_5__)&& !defined (__ARM_ARCH_5E__) && !defined (__ARM_ARCH_5T__) \
17+ && !defined (__ARM_ARCH_5TE__) && !defined (__ARM_ARCH_5TEJ__))
18+
19 #define MOD_INC() \
20 " subs r0, r6, %2 \n\t" \
21 " addcs r0, %1 \n\t" \
22@@ -179,11 +187,15 @@ static void run_test (void) {
23 }
24 #endif
25
26+#endif /* (!defined (__ARM_ARCH_4__) && !defined (__ARM_ARCH_4T__) ... */
27 #endif /* defined (__arm__) */
28
29
30 void pa_volume_func_init_arm (pa_cpu_arm_flag_t flags) {
31 #if defined (__arm__)
32+#if (!defined (__ARM_ARCH_4__) && !defined (__ARM_ARCH_4T__) \
33+ && !defined (__ARM_ARCH_5__)&& !defined (__ARM_ARCH_5E__) && !defined (__ARM_ARCH_5T__) \
34+ && !defined (__ARM_ARCH_5TE__) && !defined (__ARM_ARCH_5TEJ__))
35 pa_log_info("Initialising ARM optimized functions.");
36
37 #ifdef RUN_TEST
38@@ -191,5 +203,6 @@ void pa_volume_func_init_arm (pa_cpu_arm
39 #endif
40
41 pa_set_volume_func (PA_SAMPLE_S16NE, (pa_do_volume_func_t) pa_volume_s16ne_arm);
42+#endif /* (!defined (__ARM_ARCH_4__) && !defined (__ARM_ARCH_4T__) ... */
43 #endif /* defined (__arm__) */
44 }
45Index: pulseaudio-0.9.21/src/modules/bluetooth/sbc_math.h
46===================================================================
47--- pulseaudio-0.9.21.orig/src/modules/bluetooth/sbc_math.h
48+++ pulseaudio-0.9.21/src/modules/bluetooth/sbc_math.h
49@@ -47,7 +47,9 @@ typedef int32_t sbc_fixed_t;
50
51 #define SBC_FIXED_0(val) { val = 0; }
52 #define MUL(a, b) ((a) * (b))
53-#ifdef __arm__
54+#if (defined(__arm__) && !defined (__ARM_ARCH_4__) && !defined (__ARM_ARCH_4T__) \
55+ && !defined (__ARM_ARCH_5__)&& !defined (__ARM_ARCH_5E__) && !defined (__ARM_ARCH_5T__) \
56+ && !defined (__ARM_ARCH_5TE__) && !defined (__ARM_ARCH_5TEJ__))
57 #define MULA(a, b, res) ({ \
58 int tmp = res; \
59 __asm__( \
diff --git a/meta/recipes-multimedia/pulseaudio/pulseaudio-0.9.21/autoconf_version.patch b/meta/recipes-multimedia/pulseaudio/pulseaudio-0.9.21/autoconf_version.patch
new file mode 100644
index 0000000000..80d0003d12
--- /dev/null
+++ b/meta/recipes-multimedia/pulseaudio/pulseaudio-0.9.21/autoconf_version.patch
@@ -0,0 +1,15 @@
1Derived from OE by Dongxiao Xu <dongxiao.xu@intel.com>
2
3Index: pulseaudio-0.9.15/configure.ac
4===================================================================
5--- pulseaudio-0.9.15.orig/configure.ac 2009-04-14 00:09:53.000000000 +0100
6+++ pulseaudio-0.9.15/configure.ac 2009-05-22 11:32:50.000000000 +0100
7@@ -20,7 +20,7 @@
8 # along with PulseAudio; if not, write to the Free Software Foundation,
9 # Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
10
11-AC_PREREQ(2.63)
12+AC_PREREQ(2.61)
13
14 m4_define(pa_major, [0])
15 m4_define(pa_minor, [9])
diff --git a/meta/recipes-multimedia/pulseaudio/pulseaudio-0.9.21/buildfix.patch b/meta/recipes-multimedia/pulseaudio/pulseaudio-0.9.21/buildfix.patch
new file mode 100644
index 0000000000..ea8d769abc
--- /dev/null
+++ b/meta/recipes-multimedia/pulseaudio/pulseaudio-0.9.21/buildfix.patch
@@ -0,0 +1,15 @@
1Derived from OE by Dongxiao Xu <dongxiao.xu@intel.com>
2
3Index: pulseaudio-0.9.11/src/pulsecore/atomic.h
4===================================================================
5--- pulseaudio-0.9.11.orig/src/pulsecore/atomic.h
6+++ pulseaudio-0.9.11/src/pulsecore/atomic.h
7@@ -40,6 +40,8 @@
8 #error "Please include config.h before including this file!"
9 #endif
10
11+#include "macro.h"
12+
13 #ifdef HAVE_ATOMIC_BUILTINS
14
15 /* __sync based implementation */
diff --git a/meta/recipes-multimedia/pulseaudio/pulseaudio-0.9.21/configure_silent_rules.patch b/meta/recipes-multimedia/pulseaudio/pulseaudio-0.9.21/configure_silent_rules.patch
new file mode 100644
index 0000000000..fd5abd5225
--- /dev/null
+++ b/meta/recipes-multimedia/pulseaudio/pulseaudio-0.9.21/configure_silent_rules.patch
@@ -0,0 +1,31 @@
1Derived from OE by Dongxiao Xu <dongxiao.xu@intel.com>
2
3Index: pulseaudio-0.9.19/configure.ac
4===================================================================
5--- pulseaudio-0.9.19.orig/configure.ac 2009-10-31 11:40:00.000000000 +0000
6+++ pulseaudio-0.9.19/configure.ac 2009-10-31 11:50:35.000000000 +0000
7@@ -27,12 +27,13 @@
8 AC_CONFIG_SRCDIR([src/daemon/main.c])
9 AC_CONFIG_MACRO_DIR([m4])
10 AC_CONFIG_HEADERS([config.h])
11-AM_INIT_AUTOMAKE([foreign 1.11 -Wall -Wno-portability silent-rules tar-pax])
12+AM_INIT_AUTOMAKE([foreign 1.10 -Wall -Wno-portability tar-pax])
13
14 m4_define(pa_major, `echo $VERSION | cut -d. -f1 | cut -d- -f1`)
15 m4_define(pa_minor, `echo $VERSION | cut -d. -f2 | cut -d- -f1`)
16 m4_define(pa_micro, `echo $VERSION | cut -d. -f3 | cut -d- -f1`)
17
18+
19 AC_SUBST(PA_MAJOR, pa_major)
20 AC_SUBST(PA_MINOR, pa_minor)
21 AC_SUBST(PA_MICRO, pa_micro)
22@@ -80,7 +81,8 @@
23 ;;
24 esac
25
26-AM_SILENT_RULES([yes])
27+# only use if available
28+m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
29
30 #### Checks for programs. ####
31
diff --git a/meta/recipes-multimedia/pulseaudio/pulseaudio-0.9.21/gcc4-compile-fix.patch b/meta/recipes-multimedia/pulseaudio/pulseaudio-0.9.21/gcc4-compile-fix.patch
new file mode 100644
index 0000000000..2969cbaa5a
--- /dev/null
+++ b/meta/recipes-multimedia/pulseaudio/pulseaudio-0.9.21/gcc4-compile-fix.patch
@@ -0,0 +1,20 @@
1| fix for more strict syntax compliance in gcc4.x
2| pulsecore/core-util.c: In function 'pa_raise_priority':
3| pulsecore/core-util.c:547: error: label at end of compound statement
4| Signed off: mickey@openmoko.org
5|
6Derived from OE by Dongxiao Xu <dongxiao.xu@intel.com>
7
8Index: pulseaudio-0.9.6/src/pulsecore/core-util.c
9===================================================================
10--- pulseaudio-0.9.6.orig/src/pulsecore/core-util.c
11+++ pulseaudio-0.9.6/src/pulsecore/core-util.c
12@@ -535,7 +535,7 @@ void pa_raise_priority(void) {
13 pa_log_info("Successfully gained high priority class.");
14 #endif
15
16-fail:
17+fail:;
18
19 #if defined(HAVE_SYS_CAPABILITY_H)
20 if (caps) {
diff --git a/meta/recipes-multimedia/pulseaudio/pulseaudio-0.9.21/tls_m4.patch b/meta/recipes-multimedia/pulseaudio/pulseaudio-0.9.21/tls_m4.patch
new file mode 100644
index 0000000000..a8292b2e1c
--- /dev/null
+++ b/meta/recipes-multimedia/pulseaudio/pulseaudio-0.9.21/tls_m4.patch
@@ -0,0 +1,32 @@
1Derived from OE by Dongxiao Xu <dongxiao.xu@intel.com>
2
3Index: pulseaudio-0.9.15/m4/tls.m4
4===================================================================
5--- pulseaudio-0.9.15.orig/m4/tls.m4 2008-08-19 23:25:02.000000000 +0200
6+++ pulseaudio-0.9.15/m4/tls.m4 2009-07-10 09:55:25.266365511 +0200
7@@ -1,12 +1,19 @@
8 AC_DEFUN([CC_CHECK_TLS], [
9 AC_CACHE_CHECK([whether $CC knows __thread for Thread-Local Storage],
10 cc_cv_tls___thread,
11- [AC_COMPILE_IFELSE(
12- AC_LANG_PROGRAM(
13- [[static __thread int a = 6;]],
14- [[a = 5;]]),
15- [cc_cv_tls___thread=yes],
16- [cc_cv_tls___thread=no])
17+ [AC_LINK_IFELSE([__thread int a; int b; int main() { return a = b; }],
18+ [chktls_save_LDFLAGS="$LDFLAGS"
19+ LDFLAGS="-shared -Wl,--no-undefined $LDFLAGS"
20+ chktls_save_CFLAGS="$CFLAGS"
21+ CFLAGS="-fPIC $CFLAGS"
22+ dnl If -shared works, test if TLS works in a shared library.
23+ AC_LINK_IFELSE([int f() { return 0; }],
24+ AC_LINK_IFELSE([__thread int a; int b; int f() { return a = b; }],
25+ [cc_cv_tls___thread=yes],
26+ [cc_cv_tls___thread=no]),
27+ [cc_cv_tls___thread=yes])
28+ CFLAGS="$chktls_save_CFLAGS"
29+ LDFLAGS="$chktls_save_LDFLAGS"], [cc_cv_tls___thread=no])
30 ])
31
32 AS_IF([test "x$cc_cv_tls___thread" = "xyes"],
diff --git a/meta/recipes-multimedia/pulseaudio/pulseaudio-0.9.21/volatiles.04_pulse b/meta/recipes-multimedia/pulseaudio/pulseaudio-0.9.21/volatiles.04_pulse
new file mode 100644
index 0000000000..5b1998032b
--- /dev/null
+++ b/meta/recipes-multimedia/pulseaudio/pulseaudio-0.9.21/volatiles.04_pulse
@@ -0,0 +1,2 @@
1# <type> <owner> <group> <mode> <path> <linksource>
2d pulse pulse 0755 /var/run/pulse none
diff --git a/meta/recipes-multimedia/pulseaudio/pulseaudio_0.9.21.bb b/meta/recipes-multimedia/pulseaudio/pulseaudio_0.9.21.bb
new file mode 100644
index 0000000000..d2c21c47b7
--- /dev/null
+++ b/meta/recipes-multimedia/pulseaudio/pulseaudio_0.9.21.bb
@@ -0,0 +1,28 @@
1require pulseaudio.inc
2
3PR = "r0"
4
5DEPENDS += "gdbm speex"
6
7DEFAULT_PREFERENCE_om-gta01 = "-1"
8DEFAULT_PREFERENCE_om-gta02 = "-1"
9DEFAULT_PREFERENCE_motorola-ezx = "-1"
10
11inherit gettext
12
13SRC_URI += "\
14 file://buildfix.patch \
15 file://autoconf_version.patch \
16 file://tls_m4.patch \
17 file://configure_silent_rules.patch \
18 file://armv4+v5asm.patch \
19"
20
21do_compile_prepend() {
22 cd ${S}
23 mkdir -p ${S}/libltdl
24 cp ${STAGING_LIBDIR}/libltdl* ${S}/libltdl
25}
26
27SRC_URI[md5sum] = "76e623c4c72e2258bc8bdeb1599bad74"
28SRC_URI[sha256sum] = "94e22356ac70ee95388ae58da90d88c6b3186d1938618d21671627ff56cee254"