lxcpathprefix = get_option('config-path')
rootfsmount = get_option('rootfs-mount-dir')
runtimepath = join_paths(prefixdir, get_option('runtime-path'))
+wants_io_uring = get_option('io-uring-event-loop')
conf.set_quoted('BINDIR', bindir)
conf.set_quoted('DATADIR', datadir)
conf.set10('HAVE_' + ident[0].to_upper(), have)
endforeach
+if wants_io_uring == true
+ liburing = dependency('liburing')
+ conf.set10('HAVE_LIBURING', liburing.found())
+endif
+
sh = find_program('sh')
git = find_program('git', required : false)
time_epoch = run_command(sh, '-c', 'echo "$SOURCE_DATE_EPOCH"').stdout().strip()
subdir('src/lxc/tools/include')
subdir('src/lxc')
+liblxc_dependencies = [threads,
+ libseccomp,
+ libcap,
+ libopenssl,
+ libselinux,
+ libapparmor]
+
+if wants_io_uring == true
+ liblxc_dependencies += [liburing]
+endif
+
liblxc = shared_library(
'lxc',
version : liblxc_version,
link_args : ['-DPIC'],
c_args : ['-DPIC'],
link_whole : [liblxc_static],
- dependencies : [threads,
- libseccomp,
- libcap,
- libopenssl,
- libselinux,
- libapparmor],
+ dependencies: liblxc_dependencies,
install : true)
liblxc_dep = declare_dependency(
link_with: liblxc,
- dependencies : [threads,
- libseccomp,
- libcap,
- libopenssl,
- libselinux,
- libapparmor])
+ dependencies: liblxc_dependencies)
dummy_config_data = configuration_data()
dummy_config_data.set_quoted('DUMMY_VARIABLE', '1')
['libcap'],
['static libcap'],
['openssl'],
+ ['liburing'],
]
if tuple.length() >= 2
option('user-network-db', type : 'string', value : 'lxc/nics',
description : 'user network database')
+
+option('io-uring-event-loop', type : 'boolean', value: 'false',
+ description : 'enable io-uring based event loop')