# SPDX-License-Identifier: LGPL-2.1-or-later
project('systemd', 'c',
- version : '254',
+ version : '255',
license : 'LGPLv2+',
default_options: [
'c_std=gnu11',
meson_version : '>= 0.60.0',
)
-libsystemd_version = '0.37.0'
-libudev_version = '1.7.7'
+libsystemd_version = '0.38.0'
+libudev_version = '1.7.8'
conf = configuration_data()
conf.set_quoted('PROJECT_URL', 'https://systemd.io/')
ntpservicelistdir = prefixdir / 'lib/systemd/ntp-units.d'
credstoredir = prefixdir / 'lib/credstore'
+configfiledir = get_option('configfiledir')
+if configfiledir == ''
+ configfiledir= sysconfdir
+endif
+pkgconfigfiledir = configfiledir / 'systemd'
+
docdir = get_option('docdir')
if docdir == ''
docdir = datadir / 'doc/systemd'
conf.set_quoted('SYSCTL_DIR', sysctldir)
conf.set_quoted('SYSTEMCTL_BINARY_PATH', bindir / 'systemctl')
conf.set_quoted('SYSTEMD_BINARY_PATH', libexecdir / 'systemd')
+conf.set_quoted('SYSTEMD_EXECUTOR_BINARY_PATH', libexecdir / 'systemd-executor')
conf.set_quoted('SYSTEMD_CATALOG_DIR', catalogdir)
conf.set_quoted('SYSTEMD_CGROUPS_AGENT_PATH', libexecdir / 'systemd-cgroups-agent')
conf.set_quoted('SYSTEMD_CRYPTSETUP_PATH', bindir / 'systemd-cryptsetup')
add_project_arguments(cxx.get_supported_arguments(basic_disabled_warnings), language : 'cpp')
endif
-cpp = ' '.join(cc.cmd_array()) + ' -E'
+cpp = ' '.join(cc.cmd_array() + get_option('c_args')) + ' -E'
has_wstringop_truncation = cc.has_argument('-Wstringop-truncation')
['memfd_create', '''#include <sys/mman.h>'''],
['gettid', '''#include <sys/types.h>
#include <unistd.h>'''],
+ ['fchmodat2', '''#include <stdlib.h>
+ #include <fcntl.h>'''], # no known header declares fchmodat2
['pivot_root', '''#include <stdlib.h>
#include <unistd.h>'''], # no known header declares pivot_root
['ioprio_get', '''#include <sched.h>'''], # no known header declares ioprio_get
conf.set('EXTRA_NET_NAMING_MAP', ' '.join(extra_net_naming_map))
default_net_naming_scheme = get_option('default-net-naming-scheme')
-conf.set_quoted('DEFAULT_NET_NAMING_SCHEME', default_net_naming_scheme)
+conf.set_quoted('DEFAULT_NET_NAMING_SCHEME', default_net_naming_scheme,
+ description : 'Default naming scheme as a string')
if default_net_naming_scheme != 'latest'
- conf.set('_DEFAULT_NET_NAMING_SCHEME_TEST',
- 'NAMING_' + default_net_naming_scheme.underscorify().to_upper())
+ conf.set('_DEFAULT_NET_NAMING_SCHEME',
+ 'NAMING_' + default_net_naming_scheme.underscorify().to_upper(),
+ description : 'Default naming scheme as a constant')
endif
time_epoch = get_option('time-epoch')
endif
if nobody_user != nobody_group and not (nobody_user == 'nobody' and nobody_group == 'nogroup')
warning('\n' +
- 'The configured user name "@0@" and group name "@0@" of the nobody user/group are not equivalent.\n'.format(nobody_user, nobody_group) +
+ 'The configured user name "@0@" and group name "@1@" of the nobody user/group are not equivalent.\n'.format(nobody_user, nobody_group) +
'Please re-check that both "nobody-user" and "nobody-group" options are correctly set.')
endif
error_message : 'fdisk and openssl required').allowed()
conf.set10('ENABLE_SYSUPDATE', have)
+conf.set10('ENABLE_STORAGETM', get_option('storagetm'))
+
have = get_option('importd').require(
conf.get('HAVE_LIBCURL') == 1 and
conf.get('HAVE_OPENSSL_OR_GCRYPT') == 1 and
generate_gperfs = find_program('tools/generate-gperfs.py')
make_autosuspend_rules_py = find_program('tools/make-autosuspend-rules.py')
make_directive_index_py = find_program('tools/make-directive-index.py')
+sync_docs_py = find_program('tools/sync-docs.py')
make_man_index_py = find_program('tools/make-man-index.py')
meson_render_jinja2 = find_program('tools/meson-render-jinja2.py')
update_dbus_docs_py = find_program('tools/update-dbus-docs.py')
subdir('src/sysupdate')
subdir('src/sysusers')
subdir('src/sysv-generator')
+subdir('src/storagetm')
subdir('src/timedate')
subdir('src/timesync')
-subdir('src/tpm2-setup')
subdir('src/tmpfiles')
+subdir('src/tpm2-setup')
subdir('src/tty-ask-password-agent')
subdir('src/update-done')
subdir('src/update-utmp')
subdir('src/user-sessions')
subdir('src/userdb')
+subdir('src/varlinkctl')
subdir('src/vconsole')
subdir('src/veritysetup')
subdir('src/volatile-root')
['systemd-analyze', conf.get('ENABLE_ANALYZE') == 1],
['sysupdate'],
['sysusers'],
+ ['storagetm'],
['timedated'],
['timesyncd'],
['tmpfiles'],