build-sys: Add an option for enabling/disabling Valgrind
[platform/upstream/pulseaudio.git] / meson_options.txt
1 option('gcov',
2        type : 'boolean', value : false,
3        description : 'Enable optional gcov coverage analysis')
4 option('man',
5        type : 'boolean',
6        description : 'Enable building and installation of man pages')
7 option('tests',
8        type : 'boolean',
9        description : 'Enable unit tests')
10
11 option('system_user',
12         type : 'string', value : 'pulse',
13         description : 'User for running the PulseAudio daemon as a system-wide instance (pulse)')
14 option('system_group',
15         type : 'string', value : 'pulse',
16         description : 'Group for running the PulseAudio daemon as a system-wide instance (pulse)')
17 option('access_group',
18         type : 'string', value : 'pulse-access',
19         description : 'Group which is allowed access to a system-wide PulseAudio daemon (pulse-access)')
20 option('database',
21         type : 'combo', value : 'tdb',
22         choices : [ 'gdbm', 'tdb', 'simple' ],
23         description : 'Database backend')
24 option('legacy-database-entry-format',
25        type : 'boolean',
26        description : 'Try to load legacy (< 1.0) database files (card, device and volume restore)')
27 option('stream-restore-clear-old-devices',
28        type : 'boolean', value : false,
29        description : 'Forget per-stream routing settings that have been set before version 14.0. Recommended when using GNOME. See https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/issues/832')
30 option('running-from-build-tree',
31        type : 'boolean',
32        description : 'Enable running from build tree')
33 option('atomic-arm-linux-helpers',
34        type : 'boolean', value : true,
35        description : 'Use inline asm or libatomic_ops instead')
36 option('atomic-arm-memory-barrier',
37        type : 'boolean', value : false,
38        description : 'Enable memory barriers (only really needed in SMP arm systems)')
39
40 # Paths
41
42 option('padsplibdir',
43        type : 'string',
44        description : 'Specify location where OSS wrapper library will be installed')
45 # This one gets inserted into a shell double-quoted string, so needs to be escaped (\$LIB). Meson
46 # removes a layer of escapes when parsing the description string, so we need to double the
47 # backslashes for "meson configure" to display the right text.
48 option('pulsedsp-location',
49        type : 'string',
50        description : 'Specify location where OSS wrapper library will be loaded from; can use \\$LIB')
51 option('modlibexecdir',
52        type : 'string',
53        description : 'Specify location where modules will be installed')
54 option('alsadatadir',
55        type : 'string',
56        description : 'Directory for ALSA card profiles (defaults to ${datadir}/pulseaudio/alsa-mixer)')
57 option('systemduserunitdir',
58        type : 'string',
59        description : 'Directory for systemd user service files')
60 option('udevrulesdir',
61        type : 'string',
62        description : 'Directory for udev rules (defaults to /lib/udev/rules.d)')
63 option('bashcompletiondir',
64        type : 'string',
65        description : 'Directory for bash completion scripts ["no" disables]')
66 option('zshcompletiondir',
67        type : 'string',
68        description : 'Directory for zsh completion scripts ["no" disables]')
69
70 # Optional features
71
72 option('alsa',
73        type : 'feature', value : 'auto',
74        description : 'Optional ALSA support')
75 option('asyncns',
76        type : 'feature', value : 'auto',
77        description : 'Optional Async DNS support')
78 option('avahi',
79        type : 'feature', value : 'auto',
80        description : 'Optional Avahi support')
81 option('bluez5',
82        type : 'boolean', value : 'true',
83        description : 'Optional BlueZ 5 support')
84 option('bluez5-native-headset',
85        type : 'boolean',
86        description : 'Optional native headset backend support (BlueZ 5)')
87 option('bluez5-ofono-headset',
88        type : 'boolean',
89        description : 'Optional oFono headset backend support (BlueZ 5)')
90 option('dbus',
91        type : 'feature', value : 'auto',
92        description : 'Optional D-Bus support')
93 option('fftw',
94        type : 'feature', value : 'auto',
95        description : 'Optional FFTW support')
96 option('glib',
97        type : 'feature', value : 'auto',
98        description : 'Optional GLib 2 support')
99 option('gsettings',
100        type : 'feature', value : 'auto',
101        description : 'Optional GSettings support')
102 option('gstreamer',
103        type : 'feature', value : 'disabled',
104        description : 'Optional GStreamer dependency for media-related functionality')
105 option('gtk',
106        type : 'feature', value : 'auto',
107        description : 'Optional Gtk+ 3 support')
108 option('hal-compat',
109        type : 'boolean',
110        description : 'Optional HAL->udev transition compatibility support (needs udev)')
111 option('ipv6',
112        type : 'boolean',
113        description : 'Optional IPv6 support')
114 option('jack',
115        type : 'feature', value : 'auto',
116        description : 'Optional JACK support')
117 option('lirc',
118        type : 'feature', value : 'auto',
119        description : 'Optional LIRC support')
120 option('openssl',
121        type : 'feature', value : 'auto',
122        description : 'Optional OpenSSL support (used for Airtunes/RAOP)')
123 option('orc',
124        type : 'feature', value : 'auto',
125        description : 'Optimized Inner Loop Runtime Compiler')
126 option('oss-output',
127        type : 'boolean',
128        description : 'Optional OSS output support')
129 option('samplerate',
130        type : 'feature', value : 'disabled',
131        description : 'Optional libsamplerate support (DEPRECATED)')
132 option('soxr',
133        type : 'feature', value : 'auto',
134        description : 'Optional SoXR support (resampling)')
135 option('speex',
136        type : 'feature', value : 'auto',
137        description : 'Optional Speex support (resampling, AEC)')
138 option('systemd',
139        type : 'feature', value : 'auto',
140        description : 'Optional systemd support')
141 option('udev',
142        type : 'feature', value : 'auto',
143        description : 'Optional udev support')
144 option('valgrind',
145        type : 'feature', value : 'auto',
146        description : 'Optional Valgrind support')
147 option('x11',
148        type : 'feature', value : 'auto',
149        description : 'Optional X11 support')
150
151 # Echo cancellation
152
153 option('adrian-aec',
154        type : 'boolean',
155        description : 'Optional Adrian\'s echo canceller')
156 option('webrtc-aec',
157        type : 'feature', value : 'auto',
158        description : 'Optional WebRTC-based echo canceller')