platform/upstream/pulseaudio.git
5 years agoMerge branch 'allow-to-disable-null-sink-rewinds' of https://gitlab.freedesktop.org...
Wellington Wallace [Tue, 7 May 2019 14:06:59 +0000 (11:06 -0300)]
Merge branch 'allow-to-disable-null-sink-rewinds' of https://gitlab.freedesktop.org/wwmm/pulseaudio into allow-to-disable-null-sink-rewinds

5 years agonull-sink: add an option that allows rewinds to be disabled
Wellington Wallace [Sat, 4 May 2019 16:21:21 +0000 (13:21 -0300)]
null-sink: add an option that allows rewinds to be disabled

5 years agonull-sink: add an option that allows rewinds to be disabled
Wellington Wallace [Sat, 4 May 2019 16:21:21 +0000 (13:21 -0300)]
null-sink: add an option that allows rewinds to be disabled

5 years agoalsa: Fix inclusion of use-case.h
Takashi Iwai [Sun, 21 Apr 2019 09:59:30 +0000 (11:59 +0200)]
alsa: Fix inclusion of use-case.h

The recent change in ALSA upstream stripped -I$include/alsa path from
pkgconfig.  We already fixed for this change in some places but still
the code for UCM was overlooked, and this resulted in the unresolved
symbols in alsa card module. Fix them as well.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
5 years agobuild-sys: Update meson dependency to 0.50.0
Arun Raghavan [Wed, 17 Apr 2019 10:28:45 +0000 (15:58 +0530)]
build-sys: Update meson dependency to 0.50.0

This is needed for currently used features (disabler and install in
configure_file).

5 years agobuild-sys: Fix the Meson build
Tanu Kaskinen [Fri, 12 Apr 2019 13:05:51 +0000 (16:05 +0300)]
build-sys: Fix the Meson build

The recent bluetooth patches didn't update the Meson build system.

5 years agobluetooth: Set correct endianity of audio samples for SBC codec
Pali Rohár [Sat, 6 Apr 2019 09:16:01 +0000 (11:16 +0200)]
bluetooth: Set correct endianity of audio samples for SBC codec

Pulseaudio SBC codec defines that audio samples are in PA_SAMPLE_S16LE
format which is little endian. But libsbc library expects audio samples by
default in host endianity which is big endian on big endian system. So SBC
support on big endian system is broken. To fix this problem tell libsbc
library that audio samples are in little endian to match PA_SIMPLE_S16LE
sample format.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=91359

5 years agobluetooth: Clean up SBC bitpool calculation
Pali Rohár [Sat, 6 Apr 2019 09:16:00 +0000 (11:16 +0200)]
bluetooth: Clean up SBC bitpool calculation

Remove dead code and replace numeric bitpool values by macro definitions.

Maximal bitpool value in fill_capabilities() was reduced from 64 to 53
(SBC_BITPOOL_HQ_JOINT_STEREO_44100) because default_bitpool() already set
maximal value to 53.

This patch does not change SBC behavior as maximal bitpool was already
limited to 53. So it is just clean up.

5 years agobluetooth: Add missing validations for SBC codec parameters
Pali Rohár [Sat, 6 Apr 2019 09:15:59 +0000 (11:15 +0200)]
bluetooth: Add missing validations for SBC codec parameters

5 years agobluetooth: Modular API for A2DP codecs
Pali Rohár [Sat, 6 Apr 2019 09:15:58 +0000 (11:15 +0200)]
bluetooth: Modular API for A2DP codecs

This patch introduce new modular API for bluetooth A2DP codecs. Its
benefits are:

* bluez5-util and module-bluez5-device does not contain any codec specific
  code, they are codec independent.

* For adding new A2DP codec it is needed just to adjust one table in
  a2dp-codec-util.c file. All codec specific functions are in separate
  codec file.

* Support for backchannel (microphone voice). Some A2DP codecs (like
  FastStream or aptX Low Latency) are bi-directional and can be used for
  both music playback and audio call.

* Support for more configurations per codec. This allows to implement low
  quality mode of some codec together with high quality.

Current SBC codec implementation was moved from bluez5-util and
module-bluez5-device to its own file and converted to this new A2DP API.

5 years agobluetooth: Update a2dp-codecs.h from upstream bluez project
Pali Rohár [Sat, 6 Apr 2019 09:15:57 +0000 (11:15 +0200)]
bluetooth: Update a2dp-codecs.h from upstream bluez project

5 years agobluetooth: policy: Remove BlueZ 4 related code
Pali Rohár [Sat, 6 Apr 2019 09:15:56 +0000 (11:15 +0200)]
bluetooth: policy: Remove BlueZ 4 related code

5 years agol10n: Update lt.po
Moo [Mon, 8 Apr 2019 20:37:14 +0000 (20:37 +0000)]
l10n: Update lt.po

5 years agomeson: when avahi is disabled, do not build it's code
David Heidelberg [Sat, 23 Mar 2019 19:21:17 +0000 (20:21 +0100)]
meson: when avahi is disabled, do not build it's code

Signed-off-by: David Heidelberg <david@ixit.cz>
5 years agomeson: fix build with simple
David Heidelberg [Sat, 23 Mar 2019 16:12:52 +0000 (16:12 +0000)]
meson: fix build with simple

Signed-off-by: David Heidelberg <david@ixit.cz>
5 years agothread-mainloop: Add API for running a callback unlocked
Arun Raghavan [Tue, 12 Mar 2019 06:38:08 +0000 (12:08 +0530)]
thread-mainloop: Add API for running a callback unlocked

This adds API to allow clients to schedule a callback in the mainloop
thread without the mainloop lock being held. This is meant for a case
where the client might be dealing with locking its own objects in
addition to the mainloop thread itself. In this case, it might need ton
control the locking order of the two, to match the order in other
threads, as it might not always be able to allow for its objects to be
locked after the mainloop thread lock.

5 years agonull-source: fix multiple bugs
Georg Chini [Tue, 26 Mar 2019 09:36:19 +0000 (10:36 +0100)]
null-source: fix multiple bugs

The current null-source implementation has several bugs:

1) The latency reported is the negative of the correct latency.
2) The memchunk passed to pa_source_post() is not initialized
with silence.
3) In PA_SOURCE_MESSAGE_SET_STATE the timestamp is always set
when the source transitions to RUNNING state. This should only
happen when the source transitions from SUSPENDED to RUNNING
but also if it changes from SUSPENDED to IDLE.
4) The timing of the thread function is incorrect. It always
uses u->latency_time, regardless of the specified source
latency.
5) The latency_time argument seems pointless because the source
is defined with dynamic latency.

This patch fixes the issues by
1) inverting the sign of the reported latency,
2) initializing the memchunk with silence,
3) changing the logic in PA_SOURCE_MESSAGE_SET_STATE so that
the timestamp is set when needed,
4) using u->block_usec instead of u->latency_time for setting
the rtpoll timer and checking if the timer has elapsed,
5) removing the latency_time option.

5 years agoremap: support S32NE work format
Sascha Silbe [Tue, 26 Mar 2019 09:35:55 +0000 (10:35 +0100)]
remap: support S32NE work format

So far PulseAudio only supported two different work formats: S16NE if
it's sufficient to represent the input and output formats without loss
of precision and FLOAT32NE in all other cases. For systems that use
S32NE exclusively, this results in unnecessary conversions from S32NE to
FLOAT32NE and back again.

Add S32NE remap operations and make use of them (for the COPY and
TRIVIAL resamplers) if both input and output format are S32NE. This
avoids the back and forth conversions between S32NE and FLOAT32NE,
significantly improving performance for those cases.

5 years agotests: test NEON 2-channel->4-channel rearrange
Sascha Silbe [Fri, 8 Mar 2019 10:42:30 +0000 (11:42 +0100)]
tests: test NEON 2-channel->4-channel rearrange

We have optimised 2-channel->4-channel rearrange remap functions. Test
them.

5 years agotests: fix possible segfault in cpu-remap-test
Sascha Silbe [Fri, 8 Mar 2019 09:32:19 +0000 (10:32 +0100)]
tests: fix possible segfault in cpu-remap-test

pa_init_remap_func() takes care to initialise pa_remap_t.do_remap to
NULL before calling init_remap_func (the CPU-specific remap init
function) and invokes init_remap_c if init_remap_func did not set
pa_remap_t.do_remap to non-NULL. remap_init_test_channels() calls
init_remap_func() directly so it must make sure pa_remap_t.do_remap is
set to NULL. Otherwise we'll end up with a random value in
pa_remap_t.do_remap if there is no CPU-optimised remap function for the
current operation.

5 years agoalsa: Use correct header path
Olaf Hering [Wed, 27 Mar 2019 08:35:05 +0000 (09:35 +0100)]
alsa: Use correct header path

Consumers are expected to use <alsa/asoundlib.h> instead of
<asoundlib.h>.

This is in preparation of an change to pkgconfig(alsa) to
not pollute CFLAGS with -I/usr/include/alsa anymore.

Signed-off-by: Olaf Hering <olaf@aepfle.de>
5 years agoi18n: Update Russian translation
Alexander Potashev [Sat, 9 Mar 2019 20:34:59 +0000 (23:34 +0300)]
i18n: Update Russian translation

Translated in sync with the guidelines at
http://l10n.lrn.ru/wiki/Pulseaudio

5 years agostream-interaction: Remove useless condition
Sangchul Lee [Tue, 26 Mar 2019 14:14:19 +0000 (23:14 +0900)]
stream-interaction: Remove useless condition

Signed-off-by: Sangchul Lee
5 years agorole-ducking, role-cork: Add use_source_trigger argument
Sangchul Lee [Mon, 18 Mar 2019 05:46:13 +0000 (14:46 +0900)]
role-ducking, role-cork: Add use_source_trigger argument

This is added to keep backward compatibility. The default value of
this new argument is false. Therefore, triggering by source-output
will be activated only if it is set to true explicitly.

Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agostream-interaction: Use PA_IDXSET_FOREACH macro to iterate idxset
Sangchul Lee [Mon, 18 Mar 2019 05:45:14 +0000 (14:45 +0900)]
stream-interaction: Use PA_IDXSET_FOREACH macro to iterate idxset

Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agostream-interaction: Support for triggering ducking/cork by source-output
Sangchul Lee [Mon, 11 Mar 2019 03:00:11 +0000 (12:00 +0900)]
stream-interaction: Support for triggering ducking/cork by source-output

Previously, media.role property of only sink-input is used to
determine to trigger and apply ducking or cork to sink-inputs.

On the other hand, some use cases require that source-output
also need to trigger the effect to sink-inputs. Therefore this
patch adds logic to retrieve source-ouputs to find trigger role
by checking media.role property and apply ducking/cork to sink-
inputs that meet conditions.

Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agoi18n: Update Danish translation
scootergrisen [Mon, 25 Mar 2019 16:44:05 +0000 (16:44 +0000)]
i18n: Update Danish translation

5 years agoi18n: Add danish translation
scootergrisen [Mon, 25 Mar 2019 12:47:34 +0000 (13:47 +0100)]
i18n: Add danish translation

5 years agoladspa-sink: Suspend virtual sink when master is suspended
Georg Chini [Tue, 12 Feb 2019 19:38:09 +0000 (20:38 +0100)]
ladspa-sink: Suspend virtual sink when master is suspended

Currently, the ladspa-sink is not suspended when the master sink is suspended.

With this patch, the ladspa-sink will be suspended with suspend cause
PA_SUSPEND_UNAVAILABLE when the master sink is suspended for other reasons
than PA_SUSPEND_IDLE. This fixes issue #15.

5 years agosink, source: Call sink input suspend callback also on suspend cause change
Georg Chini [Tue, 12 Feb 2019 19:21:01 +0000 (20:21 +0100)]
sink, source: Call sink input suspend callback also on suspend cause change

Currently, virtual sinks and sources are not suspended when the master sink
or source is suspended. To implement this, the slave must be able to track
the suspend cause of the master.

With this patch, the sink input suspend callback will not only be called
when the sink or source is changing state, but also when the suspend cause
changes. Similar to the set_state_in_*_thread_cb() functions, the suspend
callback receives a state and a suspend cause as additional arguments.
Because the new state and suspend cause of the sink or source have already
been set, the old values are passed to the callback.

5 years agoalsa: Improve resume logic after alsa suspend
Georg Chini [Sat, 9 Mar 2019 19:19:34 +0000 (20:19 +0100)]
alsa: Improve resume logic after alsa suspend

Currently, when a system is waking up from suspend, the resume process of the
ALSA sink and source is unstable. Sometimes the device needs to be restarted
multiple times and when the system was suspended between snd_pcm_mmap_begin()
and snd_pcm_mmap_commit(), pulseaudio crashes on resume.
Additionally, variables are not reset after the resume, so that sink/source
report wrong latencies.
This patch fixes the issues by closing and re-opening the PCM if recovery
from an error condition is not possible. Additionally, the variables are
reset, so that latencies are reported correctly.

5 years agoloopback: Add option fast_adjust_threshold_msec
Georg Chini [Fri, 1 Mar 2019 19:00:52 +0000 (20:00 +0100)]
loopback: Add option fast_adjust_threshold_msec

After a suspend/resume cycle of a system, it may be possible that module-loopback
accumulates several seconds of audio in the memblockq before the alsa sink becomes
active again. Also it may be possible for other reasons that the actual loopback
latency is too different from the target latency to be adjusted in a reasonable
time by the normal rate controller.
This patch adds the option fast_adjust_threshold_msec to module-loopback. If set,
the latency will be forcefully adjusted to the target latency by dropping or
inserting samples if the actual latency differs more than fast_adjust_threshold_msec
from the target latency.
Also the calculation of the real adjust time would fail when the system was
suspended because that case was not considered. Now the real adjust time
calculation is skipped if the time passed between two calls of adjust_rates()
appears significantly too long.

5 years agoRemove bad characters from Malayalam translation
Piotr Drąg [Sun, 10 Mar 2019 20:03:20 +0000 (21:03 +0100)]
Remove bad characters from Malayalam translation

5 years agoi18n: update Italian translation
Milo Casagrande [Tue, 12 Mar 2019 13:46:43 +0000 (14:46 +0100)]
i18n: update Italian translation

Signed-off-by: Milo Casagrande <milo@milo.name>
5 years agocore-util: Use size_t for out parameter of pa_split_*in_place()
Sangchul Lee [Mon, 18 Mar 2019 07:47:55 +0000 (16:47 +0900)]
core-util: Use size_t for out parameter of pa_split_*in_place()

pa_split_in_place() and pa_split_spaces_in_place() are modifed
to use size_t type instead of integer type.

alsa-ucm.c is revised according to this change.

Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
5 years agobuild-sys: Lower the minimum gettext version
Tanu Kaskinen [Thu, 14 Mar 2019 19:10:50 +0000 (21:10 +0200)]
build-sys: Lower the minimum gettext version

The old minimum version was set in commit 57e3ccaf51 based on what the
commit author happened to have installed at the time. Russell Treleaven
now confirmed that Debian 8's gettext version, 0.19.3, works fine too,
or at least PulseAudio builds without errors. There might be room to
lower the required version even further, but that requires someone to
test older gettext versions.

5 years agoalsa-mixer: improve a comment in udev rules
Tanu Kaskinen [Sat, 2 Mar 2019 17:46:22 +0000 (19:46 +0200)]
alsa-mixer: improve a comment in udev rules

The word "identical" was being used in a weird way that could make the
comment a bit difficult to undertand.

5 years agoalsa-mixer: distinguish Focusrite Saffire Pro 10 i/o from Liquid Saffire 56
Takashi Sakamoto [Tue, 26 Feb 2019 04:55:55 +0000 (13:55 +0900)]
alsa-mixer: distinguish Focusrite Saffire Pro 10 i/o from Liquid Saffire 56

In a former commit 37358e42c49a ("alsa: Suppress udev detection of sound
card for some units on IEEE 1394 bus"), PulseAudio has udev rules to
suppress handling some units on IEEE 1394 bus for a below issue:

Bug 199365 - repeating bus resets on Firewire bus with Focusrite Saffaire 26/io
https://bugzilla.kernel.org/show_bug.cgi?id=199365

However, I found that the rules match another model; Focusrite Liquid
Saffire 56. For detail, refer to below patch for Linux sound subsystem:

[alsa-devel] [PATCH] ALSA: bebob: use more identical mod_alias for
Saffire Pro 10 I/O against Liquid Saffire 56
https://mailman.alsa-project.org/pipermail/alsa-devel/2019-February/146003.html

For PulseAudio, the udev rule should be improved, because Liquid Saffire 56
(an application of TCAT TCD2200 ASIC, a.k.a Dice Jr.) can be handled by
pulseaudio without the issue.

This commit changes udev rule with model name instead of model_id from
configuration ROM. Below is data on udevd for Liquid Saffire 56, for
your information:

$ udevadm info -q all -p /sys/bus/firewire/devices/fw1.0/sound/card2/
P: /devices/pci0000:00/0000:00:01.2/0000:03:00.2/0000:04:07.0/0000:0a:00.0/0000:0b:00.0/fw1/fw1.0/sound/card2
E: DEVPATH=/devices/pci0000:00/0000:00:01.2/0000:03:00.2/0000:04:07.0/0000:0a:00.0/0000:0b:00.0/fw1/fw1.0/sound/card2
E: ID_BUS=firewire
E: ID_FOR_SEAT=sound-pci-0000_0b_00_0
E: ID_ID=firewire-0x00130e04018001e9
E: ID_MODEL=LIQUID_SAFFIRE_56
E: ID_MODEL_FROM_DATABASE=XIO2213A/B/XIO2221 IEEE-1394b OHCI Controller [Cheetah Express]
E: ID_MODEL_ID=0x000006
E: ID_PATH=pci-0000:0b:00.0
E: ID_PATH_TAG=pci-0000_0b_00_0
E: ID_PCI_CLASS_FROM_DATABASE=Serial bus controller
E: ID_PCI_INTERFACE_FROM_DATABASE=OHCI
E: ID_PCI_SUBCLASS_FROM_DATABASE=FireWire (IEEE 1394)
E: ID_SERIAL=0x00130e04018001e9
E: ID_SERIAL_SHORT=0x00130e04018001e9
E: ID_VENDOR=Focusrite
E: ID_VENDOR_FROM_DATABASE=Texas Instruments
E: ID_VENDOR_ID=0x00130e
E: SOUND_INITIALIZED=1
E: SUBSYSTEM=sound
E: SYSTEMD_WANTS=sound.target
E: TAGS=:seat:systemd:
E: USEC_INITIALIZED=9802422583

Fixes: 37358e42c49a ("alsa: Suppress udev detection of sound card for some units on IEEE 1394 bus")
Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
5 years agosource: Fix a bad condition that made source events not be emitted
Arun Raghavan [Tue, 19 Feb 2019 03:57:02 +0000 (09:27 +0530)]
source: Fix a bad condition that made source events not be emitted

This broke during a refactor of sink/source state-change.

5 years agoReplace "!" to "." so string is identical with other string.
scootergrisen [Sat, 16 Feb 2019 01:18:22 +0000 (01:18 +0000)]
Replace "!" to "." so string is identical with other string.

5 years agoChange "!" to "." to match other identical string.
scootergrisen [Sat, 16 Feb 2019 01:15:44 +0000 (01:15 +0000)]
Change "!" to "." to match other identical string.

5 years agochannel/s to channel(s)
scootergrisen [Sat, 16 Feb 2019 00:57:27 +0000 (00:57 +0000)]
channel/s to channel(s)

5 years agoRemove space in "Digital Passthrough (IEC958)"
scootergrisen [Fri, 15 Feb 2019 15:08:10 +0000 (15:08 +0000)]
Remove space in "Digital Passthrough  (IEC958)"

5 years ago"e g " to "e.g."
scootergrisen [Fri, 15 Feb 2019 12:26:46 +0000 (12:26 +0000)]
"e g " to "e.g."

5 years agoRemove "module" from "module user requested module"
scootergrisen [Fri, 15 Feb 2019 09:19:53 +0000 (09:19 +0000)]
Remove "module" from "module user requested module"

5 years agoAdd missing space
scootergrisen [Fri, 15 Feb 2019 08:13:08 +0000 (08:13 +0000)]
Add missing space

5 years agovirtual-source: Fix crash in combination with module-loopback
Georg Chini [Sun, 3 Feb 2019 18:13:22 +0000 (19:13 +0100)]
virtual-source: Fix crash in combination with module-loopback

Similar to module-tunnel-sink-new, module-virtual-source did not create
a rtpoll for the uplink sink. This lead to a crash when the uplink sink
was used by module loopback, because module-loopback relies on the sink
to provide a rtpoll. Additionally, the sink was not unlinked when the
module was unloaded.

This patch fixes both issues. The rtpoll created is never run by the sink,
so the patch is no real fix but just a workaround to make module-loopback
happy.

5 years agogive users a template that encourages complete bug reports
Russell Treleaven [Wed, 13 Feb 2019 15:11:42 +0000 (15:11 +0000)]
give users a template that encourages complete bug reports

5 years agocard: Only fire the profile available changed hook for linked cards
João Paulo Rechi Vita [Thu, 3 Jan 2019 02:14:17 +0000 (18:14 -0800)]
card: Only fire the profile available changed hook for linked cards

pa_card_profile_set_available needs to check if the card is linked
before firing PA_CORE_HOOK_CARD_PROFILE_AVAILABLE_CHANGED, so callbacks
connected to it receive a fully initialized card object.

This fixes a crash introduced by commit 30a551bbc
"switch-on-port-available: Check if we need to change the active
profile".

5 years agoprotocol-native: Fix format ownership while creating record streams
Arun Raghavan [Mon, 28 May 2018 15:44:00 +0000 (21:14 +0530)]
protocol-native: Fix format ownership while creating record streams

5 years agobluez5-device: use correct RTP payload type
Tanu Kaskinen [Thu, 17 Jan 2019 12:43:39 +0000 (14:43 +0200)]
bluez5-device: use correct RTP payload type

If one device tries to use PulseAudio to send audio over A2DP to another
device with bluez-alsa, that doesn't work because PulseAudio uses an
incorrect RTP payload type and bluez-alsa checks that the RTP payload
type is correct. According to the A2DP spec, the payload type should be
set to a number between 96 and 127.

Fixes: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/issues/591

5 years agopactl: Fix some corner cases when setting sink formats
Arun Raghavan [Sat, 12 Jan 2019 04:17:12 +0000 (09:47 +0530)]
pactl: Fix some corner cases when setting sink formats

Mostly deals with failure more gracefully, and NULL-initialises the
format array for safety.

5 years agotests: Shorten how long daemon tests take to run
Arun Raghavan [Sat, 13 Oct 2018 05:31:45 +0000 (11:01 +0530)]
tests: Shorten how long daemon tests take to run

We split out some of the check-daemon tests that take a long time to
run, and also reduce how long we wait for the daemon to start up. This
should make the CI process quicker.

5 years agobuild-sys: Add the ability to disable maintainer mode
Arun Raghavan [Mon, 15 Oct 2018 03:33:25 +0000 (09:03 +0530)]
build-sys: Add the ability to disable maintainer mode

This allows us to disable automatically updating build system files in
case things change. This is desirable in the common case, but not
necessarily for CI, where we want the ability to take a build directory
as an artifact from one stage to the next (i.e. into a fresh checkout).

5 years agomemblockq: fix typo: yepp -> yep
Diego Viola [Sun, 13 Jan 2019 17:02:59 +0000 (17:02 +0000)]
memblockq: fix typo: yepp -> yep

5 years agomeson: Fix some config generation warnings
Arun Raghavan [Thu, 27 Dec 2018 12:02:30 +0000 (17:32 +0530)]
meson: Fix some config generation warnings

5 years agosystem.pa: Drop mention of module-hal-detect
Arun Raghavan [Thu, 27 Dec 2018 12:03:00 +0000 (17:33 +0530)]
system.pa: Drop mention of module-hal-detect

We dropped HAL support years ago.

5 years agomeson: Add some platform specific configuration data
Arnaud Rebillout [Mon, 22 Oct 2018 04:57:26 +0000 (11:57 +0700)]
meson: Add some platform specific configuration data

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Fix HAVE_AF_UNIX, add check for mkfifo function
Arnaud Rebillout [Mon, 22 Oct 2018 04:39:56 +0000 (11:39 +0700)]
meson: Fix HAVE_AF_UNIX, add check for mkfifo function

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Process and install files: default.pa, system.pa, daemon.conf, client.conf
Arnaud Rebillout [Mon, 22 Oct 2018 04:31:04 +0000 (11:31 +0700)]
meson: Process and install files: default.pa, system.pa, daemon.conf, client.conf

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Sort the core dependencies a bit
Arnaud Rebillout [Sun, 21 Oct 2018 10:15:04 +0000 (17:15 +0700)]
meson: Sort the core dependencies a bit

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Display summary and warnings at the end of the meson configure step
Arnaud Rebillout [Fri, 19 Oct 2018 12:08:03 +0000 (19:08 +0700)]
meson: Display summary and warnings at the end of the meson configure step

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Typo in man/meson.build
Arnaud Rebillout [Sun, 21 Oct 2018 08:41:28 +0000 (15:41 +0700)]
meson: Typo in man/meson.build

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Add optional legacy-database-entry-format support
Arnaud Rebillout [Sun, 21 Oct 2018 10:09:28 +0000 (17:09 +0700)]
meson: Add optional legacy-database-entry-format support

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Add optional libsamplerate support
Arnaud Rebillout [Sun, 21 Oct 2018 10:00:25 +0000 (17:00 +0700)]
meson: Add optional libsamplerate support

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Add optional SoX Resampler support
Arnaud Rebillout [Sun, 21 Oct 2018 09:47:03 +0000 (16:47 +0700)]
meson: Add optional SoX Resampler support

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Add optional IPv6 support
Arnaud Rebillout [Sun, 21 Oct 2018 09:34:55 +0000 (16:34 +0700)]
meson: Add optional IPv6 support

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Add optional Async NS support
Arnaud Rebillout [Sun, 21 Oct 2018 09:22:59 +0000 (16:22 +0700)]
meson: Add optional Async NS support

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Add optional GSettings support
Arnaud Rebillout [Sun, 21 Oct 2018 08:39:30 +0000 (15:39 +0700)]
meson: Add optional GSettings support

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Add optional Gtk+ support
Arnaud Rebillout [Sat, 20 Oct 2018 08:41:28 +0000 (15:41 +0700)]
meson: Add optional Gtk+ support

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Add optional libpulse-mainloop-glib
Arnaud Rebillout [Sat, 20 Oct 2018 08:30:19 +0000 (15:30 +0700)]
meson: Add optional libpulse-mainloop-glib

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Add optional GLib support
Arnaud Rebillout [Sat, 20 Oct 2018 08:29:03 +0000 (15:29 +0700)]
meson: Add optional GLib support

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Add a sanity check regarding echo cancellers
Arnaud Rebillout [Fri, 19 Oct 2018 11:44:20 +0000 (18:44 +0700)]
meson: Add a sanity check regarding echo cancellers

Taken straight out of the configure.ac file.

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Make Adrian echo canceller optional
Arnaud Rebillout [Fri, 19 Oct 2018 11:39:09 +0000 (18:39 +0700)]
meson: Make Adrian echo canceller optional

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: adrian-aec requires libm
Arnaud Rebillout [Fri, 19 Oct 2018 11:30:05 +0000 (18:30 +0700)]
meson: adrian-aec requires libm

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Make webrtc optional
Arnaud Rebillout [Fri, 19 Oct 2018 11:25:55 +0000 (18:25 +0700)]
meson: Make webrtc optional

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Make hal-compat optional
Arnaud Rebillout [Fri, 19 Oct 2018 11:18:58 +0000 (18:18 +0700)]
meson: Make hal-compat optional

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Make udev optional
Arnaud Rebillout [Fri, 19 Oct 2018 11:11:31 +0000 (18:11 +0700)]
meson: Make udev optional

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Make speex optional
Arnaud Rebillout [Fri, 19 Oct 2018 11:09:13 +0000 (18:09 +0700)]
meson: Make speex optional

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Make openssl optional, fix build when openssl is disabled
Arnaud Rebillout [Fri, 19 Oct 2018 11:00:59 +0000 (18:00 +0700)]
meson: Make openssl optional, fix build when openssl is disabled

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Make lirc optional
Arnaud Rebillout [Fri, 19 Oct 2018 10:58:21 +0000 (17:58 +0700)]
meson: Make lirc optional

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Make fftw optional
Arnaud Rebillout [Fri, 19 Oct 2018 10:51:58 +0000 (17:51 +0700)]
meson: Make fftw optional

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Make jack optional
Arnaud Rebillout [Fri, 19 Oct 2018 10:48:31 +0000 (17:48 +0700)]
meson: Make jack optional

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Use assert() to validate the prefix
Arnaud Rebillout [Fri, 19 Oct 2018 10:45:12 +0000 (17:45 +0700)]
meson: Use assert() to validate the prefix

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Fix bluez5 version requirement
Arnaud Rebillout [Fri, 19 Oct 2018 10:43:21 +0000 (17:43 +0700)]
meson: Fix bluez5 version requirement

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Make bluez optional
Arnaud Rebillout [Fri, 19 Oct 2018 10:40:06 +0000 (17:40 +0700)]
meson: Make bluez optional

I can't promise that the logic is *exactly* the same as the logic
currently in use with the autotools, but it seems correct to me.

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Make avahi optional
Arnaud Rebillout [Fri, 19 Oct 2018 10:04:01 +0000 (17:04 +0700)]
meson: Make avahi optional

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Make systemd optional
Arnaud Rebillout [Fri, 19 Oct 2018 09:43:44 +0000 (16:43 +0700)]
meson: Make systemd optional

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Also set HAVE_ALSA when alsa is enabled
Arnaud Rebillout [Fri, 19 Oct 2018 09:38:38 +0000 (16:38 +0700)]
meson: Also set HAVE_ALSA when alsa is enabled

Just following the configure file.

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Make alsa optional
Arnaud Rebillout [Fri, 19 Oct 2018 09:37:05 +0000 (16:37 +0700)]
meson: Make alsa optional

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomodule-stream-restore: Silence compiler warnings when dbus is disabled
Arnaud Rebillout [Fri, 19 Oct 2018 09:28:57 +0000 (16:28 +0700)]
module-stream-restore: Silence compiler warnings when dbus is disabled

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Make dbus optional, fix build with dbus disabled
Arnaud Rebillout [Fri, 19 Oct 2018 09:24:25 +0000 (16:24 +0700)]
meson: Make dbus optional, fix build with dbus disabled

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Adjust fixme comment for daemon
Arnaud Rebillout [Tue, 9 Oct 2018 05:07:05 +0000 (12:07 +0700)]
meson: Adjust fixme comment for daemon

Man pages are handled in man/meson.build, that's where FIXMEs and TODOs
are now.

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Install start-pulseaudio-x11 if x11 is found
Arnaud Rebillout [Tue, 9 Oct 2018 04:56:33 +0000 (11:56 +0700)]
meson: Install start-pulseaudio-x11 if x11 is found

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Build pax11publish only if X11 is found
Arnaud Rebillout [Tue, 9 Oct 2018 04:53:04 +0000 (11:53 +0700)]
meson: Build pax11publish only if X11 is found

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Make x11 optional, bump meson requirement
Arnaud Rebillout [Tue, 9 Oct 2018 04:44:02 +0000 (11:44 +0700)]
meson: Make x11 optional, bump meson requirement

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Tighter coupling of XOrg dependencies
Arnaud Rebillout [Tue, 9 Oct 2018 04:41:07 +0000 (11:41 +0700)]
meson: Tighter coupling of XOrg dependencies

If `x11-xcb` is found, then let's force other X11 dependencies to be
there as well. That makes things a bit easier, and that's also what is
done in the autotools build system.

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Add a comment to mark the beginning of the configuration data section
Arnaud Rebillout [Tue, 9 Oct 2018 03:40:51 +0000 (10:40 +0700)]
meson: Add a comment to mark the beginning of the configuration data section

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Create bindir and libdir variables
Arnaud Rebillout [Tue, 9 Oct 2018 03:37:42 +0000 (10:37 +0700)]
meson: Create bindir and libdir variables

This is to avoid using the construct 'join_paths(prefix, get_option(...))'
everywhere in the meson files. It's better to settle the paths question
once and for all at the beginning.

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>
5 years agomeson: Add a sanity check to the prefix option
Arnaud Rebillout [Tue, 9 Oct 2018 03:31:16 +0000 (10:31 +0700)]
meson: Add a sanity check to the prefix option

Signed-off-by: Arnaud Rebillout <arnaud.rebillout@collabora.com>