- pulseaudio-3.99.1 (#952594)
- RFE: Restore the pipe-sink and pipe-source modules (#958949)
- prune (pre 1.x) changelog
This commit is contained in:
Rex Dieter 2013-05-03 10:08:43 -05:00
parent 7cae8c3858
commit 5d5e132833
9 changed files with 23 additions and 1032 deletions

View File

@ -1,41 +0,0 @@
From 299e32b767ac60ddbaa747cd03c09b780e364637 Mon Sep 17 00:00:00 2001
From: David Henningsson <david.henningsson@canonical.com>
Date: Wed, 19 Dec 2012 11:24:33 +0100
Subject: [PATCH 1/7] alsa-mixer: Fix the analog-output-speaker-always path
A left over "required-any" made this path useless for most people.
While we're at it, also add "Front Headphone" like for the normal
speaker path.
Tested-by: Colin Guthrie <gmane@colin.guthr.ie>
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
---
src/modules/alsa/mixer/paths/analog-output-speaker-always.conf | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/src/modules/alsa/mixer/paths/analog-output-speaker-always.conf b/src/modules/alsa/mixer/paths/analog-output-speaker-always.conf
index 3ebdc4a..8a2b3df 100644
--- a/src/modules/alsa/mixer/paths/analog-output-speaker-always.conf
+++ b/src/modules/alsa/mixer/paths/analog-output-speaker-always.conf
@@ -30,6 +30,10 @@ device.icon_name = audio-speakers
state.plugged = no
state.unplugged = unknown
+[Jack Front Headphone]
+state.plugged = no
+state.unplugged = unknown
+
[Element Hardware Master]
switch = mute
volume = merge
@@ -132,7 +136,6 @@ switch = mute
volume = merge
override-map.1 = lfe
override-map.2 = lfe,lfe
-required-any = any
[Element CLFE]
switch = mute
--
1.8.1.4

View File

@ -1,62 +0,0 @@
From e5155b4f505dbc39c54944e369237202f0b42bf6 Mon Sep 17 00:00:00 2001
From: Tanu Kaskinen <tanuk@iki.fi>
Date: Mon, 17 Dec 2012 07:46:04 +0200
Subject: [PATCH 2/7] man: Update log-target documentation.
---
man/pulse-daemon.conf.5.xml.in | 15 +++++++++------
man/pulseaudio.1.xml.in | 7 +++++--
2 files changed, 14 insertions(+), 8 deletions(-)
diff --git a/man/pulse-daemon.conf.5.xml.in b/man/pulse-daemon.conf.5.xml.in
index c270d2b..744e94e 100644
--- a/man/pulse-daemon.conf.5.xml.in
+++ b/man/pulse-daemon.conf.5.xml.in
@@ -297,12 +297,15 @@ USA.
<option>
<p><opt>log-target=</opt> The default log target. Use either
- <opt>stderr</opt>, <opt>syslog</opt> or <opt>auto</opt>. The
- latter is equivalent to <opt>sylog</opt> in case
- <opt>daemonize</opt> is enabled, otherwise to
- <opt>stderr</opt>. Defaults to <opt>auto</opt>. The
- <opt>--log-target</opt> command line option takes
- precedence.</p>
+ <opt>stderr</opt>, <opt>syslog</opt>, <opt>auto</opt>,
+ <opt>file:PATH</opt> or <opt>newfile:PATH</opt>. <opt>auto</opt> is
+ equivalent to <opt>sylog</opt> in case <opt>daemonize</opt> is enabled,
+ otherwise to <opt>stderr</opt>. If set to <opt>file:PATH</opt>, logging
+ is directed to the file indicated by PATH. <opt>newfile:PATH</opt> is
+ otherwise the same as <opt>file:PATH</opt>, but existing files are never
+ overwritten. If the specified file already exists, a suffix is added to
+ the file name to avoid overwriting. Defaults to <opt>auto</opt>. The
+ <opt>--log-target</opt> command line option takes precedence.</p>
</option>
<option>
diff --git a/man/pulseaudio.1.xml.in b/man/pulseaudio.1.xml.in
index c556bda..12f05e8 100644
--- a/man/pulseaudio.1.xml.in
+++ b/man/pulseaudio.1.xml.in
@@ -217,13 +217,16 @@ USA.
</option>
<option>
- <p><opt>--log-target</opt><arg>={auto,syslog,stderr,file:PATH}</arg></p>
+ <p><opt>--log-target</opt><arg>={auto,syslog,stderr,file:PATH,newfile:PATH}</arg></p>
<optdesc><p>Specify the log target. If set to <arg>auto</arg>
(which is the default), then logging is directed to syslog when
<opt>--daemonize</opt> is passed, otherwise to
STDERR. If set to <arg>file:PATH</arg>, logging is directed to
- the file indicated by PATH.</p></optdesc>
+ the file indicated by PATH. <arg>newfile:PATH</arg> is otherwise
+ the same as file:PATH, but existing files are never overwritten.
+ If the specified file already exists, a suffix is added to the
+ file name to avoid overwriting.</p></optdesc>
</option>
<option>
--
1.8.1.4

View File

@ -1,30 +0,0 @@
From 3ffa0bc62afd8dbfa1d1cd5cef2177a96c461343 Mon Sep 17 00:00:00 2001
From: Tanu Kaskinen <tanuk@iki.fi>
Date: Sat, 22 Sep 2012 18:16:24 +0300
Subject: [PATCH 3/7] build: Don't enable BlueZ if libbluetooth is not found.
Previously, if libsbc was available but libbluetooth was not, BlueZ
would get incorrectly enabled.
---
configure.ac | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/configure.ac b/configure.ac
index 3199d85..d11af11 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1007,8 +1007,9 @@ AS_IF([test "x$enable_bluez" != "xno"],
[PKG_CHECK_MODULES(BLUEZ, [ bluez >= 4.99 ], HAVE_BLUEZ=1, HAVE_BLUEZ=0)],
HAVE_BLUEZ=0)
AS_IF([test "x$enable_bluez" != "xno"],
- [PKG_CHECK_MODULES(SBC, [ sbc >= 1.0 ], HAVE_BLUEZ=1, HAVE_BLUEZ=0)],
- HAVE_BLUEZ=0)
+ [PKG_CHECK_MODULES(SBC, [ sbc >= 1.0 ], HAVE_SBC=1, HAVE_SBC=0)],
+ HAVE_SBC=0)
+AS_IF([test "x$HAVE_SBC" != "x1"], HAVE_BLUEZ=0)
AS_IF([test "x$HAVE_DBUS" != "x1"], HAVE_BLUEZ=0)
AS_IF([test "x$enable_bluez" = "xyes" && test "x$HAVE_BLUEZ" = "x0"],
--
1.8.1.4

View File

@ -1,57 +0,0 @@
From e02e290d7cccd0cfbc89bacf5c0be7934ee58ece Mon Sep 17 00:00:00 2001
From: Tanu Kaskinen <tanuk@iki.fi>
Date: Wed, 16 Jan 2013 03:36:03 +0200
Subject: [PATCH 4/7] Call change_cb() only when there's an actual change.
Calling change_cb() whenever anything happens in the ownership of the
bus name caused trouble in PulseAudio in this scenario:
1. PulseAudio is using a device and owns the corresponding service
name.
2. Another application requests device release.
3. PulseAudio releases the device.
4. Change in the bus name ownership: PulseAudio gives up the
ownership, and nobody owns the name.
5. reserve-monitor notices that, and notifies PulseAudio.
6. Since reserve-monitor reports the device as "not busy", PulseAudio
decides to reserve the bus name immediately back to itself and
opens the device again.
The other application will forcibly take the bus name to itself, as
it should according to the protocol, but the other application may
have trouble opening the device if it tries to do that before
PulseAudio has had time to react to the NameLost signal.
This can be solved by not calling change_cb() if there are no changes
in the device busy status. In this scenario the device is considered
"not busy" while PulseAudio is owning the bus name, so PulseAudio gets
no notification when the ownership changes from PulseAudio to nobody.
---
src/modules/reserve-monitor.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/modules/reserve-monitor.c b/src/modules/reserve-monitor.c
index ab453e6..4097a6f 100644
--- a/src/modules/reserve-monitor.c
+++ b/src/modules/reserve-monitor.c
@@ -85,6 +85,8 @@ static DBusHandlerResult filter_handler(
goto invalid;
if (strcmp(name, m->service_name) == 0) {
+ unsigned old_busy = m->busy;
+
m->busy = !!(new && *new);
/* If we ourselves own the device, then don't consider this 'busy' */
@@ -96,7 +98,7 @@ static DBusHandlerResult filter_handler(
m->busy = FALSE;
}
- if (m->change_cb) {
+ if (m->busy != old_busy && m->change_cb) {
m->ref++;
m->change_cb(m);
rm_release(m);
--
1.8.1.4

View File

@ -1,150 +0,0 @@
From b1691402bebfafba9c8055814493f55553f177c1 Mon Sep 17 00:00:00 2001
From: Tanu Kaskinen <tanuk@iki.fi>
Date: Wed, 16 Jan 2013 03:36:04 +0200
Subject: [PATCH 5/7] Initialize monitor's busy status to false if we own the
device.
Bug found by David Henningsson.
---
src/modules/reserve-monitor.c | 96 +++++++++++++++++++++++++++++++++++--------
1 file changed, 80 insertions(+), 16 deletions(-)
diff --git a/src/modules/reserve-monitor.c b/src/modules/reserve-monitor.c
index 4097a6f..4aa4a2b 100644
--- a/src/modules/reserve-monitor.c
+++ b/src/modules/reserve-monitor.c
@@ -59,6 +59,23 @@ struct rm_monitor {
"member='NameOwnerChanged'," \
"arg0='%s'"
+static unsigned get_busy(
+ DBusConnection *c,
+ const char *name_owner) {
+
+ const char *un;
+
+ if (!name_owner || !*name_owner)
+ return FALSE;
+
+ /* If we ourselves own the device, then don't consider this 'busy' */
+ if ((un = dbus_bus_get_unique_name(c)))
+ if (strcmp(name_owner, un) == 0)
+ return FALSE;
+
+ return TRUE;
+}
+
static DBusHandlerResult filter_handler(
DBusConnection *c,
DBusMessage *s,
@@ -87,16 +104,7 @@ static DBusHandlerResult filter_handler(
if (strcmp(name, m->service_name) == 0) {
unsigned old_busy = m->busy;
- m->busy = !!(new && *new);
-
- /* If we ourselves own the device, then don't consider this 'busy' */
- if (m->busy) {
- const char *un;
-
- if ((un = dbus_bus_get_unique_name(c)))
- if (strcmp(new, un) == 0)
- m->busy = FALSE;
- }
+ m->busy = get_busy(c, new);
if (m->busy != old_busy && m->change_cb) {
m->ref++;
@@ -112,14 +120,71 @@ invalid:
return DBUS_HANDLER_RESULT_NOT_YET_HANDLED;
}
+static int get_name_owner(
+ DBusConnection *connection,
+ const char *name,
+ char **name_owner,
+ DBusError *error) {
+
+ DBusMessage *msg, *reply;
+ int r;
+
+ *name_owner = NULL;
+
+ if (!(msg = dbus_message_new_method_call(DBUS_SERVICE_DBUS, DBUS_PATH_DBUS, DBUS_INTERFACE_DBUS, "GetNameOwner"))) {
+ r = -ENOMEM;
+ goto fail;
+ }
+
+ if (!dbus_message_append_args(msg, DBUS_TYPE_STRING, &name, DBUS_TYPE_INVALID)) {
+ r = -ENOMEM;
+ goto fail;
+ }
+
+ reply = dbus_connection_send_with_reply_and_block(connection, msg, DBUS_TIMEOUT_USE_DEFAULT, error);
+ dbus_message_unref(msg);
+ msg = NULL;
+
+ if (reply) {
+ if (!dbus_message_get_args(reply, error, DBUS_TYPE_STRING, name_owner, DBUS_TYPE_INVALID)) {
+ dbus_message_unref(reply);
+ r = -EIO;
+ goto fail;
+ }
+
+ *name_owner = strdup(*name_owner);
+ dbus_message_unref(reply);
+
+ if (!*name_owner) {
+ r = -ENOMEM;
+ goto fail;
+ }
+
+ } else if (dbus_error_has_name(error, "org.freedesktop.DBus.Error.NameHasNoOwner"))
+ dbus_error_free(error);
+ else {
+ r = -EIO;
+ goto fail;
+ }
+
+ return 0;
+
+fail:
+ if (msg)
+ dbus_message_unref(msg);
+
+ return r;
+}
+
int rm_watch(
rm_monitor **_m,
DBusConnection *connection,
- const char*device_name,
+ const char *device_name,
rm_change_cb_t change_cb,
DBusError *error) {
rm_monitor *m = NULL;
+ char *name_owner;
int r;
DBusError _error;
@@ -178,12 +243,11 @@ int rm_watch(
m->matching = 1;
- m->busy = dbus_bus_name_has_owner(m->connection, m->service_name, error);
-
- if (dbus_error_is_set(error)) {
- r = -EIO;
+ if ((r = get_name_owner(m->connection, m->service_name, &name_owner, error)) < 0)
goto fail;
- }
+
+ m->busy = get_busy(m->connection, name_owner);
+ free(name_owner);
*_m = m;
return 0;
--
1.8.1.4

View File

@ -1,189 +0,0 @@
From 88a7b31ca7d1ec38b68e7bfd99e2e53afe96cfcf Mon Sep 17 00:00:00 2001
From: Mikel Astiz <mikel.astiz@bmw-carit.de>
Date: Wed, 30 Jan 2013 09:30:30 +0100
Subject: [PATCH 6/7] reserve: Move get_name_owner() to the public rd_device
API
The function is interesting for both rd_device and rd_monitor so make
it part of the rd_device public API to avoid duplicated code.
The decision to move the function to reserve.c is motivated by the fact
that other projects (i.e. jack) use reserve.c only. Therefore, adding a
reserve->reserve-monitor dependency should be avoided.
---
src/modules/reserve-monitor.c | 59 ++-----------------------------------------
src/modules/reserve.c | 56 ++++++++++++++++++++++++++++++++++++++++
src/modules/reserve.h | 9 +++++++
3 files changed, 67 insertions(+), 57 deletions(-)
diff --git a/src/modules/reserve-monitor.c b/src/modules/reserve-monitor.c
index 4aa4a2b..70de870 100644
--- a/src/modules/reserve-monitor.c
+++ b/src/modules/reserve-monitor.c
@@ -32,6 +32,7 @@
#include <assert.h>
#include "reserve-monitor.h"
+#include "reserve.h"
struct rm_monitor {
int ref;
@@ -120,62 +121,6 @@ invalid:
return DBUS_HANDLER_RESULT_NOT_YET_HANDLED;
}
-static int get_name_owner(
- DBusConnection *connection,
- const char *name,
- char **name_owner,
- DBusError *error) {
-
- DBusMessage *msg, *reply;
- int r;
-
- *name_owner = NULL;
-
- if (!(msg = dbus_message_new_method_call(DBUS_SERVICE_DBUS, DBUS_PATH_DBUS, DBUS_INTERFACE_DBUS, "GetNameOwner"))) {
- r = -ENOMEM;
- goto fail;
- }
-
- if (!dbus_message_append_args(msg, DBUS_TYPE_STRING, &name, DBUS_TYPE_INVALID)) {
- r = -ENOMEM;
- goto fail;
- }
-
- reply = dbus_connection_send_with_reply_and_block(connection, msg, DBUS_TIMEOUT_USE_DEFAULT, error);
- dbus_message_unref(msg);
- msg = NULL;
-
- if (reply) {
- if (!dbus_message_get_args(reply, error, DBUS_TYPE_STRING, name_owner, DBUS_TYPE_INVALID)) {
- dbus_message_unref(reply);
- r = -EIO;
- goto fail;
- }
-
- *name_owner = strdup(*name_owner);
- dbus_message_unref(reply);
-
- if (!*name_owner) {
- r = -ENOMEM;
- goto fail;
- }
-
- } else if (dbus_error_has_name(error, "org.freedesktop.DBus.Error.NameHasNoOwner"))
- dbus_error_free(error);
- else {
- r = -EIO;
- goto fail;
- }
-
- return 0;
-
-fail:
- if (msg)
- dbus_message_unref(msg);
-
- return r;
-}
-
int rm_watch(
rm_monitor **_m,
DBusConnection *connection,
@@ -243,7 +188,7 @@ int rm_watch(
m->matching = 1;
- if ((r = get_name_owner(m->connection, m->service_name, &name_owner, error)) < 0)
+ if ((r = rd_dbus_get_name_owner(m->connection, m->service_name, &name_owner, error)) < 0)
goto fail;
m->busy = get_busy(m->connection, name_owner);
diff --git a/src/modules/reserve.c b/src/modules/reserve.c
index b4c168c..bbb6773 100644
--- a/src/modules/reserve.c
+++ b/src/modules/reserve.c
@@ -606,3 +606,59 @@ void* rd_get_userdata(rd_device *d) {
return d->userdata;
}
+
+int rd_dbus_get_name_owner(
+ DBusConnection *connection,
+ const char *name,
+ char **name_owner,
+ DBusError *error) {
+
+ DBusMessage *msg, *reply;
+ int r;
+
+ *name_owner = NULL;
+
+ if (!(msg = dbus_message_new_method_call(DBUS_SERVICE_DBUS, DBUS_PATH_DBUS, DBUS_INTERFACE_DBUS, "GetNameOwner"))) {
+ r = -ENOMEM;
+ goto fail;
+ }
+
+ if (!dbus_message_append_args(msg, DBUS_TYPE_STRING, &name, DBUS_TYPE_INVALID)) {
+ r = -ENOMEM;
+ goto fail;
+ }
+
+ reply = dbus_connection_send_with_reply_and_block(connection, msg, DBUS_TIMEOUT_USE_DEFAULT, error);
+ dbus_message_unref(msg);
+ msg = NULL;
+
+ if (reply) {
+ if (!dbus_message_get_args(reply, error, DBUS_TYPE_STRING, name_owner, DBUS_TYPE_INVALID)) {
+ dbus_message_unref(reply);
+ r = -EIO;
+ goto fail;
+ }
+
+ *name_owner = strdup(*name_owner);
+ dbus_message_unref(reply);
+
+ if (!*name_owner) {
+ r = -ENOMEM;
+ goto fail;
+ }
+
+ } else if (dbus_error_has_name(error, "org.freedesktop.DBus.Error.NameHasNoOwner"))
+ dbus_error_free(error);
+ else {
+ r = -EIO;
+ goto fail;
+ }
+
+ return 0;
+
+fail:
+ if (msg)
+ dbus_message_unref(msg);
+
+ return r;
+}
diff --git a/src/modules/reserve.h b/src/modules/reserve.h
index bc50870..6527bd7 100644
--- a/src/modules/reserve.h
+++ b/src/modules/reserve.h
@@ -72,6 +72,15 @@ void rd_set_userdata(rd_device *d, void *userdata);
* userdata was set. */
void* rd_get_userdata(rd_device *d);
+/* Helper function to get the unique connection name owning a given
+ * name. Returns 0 on success, a negative errno style return value on
+ * error. */
+int rd_dbus_get_name_owner(
+ DBusConnection *connection,
+ const char *name,
+ char **name_owner,
+ DBusError *error);
+
#ifdef __cplusplus
}
#endif
--
1.8.1.4

View File

@ -1,72 +0,0 @@
From 1db09d30138c54de64f8e197eb6d60b8a04d31c8 Mon Sep 17 00:00:00 2001
From: Mikel Astiz <mikel.astiz@bmw-carit.de>
Date: Wed, 30 Jan 2013 09:30:31 +0100
Subject: [PATCH 7/7] reserve: Fix leaking NameLost signals after
release+acquire
The use of the pseudo-blocking D-Bus calls leads to the problem that
NameLost signals are received after the reply to ReleaseName().
The problem with this is that a later acquisition of the same audio
device can potentially receive the NameLost signal corresponding to
the previous instance, due to the fact that the signal hasn't been
popped from the D-Bus message queue.
The simplest approach to solve this problem is to poll the actual name
owner from the D-Bus daemon, in order to make sure that we did really
lose the name.
The proposal uses a blocking call to GetNameOwner to avoid incosistent
states in the internal APIs: it would otherwise be possible to have a
"busy" device before the reservation has been lost, in the unlikely
case if some other process acquires the name before we got the
confirmation that the NameLost was actually true.
---
src/modules/reserve.c | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
diff --git a/src/modules/reserve.c b/src/modules/reserve.c
index bbb6773..f78805e 100644
--- a/src/modules/reserve.c
+++ b/src/modules/reserve.c
@@ -293,6 +293,7 @@ static DBusHandlerResult filter_handler(
rd_device *d;
DBusError error;
+ char *name_owner = NULL;
dbus_error_init(&error);
@@ -310,6 +311,21 @@ static DBusHandlerResult filter_handler(
goto invalid;
if (strcmp(name, d->service_name) == 0 && d->owning) {
+ /* Verify the actual owner of the name to avoid leaked NameLost
+ * signals from previous reservations. The D-Bus daemon will send
+ * all messages asynchronously in the correct order, but we could
+ * potentially process them too late due to the pseudo-blocking
+ * call mechanism used during both acquisition and release. This
+ * can happen if we release the device and immediately after
+ * reacquire it before NameLost is processed. */
+ if (!d->gave_up) {
+ const char *un;
+
+ if ((un = dbus_bus_get_unique_name(c)) && rd_dbus_get_name_owner(c, d->service_name, &name_owner, &error) == 0)
+ if (strcmp(name_owner, un) == 0)
+ goto invalid; /* Name still owned by us */
+ }
+
d->owning = 0;
if (!d->gave_up) {
@@ -326,6 +342,7 @@ static DBusHandlerResult filter_handler(
}
invalid:
+ free(name_owner);
dbus_error_free(&error);
return DBUS_HANDLER_RESULT_NOT_YET_HANDLED;
--
1.8.1.4

View File

@ -1,5 +1,5 @@
%global pa_major 3.0
#global pa_minor 0
%global pa_major 3.99
%global pa_minor 1
%ifarch %{ix86} x86_64 %{arm}
%global with_webrtc 1
@ -8,20 +8,13 @@
Name: pulseaudio
Summary: Improved Linux Sound Server
Version: %{pa_major}%{?pa_minor:.%{pa_minor}}
Release: 7%{?dist}
Release: 1%{?dist}
License: LGPLv2+
URL: http://www.freedesktop.org/wiki/Software/PulseAudio
Source0: http://freedesktop.org/software/pulseaudio/releases/pulseaudio-%{version}.tar.xz
Source1: default.pa-for-gdm
## upstream patches
Patch101: 0001-alsa-mixer-Fix-the-analog-output-speaker-always-path.patch
Patch102: 0002-man-Update-log-target-documentation.patch
Patch103: 0003-build-Don-t-enable-BlueZ-if-libbluetooth-is-not-foun.patch
Patch104: 0004-Call-change_cb-only-when-there-s-an-actual-change.patch
Patch105: 0005-Initialize-monitor-s-busy-status-to-false-if-we-own-.patch
Patch106: 0006-reserve-Move-get_name_owner-to-the-public-rd_device-.patch
Patch107: 0007-reserve-Fix-leaking-NameLost-signals-after-release-a.patch
BuildRequires: m4
BuildRequires: libtool-ltdl-devel
@ -195,13 +188,9 @@ This package contains GDM integration hooks for the PulseAudio sound server.
%prep
%setup -q -T -b0
%patch101 -p1 -b .0001
%patch102 -p1 -b .0002
%patch103 -p1 -b .0003
%patch104 -p1 -b .0004
%patch105 -p1 -b .0005
%patch106 -p1 -b .0006
%patch107 -p1 -b .0007
sed -i.no_consolekit -e \
's/^load-module module-console-kit/#load-module module-console-kit/' \
src/daemon/default.pa.in
## kill rpaths
%if "%{_libdir}" != "/usr/lib"
@ -217,6 +206,7 @@ sed -i -e 's|"/lib /usr/lib|"/%{_lib} %{_libdir}|' configure
--with-system-group=pulse \
--with-access-group=pulse-access \
--disable-hal \
--disable-oss-output \
--without-fftw \
%ifarch %{arm}
--disable-neon-opt \
@ -236,25 +226,16 @@ make install DESTDIR=$RPM_BUILD_ROOT
# upstream should use udev.pc
mkdir -p $RPM_BUILD_ROOT%{_prefix}/lib/udev/rules.d
mv -f $RPM_BUILD_ROOT/lib/udev/rules.d/90-pulseaudio.rules $RPM_BUILD_ROOT%{_prefix}/lib/udev/rules.d
mv -fv $RPM_BUILD_ROOT/lib/udev/rules.d/90-pulseaudio.rules $RPM_BUILD_ROOT%{_prefix}/lib/udev/rules.d
rm -fv $RPM_BUILD_ROOT%{_libdir}/*.la $RPM_BUILD_ROOT%{_libdir}/pulse-%{pa_major}/modules/*.la
rm -fv $RPM_BUILD_ROOT%{_libdir}/pulse-%{pa_major}/modules/liboss-util.so
rm -fv $RPM_BUILD_ROOT%{_libdir}/pulse-%{pa_major}/modules/module-oss.so
#rm -fv $RPM_BUILD_ROOT%{_libdir}/pulse-%{pa_major}/modules/liboss-util.so
#rm -fv $RPM_BUILD_ROOT%{_libdir}/pulse-%{pa_major}/modules/module-oss.so
rm -fv $RPM_BUILD_ROOT%{_libdir}/pulse-%{pa_major}/modules/module-detect.so
rm -fv $RPM_BUILD_ROOT%{_libdir}/pulse-%{pa_major}/modules/module-pipe-sink.so
rm -fv $RPM_BUILD_ROOT%{_libdir}/pulse-%{pa_major}/modules/module-pipe-source.so
# preserve time stamps, for multilib's sake
touch -r src/daemon/daemon.conf.in $RPM_BUILD_ROOT%{_sysconfdir}/pulse/daemon.conf
touch -r src/daemon/default.pa.in $RPM_BUILD_ROOT%{_sysconfdir}/pulse/default.pa
touch -r man/pulseaudio.1.xml.in $RPM_BUILD_ROOT%{_mandir}/man1/pulseaudio.1
touch -r man/default.pa.5.xml.in $RPM_BUILD_ROOT%{_mandir}/man5/default.pa.5
touch -r man/pulse-client.conf.5.xml.in $RPM_BUILD_ROOT%{_mandir}/man5/pulse-client.conf.5
touch -r man/pulse-daemon.conf.5.xml.in $RPM_BUILD_ROOT%{_mandir}/man5/pulse-daemon.conf.5
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/lib/pulse
install -p -m644 -D %{SOURCE1} $RPM_BUILD_ROOT%{_localstatedir}/lib/gdm/.pulse/default.pa
sed -i -e 's/^load-module module-console-kit/#load-module module-console-kit/' $RPM_BUILD_ROOT/etc/pulse/default.pa
%find_lang %{name}
@ -288,6 +269,8 @@ exit 0
%config(noreplace) %{_sysconfdir}/pulse/default.pa
%config(noreplace) %{_sysconfdir}/pulse/system.pa
%config(noreplace) %{_sysconfdir}/dbus-1/system.d/pulseaudio-system.conf
%dir %{_sysconfdir}/bash_completion.d/
%{_sysconfdir}/bash_completion.d/pulseaudio-bash-completion.sh
%{_bindir}/pulseaudio
%{_libdir}/libpulsecore-%{pa_major}.so
%dir %{_libdir}/pulse-%{pa_major}/
@ -332,7 +315,11 @@ exit 0
%{_libdir}/pulse-%{pa_major}/modules/module-native-protocol-unix.so
%{_libdir}/pulse-%{pa_major}/modules/module-null-sink.so
%{_libdir}/pulse-%{pa_major}/modules/module-null-source.so
%{_libdir}/pulse-%{pa_major}/modules/module-pipe-sink.so
%{_libdir}/pulse-%{pa_major}/modules/module-pipe-source.so
%{_libdir}/pulse-%{pa_major}/modules/module-remap-source.so
%{_libdir}/pulse-%{pa_major}/modules/module-rescue-streams.so
%{_libdir}/pulse-%{pa_major}/modules/module-role-ducking.so
%{_libdir}/pulse-%{pa_major}/modules/module-rtp-recv.so
%{_libdir}/pulse-%{pa_major}/modules/module-rtp-send.so
%{_libdir}/pulse-%{pa_major}/modules/module-simple-protocol-tcp.so
@ -476,6 +463,11 @@ exit 0
%attr(0600, gdm, gdm) %{_localstatedir}/lib/gdm/.pulse/default.pa
%changelog
* Fri May 03 2013 Rex Dieter <rdieter@fedoraproject.org> 3.99.1-1
- pulseaudio-3.99.1 (#952594)
- RFE: Restore the pipe-sink and pipe-source modules (#958949)
- prune (pre 1.x) changelog
* Thu Apr 11 2013 Rex Dieter <rdieter@fedoraproject.org> 3.0-7
- pull a few more patches from upstream stable-3.x branch
@ -556,403 +548,3 @@ exit 0
* Thu Nov 3 2011 Lennart Poettering <lpoetter@redhat.com> - 1.1-1
- New upstream release
* Mon Aug 15 2011 Matthias Clasen <mclasen@redhat.com> - 0.9.23-1
- Update to 0.9.23
* Thu Apr 7 2011 Peter Robinson <pbrobinson@gmail.com> - 0.9.22-5
- Add upstream patch to fix compilation on ARM
* Mon Mar 28 2011 Matthias Clasen <mclasen@redhat.com> - 0.9.22-4
- Activate pulseaudio earlier during login
* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9.22-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
* Sun Jan 30 2011 Ville Skyttä <ville.skytta@iki.fi> - 0.9.22-2
- Own /usr/share/pulseaudio dirs.
* Fri Nov 26 2010 Lennart Poettering <lpoetter@redhat.com> - 0.9.22-1
- New upstream release
* Sun Nov 21 2010 Matěj Cepl <mcepl@redhat.com> - 0.9.21-7
- Fix racy condition with patch by jkratoch (RHBZ# 643296).
* Tue Feb 23 2010 Lennart Poettering <lpoetter@redhat.com> - 0.9.21-6
- backport another 30 fixes from upstream git
* Sun Jan 17 2010 Lennart Poettering <lpoetter@redhat.com> - 0.9.21-5
- fix buffer flushing
* Fri Jan 15 2010 Lennart Poettering <lpoetter@redhat.com> - 0.9.21-4
- backport 31 fixes from upstream git
- sync spec file with rhel
* Tue Dec 8 2009 Michael Schwendt <mschwendt@fedoraproject.org> - 0.9.21-3
- Explicitly BR libatomic_ops-static in accordance with the Packaging
Guidelines (libatomic_ops-devel is still static-only).
* Wed Dec 02 2009 Rex Dieter <rdieter@fedoraproject.org> - 0.9.21-2
- module-device-manager, kde autostart bits missing (#541419)
* Mon Nov 23 2009 Lennart Poettering <lpoetter@redhat.com> - 0.9.21-1
- New release
* Wed Nov 11 2009 Lennart Poettering <lpoetter@redhat.com> - 0.9.20-1
- New release
* Wed Nov 04 2009 Warren Togami <wtogami@redhat.com> - 0.9.19-2
- Bug #532583 gdm should not require pulseaudio
* Wed Sep 30 2009 Lennart Poettering <lpoetter@redhat.com> - 0.9.19-1
- New release
* Sat Sep 19 2009 Lennart Poettering <lpoetter@redhat.com> - 0.9.18-1
- New release
* Fri Sep 11 2009 Lennart Poettering <lpoetter@redhat.com> 0.9.17-1
- Final release
* Thu Sep 10 2009 Lennart Poettering <lpoetter@redhat.com> 0.9.16-14
- Final release
* Thu Sep 3 2009 Lennart Poettering <lpoetter@redhat.com> 0.9.16-13.test7
- Fix build for ppc
* Thu Sep 3 2009 Lennart Poettering <lpoetter@redhat.com> 0.9.16-12.test7
- New test release
* Thu Aug 27 2009 Tomas Mraz <tmraz@redhat.com> - 0.9.16-11.test6
- rebuilt with new openssl
* Mon Aug 24 2009 Lennart Poettering <lpoetter@redhat.com> 0.9.16-10.test6
- Fix build for ppc
* Mon Aug 24 2009 Lennart Poettering <lpoetter@redhat.com> 0.9.16-9.test6
- New test release
* Thu Aug 20 2009 Matthias Clasen <mclasen@redhat.com> - 0.9.16-7.test5
- Fix install ordering between gdm and pulseaudio-gdm-hooks
* Wed Aug 19 2009 Lennart Poettering <lpoetter@redhat.com> 0.9.16-6.test5
- New test release
* Wed Aug 5 2009 Lennart Poettering <lpoetter@redhat.com> 0.9.16-5.test4
- New test release
* Tue Jul 28 2009 Lennart Poettering <lpoetter@redhat.com> 0.9.16-4.test3
- New test release
* Sun Jul 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9.16-3.test2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
* Thu Jul 2 2009 Lennart Poettering <lpoetter@redhat.com> 0.9.16-2.test2
- New test release
* Tue Jun 23 2009 Lennart Poettering <lpoetter@redhat.com> 0.9.16-1.test1
- Fix endianess build
* Tue Jun 23 2009 Lennart Poettering <lpoetter@redhat.com> 0.9.16-0.test1
- First 0.9.16 test release
* Wed Apr 22 2009 Warren Togami <wtogami@redhat.com> 0.9.15-11
- Bug #497214
Do not start pulseaudio daemon if PULSE_SERVER directs pulse elsewhere.
* Mon Apr 13 2009 Lennart Poettering <lpoetter@redhat.com> 0.9.15-10
- Final 0.9.15 release
* Thu Apr 9 2009 Lennart Poettering <lpoetter@redhat.com> 0.9.15-9.test8
- New test release
* Wed Apr 1 2009 Lennart Poettering <lpoetter@redhat.com> 0.9.15-8.test7
- Only load bt modules when installed
* Wed Apr 1 2009 Lennart Poettering <lpoetter@redhat.com> 0.9.15-7.test7
- New test release
* Wed Apr 1 2009 Lennart Poettering <lpoetter@redhat.com> 0.9.15-6.test6
- Fix mistag
* Wed Apr 1 2009 Lennart Poettering <lpoetter@redhat.com> 0.9.15-5.test6
- Fix tarball name
* Wed Apr 1 2009 Lennart Poettering <lpoetter@redhat.com> 0.9.15-4.test6
- New test release
* Thu Mar 5 2009 Lennart Poettering <lpoetter@redhat.com> 0.9.15-3.test5
- New test release
* Thu Mar 5 2009 Lennart Poettering <lpoetter@redhat.com> 0.9.15-3.test4
- New test release
* Fri Feb 27 2009 Lennart Poettering <lpoetter@redhat.com> 0.9.15-3.test3
- Steal patch from git master to fix .so dependencies
* Wed Feb 25 2009 Lennart Poettering <lpoetter@redhat.com> 0.9.15-2.test3
- Add more missing X11 dependencies
* Wed Feb 25 2009 Lennart Poettering <lpoetter@redhat.com> 0.9.15-1.test3
- Add missing dependency on XTEST
* Tue Feb 24 2009 Lennart Poettering <lpoetter@redhat.com> 0.9.15-0.test3
- New test release
* Thu Feb 12 2009 Lennart Poettering <lpoetter@redhat.com> 0.9.15-0.test2
- New test release
* Tue Jan 13 2009 Adel Gadllah <adel.gadllah@gmail.com> 0.9.14-2
- Prefer mixer controls with volumes over switches
* Tue Jan 13 2009 Lennart Poettering <lpoetter@redhat.com> 0.9.14-1
- New release
* Thu Nov 13 2008 Matthias Clasen <mclasen@redhat.com> 0.9.13-7
- Rebuild
* Sat Nov 1 2008 Lennart Poettering <lpoetter@redhat.com> 0.9.13-6
- Backport another two fixes from current git master
* Tue Oct 28 2008 Matthias Clasen <mclasen@redhat.com> 0.9.13-5
- Require new enough speex-devel
* Fri Oct 24 2008 Lennart Poettering <lpoetter@redhat.com> 0.9.13-4
- Backport another fix from current git master
* Thu Oct 23 2008 Lennart Poettering <lpoetter@redhat.com> 0.9.13-3
- Backport a couple of fixes from current git master
* Thu Oct 9 2008 Matthhias Clasen <mclasen@redhat.com> 0.9.13-2
- Handle locales properly
* Mon Oct 6 2008 Lennart Poettering <lpoetter@redhat.com> 0.9.13-1
- New release
* Mon Sep 15 2008 Matthias Clasen <mclasen@redhat.com> 0.9.12-6
- Survive a missing ~/.pulse (#462407)
* Thu Sep 11 2008 - Bastien Nocera <bnocera@redhat.com> 0.9.12-5
- Rebuild
* Tue Sep 9 2008 Lennart Poettering <lpoetter@redhat.com> 0.9.12-4
- Ship /var/lib/pulse in the RPM
* Tue Sep 9 2008 Lennart Poettering <lpoetter@redhat.com> 0.9.12-3
- Don't remove pulse users/groups on package removal
* Tue Sep 9 2008 Lennart Poettering <lpoetter@redhat.com> 0.9.12-2
- Add intltool to deps
* Tue Sep 9 2008 Lennart Poettering <lpoetter@redhat.com> 0.9.12-1
- Release 0.9.12
* Thu Jul 24 2008 Lennart Poettering <lpoetter@redhat.com> 0.9.11-1
- Final release 0.9.11
* Tue Jul 22 2008 Jon McCann <jmccann@redhat.com> 0.9.11-0.7.git20080626
- Fix for CK API changes
* Thu Jun 26 2008 Lennart Poettering <lpoetter@redhat.com> 0.9.11-0.6.git20080626
- New GIT snapshot
* Sun Jun 22 2008 Lennart Poettering <lpoetter@redhat.com> 0.9.11-0.5.svn20080622
- New GIT snapshot
* Wed Jun 18 2008 Lennart Poettering <lpoetter@redhat.com> 0.9.11-0.4.svn20080618
- New SVN snapshot
* Fri May 30 2008 Lennart Poettering <lpoetter@redhat.com> 0.9.11-0.3.svn20080529
- Fix snapshot versioning
* Thu May 29 2008 Lennart Poettering <lpoetter@redhat.com> 0.9.11-0.0.svn20080529
- New SVN snapshot
* Tue May 20 2008 Matthias Clasen <mclasen@redhat.com> 0.9.11-0.2.svn20080516
- Actually apply the patch
* Sat May 17 2008 Matthias Clasen <mclasen@redhat.com> 0.9.11-0.1.svn20080516
- Fix a wrong assertion in module-default-device-restore
* Fri May 16 2008 Matthias Clasen <mclasen@redhat.com> 0.9.11-0.0.svn20080516
- Update to an svn snapshot of the 'glitch-free' rewrite of pulseaudio
* Sun Mar 30 2008 Lennart Poettering <lpoetter@redhat.com> 0.9.10-1
- Update to PulseAudio 0.9.10
- drop all patches, since they have been integrated upstream
* Thu Mar 27 2008 Lubomir Kundrak <lkundrak@redhat.com> 0.9.8-13
- Abort on CPU time comsumption, so we can get core
* Thu Mar 13 2008 Lubomir Kundrak <lkundrak@redhat.com> 0.9.8-12
- Own /usr/libexec/pulse (#437228)
* Wed Mar 12 2008 Adam Jackson <ajax@redhat.com> 0.9.8-11
- pulseaudio-0.9.8-disable-realtime.patch: Don't ask PolicyKit for increased
scheduling mojo for now. It's not clear that it's a win; and if it is,
the policy should just be fixed to always allow it.
* Wed Mar 12 2008 Lubomir Kundrak <lkundrak@redhat.com> 0.9.8-10
- Build the manual pages with xmltoman
* Fri Feb 29 2008 Lubomir Kundrak <lkundrak@redhat.com> 0.9.8-9
- Fix the fix.
* Fri Feb 29 2008 Lubomir Kundrak <lkundrak@redhat.com> 0.9.8-8
- Fix multilib issue (#228383)
- Prevent dumping core if exiting sooner that ltdl initializaion (#427962)
* Thu Feb 21 2008 Adam Tkac <atkac redhat com> 0.9.8-7
- really rebuild against new libcap
* Sun Feb 17 2008 Adam Tkac <atkac redhat com> 0.9.8-6
- rebuild against new libcap
* Wed Jan 23 2008 Lubomir Kundrak <lkundrak@redhat.com> 0.9.8-5
- Fix CVE-2008-0008 security issue (#425481)
* Sun Jan 13 2008 Lubomir Kundrak <lkundrak@redhat.com> 0.9.8-4.1
- Actually add content to pulseaudio-0.9.8-create-dot-pulse.patch
- Make the Source0 tag point to URL instead of a local file
- Drop the nochown patch; it's not applied at all and no longer needed
* Thu Nov 29 2007 Lennart Poettering <lpoetter@redhat.com> 0.9.8-4
- add missing dependency on pulseaudio-utils for pulseaudio-module-x11
* Thu Nov 29 2007 Lennart Poettering <lpoetter@redhat.com> 0.9.8-3
- Create ~/.pulse/ if not existant
* Thu Nov 29 2007 Lennart Poettering <lpoetter@redhat.com> 0.9.8-2
- Add missing dependency on jack-audio-connection-kit-devel
* Wed Nov 28 2007 Lennart Poettering <lpoetter@redhat.com> 0.9.8-1
- Upgrade to current upstream
* Wed Oct 17 2007 Lennart Poettering <lpoetter@redhat.com> 0.9.7-0.16.svn20071017
- Another SVN snapshot, fixing another round of bugs (#330541)
- Split libpulscore into a seperate package to work around multilib limitation (#335011)
* Mon Oct 1 2007 Lennart Poettering <lpoetter@redhat.com> 0.9.7-0.15.svn20071001
- Another SVN snapshot, fixing another round of bugs
* Sat Sep 29 2007 Lennart Poettering <lpoetter@redhat.com> 0.9.7-0.14.svn20070929
- Another SVN snapshot, fixing a couple of subtle bugs
* Tue Sep 25 2007 Lennart Poettering <lpoetter@redhat.com> 0.9.7-0.13.svn20070925
- Remove libpulsecore.so symlink from pulseaudio-libs-devel to avoid multilib issues
* Tue Sep 25 2007 Lennart Poettering <lpoetter@redhat.com> 0.9.7-0.12.svn20070925
- New SVN snapshot
- Split off libflashsupport again
- Rename "-lib" packages to "-libs", like all other packages do it.
- Provide esound
* Fri Sep 7 2007 Lennart Poettering <lpoetter@redhat.com> 0.9.7-0.11.svn20070907
- Update SVN snapshot, don't link libpulsecore.so statically anymore
* Wed Sep 5 2007 Lennart Poettering <lpoetter@redhat.com> 0.9.7-0.10.svn20070905
- Update SVN snapshot
* Tue Sep 4 2007 Lennart Poettering <lpoetter@redhat.com> 0.9.7-0.9.svn20070904
- Update SVN snapshot
- ship libflashsupport in our package
- drop pulseaudio-devel since libpulsecore is not linked statically
* Thu Aug 23 2007 Lennart Poettering <lpoetter@redhat.com> 0.9.7-0.8.svn20070823
- Update SVN snapshot
* Thu Aug 16 2007 Lennart Poettering <lpoetter@redhat.com> 0.9.7-0.7.svn20070816
- Update SVN snapshot
* Thu Aug 16 2007 Lennart Poettering <lpoetter@redhat.com> 0.9.7-0.6.svn20070816
- Update SVN snapshot
* Tue Aug 14 2007 Lennart Poettering <lpoetter@redhat.com> 0.9.7-0.5.svn20070814
- Forgot to upload tarball
* Tue Aug 14 2007 Lennart Poettering <lpoetter@redhat.com> 0.9.7-0.4.svn20070814
- Update snapshot. Install file into /etc/xdg/autostart/ to load module-x11-smp
only after login
* Sun Aug 12 2007 Lennart Poettering <lpoetter@redhat.com> 0.9.7-0.3.svn20070812
- Depend on tcp_wrappers-devel instead of tcp_wrappers, to make sure we
actually get the headers installed.
* Sun Aug 12 2007 Lennart Poettering <lpoetter@redhat.com> 0.9.7-0.2.svn20070812
- Update snapshot, contains 64 bit build fixes, and disables module-x11-xsmp by
default to avoid deadlock when PA is started from gnome-session
* Sun Aug 12 2007 Lennart Poettering <lpoetter@redhat.com> 0.9.7-0.1.svn20070812
- Take snapshot from SVN
* Tue May 29 2007 Pierre Ossman <drzeus@drzeus.cx> 0.9.6-2
- Add libatomic_ops-devel as a build requirement.
* Tue May 29 2007 Pierre Ossman <drzeus@drzeus.cx> 0.9.6-1
- Upgrade to 0.9.6.
* Fri Mar 2 2007 Pierre Ossman <drzeus@drzeus.cx> 0.9.5-5
- Fix merge problems with patch.
* Fri Mar 2 2007 Pierre Ossman <drzeus@drzeus.cx> 0.9.5-4
- Add patch to handle ALSA changing the frame size (bug 230211).
- Add patch for suspended ALSA devices (bug 228205).
* Mon Feb 5 2007 Pierre Ossman <drzeus@drzeus.cx> 0.9.5-3
- Add esound-compat subpackage that allows PulseAudio to be a drop-in
replacement for esd (based on patch by Matthias Clasen).
- Backport patch allows startup to continue even when the users'
config cannot be read.
* Mon Oct 23 2006 Pierre Ossman <drzeus@drzeus.cx> 0.9.5-2
- Create user and groups for daemon.
* Mon Aug 28 2006 Pierre Ossman <drzeus@drzeus.cx> 0.9.5-1
- Upgrade to 0.9.5.
* Wed Aug 23 2006 Pierre Ossman <drzeus@drzeus.cx> 0.9.4-3
- Make sure JACK modules are built and packaged.
* Tue Aug 22 2006 Pierre Ossman <drzeus@drzeus.cx> 0.9.4-2
- Merge the ALSA modules into the main package as ALSA is the
standard API.
* Sun Aug 20 2006 Pierre Ossman <drzeus@drzeus.cx> 0.9.4-1
- Update to 0.9.4.
- Remove fix for rpath as it is merged upstream.
* Fri Jul 21 2006 Toshio Kuratomi <toshio@tiki-lounge.com> 0.9.3-2
- Remove static libraries.
- Fix for rpath issues.
* Fri Jul 21 2006 Pierre Ossman <drzeus@drzeus.cx> 0.9.3-1
- Update to 0.9.3
- GLib 1.2 bindings dropped.
- Howl compat dropped as Avahi is supported natively.
- Added fix for pc files on x86_64.
* Sat Jul 8 2006 Pierre Ossman <drzeus@drzeus.cx> 0.9.2-1
- Update to 0.9.2.
- Added Avahi HOWL compat dependencies.
* Thu Jun 8 2006 Pierre Ossman <drzeus@drzeus.cx> 0.9.1-1
- Update to 0.9.1.
* Mon May 29 2006 Pierre Ossman <drzeus@drzeus.cx> 0.9.0-2
- Build and package doxygen docs
- Call ldconfig for relevant subpackages.
* Mon May 29 2006 Pierre Ossman <drzeus@drzeus.cx> 0.9.0-1
- Update to 0.9.0
* Tue May 9 2006 Pierre Ossman <drzeus@drzeus.cx> 0.8.1-1
- Update to 0.8.1
- Split into more packages
- Remove the modules' static libs as those shouldn't be used (they shouldn't
even be installed)
* Fri Feb 24 2006 Tom "spot" Callaway <tcallawa@redhat.com> 0.7-2
- dance around with perms so we don't strip the binary
- add missing BR
* Mon Nov 28 2005 Tom "spot" Callaway <tcallawa@redhat.com> 0.7-1
- Initial package for Fedora Extras

View File

@ -1 +1 @@
47fd7eca8479c757822bee68a1feef25 pulseaudio-3.0.tar.xz
86b8f044339f199049b491232901be66 pulseaudio-3.99.1.tar.xz