]>
Commit | Line | Data |
---|---|---|
1 | # -*- mode: meson -*- | |
2 | # SPDX-License-Identifier: LGPL-2.1+ | |
3 | # | |
4 | # Copyright 2017 Zbigniew Jędrzejewski-Szmek | |
5 | ||
6 | option('split-usr', type : 'combo', choices : ['auto', 'true', 'false'], | |
7 | description : '''/bin, /sbin aren't symlinks into /usr''') | |
8 | option('split-bin', type : 'combo', choices : ['auto', 'true', 'false'], | |
9 | description : '''sbin is not a symlink to bin''') | |
10 | option('rootlibdir', type : 'string', | |
11 | description : '''[/usr]/lib/x86_64-linux-gnu or such''') | |
12 | option('rootprefix', type : 'string', | |
13 | description : '''override the root prefix''') | |
14 | option('link-udev-shared', type : 'boolean', | |
15 | description : 'link systemd-udev and its helpers to libsystemd-shared.so') | |
16 | option('link-systemctl-shared', type: 'boolean', | |
17 | description : 'link systemctl against libsystemd-shared.so') | |
18 | option('static-libsystemd', type : 'combo', | |
19 | choices : ['false', 'true', 'pic', 'no-pic'], | |
20 | description : '''install a static library for libsystemd''') | |
21 | option('static-libudev', type : 'combo', | |
22 | choices : ['false', 'true', 'pic', 'no-pic'], | |
23 | description : '''install a static library for libudev''') | |
24 | ||
25 | option('sysvinit-path', type : 'string', value : '/etc/init.d', | |
26 | description : 'the directory where the SysV init scripts are located') | |
27 | option('sysvrcnd-path', type : 'string', value : '/etc/rc.d', | |
28 | description : 'the base directory for SysV rcN.d directories') | |
29 | option('telinit-path', type : 'string', value : '/lib/sysvinit/telinit', | |
30 | description : 'path to telinit') | |
31 | option('rc-local', type : 'string', | |
32 | value : '/etc/rc.local') | |
33 | option('halt-local', type : 'string', | |
34 | value : '/usr/sbin/halt.local') | |
35 | ||
36 | option('quotaon-path', type : 'string', description : 'path to quotaon') | |
37 | option('quotacheck-path', type : 'string', description : 'path to quotacheck') | |
38 | option('kill-path', type : 'string', description : 'path to kill') | |
39 | option('kmod-path', type : 'string', description : 'path to kmod') | |
40 | option('kexec-path', type : 'string', description : 'path to kexec') | |
41 | option('sulogin-path', type : 'string', description : 'path to sulogin') | |
42 | option('mount-path', type : 'string', description : 'path to mount') | |
43 | option('umount-path', type : 'string', description : 'path to umount') | |
44 | option('loadkeys-path', type : 'string', description : 'path to loadkeys') | |
45 | option('setfont-path', type : 'string', description : 'path to setfont') | |
46 | ||
47 | option('debug-shell', type : 'string', value : '/bin/sh', | |
48 | description : 'path to debug shell binary') | |
49 | option('debug-tty', type : 'string', value : '/dev/tty9', | |
50 | description : 'specify the tty device for debug shell') | |
51 | option('debug', type : 'array', choices : ['hashmap', 'mmap-cache'], value : [], | |
52 | description : 'enable extra debugging') | |
53 | option('memory-accounting-default', type : 'boolean', | |
54 | description : 'enable MemoryAccounting= by default') | |
55 | option('valgrind', type : 'boolean', value : false, | |
56 | description : 'do extra operations to avoid valgrind warnings') | |
57 | ||
58 | option('utmp', type : 'boolean', | |
59 | description : 'support for utmp/wtmp log handling') | |
60 | option('hibernate', type : 'boolean', | |
61 | description : 'support for hibernation') | |
62 | option('ldconfig', type : 'boolean', | |
63 | description : 'support for dynamic linker cache creation') | |
64 | option('resolve', type : 'boolean', | |
65 | description : 'systemd-resolved stack') | |
66 | option('efi', type : 'boolean', | |
67 | description : 'enable systemd-boot and bootctl') | |
68 | option('tpm', type : 'boolean', | |
69 | description : 'TPM should be used to log events and extend the registers') | |
70 | option('environment-d', type : 'boolean', | |
71 | description : 'support for environment.d') | |
72 | option('binfmt', type : 'boolean', | |
73 | description : 'support for custom binary formats') | |
74 | option('coredump', type : 'boolean', | |
75 | description : 'install the coredump handler') | |
76 | option('logind', type : 'boolean', | |
77 | description : 'install the systemd-logind stack') | |
78 | option('hostnamed', type : 'boolean', | |
79 | description : 'install the systemd-hostnamed stack') | |
80 | option('localed', type : 'boolean', | |
81 | description : 'install the systemd-localed stack') | |
82 | option('machined', type : 'boolean', | |
83 | description : 'install the systemd-machined stack') | |
84 | option('portabled', type : 'boolean', | |
85 | description : 'install the systemd-portabled stack') | |
86 | option('networkd', type : 'boolean', | |
87 | description : 'install the systemd-networkd stack') | |
88 | option('timedated', type : 'boolean', | |
89 | description : 'install the systemd-timedated daemon') | |
90 | option('timesyncd', type : 'boolean', | |
91 | description : 'install the systemd-timesyncd daemon') | |
92 | option('remote', type : 'combo', choices : ['auto', 'true', 'false'], | |
93 | description : 'support for "journal over the network"') | |
94 | option('myhostname', type : 'boolean', | |
95 | description : 'nss-myhostname support') | |
96 | option('firstboot', type : 'boolean', | |
97 | description : 'support for firstboot mechanism') | |
98 | option('randomseed', type : 'boolean', | |
99 | description : 'support for restoring random seed') | |
100 | option('backlight', type : 'boolean', | |
101 | description : 'support for restoring backlight state') | |
102 | option('vconsole', type : 'boolean', | |
103 | description : 'support for vconsole configuration') | |
104 | option('quotacheck', type : 'boolean', | |
105 | description : 'support for the quotacheck tools') | |
106 | option('sysusers', type : 'boolean', | |
107 | description : 'support for the sysusers configuration') | |
108 | option('tmpfiles', type : 'boolean', | |
109 | description : 'support for tmpfiles.d') | |
110 | option('importd', type : 'combo', choices : ['auto', 'true', 'false'], | |
111 | description : 'install the systemd-importd daemon') | |
112 | option('hwdb', type : 'boolean', | |
113 | description : 'support for the hardware database') | |
114 | option('rfkill', type : 'boolean', | |
115 | description : 'support for the rfkill tools') | |
116 | option('man', type : 'combo', choices : ['auto', 'true', 'false'], | |
117 | description : 'build and install man pages') | |
118 | option('html', type : 'combo', choices : ['auto', 'true', 'false'], | |
119 | value : 'false', | |
120 | description : 'build and install html pages') | |
121 | ||
122 | option('certificate-root', type : 'string', value : '/etc/ssl', | |
123 | description : 'the prefix for TLS certificates') | |
124 | option('dbuspolicydir', type : 'string', | |
125 | description : 'D-Bus policy directory') | |
126 | option('dbussessionservicedir', type : 'string', | |
127 | description : 'D-Bus session service directory') | |
128 | option('dbussystemservicedir', type : 'string', | |
129 | description : 'D-Bus system service directory') | |
130 | option('pkgconfigdatadir', type : 'string', value : 'share/pkgconfig', | |
131 | description : 'directory for ') | |
132 | option('pkgconfiglibdir', type : 'string', value : '', | |
133 | description : 'directory for ') | |
134 | option('rpmmacrosdir', type : 'string', value : 'lib/rpm/macros.d', | |
135 | description : 'directory for rpm macros ["no" disables]') | |
136 | option('pamlibdir', type : 'string', | |
137 | description : 'directory for PAM modules') | |
138 | option('pamconfdir', type : 'string', | |
139 | description : 'directory for PAM configuration ["no" disables]') | |
140 | option('docdir', type : 'string', | |
141 | description : 'documentation directory') | |
142 | ||
143 | option('fallback-hostname', type : 'string', value : 'localhost', | |
144 | description : 'the hostname used if none configured') | |
145 | option('compat-gateway-hostname', type : 'boolean', value : 'false', | |
146 | description : 'allow "gateway" as the symbolic name for default gateway') | |
147 | option('default-hierarchy', type : 'combo', | |
148 | choices : ['legacy', 'hybrid', 'unified'], value : 'hybrid', | |
149 | description : 'default cgroup hierarchy') | |
150 | option('time-epoch', type : 'string', | |
151 | description : 'time epoch for time clients') | |
152 | option('system-uid-max', type : 'string', | |
153 | description : 'maximum system UID') | |
154 | option('system-gid-max', type : 'string', | |
155 | description : 'maximum system GID') | |
156 | option('dynamic-uid-min', type : 'string', | |
157 | description : 'minimum dynamic UID', | |
158 | value : '61184') # That's → 0x0000EF00 in hex | |
159 | option('dynamic-uid-max', type : 'string', | |
160 | description : 'maximum dynamic UID', | |
161 | value : '65519') # That's → 0x0000FFEF in hex | |
162 | option('container-uid-base-min', type : 'string', | |
163 | description : 'minimum container UID base', | |
164 | value : '524288') # That's → 0x00080000 in hex | |
165 | option('container-uid-base-max', type : 'string', | |
166 | description : 'maximum container UID base', | |
167 | value : '1878982656') # That's → 0x6FFF0000 in hex | |
168 | option('tty-gid', type : 'string', | |
169 | description : 'the numeric GID of the "tty" group', | |
170 | value : '5') | |
171 | option('users-gid', type : 'string', | |
172 | description : 'the numeric GID of the "users" group') | |
173 | option('adm-group', type : 'boolean', | |
174 | description : 'the ACL for adm group should be added') | |
175 | option('wheel-group', type : 'boolean', | |
176 | description : 'the ACL for wheel group should be added') | |
177 | option('nobody-user', type : 'string', | |
178 | description : 'The name of the nobody user (the one with UID 65534)', | |
179 | value : 'nobody') | |
180 | option('nobody-group', type : 'string', | |
181 | description : 'The name of the nobody group (the one with GID 65534)', | |
182 | value : 'nobody') | |
183 | option('dev-kvm-mode', type : 'string', value : '0666', | |
184 | description : '/dev/kvm access mode') | |
185 | option('group-render-mode', type : 'string', value : '0666', | |
186 | description : 'Access mode for devices owned by render group (e.g. /dev/dri/renderD*, /dev/kfd).') | |
187 | option('default-kill-user-processes', type : 'boolean', | |
188 | description : 'the default value for KillUserProcesses= setting') | |
189 | option('gshadow', type : 'boolean', | |
190 | description : 'support for shadow group') | |
191 | ||
192 | option('default-dnssec', type : 'combo', | |
193 | description : 'default DNSSEC mode', | |
194 | choices : ['yes', 'allow-downgrade', 'no'], | |
195 | value : 'allow-downgrade') | |
196 | option('dns-servers', type : 'string', | |
197 | description : 'space-separated list of default DNS servers', | |
198 | value : '8.8.8.8 8.8.4.4 2001:4860:4860::8888 2001:4860:4860::8844') | |
199 | option('ntp-servers', type : 'string', | |
200 | description : 'space-separated list of default NTP servers', | |
201 | value : 'time1.google.com time2.google.com time3.google.com time4.google.com') | |
202 | option('support-url', type : 'string', | |
203 | description : 'the support URL to show in catalog entries included in systemd', | |
204 | value : 'https://lists.freedesktop.org/mailman/listinfo/systemd-devel') | |
205 | option('www-target', type : 'string', | |
206 | description : 'the address and dir to upload docs too', | |
207 | value : 'www.freedesktop.org:/srv/www.freedesktop.org/www/software/systemd') | |
208 | ||
209 | option('seccomp', type : 'combo', choices : ['auto', 'true', 'false'], | |
210 | description : 'SECCOMP support') | |
211 | option('selinux', type : 'combo', choices : ['auto', 'true', 'false'], | |
212 | description : 'SELinux support') | |
213 | option('apparmor', type : 'combo', choices : ['auto', 'true', 'false'], | |
214 | description : 'AppArmor support') | |
215 | option('smack', type : 'boolean', | |
216 | description : 'SMACK support') | |
217 | option('smack-run-label', type : 'string', | |
218 | description : 'run systemd --system itself with a specific SMACK label') | |
219 | option('polkit', type : 'combo', choices : ['auto', 'true', 'false'], | |
220 | description : 'PolicyKit support') | |
221 | option('ima', type : 'boolean', | |
222 | description : 'IMA support') | |
223 | ||
224 | option('acl', type : 'combo', choices : ['auto', 'true', 'false'], | |
225 | description : 'libacl support') | |
226 | option('audit', type : 'combo', choices : ['auto', 'true', 'false'], | |
227 | description : 'libaudit support') | |
228 | option('blkid', type : 'combo', choices : ['auto', 'true', 'false'], | |
229 | description : 'libblkid support') | |
230 | option('kmod', type : 'combo', choices : ['auto', 'true', 'false'], | |
231 | description : 'support for loadable modules') | |
232 | option('pam', type : 'combo', choices : ['auto', 'true', 'false'], | |
233 | description : 'PAM support') | |
234 | option('microhttpd', type : 'combo', choices : ['auto', 'true', 'false'], | |
235 | description : 'libµhttpd support') | |
236 | option('libcryptsetup', type : 'combo', choices : ['auto', 'true', 'false'], | |
237 | description : 'libcryptsetup support') | |
238 | option('libcurl', type : 'combo', choices : ['auto', 'true', 'false'], | |
239 | description : 'libcurl support') | |
240 | option('idn', type : 'boolean', | |
241 | description : 'use IDN when printing host names') | |
242 | option('libidn2', type : 'combo', choices : ['auto', 'true', 'false'], | |
243 | description : 'libidn2 support') | |
244 | option('libidn', type : 'combo', choices : ['auto', 'true', 'false'], | |
245 | description : 'libidn support') | |
246 | option('nss-systemd', type : 'boolean', | |
247 | description : 'enable nss-systemd') | |
248 | option('libiptc', type : 'combo', choices : ['auto', 'true', 'false'], | |
249 | description : 'libiptc support') | |
250 | option('qrencode', type : 'combo', choices : ['auto', 'true', 'false'], | |
251 | description : 'libqrencode support') | |
252 | option('gcrypt', type : 'combo', choices : ['auto', 'true', 'false'], | |
253 | description : 'gcrypt support') | |
254 | option('gnutls', type : 'combo', choices : ['auto', 'true', 'false'], | |
255 | description : 'gnutls support') | |
256 | option('elfutils', type : 'combo', choices : ['auto', 'true', 'false'], | |
257 | description : 'elfutils support') | |
258 | option('zlib', type : 'combo', choices : ['auto', 'true', 'false'], | |
259 | description : 'zlib compression support') | |
260 | option('bzip2', type : 'combo', choices : ['auto', 'true', 'false'], | |
261 | description : 'bzip2 compression support') | |
262 | option('xz', type : 'combo', choices : ['auto', 'true', 'false'], | |
263 | description : 'xz compression support') | |
264 | option('lz4', type : 'combo', choices : ['auto', 'true', 'false'], | |
265 | description : 'lz4 compression support') | |
266 | option('xkbcommon', type : 'combo', choices : ['auto', 'true', 'false'], | |
267 | description : 'xkbcommon keymap support') | |
268 | option('pcre2', type : 'combo', choices : ['auto', 'true', 'false'], | |
269 | description : 'regexp matching support using pcre2') | |
270 | option('glib', type : 'combo', choices : ['auto', 'true', 'false'], | |
271 | description : 'libglib support (for tests only)') | |
272 | option('dbus', type : 'combo', choices : ['auto', 'true', 'false'], | |
273 | description : 'libdbus support (for tests only)') | |
274 | ||
275 | option('gnu-efi', type : 'combo', choices : ['auto', 'true', 'false'], | |
276 | description : 'gnu-efi support for sd-boot') | |
277 | option('efi-cc', type : 'string', value : 'gcc', | |
278 | description : 'the compiler to use for EFI modules') | |
279 | option('efi-ld', type : 'string', value : 'ld', | |
280 | description : 'the linker to use for EFI modules') | |
281 | option('efi-libdir', type : 'string', | |
282 | description : 'path to the EFI lib directory') | |
283 | option('efi-ldsdir', type : 'string', | |
284 | description : 'path to the EFI lds directory') | |
285 | option('efi-includedir', type : 'string', value : '/usr/include/efi', | |
286 | description : 'path to the EFI header directory') | |
287 | option('tpm-pcrindex', type : 'string', value : '8', | |
288 | description : 'TPM PCR register number to use') | |
289 | ||
290 | option('bashcompletiondir', type : 'string', | |
291 | description : 'directory for bash completion scripts ["no" disables]') | |
292 | option('zshcompletiondir', type : 'string', | |
293 | description : 'directory for zsh completion scripts ["no" disables]') | |
294 | ||
295 | option('tests', type : 'combo', choices : ['true', 'unsafe', 'false'], | |
296 | description : 'enable extra tests with =unsafe') | |
297 | option('slow-tests', type : 'boolean', value : 'false', | |
298 | description : 'run the slow tests by default') | |
299 | option('install-tests', type : 'boolean', value : 'false', | |
300 | description : 'install test executables') | |
301 | ||
302 | option('ok-color', type: 'combo', | |
303 | choices : ['black', 'red', 'green', 'yellow', 'blue', 'magenta', 'cyan', | |
304 | 'white', 'highlight-black', 'highlight-red', 'highlight-green', | |
305 | 'highlight-yellow', 'highlight-blue', 'highlight-magenta', | |
306 | 'highlight-cyan', 'highlight-white'], | |
307 | value : 'green', | |
308 | description: 'color of the "OK" status message') | |
309 | ||
310 | option('oss-fuzz', type : 'boolean', value : 'false', | |
311 | description : 'build against oss-fuzz') | |
312 | option('llvm-fuzz', type : 'boolean', value : 'false', | |
313 | description : 'build against LLVM libFuzzer') |