option('docdir', type : 'string', description : 'Directory for installing documentation to (defaults to pipewire_datadir/doc/meson.project_name() )') option('docs', description: 'Build documentation', type: 'feature', value: 'disabled') option('examples', description: 'Build examples', type: 'feature', value: 'enabled') option('man', description: 'Build manpages', type: 'feature', value: 'auto') option('tests', description: 'Build tests', type: 'feature', value: 'enabled', yield : true) option('installed_tests', description: 'Install manual and automated test executables', type: 'feature', value: 'disabled') option('gstreamer', description: 'Build GStreamer plugins', type: 'feature', value: 'auto') option('gstreamer-device-provider', description: 'Build GStreamer device provider plugin', type: 'feature', value: 'auto') option('systemd', description: 'Enable systemd integration', type: 'feature', value: 'auto') option('systemd-system-service', description: 'Install systemd system service file', type: 'feature', value: 'disabled') option('systemd-user-service', description: 'Install systemd user service file (ignored without systemd)', type: 'feature', value: 'enabled') option('pipewire-alsa', description: 'Enable pipewire-alsa integration', type: 'feature', value: 'auto') option('pipewire-jack', description: 'Enable pipewire-jack integration', type: 'feature', value: 'enabled') option('pipewire-v4l2', description: 'Enable pipewire-v4l2 integration', type: 'feature', value: 'enabled') option('jack-devel', description: 'Install jack development files', type: 'boolean', value: 'false') option('libjack-path', description: 'Where to install the libjack.so library', type: 'string') option('libv4l2-path', description: 'Where to install the libpw-v4l2.so library', type: 'string') option('spa-plugins', description: 'Enable spa plugins integration', type: 'feature', value: 'enabled') option('alsa', description: 'Enable alsa spa plugin integration', type: 'feature', value: 'auto') option('audiomixer', description: 'Enable audiomixer spa plugin integration', type: 'feature', value: 'enabled') option('audioconvert', description: 'Enable audioconvert spa plugin integration', type: 'feature', value: 'enabled') option('bluez5', description: 'Enable bluez5 spa plugin integration', type: 'feature', value: 'auto') option('bluez5-backend-hsp-native', description: 'Enable HSP in native backend in bluez5 spa plugin', type: 'feature', value: 'enabled') option('bluez5-backend-hfp-native', description: 'Enable HFP in native backend in bluez5 spa plugin', type: 'feature', value: 'enabled') option('bluez5-backend-ofono', description: 'Enable oFono HFP backend in bluez5 spa plugin (no dependency on oFono)', type: 'feature', value: 'enabled') option('bluez5-backend-hsphfpd', description: 'Enable hsphfpd backend in bluez5 spa plugin (no dependency on hsphfpd)', type: 'feature', value: 'enabled') option('bluez5-codec-aptx', description: 'Enable AptX Qualcomm open source codec implementation', type: 'feature', value: 'auto') option('bluez5-codec-ldac', description: 'Enable LDAC Sony open source codec implementation', type: 'feature', value: 'auto') option('bluez5-codec-aac', description: 'Enable Fraunhofer FDK AAC open source codec implementation', type: 'feature', value: 'auto') option('control', description: 'Enable control spa plugin integration', type: 'feature', value: 'enabled') option('audiotestsrc', description: 'Enable audiotestsrc spa plugin integration', type: 'feature', value: 'enabled') option('ffmpeg', description: 'Enable ffmpeg spa plugin integration', type: 'feature', value: 'disabled') option('jack', description: 'Enable jack spa plugin integration', type: 'feature', value: 'auto') option('support', description: 'Enable support spa plugin integration', type: 'feature', value: 'enabled') option('evl', description: 'Enable EVL support spa plugin integration', type: 'feature', value: 'disabled') option('test', description: 'Enable test spa plugin integration', type: 'feature', value: 'disabled') option('v4l2', description: 'Enable v4l2 spa plugin integration', type: 'feature', value: 'auto') option('dbus', description: 'Enable code that depends on dbus', type: 'feature', value: 'enabled') option('libcamera', description: 'Enable libcamera spa plugin integration', type: 'feature', value: 'auto') option('videoconvert', description: 'Enable videoconvert spa plugin integration', type: 'feature', value: 'enabled') option('videotestsrc', description: 'Enable videotestsrc spa plugin integration', type: 'feature', value: 'enabled') option('volume', description: 'Enable volume spa plugin integration', type: 'feature', value: 'enabled') option('vulkan', description: 'Enable vulkan spa plugin integration', type: 'feature', value: 'disabled') option('pw-cat', description: 'Build pw-cat/pw-play/pw-record', type: 'feature', value: 'auto') option('udev', description: 'Enable Udev integration', type: 'feature', value: 'auto') option('udevrulesdir', type : 'string', description : 'Directory for udev rules (defaults to /lib/udev/rules.d)') option('systemd-system-unit-dir', type : 'string', description : 'Directory for system systemd units (defaults to /usr/lib/systemd/system)') option('systemd-user-unit-dir', type : 'string', description : 'Directory for user systemd units (defaults to /usr/lib/systemd/user)') option('sdl2', description: 'Enable code that depends on SDL 2', type: 'feature', value: 'auto') option('sndfile', description: 'Enable code that depends on libsndfile', type: 'feature', value: 'auto') option('libpulse', description: 'Enable code that depends on libpulse', type: 'feature', value: 'auto') option('roc', description: 'Enable code that depends on roc toolkit', type: 'feature', value: 'auto') option('avahi', description: 'Enable code that depends on avahi', type: 'feature', value: 'auto') option('echo-cancel-webrtc', description : 'Enable WebRTC-based echo canceller', type : 'feature', value : 'auto') option('libusb', description: 'Enable code that depends on libusb', type: 'feature', value: 'auto') option('session-managers', description : 'Session managers to build (can be [] for none or an absolute path)', type : 'array', value : ['media-session']) option('raop', description: 'Enable module for Remote Audio Output Protocol', type: 'feature', value: 'auto') option('lv2', description: 'Enable loading of LV2 plugins', type: 'feature', value: 'auto') option('x11', description: 'Enable code that depends on X11', type: 'feature', value: 'auto') option('x11-xfixes', description: 'Enable code that depends on XFixes', type: 'feature', value: 'auto') option('libcanberra', description: 'Enable code that depends on libcanberra', type: 'feature', value: 'auto')