This adds three meson options to enable or disable building daemon, tools, and modules.
Building the daemon or tools depends on building the modules, and disabling modules without disabling
the other two will result in meson giving an appropriate error.
These new options will let users skip building and installing unneeded items when they are not needed,
e.g. when only using the C API in another application.
This adds information about the name of the pkg-config package provided by wireplumber
as well as which header a C program needs to include to use the library to the
generated .gir file.
* Add information about multiple instances
* Document better how the lua config files work
* Document how lua config files get merged from different places
* Copy over additional documentation for ALSA from pw-media-session
* Fix rst syntax issues
This allows for WIREPLUMBER_DEBUG="D" which avoids users having to
remember which numerical value the various levels have. The strings to
select are the ones printed by the logger, i.e. UECWMIDT.
The previous approach to loading config files was to ask WP for the
directory and then search those for the config files. This patch changes the
approach - a caller now asks WP to search for a specific config file or
iterate over a config file directory.
This allows us to implement a directory lookup order, i.e.
"wireplumber.conf" may be in XDG_CONFIG_DIR, /etc/,
/usr/share and the first one found is used.
For configuration directories, the new method iterates over all matching
entries (files + directories) and invokes a callback for each entry.
This enables distributions to ship default files in /usr/share/wireplumber
but have admins and users override them on a local basis. For lua scripts in
particular, overriding a distribution-provided file with an empty file
effectively disables it, adding a file adds it in the right sort order.
Aim for 8 pointers on each struct, wich exceptions:
- 12 pointers for already crowded/important ones
- 4 pointers for empty ones that are used for proxies; we are
unlikely to add any virtual methods on these classes ever
With a hacky workaround, because the generate_gir() implementation
has a bug and does not pass the file dependencies properly down
to the custom_target() that it creates internally
- use code blocks properly
- use note/important blocks
- stop using ` for emphasis, use `` or * appropriately
- update info on contributing, community, running, logging