meson: add -pthreads and more libs when -Dlink-udev-shared=false (#6159)

Three binaries would fail to link when ld.bfd was used and link-udev-shared was
false. Add -pthreads (again) to the failing binaries and synchronize the
dependency list between libsystemd-shared .a and .so versions.
Apart from allowing the build to succeed, this shouldn't have much effect becuase
systemd-networkd was already using pthreads.

Fixes #5828.
This commit is contained in:
Zbigniew Jędrzejewski-Szmek 2017-06-21 06:05:15 -04:00 committed by Lennart Poettering
parent 9d3c1efaa3
commit 4b57a27200
3 changed files with 19 additions and 26 deletions

View File

@ -2175,6 +2175,7 @@ if conf.get('ENABLE_NETWORKD', false)
libsystemd_network,
libudev_internal,
libshared],
dependencies : [threads],
install_rpath : rootlibexecdir,
install : true,
install_dir : rootlibexecdir)

View File

@ -133,7 +133,7 @@ if conf.get('ENABLE_NETWORKD', false)
libudev_internal,
libsystemd_network,
libshared],
[]],
[threads]],
[['src/network/test-network-tables.c',
'src/network/test-network-tables.c',
@ -143,7 +143,7 @@ if conf.get('ENABLE_NETWORKD', false)
libudev_core,
libsystemd_network,
libshared],
[],
[threads],
'', '', [],
[network_include_dir] + libudev_core_includes],
]

View File

@ -122,6 +122,20 @@ endif
libshared_name = 'systemd-shared-@0@'.format(meson.project_version())
libshared_deps = [threads,
librt,
libcap,
libacl,
libcryptsetup,
libgcrypt,
libiptc,
libseccomp,
libselinux,
libidn,
libxz,
liblz4,
libblkid]
libshared = shared_library(
libshared_name,
shared_sources,
@ -132,19 +146,7 @@ libshared = shared_library(
include_directories : includes,
link_args : ['-shared'],
c_args : ['-fvisibility=default'],
dependencies : [threads,
librt,
libcap,
libacl,
libcryptsetup,
libgcrypt,
libiptc,
libseccomp,
libselinux,
libidn,
libxz,
liblz4,
libblkid],
dependencies : libshared_deps,
install : true,
install_dir : rootlibexecdir)
@ -153,14 +155,4 @@ libshared_static = static_library(
shared_sources,
basic_sources,
include_directories : includes,
dependencies : [threads,
librt,
libcap,
libacl,
libcryptsetup,
libseccomp,
libselinux,
libidn,
libxz,
liblz4,
libblkid])
dependencies : libshared_deps)