daemon/esdcompat.in \
daemon/start-pulseaudio-x11.in \
daemon/start-pulseaudio-kde.in \
- utils/padsp \
+ utils/padsp.in \
utils/qpaeq \
modules/module-defs.h.m4 \
daemon/pulseaudio.desktop.in \
volume-test \
mix-test \
proplist-test \
- lock-autospawn-test \
- prioq-test
+ lock-autospawn-test
TESTS_norun = \
mcalign-test \
lock_autospawn_test_CFLAGS = $(AM_CFLAGS)
lock_autospawn_test_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS)
-prioq_test_SOURCES = tests/prioq-test.c
-prioq_test_LDADD = $(AM_LDADD) libpulsecore-@PA_MAJORMINOR@.la libpulse.la libpulsecommon-@PA_MAJORMINOR@.la
-prioq_test_CFLAGS = $(AM_CFLAGS)
-prioq_test_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS)
-
sigbus_test_SOURCES = tests/sigbus-test.c
sigbus_test_LDADD = $(AM_LDADD) libpulsecore-@PA_MAJORMINOR@.la libpulse.la libpulsecommon-@PA_MAJORMINOR@.la
sigbus_test_CFLAGS = $(AM_CFLAGS)
# Common library #
###################################
-lib_LTLIBRARIES = \
+pkglib_LTLIBRARIES = \
libpulsecommon-@PA_MAJORMINOR@.la
libpulsecommon_@PA_MAJORMINOR@_la_SOURCES = \
pulsecore/pid.c pulsecore/pid.h \
pulsecore/pipe.c pulsecore/pipe.h \
pulsecore/poll.c pulsecore/poll.h \
- pulsecore/prioq.c pulsecore/prioq.h \
pulsecore/memtrap.c pulsecore/memtrap.h \
pulsecore/aupdate.c pulsecore/aupdate.h \
pulsecore/proplist-util.c pulsecore/proplist-util.h \
pulse/ext-device-manager.h \
pulse/ext-device-restore.h \
pulse/ext-stream-restore.h \
+ pulse/ext-node-manager.h \
pulse/format.h \
pulse/gccmacro.h \
pulse/introspect.h \
pulse/volume.h \
pulse/xmalloc.h
-lib_LTLIBRARIES += \
+lib_LTLIBRARIES = \
libpulse.la \
libpulse-simple.la
+
+if HAVE_SPOLICY
+pulseinclude_HEADERS += \
+ pulse/ext-policy.h
+endif
+
if HAVE_GLIB20
pulseinclude_HEADERS += \
pulse/glib-mainloop.h
pulse/ext-device-manager.c pulse/ext-device-manager.h \
pulse/ext-device-restore.c pulse/ext-device-restore.h \
pulse/ext-stream-restore.c pulse/ext-stream-restore.h \
+ pulse/ext-node-manager.c pulse/ext-node-manager.h \
pulse/format.c pulse/format.h \
pulse/gccmacro.h \
pulse/internal.h \
pulse/volume.c pulse/volume.h \
pulse/xmalloc.c pulse/xmalloc.h
+if HAVE_SPOLICY
+libpulse_la_SOURCES += \
+ pulse/ext-policy.c pulse/ext-policy.h
+endif
+
libpulse_la_CFLAGS = $(AM_CFLAGS) $(LIBJSON_CFLAGS)
libpulse_la_LIBADD = $(AM_LIBADD) $(WINSOCK_LIBS) $(LTLIBICONV) $(LIBJSON_LIBS) libpulsecommon-@PA_MAJORMINOR@.la
libpulse_la_LDFLAGS = $(AM_LDFLAGS) $(VERSIONING_LDFLAGS) -version-info $(LIBPULSE_VERSION_INFO)
endif
libpulse_simple_la_SOURCES = pulse/simple.c pulse/simple.h
-libpulse_simple_la_CFLAGS = $(AM_CFLAGS)
+libpulse_simple_la_CFLAGS = $(AM_CFLAGS) $(DBUS_CFLAGS)
libpulse_simple_la_LIBADD = $(AM_LIBADD) libpulse.la libpulsecommon-@PA_MAJORMINOR@.la
libpulse_simple_la_LDFLAGS = $(AM_LDFLAGS) $(VERSIONING_LDFLAGS) -version-info $(LIBPULSE_SIMPLE_VERSION_INFO)
###################################
if HAVE_OSS_WRAPPER
-lib_LTLIBRARIES += libpulsedsp.la
-bin_SCRIPTS += utils/padsp
+padsplibdir = $(pkglibdir)
+padsplib_LTLIBRARIES = libpulsedsp.la
+bin_SCRIPTS += padsp
+
+edit = @SED@ \
+ -e "s|@pkglibdir[@]|$(pkglibdir)|g"
+
+padsp: utils/padsp.in
+ $(edit) $< > $@
+
+CLEANFILES += padsp
+
endif
libpulsedsp_la_SOURCES = utils/padsp.c
module-console-kit.la
endif
+if HAVE_DBUS
+if HAVE_SPOLICY
+modlibexec_LTLIBRARIES += \
+ module-policy.la
+endif
+endif
+
modlibexec_LTLIBRARIES += \
module-cli.la \
module-cli-protocol-tcp.la \
module-loopback.la \
module-virtual-sink.la \
module-virtual-source.la \
+ module-virtual-surround-sink.la \
module-switch-on-connect.la \
+ module-switch-on-port-available.la \
module-filter-apply.la \
module-filter-heuristics.la
dist_alsaprofilesets_DATA = \
modules/alsa/mixer/profile-sets/default.conf \
+ modules/alsa/mixer/profile-sets/extra-hdmi.conf \
+ modules/alsa/mixer/profile-sets/force-speaker.conf \
+ modules/alsa/mixer/profile-sets/force-speaker-and-int-mic.conf \
modules/alsa/mixer/profile-sets/maudio-fasttrack-pro.conf \
modules/alsa/mixer/profile-sets/native-instruments-audio4dj.conf \
modules/alsa/mixer/profile-sets/native-instruments-audio8dj.conf \
modules/alsa/mixer/paths/analog-input-dock-mic.conf \
modules/alsa/mixer/paths/analog-input-front-mic.conf \
modules/alsa/mixer/paths/analog-input-internal-mic.conf \
+ modules/alsa/mixer/paths/analog-input-internal-mic-always.conf \
modules/alsa/mixer/paths/analog-input-rear-mic.conf \
modules/alsa/mixer/paths/analog-input-mic.conf.common \
modules/alsa/mixer/paths/analog-input-mic-line.conf \
modules/alsa/mixer/paths/analog-input-video.conf \
modules/alsa/mixer/paths/analog-output.conf \
modules/alsa/mixer/paths/analog-output-speaker.conf \
+ modules/alsa/mixer/paths/analog-output-speaker-always.conf \
modules/alsa/mixer/paths/analog-output.conf.common \
modules/alsa/mixer/paths/analog-output-desktop-speaker.conf \
modules/alsa/mixer/paths/analog-output-headphones.conf \
modules/alsa/mixer/paths/analog-output-headphones-2.conf \
modules/alsa/mixer/paths/analog-output-lfe-on-mono.conf \
modules/alsa/mixer/paths/analog-output-mono.conf \
- modules/alsa/mixer/paths/iec958-stereo-output.conf
+ modules/alsa/mixer/paths/iec958-stereo-output.conf \
+ modules/alsa/mixer/paths/hdmi-output-0.conf \
+ modules/alsa/mixer/paths/hdmi-output-1.conf \
+ modules/alsa/mixer/paths/hdmi-output-2.conf \
+ modules/alsa/mixer/paths/hdmi-output-3.conf
endif
module-lirc.la
endif
+if HAVE_XEN
+modlibexec_LTLIBRARIES += \
+ module-xenpv-sink.la
+endif
+
+
if HAVE_EVDEV
modlibexec_LTLIBRARIES += \
module-mmkbd-evdev.la
module-udev-detect.la
endif
+if HAVE_SYSTEMD
+modlibexec_LTLIBRARIES += \
+ module-systemd-login.la
+endif
+
if HAVE_DBUS
modlibexec_LTLIBRARIES += \
module-rygel-media-server.la \
module-zeroconf-discover-symdef.h \
module-bonjour-publish-symdef.h \
module-lirc-symdef.h \
+ module-xenpv-sink-symdef.h \
module-mmkbd-evdev-symdef.h \
module-http-protocol-tcp-symdef.h \
module-http-protocol-unix-symdef.h \
module-echo-cancel-symdef.h \
module-hal-detect-symdef.h \
module-udev-detect-symdef.h \
+ module-systemd-login-symdef.h \
module-bluetooth-proximity-symdef.h \
module-bluetooth-discover-symdef.h \
module-bluetooth-device-symdef.h \
module-loopback-symdef.h \
module-virtual-sink-symdef.h \
module-virtual-source-symdef.h \
+ module-virtual-surround-sink-symdef.h \
module-switch-on-connect-symdef.h \
+ module-switch-on-port-available-symdef.h \
module-filter-apply-symdef.h \
module-filter-heuristics-symdef.h
module-esound-sink-symdef.h
endif
+if HAVE_SPOLICY
+SYMDEF_FILES += \
+ module-policy-symdef.h
+endif
+
EXTRA_DIST += $(SYMDEF_FILES)
BUILT_SOURCES += $(SYMDEF_FILES) builddirs
module_switch_on_connect_la_LDFLAGS = $(MODULE_LDFLAGS)
module_switch_on_connect_la_LIBADD = $(MODULE_LIBADD)
+module_switch_on_port_available_la_SOURCES = modules/module-switch-on-port-available.c
+module_switch_on_port_available_la_LDFLAGS = $(MODULE_LDFLAGS)
+module_switch_on_port_available_la_LIBADD = $(MODULE_LIBADD)
+
module_filter_apply_la_SOURCES = modules/module-filter-apply.c
module_filter_apply_la_LDFLAGS = $(MODULE_LDFLAGS)
module_filter_apply_la_LIBADD = $(MODULE_LIBADD)
module_virtual_source_la_LDFLAGS = $(MODULE_LDFLAGS)
module_virtual_source_la_LIBADD = $(MODULE_LIBADD)
+module_virtual_surround_sink_la_SOURCES = modules/module-virtual-surround-sink.c
+module_virtual_surround_sink_la_CFLAGS = $(AM_CFLAGS) $(SERVER_CFLAGS)
+module_virtual_surround_sink_la_LDFLAGS = $(MODULE_LDFLAGS)
+module_virtual_surround_sink_la_LIBADD = $(MODULE_LIBADD)
+
# X11
module_x11_bell_la_SOURCES = modules/x11/module-x11-bell.c
module_lirc_la_LIBADD = $(MODULE_LIBADD) $(LIRC_LIBS)
module_lirc_la_CFLAGS = $(AM_CFLAGS) $(LIRC_CFLAGS)
+
+# Xen PV driver
+
+module_xenpv_sink_la_SOURCES = modules/xen/module-xenpv-sink.c modules/xen/gntalloc.h modules/xen/gntdev.h
+module_xenpv_sink_la_LDFLAGS = $(MODULE_LDFLAGS)
+module_xenpv_sink_la_LIBADD = $(MODULE_LIBADD) $(XEN_LIBS)
+module_xenpv_sink_la_CFLAGS = $(AM_CFLAGS) $(XEN_CFLAGS) -I$(top_srcdir)/src/modules/xen
+
+
# Linux evdev
module_mmkbd_evdev_la_SOURCES = modules/module-mmkbd-evdev.c
module_echo_cancel_la_SOURCES += modules/echo-cancel/speex.c
endif
if HAVE_WEBRTC
-module_echo_cancel_la_SOURCES += modules/echo-cancel/webrtc.cc
+# The webrtc code is split off into a helper library to avoid having automake
+# link module-echo-cancel with C++ (which it does if there are any C++ deps,
+# even conditional ones).
+modlibexec_LTLIBRARIES += libwebrtc-util.la
+
+libwebrtc_util_la_SOURCES = modules/echo-cancel/webrtc.cc
+libwebrtc_util_la_CXXFLAGS = $(AM_CXXFLAGS) $(SERVER_CFLAGS) $(WEBRTC_CFLAGS) -DHAVE_WEBRTC=1
+libwebrtc_util_la_LIBADD = $(WEBRTC_LIBS)
+libwebrtc_util_la_LDFLAGS = -avoid-version
+
module_echo_cancel_la_CFLAGS += -DHAVE_WEBRTC=1
-module_echo_cancel_la_CXXFLAGS = $(AM_CXXFLAGS) $(SERVER_CFLAGS) $(WEBRTC_CFLAGS) -DHAVE_WEBRTC=1
-module_echo_cancel_la_LIBADD += $(WEBRTC_LIBS)
+module_echo_cancel_la_LIBADD += libwebrtc-util.la
endif
# RTP modules
module_console_kit_la_SOURCES = modules/module-console-kit.c
module_console_kit_la_LDFLAGS = $(MODULE_LDFLAGS)
-module_console_kit_la_LIBADD = $(MODULE_LIBADD) $(DBUS_LIBS)
-module_console_kit_la_CFLAGS = $(AM_CFLAGS) $(DBUS_CFLAGS)
+module_console_kit_la_LIBADD = $(MODULE_LIBADD) $(DBUS_LIBS) $(SYSTEMD_LIBS)
+module_console_kit_la_CFLAGS = $(AM_CFLAGS) $(DBUS_CFLAGS) $(SYSTEMD_CFLAGS)
+
+module_systemd_login_la_SOURCES = modules/module-systemd-login.c
+module_systemd_login_la_LDFLAGS = $(MODULE_LDFLAGS)
+module_systemd_login_la_LIBADD = $(MODULE_LIBADD) $(SYSTEMD_LIBS)
+module_systemd_login_la_CFLAGS = $(AM_CFLAGS) $(SYSTEMD_CFLAGS)
# GConf support
module_gconf_la_SOURCES = modules/gconf/module-gconf.c
module_rygel_media_server_la_LIBADD = $(MODULE_LIBADD) $(DBUS_LIBS) libprotocol-http.la
module_rygel_media_server_la_CFLAGS = $(AM_CFLAGS) $(DBUS_CFLAGS)
+if HAVE_SPOLICY
+module_policy_la_SOURCES = modules/module-policy.c
+module_policy_la_LDFLAGS = $(MODULE_LDFLAGS)
+module_policy_la_LIBADD = $(AM_LIBADD) $(DBUS_LIBS) $(VCONF_LIBS) libprotocol-native.la libpulsecore-@PA_MAJORMINOR@.la libpulsecommon-@PA_MAJORMINOR@.la libpulse.la
+module_policy_la_CFLAGS = $(AM_CFLAGS) $(DBUS_CFLAGS) $(VCONF_CFLAGS)
+endif
+
###################################
# Some minor stuff #
###################################
update-all: update-ffmpeg update-sbc update-map-file
-.PHONY: utils/padsp massif update-all update-ffmpeg update-sbc update-map-file
+# Force installation order of libraries. libtool relinks on install time, in
+# which case libpulsecommon has to be installed before others, but the padsp
+# preload library has to be done after the normal libraries (e.g. libpulse)
+# ...
+# Unfortunately automake behaviour means that rules without commands also
+# override build-in rules, so it's not trivial to add dependencies.
+# See http://debbugs.gnu.org/cgi/bugreport.cgi?bug=7328 for the workaround
+# ...
+# Isn't libtool/autotools fun!
+
+installlibLTLIBRARIES = install-libLTLIBRARIES
+$(installlibLTLIBRARIES): install-pkglibLTLIBRARIES
+
+installmodlibexecLTLIBRARIES = install-modlibexecLTLIBRARIES
+$(installmodlibexecLTLIBRARIES): install-pkglibLTLIBRARIES
+
+installpadsplibLTLIBRARIES = install-padsplibLTLIBRARIES
+$(installpadsplibLTLIBRARIES): install-libLTLIBRARIES
+
+.PHONY: massif update-all update-ffmpeg update-sbc update-map-file