# SPDX-License-Identifier: LGPL-2.1+
project('systemd', 'c',
- version : '242',
+ version : '243',
license : 'LGPLv2+',
default_options: [
'c_std=gnu99',
meson_version : '>= 0.46',
)
-libsystemd_version = '0.26.0'
-libudev_version = '1.6.14'
+libsystemd_version = '0.27.0'
+libudev_version = '1.6.15'
# We need the same data in two different formats, ugh!
# Also, for hysterical reasons, we use different variable
catalogstatedir = join_paths(systemdstatedir, 'catalog')
randomseeddir = join_paths(localstatedir, 'lib/systemd')
profiledir = join_paths(rootlibexecdir, 'portable', 'profile')
+ntpservicelistdir = join_paths(rootprefixdir, 'lib/systemd/ntp-units.d')
docdir = get_option('docdir')
if docdir == ''
possible_link_flags = [
'-Wl,-z,relro',
'-Wl,-z,now',
+ '-fstack-protector',
]
if cc.get_id() == 'clang'
conf.set_quoted('GETTEXT_PACKAGE', meson.project_name())
+service_watchdog = get_option('service-watchdog')
+watchdog_value = service_watchdog == '' ? '' : 'WatchdogSec=' + service_watchdog
+substs.set('SERVICE_WATCHDOG', watchdog_value)
+
substs.set('SUSHELL', get_option('debug-shell'))
substs.set('DEBUGTTY', get_option('debug-tty'))
conf.set_quoted('DEBUGTTY', get_option('debug-tty'))
want_libcryptsetup = get_option('libcryptsetup')
if want_libcryptsetup != 'false' and not skip_deps
libcryptsetup = dependency('libcryptsetup',
- version : '>= 1.6.0',
+ version : '>= 2.0.1',
required : want_libcryptsetup == 'true')
have = libcryptsetup.found()
- have_sector = cc.has_member(
- 'struct crypt_params_plain',
- 'sector_size',
- prefix : '#include <libcryptsetup.h>')
else
have = false
- have_sector = false
libcryptsetup = []
endif
conf.set10('HAVE_LIBCRYPTSETUP', have)
-conf.set10('HAVE_LIBCRYPTSETUP_SECTOR_SIZE', have_sector)
want_libcurl = get_option('libcurl')
if want_libcurl != 'false' and not skip_deps
if dns_over_tls == 'openssl'
have_gnutls = false
else
- have_gnutls = (conf.get('HAVE_GNUTLS') == 1 and libgnutls.version().version_compare('>= 3.5.3'))
+ have_gnutls = (conf.get('HAVE_GNUTLS') == 1 and libgnutls.version().version_compare('>= 3.6.0'))
if dns_over_tls == 'gnutls' and not have_gnutls
error('DNS-over-TLS support was requested with gnutls, but dependencies are not available')
endif
libgcrypt],
c_args : libsystemd_c_args + (static_libsystemd_pic ? [] : ['-fno-PIC']))
+#Generate autosuspend rules
+make_autosuspend_rules_py = find_program('tools/make-autosuspend-rules.py')
+
############################################################
# binaries that have --help and are intended for use by humans,
subdir('src/test')
subdir('src/fuzz')
-subdir('rules')
+subdir('rules.d')
subdir('test')
############################################################
'-shared',
'-Wl,--version-script=' + version_script_arg],
link_with : [libsystemd_static,
+ libshared_static,
libbasic],
dependencies : [threads,
librt],
install_rpath : rootlibexecdir,
install : true,
install_dir : rootlibexecdir)
-
- public_programs += exe
endif
if conf.get('ENABLE_BINFMT') == 1
if conf.get('ENABLE_NETWORKD') == 1
executable('systemd-networkd',
systemd_networkd_sources,
- include_directories : includes,
+ include_directories : network_include_dir,
link_with : [libnetworkd_core,
libsystemd_network,
libudev_static,
xml_helper_py = find_program('tools/xml_helper.py')
hwdb_update_sh = find_program('tools/meson-hwdb-update.sh')
-subdir('units')
subdir('sysctl.d')
subdir('sysusers.d')
subdir('tmpfiles.d')
+subdir('hwdb.d')
+subdir('units')
subdir('presets')
-subdir('hwdb')
subdir('network')
subdir('man')
subdir('shell-completion/bash')
command : [meson_check_api_docs_sh, libsystemd.full_path(), libudev.full_path()])
############################################################
+watchdog_opt = service_watchdog == '' ? 'disabled' : service_watchdog
status = [
'@0@ @1@'.format(meson.project_name(), meson.project_version()),
'default cgroup hierarchy: @0@'.format(default_hierarchy),
'default net.naming-scheme setting: @0@'.format(default_net_naming_scheme),
'default KillUserProcesses setting: @0@'.format(kill_user_processes),
- 'default locale: @0@'.format(default_locale)]
+ 'default locale: @0@'.format(default_locale),
+ 'systemd service watchdog: @0@'.format(watchdog_opt)]
alt_dns_servers = '\n '.join(dns_servers.split(' '))
alt_ntp_servers = '\n '.join(ntp_servers.split(' '))