[pulseaudio-commits] [SCM] PulseAudio Sound Server branch, master, updated. v1.0-dev-21-g1e8b60e

Colin Guthrie gitmailer-noreply at 0pointer.de
Sun Dec 5 08:22:53 PST 2010


This is an automated email from the git hooks/post-receive script. It was
generated because of a push to the "PulseAudio Sound Server" repository.

The master branch has been updated
      from  ba2e5f4442b8f933f37411cc625598cc72938d33 (commit)

- Log -----------------------------------------------------------------
1e8b60e jack: Add module-jackdbus-detect
de706d9 build-sys: Fix a warning during distcheck
76d8217 i18n: Update POTFILES.*
36f7a40 build-sys: Include the .version file in the distribution tarball
2f67d6b build-sys: Fix make distcheck failure due to udev rules fixed install path
3e28f60 build-sys: Replace dummy Makefiles with proper Makefile.am's
-----------------------------------------------------------------------

Summary of changes:
 Makefile.am                                        |    3 +
 configure.ac                                       |   19 ++
 git-version-gen                                    |    1 +
 po/POTFILES.in                                     |    2 +
 po/POTFILES.skip                                   |    2 +
 src/Makefile.am                                    |   13 +
 src/daemon/Makefile                                |    1 -
 {doxygen => src/daemon}/Makefile.am                |   10 +-
 src/modules/Makefile                               |    1 -
 {doxygen => src/modules}/Makefile.am               |   10 +-
 src/modules/alsa/Makefile                          |    1 -
 {doxygen => src/modules/alsa}/Makefile.am          |   10 +-
 src/modules/alsa/mixer/Makefile                    |    1 -
 {doxygen => src/modules/alsa/mixer}/Makefile.am    |   10 +-
 src/modules/alsa/mixer/paths/Makefile              |    1 -
 .../modules/alsa/mixer/paths}/Makefile.am          |   10 +-
 src/modules/alsa/mixer/profile-sets/Makefile       |    1 -
 .../modules/alsa/mixer/profile-sets}/Makefile.am   |   10 +-
 src/modules/bluetooth/Makefile                     |    1 -
 {doxygen => src/modules/bluetooth}/Makefile.am     |   10 +-
 {doxygen => src/modules/dbus}/Makefile.am          |   10 +-
 src/modules/gconf/Makefile                         |    1 -
 {doxygen => src/modules/gconf}/Makefile.am         |   10 +-
 {doxygen => src/modules/jack}/Makefile.am          |   10 +-
 src/modules/jack/module-jackdbus-detect.c          |  304 ++++++++++++++++++++
 src/modules/oss/Makefile                           |    1 -
 {doxygen => src/modules/oss}/Makefile.am           |   10 +-
 {doxygen => src/modules/raop}/Makefile.am          |   10 +-
 src/modules/rtp/Makefile                           |    1 -
 {doxygen => src/modules/rtp}/Makefile.am           |   10 +-
 {doxygen => src/modules/x11}/Makefile.am           |   10 +-
 src/pulse/Makefile                                 |   13 -
 {doxygen => src/pulse}/Makefile.am                 |   10 +-
 src/pulsecore/Makefile                             |    1 -
 {doxygen => src/pulsecore}/Makefile.am             |   10 +-
 src/pulsecore/ffmpeg/Makefile                      |   13 -
 {doxygen => src/pulsecore/ffmpeg}/Makefile.am      |   10 +-
 src/tests/Makefile                                 |    1 -
 {doxygen => src/tests}/Makefile.am                 |   10 +-
 src/utils/Makefile                                 |    1 -
 {doxygen => src/utils}/Makefile.am                 |   10 +-
 41 files changed, 401 insertions(+), 172 deletions(-)
 delete mode 120000 src/daemon/Makefile
 copy {doxygen => src/daemon}/Makefile.am (89%)
 delete mode 120000 src/modules/Makefile
 copy {doxygen => src/modules}/Makefile.am (89%)
 delete mode 120000 src/modules/alsa/Makefile
 copy {doxygen => src/modules/alsa}/Makefile.am (89%)
 delete mode 120000 src/modules/alsa/mixer/Makefile
 copy {doxygen => src/modules/alsa/mixer}/Makefile.am (89%)
 delete mode 120000 src/modules/alsa/mixer/paths/Makefile
 copy {doxygen => src/modules/alsa/mixer/paths}/Makefile.am (89%)
 delete mode 120000 src/modules/alsa/mixer/profile-sets/Makefile
 copy {doxygen => src/modules/alsa/mixer/profile-sets}/Makefile.am (89%)
 delete mode 120000 src/modules/bluetooth/Makefile
 copy {doxygen => src/modules/bluetooth}/Makefile.am (89%)
 copy {doxygen => src/modules/dbus}/Makefile.am (89%)
 delete mode 120000 src/modules/gconf/Makefile
 copy {doxygen => src/modules/gconf}/Makefile.am (89%)
 copy {doxygen => src/modules/jack}/Makefile.am (89%)
 create mode 100644 src/modules/jack/module-jackdbus-detect.c
 delete mode 120000 src/modules/oss/Makefile
 copy {doxygen => src/modules/oss}/Makefile.am (89%)
 copy {doxygen => src/modules/raop}/Makefile.am (89%)
 delete mode 120000 src/modules/rtp/Makefile
 copy {doxygen => src/modules/rtp}/Makefile.am (89%)
 copy {doxygen => src/modules/x11}/Makefile.am (89%)
 delete mode 100644 src/pulse/Makefile
 copy {doxygen => src/pulse}/Makefile.am (89%)
 delete mode 120000 src/pulsecore/Makefile
 copy {doxygen => src/pulsecore}/Makefile.am (89%)
 delete mode 100644 src/pulsecore/ffmpeg/Makefile
 copy {doxygen => src/pulsecore/ffmpeg}/Makefile.am (89%)
 delete mode 120000 src/tests/Makefile
 copy {doxygen => src/tests}/Makefile.am (89%)
 delete mode 120000 src/utils/Makefile
 copy {doxygen => src/utils}/Makefile.am (89%)

-----------------------------------------------------------------------

commit 3e28f60592656e14cd18fb708a57b4d8a81422ea
Author: Colin Guthrie <cguthrie at mandriva.org>
Date:   Fri Dec 3 17:20:16 2010 +0000

    build-sys: Replace dummy Makefiles with proper Makefile.am's
    
    This is needed to better support out of tree builds (including
    distcheck) and to ensure the necessary folders are created in the
    build tree on configure and also works around an intl-tools bug
    (https://bugs.launchpad.net/intltool/+bug/605826)
    
    The Makefile.am's used are minimal (and in some cases completely
    blank). At present they do not include anything interesting
    with the majority of the real work still done by the monolitic
    src/Makefile.am
    
    It may make sense to start splitting out src/Makefile.am into
    smaller chunks but this commit makes the minimum changes to address
    the issues that result from using make distcheck and other out of
    tree builds.
    
    Note: This 'breaks' the ability to type make in e.g. the src/modules
    folder and have all of PA rebuilt accordingly (this is because the
    static Makefiles previously present just did a "make -C ..") which
    was purportedly for use in emacs. But I'm sure there will be a better
    and more robust way to configure emacs to do your builds properly if
    this behaviour is still desirable.

diff --git a/configure.ac b/configure.ac
index 9de6a81..c858689 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1478,6 +1478,24 @@ doxygen/Makefile
 doxygen/doxygen.conf
 src/pulse/version.h
 po/Makefile.in
+src/daemon/Makefile
+src/modules/Makefile
+src/modules/alsa/Makefile
+src/modules/alsa/mixer/Makefile
+src/modules/alsa/mixer/paths/Makefile
+src/modules/alsa/mixer/profile-sets/Makefile
+src/modules/bluetooth/Makefile
+src/modules/gconf/Makefile
+src/modules/jack/Makefile
+src/modules/oss/Makefile
+src/modules/raop/Makefile
+src/modules/rtp/Makefile
+src/modules/x11/Makefile
+src/pulse/Makefile
+src/pulsecore/Makefile
+src/pulsecore/ffmpeg/Makefile
+src/tests/Makefile
+src/utils/Makefile
 ])
 
 AC_OUTPUT
diff --git a/src/Makefile.am b/src/Makefile.am
index fe99ee7..499a5ba 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -19,6 +19,7 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA.
 
+SUBDIRS = pulsecore pulse daemon modules utils tests
 
 ###################################
 #       Extra directories         #
diff --git a/src/daemon/Makefile b/src/daemon/Makefile
deleted file mode 120000
index c110232..0000000
--- a/src/daemon/Makefile
+++ /dev/null
@@ -1 +0,0 @@
-../pulse/Makefile
\ No newline at end of file
diff --git a/src/daemon/Makefile.am b/src/daemon/Makefile.am
new file mode 100644
index 0000000..d04a413
--- /dev/null
+++ b/src/daemon/Makefile.am
@@ -0,0 +1,20 @@
+# This file is part of PulseAudio.
+#
+# Copyright 2010 Colin Guthrie
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+# This Automake file is intentionally blank.
diff --git a/src/modules/Makefile b/src/modules/Makefile
deleted file mode 120000
index c110232..0000000
--- a/src/modules/Makefile
+++ /dev/null
@@ -1 +0,0 @@
-../pulse/Makefile
\ No newline at end of file
diff --git a/src/modules/Makefile.am b/src/modules/Makefile.am
new file mode 100644
index 0000000..e99451d
--- /dev/null
+++ b/src/modules/Makefile.am
@@ -0,0 +1,20 @@
+# This file is part of PulseAudio.
+#
+# Copyright 2010 Colin Guthrie
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+SUBDIRS = alsa bluetooth gconf jack oss raop rtp x11
diff --git a/src/modules/alsa/Makefile b/src/modules/alsa/Makefile
deleted file mode 120000
index efe5a33..0000000
--- a/src/modules/alsa/Makefile
+++ /dev/null
@@ -1 +0,0 @@
-../../pulse/Makefile
\ No newline at end of file
diff --git a/src/modules/alsa/Makefile.am b/src/modules/alsa/Makefile.am
new file mode 100644
index 0000000..3d8bb5a
--- /dev/null
+++ b/src/modules/alsa/Makefile.am
@@ -0,0 +1,20 @@
+# This file is part of PulseAudio.
+#
+# Copyright 2010 Colin Guthrie
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+SUBDIRS = mixer
diff --git a/src/modules/alsa/mixer/Makefile b/src/modules/alsa/mixer/Makefile
deleted file mode 120000
index b495519..0000000
--- a/src/modules/alsa/mixer/Makefile
+++ /dev/null
@@ -1 +0,0 @@
-../../../pulse/Makefile
\ No newline at end of file
diff --git a/src/modules/alsa/mixer/Makefile.am b/src/modules/alsa/mixer/Makefile.am
new file mode 100644
index 0000000..ee2c6ef
--- /dev/null
+++ b/src/modules/alsa/mixer/Makefile.am
@@ -0,0 +1,20 @@
+# This file is part of PulseAudio.
+#
+# Copyright 2010 Colin Guthrie
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+SUBDIRS = paths profile-sets
diff --git a/src/modules/alsa/mixer/paths/Makefile b/src/modules/alsa/mixer/paths/Makefile
deleted file mode 120000
index dc23aaa..0000000
--- a/src/modules/alsa/mixer/paths/Makefile
+++ /dev/null
@@ -1 +0,0 @@
-../../../../pulse/Makefile
\ No newline at end of file
diff --git a/src/modules/alsa/mixer/paths/Makefile.am b/src/modules/alsa/mixer/paths/Makefile.am
new file mode 100644
index 0000000..d04a413
--- /dev/null
+++ b/src/modules/alsa/mixer/paths/Makefile.am
@@ -0,0 +1,20 @@
+# This file is part of PulseAudio.
+#
+# Copyright 2010 Colin Guthrie
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+# This Automake file is intentionally blank.
diff --git a/src/modules/alsa/mixer/profile-sets/Makefile b/src/modules/alsa/mixer/profile-sets/Makefile
deleted file mode 120000
index dc23aaa..0000000
--- a/src/modules/alsa/mixer/profile-sets/Makefile
+++ /dev/null
@@ -1 +0,0 @@
-../../../../pulse/Makefile
\ No newline at end of file
diff --git a/src/modules/alsa/mixer/profile-sets/Makefile.am b/src/modules/alsa/mixer/profile-sets/Makefile.am
new file mode 100644
index 0000000..d04a413
--- /dev/null
+++ b/src/modules/alsa/mixer/profile-sets/Makefile.am
@@ -0,0 +1,20 @@
+# This file is part of PulseAudio.
+#
+# Copyright 2010 Colin Guthrie
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+# This Automake file is intentionally blank.
diff --git a/src/modules/bluetooth/Makefile b/src/modules/bluetooth/Makefile
deleted file mode 120000
index efe5a33..0000000
--- a/src/modules/bluetooth/Makefile
+++ /dev/null
@@ -1 +0,0 @@
-../../pulse/Makefile
\ No newline at end of file
diff --git a/src/modules/bluetooth/Makefile.am b/src/modules/bluetooth/Makefile.am
new file mode 100644
index 0000000..d04a413
--- /dev/null
+++ b/src/modules/bluetooth/Makefile.am
@@ -0,0 +1,20 @@
+# This file is part of PulseAudio.
+#
+# Copyright 2010 Colin Guthrie
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+# This Automake file is intentionally blank.
diff --git a/src/modules/gconf/Makefile b/src/modules/gconf/Makefile
deleted file mode 120000
index efe5a33..0000000
--- a/src/modules/gconf/Makefile
+++ /dev/null
@@ -1 +0,0 @@
-../../pulse/Makefile
\ No newline at end of file
diff --git a/src/modules/gconf/Makefile.am b/src/modules/gconf/Makefile.am
new file mode 100644
index 0000000..d04a413
--- /dev/null
+++ b/src/modules/gconf/Makefile.am
@@ -0,0 +1,20 @@
+# This file is part of PulseAudio.
+#
+# Copyright 2010 Colin Guthrie
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+# This Automake file is intentionally blank.
diff --git a/src/modules/jack/Makefile.am b/src/modules/jack/Makefile.am
new file mode 100644
index 0000000..d04a413
--- /dev/null
+++ b/src/modules/jack/Makefile.am
@@ -0,0 +1,20 @@
+# This file is part of PulseAudio.
+#
+# Copyright 2010 Colin Guthrie
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+# This Automake file is intentionally blank.
diff --git a/src/modules/oss/Makefile b/src/modules/oss/Makefile
deleted file mode 120000
index efe5a33..0000000
--- a/src/modules/oss/Makefile
+++ /dev/null
@@ -1 +0,0 @@
-../../pulse/Makefile
\ No newline at end of file
diff --git a/src/modules/oss/Makefile.am b/src/modules/oss/Makefile.am
new file mode 100644
index 0000000..d04a413
--- /dev/null
+++ b/src/modules/oss/Makefile.am
@@ -0,0 +1,20 @@
+# This file is part of PulseAudio.
+#
+# Copyright 2010 Colin Guthrie
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+# This Automake file is intentionally blank.
diff --git a/src/modules/raop/Makefile.am b/src/modules/raop/Makefile.am
new file mode 100644
index 0000000..d04a413
--- /dev/null
+++ b/src/modules/raop/Makefile.am
@@ -0,0 +1,20 @@
+# This file is part of PulseAudio.
+#
+# Copyright 2010 Colin Guthrie
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+# This Automake file is intentionally blank.
diff --git a/src/modules/rtp/Makefile b/src/modules/rtp/Makefile
deleted file mode 120000
index efe5a33..0000000
--- a/src/modules/rtp/Makefile
+++ /dev/null
@@ -1 +0,0 @@
-../../pulse/Makefile
\ No newline at end of file
diff --git a/src/modules/rtp/Makefile.am b/src/modules/rtp/Makefile.am
new file mode 100644
index 0000000..d04a413
--- /dev/null
+++ b/src/modules/rtp/Makefile.am
@@ -0,0 +1,20 @@
+# This file is part of PulseAudio.
+#
+# Copyright 2010 Colin Guthrie
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+# This Automake file is intentionally blank.
diff --git a/src/modules/x11/Makefile.am b/src/modules/x11/Makefile.am
new file mode 100644
index 0000000..d04a413
--- /dev/null
+++ b/src/modules/x11/Makefile.am
@@ -0,0 +1,20 @@
+# This file is part of PulseAudio.
+#
+# Copyright 2010 Colin Guthrie
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+# This Automake file is intentionally blank.
diff --git a/src/pulse/Makefile b/src/pulse/Makefile
deleted file mode 100644
index 7c8875f..0000000
--- a/src/pulse/Makefile
+++ /dev/null
@@ -1,13 +0,0 @@
-# This is a dirty trick just to ease compilation with emacs
-#
-# This file is not intended to be distributed or anything
-#
-# So: don't touch it, even better ignore it!
-
-all:
-	$(MAKE) -C ..
-
-clean:
-	$(MAKE) -C .. clean
-
-.PHONY: all clean
diff --git a/src/pulse/Makefile.am b/src/pulse/Makefile.am
new file mode 100644
index 0000000..d04a413
--- /dev/null
+++ b/src/pulse/Makefile.am
@@ -0,0 +1,20 @@
+# This file is part of PulseAudio.
+#
+# Copyright 2010 Colin Guthrie
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+# This Automake file is intentionally blank.
diff --git a/src/pulsecore/Makefile b/src/pulsecore/Makefile
deleted file mode 120000
index c110232..0000000
--- a/src/pulsecore/Makefile
+++ /dev/null
@@ -1 +0,0 @@
-../pulse/Makefile
\ No newline at end of file
diff --git a/src/pulsecore/Makefile.am b/src/pulsecore/Makefile.am
new file mode 100644
index 0000000..55c6845
--- /dev/null
+++ b/src/pulsecore/Makefile.am
@@ -0,0 +1,20 @@
+# This file is part of PulseAudio.
+#
+# Copyright 2010 Colin Guthrie
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+SUBDIRS = ffmpeg
diff --git a/src/pulsecore/ffmpeg/Makefile b/src/pulsecore/ffmpeg/Makefile
deleted file mode 100644
index 316beb7..0000000
--- a/src/pulsecore/ffmpeg/Makefile
+++ /dev/null
@@ -1,13 +0,0 @@
-# This is a dirty trick just to ease compilation with emacs
-#
-# This file is not intended to be distributed or anything
-#
-# So: don't touch it, even better ignore it!
-
-all:
-	$(MAKE) -C ../..
-
-clean:
-	$(MAKE) -C ../.. clean
-
-.PHONY: all clean
diff --git a/src/pulsecore/ffmpeg/Makefile.am b/src/pulsecore/ffmpeg/Makefile.am
new file mode 100644
index 0000000..d04a413
--- /dev/null
+++ b/src/pulsecore/ffmpeg/Makefile.am
@@ -0,0 +1,20 @@
+# This file is part of PulseAudio.
+#
+# Copyright 2010 Colin Guthrie
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+# This Automake file is intentionally blank.
diff --git a/src/tests/Makefile b/src/tests/Makefile
deleted file mode 120000
index c110232..0000000
--- a/src/tests/Makefile
+++ /dev/null
@@ -1 +0,0 @@
-../pulse/Makefile
\ No newline at end of file
diff --git a/src/tests/Makefile.am b/src/tests/Makefile.am
new file mode 100644
index 0000000..d04a413
--- /dev/null
+++ b/src/tests/Makefile.am
@@ -0,0 +1,20 @@
+# This file is part of PulseAudio.
+#
+# Copyright 2010 Colin Guthrie
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+# This Automake file is intentionally blank.
diff --git a/src/utils/Makefile b/src/utils/Makefile
deleted file mode 120000
index c110232..0000000
--- a/src/utils/Makefile
+++ /dev/null
@@ -1 +0,0 @@
-../pulse/Makefile
\ No newline at end of file
diff --git a/src/utils/Makefile.am b/src/utils/Makefile.am
new file mode 100644
index 0000000..d04a413
--- /dev/null
+++ b/src/utils/Makefile.am
@@ -0,0 +1,20 @@
+# This file is part of PulseAudio.
+#
+# Copyright 2010 Colin Guthrie
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+# This Automake file is intentionally blank.

commit 2f67d6b65154e8bb3f4463a9c4c551a6cdae2d46
Author: Colin Guthrie <cguthrie at mandriva.org>
Date:   Sat Dec 4 12:01:01 2010 +0000

    build-sys: Fix make distcheck failure due to udev rules fixed install path
    
    I don't know why this does not honour DESTDIR or similar during distcheck
    but this simple enough patch fixes it.

diff --git a/Makefile.am b/Makefile.am
index 5385bf3..b8e22ea 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -87,3 +87,5 @@ $(top_srcdir)/.version:
 
 DISTCLEANFILES = \
         po/.intltool-merge-cache
+
+DISTCHECK_CONFIGURE_FLAGS = --with-udev-rules-dir="$$dc_install_base/lib/udev/rules.d"

commit 36f7a408298efd1e3a47a4d62742b5134b80cee9
Author: Colin Guthrie <cguthrie at mandriva.org>
Date:   Sat Dec 4 13:47:43 2010 +0000

    build-sys: Include the .version file in the distribution tarball
    
    As per the comments in git-version-gen, the .version file that is
    typically generated automatically during build should be included
    in the tarball, so generate it in the dist-hook.
    
    This fixes a problem when running make distcheck which uses a read-only
    source folder and thus cannot generate the $top_srcdir/.version as
    part of it's build process (it uses a _build folder which is r/w)
    and thus cannot be built.

diff --git a/Makefile.am b/Makefile.am
index b8e22ea..a8a9eaa 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -77,6 +77,7 @@ dist-hook:
 		( git-changelog.perl || echo "git-changelog.perl failed." ) > ${distdir}/ChangeLog 2>&1 ; \
 	fi
 	echo $(VERSION) > $(distdir)/.tarball-version
+	echo $(VERSION) > $(distdir)/.version
 
 .PHONY: homepage distcleancheck doxygen
 
diff --git a/git-version-gen b/git-version-gen
index 1a3d13b..6181ad9 100755
--- a/git-version-gen
+++ b/git-version-gen
@@ -67,6 +67,7 @@ scriptversion=2008-04-08.07.01
 #	echo $(VERSION) > $@-t && mv $@-t $@
 # dist-hook:
 #	echo $(VERSION) > $(distdir)/.tarball-version
+#	echo $(VERSION) > $(distdir)/.version
 
 case $# in
     1) ;;

commit 76d82170db73ae97ab578b0fc28048c521aa80fe
Author: Arun Raghavan <arun.raghavan at collabora.co.uk>
Date:   Sun Dec 5 15:47:17 2010 +0530

    i18n: Update POTFILES.*
    
    Add new modules, and skip module-virtual-sink for i18n since it's really
    meant to be a template for writing other modules.

diff --git a/po/POTFILES.in b/po/POTFILES.in
index e661bfe..db7ae90 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -195,3 +195,5 @@ src/modules/bluetooth/module-bluetooth-device.c
 src/modules/reserve-wrap.c
 src/modules/module-rygel-media-server.c
 src/modules/alsa/alsa-mixer.c
+src/modules/echo-cancel/module-echo-cancel.c
+src/modules/module-equalizer-sink.c
diff --git a/po/POTFILES.skip b/po/POTFILES.skip
index 4622d2f..8afd0d6 100644
--- a/po/POTFILES.skip
+++ b/po/POTFILES.skip
@@ -1 +1,3 @@
 src/pulsecore/atomic.h
+src/modules/module-virtual-sink.c
+src/modules/module-virtual-source.c

commit de706d9cf74a4bc95b033afb55181559178a07f3
Author: Arun Raghavan <arun.raghavan at collabora.co.uk>
Date:   Sun Dec 5 16:08:32 2010 +0530

    build-sys: Fix a warning during distcheck
    
    This adds a dummy Makefile.am to the dbus module to eliminate missing
    directory warnings during distcheck.

diff --git a/configure.ac b/configure.ac
index c858689..5216c01 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1485,6 +1485,7 @@ src/modules/alsa/mixer/Makefile
 src/modules/alsa/mixer/paths/Makefile
 src/modules/alsa/mixer/profile-sets/Makefile
 src/modules/bluetooth/Makefile
+src/modules/dbus/Makefile
 src/modules/gconf/Makefile
 src/modules/jack/Makefile
 src/modules/oss/Makefile
diff --git a/src/modules/Makefile.am b/src/modules/Makefile.am
index e99451d..d8dc152 100644
--- a/src/modules/Makefile.am
+++ b/src/modules/Makefile.am
@@ -17,4 +17,4 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA.
 
-SUBDIRS = alsa bluetooth gconf jack oss raop rtp x11
+SUBDIRS = alsa bluetooth dbus gconf jack oss raop rtp x11
diff --git a/src/modules/dbus/Makefile.am b/src/modules/dbus/Makefile.am
new file mode 100644
index 0000000..d04a413
--- /dev/null
+++ b/src/modules/dbus/Makefile.am
@@ -0,0 +1,20 @@
+# This file is part of PulseAudio.
+#
+# Copyright 2010 Colin Guthrie
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+# This Automake file is intentionally blank.

commit 1e8b60e3a7c41c754e0eb0aac5807ec6e716e17c
Author: David Henningsson <david.henningsson at canonical.com>
Date:   Tue Nov 30 04:59:27 2010 +0100

    jack: Add module-jackdbus-detect

diff --git a/src/Makefile.am b/src/Makefile.am
index 499a5ba..15a4644 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -1168,6 +1168,12 @@ if HAVE_JACK
 modlibexec_LTLIBRARIES += \
 		module-jack-sink.la \
 		module-jack-source.la
+
+if HAVE_DBUS
+modlibexec_LTLIBRARIES += \
+		module-jackdbus-detect.la
+endif
+
 endif
 
 if HAVE_GCONF
@@ -1283,6 +1289,7 @@ SYMDEF_FILES = \
 		modules/module-detect-symdef.h \
 		modules/rtp/module-rtp-send-symdef.h \
 		modules/rtp/module-rtp-recv-symdef.h \
+		modules/jack/module-jackdbus-detect-symdef.h \
 		modules/jack/module-jack-sink-symdef.h \
 		modules/jack/module-jack-source-symdef.h \
 		modules/module-volume-restore-symdef.h \
@@ -1735,6 +1742,11 @@ module_rtp_recv_la_CFLAGS = $(AM_CFLAGS)
 
 # JACK
 
+module_jackdbus_detect_la_SOURCES = modules/jack/module-jackdbus-detect.c
+module_jackdbus_detect_la_LDFLAGS = $(MODULE_LDFLAGS)
+module_jackdbus_detect_la_LIBADD = $(AM_LIBADD) $(DBUS_LIBS) libpulsecore- at PA_MAJORMINOR@.la $(JACK_LIBS) libpulsecommon- at PA_MAJORMINOR@.la libpulse.la
+module_jackdbus_detect_la_CFLAGS = $(AM_CFLAGS) $(DBUS_CFLAGS) $(JACK_CFLAGS)
+
 module_jack_sink_la_SOURCES = modules/jack/module-jack-sink.c
 module_jack_sink_la_LDFLAGS = $(MODULE_LDFLAGS)
 module_jack_sink_la_LIBADD = $(AM_LIBADD) libpulsecore- at PA_MAJORMINOR@.la $(JACK_LIBS) libpulsecommon- at PA_MAJORMINOR@.la libpulse.la
diff --git a/src/modules/jack/module-jackdbus-detect.c b/src/modules/jack/module-jackdbus-detect.c
new file mode 100644
index 0000000..f635b23
--- /dev/null
+++ b/src/modules/jack/module-jackdbus-detect.c
@@ -0,0 +1,304 @@
+/***
+  This file is part of PulseAudio.
+
+  Written by David Henningsson <david.henningsson at canonical.com>
+  Copyright 2010 Canonical Ltd.
+
+  Some code taken from other parts of PulseAudio, these are
+  Copyright 2006-2009 Lennart Poettering
+
+  PulseAudio is free software; you can redistribute it and/or modify
+  it under the terms of the GNU Lesser General Public License as published
+  by the Free Software Foundation; either version 2.1 of the License,
+  or (at your option) any later version.
+
+  PulseAudio is distributed in the hope that it will be useful, but
+  WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  General Public License for more details.
+
+  You should have received a copy of the GNU Lesser General Public License
+  along with PulseAudio; if not, write to the Free Software
+  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+  USA.
+***/
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <pulsecore/log.h>
+#include <pulsecore/modargs.h>
+#include <pulsecore/core-util.h>
+#include <pulsecore/dbus-shared.h>
+
+#include "module-jackdbus-detect-symdef.h"
+
+PA_MODULE_AUTHOR("David Henningsson");
+PA_MODULE_DESCRIPTION("Adds JACK sink/source ports when JACK is started");
+PA_MODULE_LOAD_ONCE(TRUE);
+PA_MODULE_VERSION(PACKAGE_VERSION);
+PA_MODULE_USAGE("connect=<connect ports?>");
+
+#define JACK_SERVICE_NAME "org.jackaudio.service"
+#define JACK_INTERFACE_NAME "org.jackaudio.JackControl"
+#define JACK_INTERFACE_PATH "/org/jackaudio/Controller"
+
+#define SERVICE_FILTER				\
+	"type='signal',"			\
+	"sender='" DBUS_SERVICE_DBUS "',"	\
+	"interface='" DBUS_INTERFACE_DBUS "',"	\
+	"member='NameOwnerChanged',"		\
+	"arg0='" JACK_SERVICE_NAME "'"
+
+#define RUNNING_FILTER(_a)			\
+	"type='signal',"			\
+	"sender='" JACK_SERVICE_NAME "',"	\
+	"interface='" JACK_INTERFACE_NAME "',"	\
+	"member='" _a "'"
+
+static const char* const valid_modargs[] = {
+    "connect",
+    NULL
+};
+
+#define JACK_SS_SINK 0
+#define JACK_SS_SOURCE 1
+#define JACK_SS_COUNT 2
+
+static const char* const modnames[JACK_SS_COUNT] = {
+    "module-jack-sink",
+    "module-jack-source"
+};
+
+
+struct userdata {
+    pa_module *module;
+    pa_core *core;
+    pa_dbus_connection *connection;
+    pa_bool_t filter_added, match_added;
+    pa_bool_t is_service_started;
+    pa_bool_t autoconnect_ports;
+    /* Using index here protects us from module unloading without us knowing */
+    int jack_module_index[JACK_SS_COUNT];
+};
+
+
+static void ensure_ports_stopped(struct userdata* u)
+{
+    int i;
+    pa_assert(u);
+
+    for (i = 0; i < JACK_SS_COUNT; i++)
+        if (u->jack_module_index[i]) {
+            pa_module_unload_request_by_index(u->core, u->jack_module_index[i], TRUE);
+            u->jack_module_index[i] = 0;
+            pa_log_info("Stopped %s.", modnames[i]);
+        }
+}
+
+static void ensure_ports_started(struct userdata* u)
+{
+    int i;
+    pa_assert(u);
+
+    for (i = 0; i < JACK_SS_COUNT; i++)
+        if (!u->jack_module_index[i]) {
+            char* args;
+            pa_module* m;
+            args = pa_sprintf_malloc("connect=%s", pa_yes_no(u->autoconnect_ports));
+            m = pa_module_load(u->core, modnames[i], args);
+            pa_xfree(args);
+
+            if (m) {
+                pa_log_info("Successfully started %s.", modnames[i]);
+                u->jack_module_index[i] = m->index;
+            }
+            else
+                pa_log_info("Failed to start %s.", modnames[i]);
+        }
+}
+
+
+static pa_bool_t check_service_started(struct userdata* u)
+{
+    DBusError error;
+    DBusMessage *m = NULL, *reply = NULL;
+    pa_bool_t new_status = FALSE;
+    dbus_bool_t call_result;
+    pa_assert(u);
+
+    dbus_error_init(&error);
+
+    /* Just a safety check; it isn't such a big deal if the name disappears just after the call. */
+    if (!dbus_bus_name_has_owner(pa_dbus_connection_get(u->connection),
+            JACK_SERVICE_NAME, &error)) {
+        pa_log_debug("jackdbus isn't running.");
+        goto finish;
+    }
+
+    if (!(m = dbus_message_new_method_call(JACK_SERVICE_NAME, JACK_INTERFACE_PATH, JACK_INTERFACE_NAME, "IsStarted"))) {
+        pa_log("Failed to allocate IsStarted() method call.");
+        goto finish;
+    }
+
+    if (!(reply = dbus_connection_send_with_reply_and_block(pa_dbus_connection_get(u->connection), m, -1, &error))) {
+        pa_log("IsStarted() call failed: %s: %s", error.name, error.message);
+        goto finish;
+    }
+
+    if (!dbus_message_get_args(reply, &error, DBUS_TYPE_BOOLEAN, &call_result, DBUS_TYPE_INVALID)) {
+        pa_log("IsStarted() call return failed: %s: %s", error.name, error.message);
+        goto finish;
+    }
+
+    new_status = call_result;
+
+finish:
+    if (m)
+        dbus_message_unref(m);
+    if (reply)
+        dbus_message_unref(reply);
+
+    dbus_error_free(&error);
+    if (new_status)
+        ensure_ports_started(u);
+    else
+        ensure_ports_stopped(u);
+    u->is_service_started = new_status;
+    return new_status;
+}
+
+static DBusHandlerResult dbus_filter_handler(DBusConnection *c,	DBusMessage *s,	void *userdata)
+{
+    struct userdata *u = NULL;
+    DBusError error;
+
+    pa_assert(userdata);
+    u = ((pa_module*) userdata)->userdata;
+    pa_assert(u);
+
+    dbus_error_init(&error);
+
+    if (dbus_message_is_signal(s, DBUS_INTERFACE_DBUS, "NameOwnerChanged")) {
+        const char *name, *old, *new;
+        if (!dbus_message_get_args(
+			    s,
+			    &error,
+			    DBUS_TYPE_STRING, &name,
+			    DBUS_TYPE_STRING, &old,
+			    DBUS_TYPE_STRING, &new,
+			    DBUS_TYPE_INVALID))
+            goto finish;
+        if (strcmp(name, JACK_SERVICE_NAME))
+            goto finish;
+
+        ensure_ports_stopped(u);
+        check_service_started(u);
+    }
+
+    else if (dbus_message_is_signal(s, JACK_INTERFACE_NAME, "ServerStarted")) {
+        ensure_ports_stopped(u);
+        check_service_started(u);
+    }
+
+    else if (dbus_message_is_signal(s, JACK_INTERFACE_NAME, "ServerStopped")) {
+        ensure_ports_stopped(u);
+    }
+
+finish:
+    dbus_error_free(&error);
+    return DBUS_HANDLER_RESULT_NOT_YET_HANDLED;
+}
+
+int pa__init(pa_module *m)
+{
+    DBusError error;
+    pa_dbus_connection *connection = NULL;
+    struct userdata *u = NULL;
+    pa_modargs *ma;
+
+    pa_assert(m);
+
+    dbus_error_init(&error);
+
+    if (!(ma = pa_modargs_new(m->argument, valid_modargs))) {
+        pa_log("Failed to parse module arguments");
+        goto fail;
+    }
+
+    m->userdata = u = pa_xnew0(struct userdata, 1);
+    u->core = m->core;
+    u->module = m;
+    u->autoconnect_ports = TRUE;
+
+    if (pa_modargs_get_value_boolean(ma, "connect", &u->autoconnect_ports) < 0) {
+        pa_log("Failed to parse connect= argument.");
+        goto fail;
+    }
+
+    if (!(connection = pa_dbus_bus_get(m->core, DBUS_BUS_SESSION, &error)) || dbus_error_is_set(&error)) {
+
+        if (connection)
+            pa_dbus_connection_unref(connection);
+
+        pa_log_error("Unable to contact D-Bus session bus: %s: %s", error.name, error.message);
+        goto fail;
+    }
+    u->connection = connection;
+
+    if (!dbus_connection_add_filter(pa_dbus_connection_get(connection), dbus_filter_handler, m, NULL)) {
+        pa_log_error("Unable to add D-Bus filter");
+        goto fail;
+    }
+    u->filter_added = 1;
+
+    if (pa_dbus_add_matches(
+                pa_dbus_connection_get(connection), &error, SERVICE_FILTER,
+                RUNNING_FILTER("ServerStarted"), RUNNING_FILTER("ServerStopped"), NULL) < 0) {
+        pa_log_error("Unable to subscribe to signals: %s: %s", error.name, error.message);
+        goto fail;
+    }
+    u->match_added = 1;
+
+    check_service_started(u);
+
+    return 0;
+
+fail:
+    if (ma)
+        pa_modargs_free(ma);
+
+    dbus_error_free(&error);
+    pa__done(m);
+
+    return -1;
+}
+
+void pa__done(pa_module *m)
+{
+    struct userdata *u;
+
+    pa_assert(m);
+
+    if (!(u = m->userdata))
+        return;
+
+    ensure_ports_stopped(u);
+
+    if (u->match_added) {
+        pa_dbus_remove_matches(
+                pa_dbus_connection_get(u->connection), SERVICE_FILTER,
+                RUNNING_FILTER("ServerStarted"), RUNNING_FILTER("ServerStopped"), NULL);
+    }
+
+    if (u->filter_added) {
+        dbus_connection_remove_filter(pa_dbus_connection_get(u->connection), dbus_filter_handler, m);
+    }
+
+    if (u->connection) {
+        pa_dbus_connection_unref(u->connection);
+    }
+
+    pa_xfree(u);
+}

-- 
hooks/post-receive
PulseAudio Sound Server



More information about the pulseaudio-commits mailing list