mirror of
				https://gitlab.freedesktop.org/pipewire/pipewire.git
				synced 2025-11-03 09:01:54 -05:00 
			
		
		
		
	Support getting the Flatpak application ID from the .flatpak-info file, similarly as what xdg-desktop-portal does.
		
			
				
	
	
		
			259 lines
		
	
	
	
		
			8.4 KiB
		
	
	
	
		
			Meson
		
	
	
	
	
	
			
		
		
	
	
			259 lines
		
	
	
	
		
			8.4 KiB
		
	
	
	
		
			Meson
		
	
	
	
	
	
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('bluez5-codec-lc3plus',
 | 
						|
        description: 'Enable LC3plus open source codec implementation',
 | 
						|
        type: 'feature',
 | 
						|
        value: 'auto')
 | 
						|
option('bluez5-codec-opus',
 | 
						|
        description: 'Enable Opus 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')
 | 
						|
option('legacy-rtkit',
 | 
						|
       description: 'Build legacy rtkit module',
 | 
						|
       type: 'boolean',
 | 
						|
       value: 'true')
 | 
						|
option('avb',
 | 
						|
       description: 'Enable AVB code',
 | 
						|
       type: 'feature',
 | 
						|
       value: 'auto')
 | 
						|
option('flatpak',
 | 
						|
       description: 'Enable Flatpak support',
 | 
						|
       type: 'feature',
 | 
						|
       value: 'enabled')
 |