project('systemd', 'c',
- version : '234',
+ version : '235',
license : 'LGPLv2+',
default_options: [
'c_std=gnu99',
meson_version : '>= 0.40',
)
+libsystemd_version = '0.19.0'
+libudev_version = '1.6.6'
+
# We need the same data in three different formats, ugh!
# Also, for hysterical reasons, we use different variable
# names, sometimes. Not all variables are included in every
varlogdir = join_paths(localstatedir, 'log')
xinitrcdir = join_paths(sysconfdir, 'X11/xinit/xinitrc.d')
rpmmacrosdir = get_option('rpmmacrosdir')
+modprobedir = join_paths(prefixdir, 'lib/modprobe.d')
# Our own paths
pkgdatadir = join_paths(datadir, 'systemd')
foreach arg : ['unused-parameter',
'missing-field-initializers',
'unused-result',
- 'format-signedness']
+ 'format-signedness',
+ 'error=nonnull', # work-around for gcc 7.1 turning this on on its own
+ ]
if cc.has_argument('-W' + arg)
add_project_arguments('-Wno-' + arg, language : 'c')
endif
decl_headers = '''
#include <uchar.h>
#include <linux/ethtool.h>
+#include <linux/fib_rules.h>
'''
# FIXME: key_serial_t is only defined in keyutils.h, this is bound to fail
'char32_t',
'key_serial_t',
'struct ethtool_link_settings',
+ 'struct fib_rule_uid_range',
]
# We get -1 if the size cannot be determined
['IFLA_BR_VLAN_DEFAULT_PVID', 'linux/if_link.h'],
['NDA_IFINDEX', 'linux/neighbour.h'],
['IFA_FLAGS', 'linux/if_addr.h'],
+ ['FRA_UID_RANGE', 'linux/fib_rules.h'],
['LO_FLAGS_PARTSCAN', 'linux/loop.h'],
]
prefix = decl.length() > 2 ? decl[2] : ''
#include <keyutils.h>'''],
['copy_file_range', '''#include <sys/syscall.h>
#include <unistd.h>'''],
+ ['bpf', '''#include <sys/syscall.h>
+ #include <unistd.h>'''],
['explicit_bzero' , '''#include <string.h>'''],
]
############################################################
conf.set_quoted('FALLBACK_HOSTNAME', get_option('fallback-hostname'))
+conf.set10('ENABLE_COMPAT_GATEWAY_HOSTNAME', get_option('compat-gateway-hostname'))
+gateway_hostnames = ['_gateway'] + (conf.get('ENABLE_COMPAT_GATEWAY_HOSTNAME') == 1 ? ['gateway'] : [])
default_hierarchy = get_option('default-hierarchy')
conf.set_quoted('DEFAULT_HIERARCHY_NAME', default_hierarchy,
endif
libmount = dependency('mount',
- version : '>= 2.27')
+ version : '>= 2.30')
want_seccomp = get_option('seccomp')
if want_seccomp != 'false'
install_tests = get_option('install-tests')
tests = []
+conf.set10('SYSTEMD_SLOW_TESTS_DEFAULT', get_option('slow-tests'))
+
#####################################################################
if get_option('efi')
'src/libsystemd/sd-netlink',
'src/libsystemd/sd-network',
'src/libsystemd-network',
+ '.',
)
add_project_arguments('-include', 'config.h', language : 'c')
'systemd',
libsystemd_internal_sources,
journal_internal_sources,
- version : '0.19.0',
+ version : libsystemd_version,
include_directories : includes,
link_args : ['-shared',
'-Wl,--version-script=' + libsystemd_sym_path],
install_rpath : rootlibexecdir,
install : true,
install_dir : rootlibexecdir)
-endif
-exe = executable('networkctl',
- networkctl_sources,
- include_directories : includes,
- link_with : [libsystemd_network,
+ exe = executable('networkctl',
+ networkctl_sources,
+ include_directories : includes,
+ link_with : [libsystemd_network,
libshared],
- install_rpath : rootlibexecdir,
- install : true,
- install_dir : rootbindir)
-public_programs += [exe]
-
+ install_rpath : rootlibexecdir,
+ install : true,
+ install_dir : rootbindir)
+ public_programs += [exe]
+endif
############################################################
foreach tuple : tests
install_dir : xinitrcdir)
install_data('system-preset/90-systemd.preset',
install_dir : systempresetdir)
+install_data('modprobe.d/systemd.conf',
+ install_dir : modprobedir)
install_data('README',
'NEWS',
'CODING_STYLE',
if git.found()
all_files = run_command(
git,
- ['--git-dir=@0@/.git'.format(meson.source_root()),
+ ['--git-dir=@0@/.git'.format(meson.current_source_dir()),
'ls-files',
':/*.[ch]'])
all_files = files(all_files.stdout().split())
- run_target(
+ custom_target(
'tags',
- input : all_files,
- command : ['env', 'etags', '-o', '@0@/TAGS'.format(meson.source_root())] + all_files)
- run_target(
+ output : 'tags',
+ command : ['env', 'etags', '-o', '@0@/TAGS'.format(meson.current_source_dir())] + all_files)
+ custom_target(
'ctags',
- input : all_files,
- command : ['env', 'ctags', '-o', '@0@/tags'.format(meson.source_root())] + all_files)
+ output : 'ctags',
+ command : ['env', 'ctags', '-o', '@0@/tags'.format(meson.current_source_dir())] + all_files)
endif
if git.found()
if git.found()
git_head = run_command(
git,
- ['--git-dir=@0@/.git'.format(meson.source_root()),
+ ['--git-dir=@0@/.git'.format(meson.current_source_dir()),
'rev-parse', 'HEAD']).stdout().strip()
git_head_short = run_command(
git,
- ['--git-dir=@0@/.git'.format(meson.source_root()),
+ ['--git-dir=@0@/.git'.format(meson.current_source_dir()),
'rev-parse', '--short=7', 'HEAD']).stdout().strip()
run_target(
'git-snapshot',
command : ['git', 'archive',
- '-o', '@0@/systemd-@1@.tar.gz'.format(meson.source_root(),
+ '-o', '@0@/systemd-@1@.tar.gz'.format(meson.current_source_dir(),
git_head_short),
'--prefix', 'systemd-@0@/'.format(git_head),
'HEAD'])
'PAM modules dir: @0@'.format(pamlibdir),
'PAM configuration dir: @0@'.format(pamconfdir),
'RPM macros dir: @0@'.format(rpmmacrosdir),
+ 'modprobe.d dir: @0@'.format(modprobedir),
'D-Bus policy dir: @0@'.format(dbuspolicydir),
'D-Bus session dir: @0@'.format(dbussessionservicedir),
'D-Bus system dir: @0@'.format(dbussystemservicedir),
'nobody user name: @0@'.format(get_option('nobody-user')),
'nobody group name: @0@'.format(get_option('nobody-group')),
'fallback hostname: @0@'.format(get_option('fallback-hostname')),
+ 'symbolic gateway hostnames: @0@'.format(', '.join(gateway_hostnames)),
'default DNSSEC mode: @0@'.format(default_dnssec),
'default cgroup hierarchy: @0@'.format(default_hierarchy),