X-Git-Url: http://git.ipfire.org/?a=blobdiff_plain;f=meson.build;h=46f3e9c7ba31179196b9d2b3a1251585a671e38f;hb=287cf2d802263c909553689869b2146c67bb765f;hp=3085af49fd7e19ebf5b7cdf1eebf10e0e169e079;hpb=da4dd97405eac3f692f7bd032983adc8b780c8b6;p=thirdparty%2Fsystemd.git diff --git a/meson.build b/meson.build index 3085af49fd7..46f3e9c7ba3 100644 --- a/meson.build +++ b/meson.build @@ -243,6 +243,7 @@ conf.set_quoted('SYSTEMD_EXPORT_PATH', join_paths(rootlib conf.set_quoted('VENDOR_KEYRING_PATH', join_paths(rootlibexecdir, 'import-pubring.gpg')) conf.set_quoted('USER_KEYRING_PATH', join_paths(pkgsysconfdir, 'import-pubring.gpg')) conf.set_quoted('DOCUMENT_ROOT', join_paths(pkgdatadir, 'gatewayd')) +conf.set_quoted('SYSTEMD_USERWORK_PATH', join_paths(rootlibexecdir, 'systemd-userwork')) conf.set10('MEMORY_ACCOUNTING_DEFAULT', memory_accounting_default) conf.set_quoted('MEMORY_ACCOUNTING_DEFAULT_YES_NO', memory_accounting_default ? 'yes' : 'no') conf.set('STATUS_UNIT_FORMAT_DEFAULT', 'STATUS_UNIT_FORMAT_' + status_unit_format_default.to_upper()) @@ -1104,6 +1105,18 @@ else endif conf.set10('HAVE_OPENSSL', have) +want_p11kit = get_option('p11kit') +if want_p11kit != 'false' and not skip_deps + libp11kit = dependency('p11-kit-1', + version : '>= 0.23.3', + required : want_p11kit == 'true') + have = libp11kit.found() +else + have = false + libp11kit = [] +endif +conf.set10('HAVE_P11KIT', have) + want_elfutils = get_option('elfutils') if want_elfutils != 'false' and not skip_deps libdw = dependency('libdw', @@ -1310,6 +1323,7 @@ foreach term : ['utmp', 'localed', 'machined', 'portabled', + 'userdb', 'networkd', 'timedated', 'timesyncd', @@ -1526,6 +1540,7 @@ subdir('src/kernel-install') subdir('src/locale') subdir('src/machine') subdir('src/portable') +subdir('src/userdb') subdir('src/nspawn') subdir('src/resolve') subdir('src/timedate') @@ -1552,7 +1567,7 @@ test_dlopen = executable( build_by_default : want_tests != 'false') foreach tuple : [['myhostname', 'ENABLE_NSS_MYHOSTNAME'], - ['systemd', 'ENABLE_NSS_SYSTEMD'], + ['systemd', 'ENABLE_NSS_SYSTEMD', 'src/nss-systemd/userdb-glue.c src/nss-systemd/userdb-glue.h'], ['mymachines', 'ENABLE_NSS_MYMACHINES'], ['resolve', 'ENABLE_NSS_RESOLVE']] @@ -1563,9 +1578,14 @@ foreach tuple : [['myhostname', 'ENABLE_NSS_MYHOSTNAME'], sym = 'src/nss-@0@/nss-@0@.sym'.format(module) version_script_arg = join_paths(project_source_root, sym) + sources = ['src/nss-@0@/nss-@0@.c'.format(module)] + if tuple.length() > 2 + sources += tuple[2].split() + endif + nss = shared_library( 'nss_' + module, - 'src/nss-@0@/nss-@0@.c'.format(module), + sources, disable_mempool_c, version : '2', include_directories : includes, @@ -1962,6 +1982,35 @@ if conf.get('ENABLE_PORTABLED') == 1 public_programs += exe endif +if conf.get('ENABLE_USERDB') == 1 + executable('systemd-userwork', + systemd_userwork_sources, + include_directories : includes, + link_with : [libshared], + dependencies : [threads], + install_rpath : rootlibexecdir, + install : true, + install_dir : rootlibexecdir) + + executable('systemd-userdbd', + systemd_userdbd_sources, + include_directories : includes, + link_with : [libshared], + dependencies : [threads], + install_rpath : rootlibexecdir, + install : true, + install_dir : rootlibexecdir) + + executable('userdbctl', + userdbctl_sources, + include_directories : includes, + link_with : [libshared], + dependencies : [threads], + install_rpath : rootlibexecdir, + install : true, + install_dir : rootbindir) +endif + foreach alias : ['halt', 'poweroff', 'reboot', 'runlevel', 'shutdown', 'telinit'] meson.add_install_script(meson_make_symlink, join_paths(rootbindir, 'systemctl'), @@ -1997,11 +2046,21 @@ executable('systemd-system-update-generator', install_dir : systemgeneratordir) if conf.get('HAVE_LIBCRYPTSETUP') == 1 + systemd_cryptsetup_sources = files(''' + src/cryptsetup/cryptsetup.c + src/cryptsetup/cryptsetup-pkcs11.h +'''.split()) + + if conf.get('HAVE_P11KIT') == 1 + systemd_cryptsetup_sources += files('src/cryptsetup/cryptsetup-pkcs11.c') + endif + executable('systemd-cryptsetup', - 'src/cryptsetup/cryptsetup.c', + systemd_cryptsetup_sources, include_directories : includes, link_with : [libshared], - dependencies : [libcryptsetup], + dependencies : [libcryptsetup, + libp11kit], install_rpath : rootlibexecdir, install : true, install_dir : rootlibexecdir) @@ -2740,7 +2799,7 @@ if conf.get('ENABLE_NETWORKD') == 1 link_with : [libnetworkd_core, libsystemd_network, libudev_static, - libshared], + networkd_link_with], dependencies : [threads], install_rpath : rootlibexecdir, install : true, @@ -2750,7 +2809,7 @@ if conf.get('ENABLE_NETWORKD') == 1 systemd_networkd_wait_online_sources, include_directories : includes, link_with : [libnetworkd_core, - libshared], + networkd_link_with], install_rpath : rootlibexecdir, install : true, install_dir : rootlibexecdir) @@ -2759,7 +2818,7 @@ if conf.get('ENABLE_NETWORKD') == 1 networkctl_sources, include_directories : includes, link_with : [libsystemd_network, - libshared], + networkd_link_with], install_rpath : rootlibexecdir, install : true, install_dir : rootbindir) @@ -2768,7 +2827,7 @@ if conf.get('ENABLE_NETWORKD') == 1 executable('systemd-network-generator', network_generator_sources, include_directories : includes, - link_with : [libshared], + link_with : [networkd_link_with], install_rpath : rootlibexecdir, install : true, install_dir : rootlibexecdir) @@ -3194,6 +3253,7 @@ missing = [] foreach tuple : [ ['libcryptsetup'], ['PAM'], + ['p11kit'], ['AUDIT'], ['IMA'], ['AppArmor'], @@ -3229,6 +3289,7 @@ foreach tuple : [ ['logind'], ['machined'], ['portabled'], + ['userdb'], ['importd'], ['hostnamed'], ['timedated'], @@ -3273,6 +3334,7 @@ foreach tuple : [ ['trace logging', conf.get('LOG_TRACE') == 1], ['link-udev-shared', get_option('link-udev-shared')], ['link-systemctl-shared', get_option('link-systemctl-shared')], + ['link-networkd-shared', get_option('link-networkd-shared')], ] if tuple.length() >= 2