]>
Commit | Line | Data |
---|---|---|
1 | # -*- mode: meson -*- | |
2 | # SPDX-License-Identifier: LGPL-2.1+ | |
3 | ||
4 | option('version-tag', type : 'string', | |
5 | description : 'override the git version string') | |
6 | ||
7 | option('mode', type : 'combo', choices : ['default', 'developer'], | |
8 | description : 'enable additional checks suitable for systemd development') | |
9 | ||
10 | option('split-usr', type : 'combo', choices : ['auto', 'true', 'false'], | |
11 | description : '''/bin, /sbin aren't symlinks into /usr''') | |
12 | option('split-bin', type : 'combo', choices : ['auto', 'true', 'false'], | |
13 | description : '''sbin is not a symlink to bin''') | |
14 | option('rootlibdir', type : 'string', | |
15 | description : '''[/usr]/lib/x86_64-linux-gnu or such''') | |
16 | option('rootprefix', type : 'string', | |
17 | description : '''override the root prefix [default '/' if split-usr and '/usr' otherwise]''') | |
18 | option('link-udev-shared', type : 'boolean', | |
19 | description : 'link systemd-udev and its helpers to libsystemd-shared.so') | |
20 | option('link-systemctl-shared', type: 'boolean', | |
21 | description : 'link systemctl against libsystemd-shared.so') | |
22 | option('link-networkd-shared', type: 'boolean', | |
23 | description : 'link systemd-networkd and its helpers to libsystemd-shared.so') | |
24 | option('link-timesyncd-shared', type: 'boolean', | |
25 | description : 'link systemd-timesyncd and its helpers to libsystemd-shared.so') | |
26 | option('static-libsystemd', type : 'combo', | |
27 | choices : ['false', 'true', 'pic', 'no-pic'], | |
28 | description : '''install a static library for libsystemd''') | |
29 | option('static-libudev', type : 'combo', | |
30 | choices : ['false', 'true', 'pic', 'no-pic'], | |
31 | description : '''install a static library for libudev''') | |
32 | option('standalone-binaries', type : 'boolean', value : 'false', | |
33 | description : '''also build standalone versions of supported binaries''') | |
34 | ||
35 | option('sysvinit-path', type : 'string', value : '/etc/init.d', | |
36 | description : 'the directory where the SysV init scripts are located') | |
37 | option('sysvrcnd-path', type : 'string', value : '/etc/rc.d', | |
38 | description : 'the base directory for SysV rcN.d directories') | |
39 | option('telinit-path', type : 'string', value : '/lib/sysvinit/telinit', | |
40 | description : 'path to telinit') | |
41 | option('rc-local', type : 'string', | |
42 | value : '/etc/rc.local') | |
43 | option('initrd', type: 'boolean', | |
44 | description : 'install services for use when running systemd in initrd') | |
45 | ||
46 | option('quotaon-path', type : 'string', description : 'path to quotaon') | |
47 | option('quotacheck-path', type : 'string', description : 'path to quotacheck') | |
48 | option('kmod-path', type : 'string', description : 'path to kmod') | |
49 | option('kexec-path', type : 'string', description : 'path to kexec') | |
50 | option('sulogin-path', type : 'string', description : 'path to sulogin') | |
51 | option('mount-path', type : 'string', description : 'path to mount') | |
52 | option('umount-path', type : 'string', description : 'path to umount') | |
53 | option('loadkeys-path', type : 'string', description : 'path to loadkeys') | |
54 | option('setfont-path', type : 'string', description : 'path to setfont') | |
55 | option('nologin-path', type : 'string', description : 'path to nologin') | |
56 | ||
57 | option('debug-shell', type : 'string', value : '/bin/sh', | |
58 | description : 'path to debug shell binary') | |
59 | option('debug-tty', type : 'string', value : '/dev/tty9', | |
60 | description : 'specify the tty device for debug shell') | |
61 | option('debug-extra', type : 'array', choices : ['hashmap', 'mmap-cache', 'siphash'], value : [], | |
62 | description : 'enable extra debugging') | |
63 | option('memory-accounting-default', type : 'boolean', | |
64 | description : 'enable MemoryAccounting= by default') | |
65 | option('bump-proc-sys-fs-file-max', type : 'boolean', | |
66 | description : 'bump /proc/sys/fs/file-max to LONG_MAX') | |
67 | option('bump-proc-sys-fs-nr-open', type : 'boolean', | |
68 | description : 'bump /proc/sys/fs/nr_open to INT_MAX') | |
69 | option('valgrind', type : 'boolean', value : false, | |
70 | description : 'do extra operations to avoid valgrind warnings') | |
71 | option('log-trace', type : 'boolean', value : false, | |
72 | description : 'enable low level debug logging') | |
73 | option('user-path', type : 'string', | |
74 | description : '$PATH to use for user sessions') | |
75 | ||
76 | option('utmp', type : 'boolean', | |
77 | description : 'support for utmp/wtmp log handling') | |
78 | option('hibernate', type : 'boolean', | |
79 | description : 'support for hibernation') | |
80 | option('ldconfig', type : 'boolean', | |
81 | description : 'support for dynamic linker cache creation') | |
82 | option('resolve', type : 'boolean', | |
83 | description : 'systemd-resolved stack') | |
84 | option('efi', type : 'boolean', | |
85 | description : 'enable systemd-boot and bootctl') | |
86 | option('tpm', type : 'boolean', | |
87 | description : 'TPM should be used to log events and extend the registers') | |
88 | option('environment-d', type : 'boolean', | |
89 | description : 'support for environment.d') | |
90 | option('binfmt', type : 'boolean', | |
91 | description : 'support for custom binary formats') | |
92 | option('repart', type : 'combo', choices : ['auto', 'true', 'false'], | |
93 | description : 'install the systemd-repart tool') | |
94 | option('coredump', type : 'boolean', | |
95 | description : 'install the coredump handler') | |
96 | option('pstore', type : 'boolean', | |
97 | description : 'install the pstore archival tool') | |
98 | option('logind', type : 'boolean', | |
99 | description : 'install the systemd-logind stack') | |
100 | option('hostnamed', type : 'boolean', | |
101 | description : 'install the systemd-hostnamed stack') | |
102 | option('localed', type : 'boolean', | |
103 | description : 'install the systemd-localed stack') | |
104 | option('machined', type : 'boolean', | |
105 | description : 'install the systemd-machined stack') | |
106 | option('portabled', type : 'boolean', | |
107 | description : 'install the systemd-portabled stack') | |
108 | option('userdb', type : 'boolean', | |
109 | description : 'install the systemd-userdbd stack') | |
110 | option('homed', type : 'combo', choices : ['auto', 'true', 'false'], | |
111 | description : 'install the systemd-homed stack') | |
112 | option('networkd', type : 'boolean', | |
113 | description : 'install the systemd-networkd stack') | |
114 | option('timedated', type : 'boolean', | |
115 | description : 'install the systemd-timedated daemon') | |
116 | option('timesyncd', type : 'boolean', | |
117 | description : 'install the systemd-timesyncd daemon') | |
118 | option('remote', type : 'combo', choices : ['auto', 'true', 'false'], | |
119 | description : 'support for "journal over the network"') | |
120 | option('create-log-dirs', type : 'boolean', | |
121 | description : 'create /var/log/journal{,/remote}') | |
122 | option('nss-myhostname', type : 'boolean', | |
123 | description : 'install nss-myhostname module') | |
124 | option('nss-mymachines', type : 'combo', choices : ['auto', 'true', 'false'], | |
125 | description : 'install nss-mymachines module') | |
126 | option('nss-resolve', type : 'combo', choices : ['auto', 'true', 'false'], | |
127 | description : 'install nss-resolve module') | |
128 | option('nss-systemd', type : 'boolean', | |
129 | description : 'install nss-systemd module') | |
130 | option('firstboot', type : 'boolean', | |
131 | description : 'support for firstboot mechanism') | |
132 | option('randomseed', type : 'boolean', | |
133 | description : 'support for restoring random seed') | |
134 | option('backlight', type : 'boolean', | |
135 | description : 'support for restoring backlight state') | |
136 | option('vconsole', type : 'boolean', | |
137 | description : 'support for vconsole configuration') | |
138 | option('quotacheck', type : 'boolean', | |
139 | description : 'support for the quotacheck tools') | |
140 | option('sysusers', type : 'boolean', | |
141 | description : 'support for the sysusers configuration') | |
142 | option('tmpfiles', type : 'boolean', | |
143 | description : 'support for tmpfiles.d') | |
144 | option('importd', type : 'combo', choices : ['auto', 'true', 'false'], | |
145 | description : 'install the systemd-importd daemon') | |
146 | option('hwdb', type : 'boolean', | |
147 | description : 'support for the hardware database') | |
148 | option('rfkill', type : 'boolean', | |
149 | description : 'support for the rfkill tools') | |
150 | option('xdg-autostart', type : 'boolean', | |
151 | description : 'install the xdg-autostart-generator and unit') | |
152 | option('man', type : 'combo', choices : ['auto', 'true', 'false'], | |
153 | value : 'false', | |
154 | description : 'build and install man pages') | |
155 | option('html', type : 'combo', choices : ['auto', 'true', 'false'], | |
156 | value : 'false', | |
157 | description : 'build and install html pages') | |
158 | ||
159 | option('certificate-root', type : 'string', value : '/etc/ssl', | |
160 | description : 'the prefix for TLS certificates') | |
161 | option('dbuspolicydir', type : 'string', | |
162 | description : 'D-Bus policy directory') | |
163 | option('dbussessionservicedir', type : 'string', | |
164 | description : 'D-Bus session service directory') | |
165 | option('dbussystemservicedir', type : 'string', | |
166 | description : 'D-Bus system service directory') | |
167 | option('pkgconfigdatadir', type : 'string', value : '', | |
168 | description : 'directory for arch-independent pkg-config files') | |
169 | option('pkgconfiglibdir', type : 'string', value : '', | |
170 | description : 'directory for standard pkg-config files') | |
171 | option('rpmmacrosdir', type : 'string', value : 'lib/rpm/macros.d', | |
172 | description : 'directory for rpm macros ["no" disables]') | |
173 | option('pamlibdir', type : 'string', | |
174 | description : 'directory for PAM modules') | |
175 | option('pamconfdir', type : 'string', | |
176 | description : 'directory for PAM configuration ["no" disables]') | |
177 | option('docdir', type : 'string', | |
178 | description : 'documentation directory') | |
179 | ||
180 | option('fallback-hostname', type : 'string', value : 'localhost', | |
181 | description : 'the hostname used if none configured') | |
182 | option('compat-gateway-hostname', type : 'boolean', value : 'false', | |
183 | description : 'allow "gateway" as the symbolic name for default gateway') | |
184 | option('default-hierarchy', type : 'combo', | |
185 | choices : ['legacy', 'hybrid', 'unified'], value : 'unified', | |
186 | description : 'default cgroup hierarchy') | |
187 | option('default-net-naming-scheme', type : 'combo', | |
188 | choices : ['latest', 'v238', 'v239', 'v240'], | |
189 | description : 'default net.naming-scheme= value') | |
190 | option('status-unit-format-default', type : 'combo', | |
191 | choices : ['description', 'name'], | |
192 | description : 'use unit name or description in messages by default') | |
193 | option('time-epoch', type : 'integer', value : '-1', | |
194 | description : 'time epoch for time clients') | |
195 | option('system-uid-max', type : 'integer', value : '-1', | |
196 | description : 'maximum system UID') | |
197 | option('system-gid-max', type : 'integer', value : '-1', | |
198 | description : 'maximum system GID') | |
199 | option('dynamic-uid-min', type : 'integer', value : 0x0000EF00, | |
200 | description : 'minimum dynamic UID') | |
201 | option('dynamic-uid-max', type : 'integer', value : 0x0000FFEF, | |
202 | description : 'maximum dynamic UID') | |
203 | option('container-uid-base-min', type : 'integer', value : 0x00080000, | |
204 | description : 'minimum container UID base') | |
205 | option('container-uid-base-max', type : 'integer', value : 0x6FFF0000, | |
206 | description : 'maximum container UID base') | |
207 | option('tty-gid', type : 'integer', value : 5, | |
208 | description : 'the numeric GID of the "tty" group') | |
209 | option('users-gid', type : 'integer', value : '-1', | |
210 | description : 'the numeric GID of the "users" group') | |
211 | option('adm-group', type : 'boolean', | |
212 | description : 'the ACL for adm group should be added') | |
213 | option('wheel-group', type : 'boolean', | |
214 | description : 'the ACL for wheel group should be added') | |
215 | option('nobody-user', type : 'string', | |
216 | description : 'The name of the nobody user (the one with UID 65534)', | |
217 | value : 'nobody') | |
218 | option('nobody-group', type : 'string', | |
219 | description : 'The name of the nobody group (the one with GID 65534)', | |
220 | value : 'nobody') | |
221 | option('dev-kvm-mode', type : 'string', value : '0666', | |
222 | description : '/dev/kvm access mode') | |
223 | option('group-render-mode', type : 'string', value : '0666', | |
224 | description : 'Access mode for devices owned by render group (e.g. /dev/dri/renderD*, /dev/kfd).') | |
225 | option('default-kill-user-processes', type : 'boolean', | |
226 | description : 'the default value for KillUserProcesses= setting') | |
227 | option('gshadow', type : 'boolean', | |
228 | description : 'support for shadow group') | |
229 | option('default-locale', type : 'string', value : '', | |
230 | description : 'default locale used when /etc/locale.conf does not exist') | |
231 | option('service-watchdog', type : 'string', value : '3min', | |
232 | description : 'default watchdog setting for systemd services') | |
233 | ||
234 | option('default-dnssec', type : 'combo', | |
235 | description : 'default DNSSEC mode', | |
236 | choices : ['yes', 'allow-downgrade', 'no'], | |
237 | value : 'allow-downgrade') | |
238 | option('default-dns-over-tls', type : 'combo', | |
239 | description : 'default DNS-over-TLS mode', | |
240 | choices : ['yes', 'opportunistic', 'no'], | |
241 | value : 'no') | |
242 | option('default-mdns', type : 'combo', | |
243 | choices : ['yes', 'resolve', 'no'], | |
244 | description : 'default MulticastDNS mode', | |
245 | value : 'yes') | |
246 | option('default-llmnr', type : 'combo', | |
247 | choices : ['yes', 'resolve', 'no'], | |
248 | description : 'default LLMNR mode', | |
249 | value : 'yes') | |
250 | option('dns-over-tls', type : 'combo', choices : ['auto', 'gnutls', 'openssl', 'true', 'false'], | |
251 | description : 'DNS-over-TLS support') | |
252 | option('dns-servers', type : 'string', | |
253 | description : 'space-separated list of default DNS servers', | |
254 | value : '1.1.1.1 8.8.8.8 1.0.0.1 8.8.4.4 2606:4700:4700::1111 2001:4860:4860::8888 2606:4700:4700::1001 2001:4860:4860::8844') | |
255 | option('ntp-servers', type : 'string', | |
256 | description : 'space-separated list of default NTP servers', | |
257 | value : 'time1.google.com time2.google.com time3.google.com time4.google.com') | |
258 | option('support-url', type : 'string', | |
259 | description : 'the support URL to show in catalog entries included in systemd', | |
260 | value : 'https://lists.freedesktop.org/mailman/listinfo/systemd-devel') | |
261 | option('www-target', type : 'string', | |
262 | description : 'the address and dir to upload docs too', | |
263 | value : 'www.freedesktop.org:/srv/www.freedesktop.org/www/software/systemd') | |
264 | ||
265 | option('seccomp', type : 'combo', choices : ['auto', 'true', 'false'], | |
266 | description : 'SECCOMP support') | |
267 | option('selinux', type : 'combo', choices : ['auto', 'true', 'false'], | |
268 | description : 'SELinux support') | |
269 | option('apparmor', type : 'combo', choices : ['auto', 'true', 'false'], | |
270 | description : 'AppArmor support') | |
271 | option('smack', type : 'boolean', | |
272 | description : 'SMACK support') | |
273 | option('smack-run-label', type : 'string', | |
274 | description : 'run systemd --system itself with a specific SMACK label') | |
275 | option('polkit', type : 'combo', choices : ['auto', 'true', 'false'], | |
276 | description : 'polkit support') | |
277 | option('ima', type : 'boolean', | |
278 | description : 'IMA support') | |
279 | ||
280 | option('acl', type : 'combo', choices : ['auto', 'true', 'false'], | |
281 | description : 'libacl support') | |
282 | option('audit', type : 'combo', choices : ['auto', 'true', 'false'], | |
283 | description : 'libaudit support') | |
284 | option('blkid', type : 'combo', choices : ['auto', 'true', 'false'], | |
285 | description : 'libblkid support') | |
286 | option('fdisk', type : 'combo', choices : ['auto', 'true', 'false'], | |
287 | description : 'libfdisk support') | |
288 | option('kmod', type : 'combo', choices : ['auto', 'true', 'false'], | |
289 | description : 'support for loadable modules') | |
290 | option('pam', type : 'combo', choices : ['auto', 'true', 'false'], | |
291 | description : 'PAM support') | |
292 | option('pwquality', type : 'combo', choices : ['auto', 'true', 'false'], | |
293 | description : 'libpwquality support') | |
294 | option('microhttpd', type : 'combo', choices : ['auto', 'true', 'false'], | |
295 | description : 'libµhttpd support') | |
296 | option('libcryptsetup', type : 'combo', choices : ['auto', 'true', 'false'], | |
297 | description : 'libcryptsetup support') | |
298 | option('libcurl', type : 'combo', choices : ['auto', 'true', 'false'], | |
299 | description : 'libcurl support') | |
300 | option('idn', type : 'boolean', | |
301 | description : 'use IDN when printing hostnames') | |
302 | option('libidn2', type : 'combo', choices : ['auto', 'true', 'false'], | |
303 | description : 'libidn2 support') | |
304 | option('libidn', type : 'combo', choices : ['auto', 'true', 'false'], | |
305 | description : 'libidn support') | |
306 | option('libiptc', type : 'combo', choices : ['auto', 'true', 'false'], | |
307 | description : 'libiptc support') | |
308 | option('qrencode', type : 'combo', choices : ['auto', 'true', 'false'], | |
309 | description : 'libqrencode support') | |
310 | option('gcrypt', type : 'combo', choices : ['auto', 'true', 'false'], | |
311 | description : 'gcrypt support') | |
312 | option('gnutls', type : 'combo', choices : ['auto', 'true', 'false'], | |
313 | description : 'gnutls support') | |
314 | option('openssl', type : 'combo', choices : ['auto', 'true', 'false'], | |
315 | description : 'openssl support') | |
316 | option('p11kit', type : 'combo', choices : ['auto', 'true', 'false'], | |
317 | description : 'p11kit support') | |
318 | option('libfido2', type : 'combo', choices : ['auto', 'true', 'false'], | |
319 | description : 'FIDO2 support') | |
320 | option('elfutils', type : 'combo', choices : ['auto', 'true', 'false'], | |
321 | description : 'elfutils support') | |
322 | option('zlib', type : 'combo', choices : ['auto', 'true', 'false'], | |
323 | description : 'zlib compression support') | |
324 | option('bzip2', type : 'combo', choices : ['auto', 'true', 'false'], | |
325 | description : 'bzip2 compression support') | |
326 | option('xz', type : 'combo', choices : ['auto', 'true', 'false'], | |
327 | description : 'xz compression support') | |
328 | option('lz4', type : 'combo', choices : ['auto', 'true', 'false'], | |
329 | description : 'lz4 compression support') | |
330 | option('zstd', type : 'combo', choices : ['auto', 'true', 'false'], | |
331 | description : 'zstd compression support') | |
332 | option('xkbcommon', type : 'combo', choices : ['auto', 'true', 'false'], | |
333 | description : 'xkbcommon keymap support') | |
334 | option('pcre2', type : 'combo', choices : ['auto', 'true', 'false'], | |
335 | description : 'regexp matching support using pcre2') | |
336 | option('glib', type : 'combo', choices : ['auto', 'true', 'false'], | |
337 | description : 'libglib support (for tests only)') | |
338 | option('dbus', type : 'combo', choices : ['auto', 'true', 'false'], | |
339 | description : 'libdbus support (for tests only)') | |
340 | ||
341 | option('gnu-efi', type : 'combo', choices : ['auto', 'true', 'false'], | |
342 | description : 'gnu-efi support for sd-boot') | |
343 | option('efi-cc', type : 'array', | |
344 | description : 'the compiler to use for EFI modules') | |
345 | option('efi-ld', type : 'string', | |
346 | description : 'the linker to use for EFI modules') | |
347 | option('efi-libdir', type : 'string', | |
348 | description : 'path to the EFI lib directory') | |
349 | option('efi-includedir', type : 'string', value : '/usr/include/efi', | |
350 | description : 'path to the EFI header directory') | |
351 | option('tpm-pcrindex', type : 'integer', value : 8, | |
352 | description : 'TPM PCR register number to use') | |
353 | ||
354 | option('bashcompletiondir', type : 'string', | |
355 | description : 'directory for bash completion scripts ["no" disables]') | |
356 | option('zshcompletiondir', type : 'string', | |
357 | description : 'directory for zsh completion scripts ["no" disables]') | |
358 | ||
359 | option('tests', type : 'combo', choices : ['true', 'unsafe', 'false'], | |
360 | description : 'enable extra tests with =unsafe') | |
361 | option('slow-tests', type : 'boolean', value : 'false', | |
362 | description : 'run the slow tests by default') | |
363 | option('fuzz-tests', type : 'boolean', value : 'false', | |
364 | description : 'run the fuzzer regression tests by default') | |
365 | option('install-tests', type : 'boolean', value : 'false', | |
366 | description : 'install test executables') | |
367 | ||
368 | option('ok-color', type: 'combo', | |
369 | choices : ['black', 'red', 'green', 'yellow', 'blue', 'magenta', 'cyan', | |
370 | 'white', 'highlight-black', 'highlight-red', 'highlight-green', | |
371 | 'highlight-yellow', 'highlight-blue', 'highlight-magenta', | |
372 | 'highlight-cyan', 'highlight-white'], | |
373 | value : 'green', | |
374 | description: 'color of the "OK" status message') | |
375 | ||
376 | option('oss-fuzz', type : 'boolean', value : 'false', | |
377 | description : 'build against oss-fuzz') | |
378 | option('llvm-fuzz', type : 'boolean', value : 'false', | |
379 | description : 'build against LLVM libFuzzer') | |
380 | option('kernel-install', type: 'boolean', value: 'true', | |
381 | description : 'install kernel-install and associated files') | |
382 | option('analyze', type: 'boolean', value: 'true', | |
383 | description : 'install systemd-analyze') |