diff options
author | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2022-10-19 16:23:41 +0200 |
---|---|---|
committer | Luca Boccassi <luca.boccassi@gmail.com> | 2022-10-21 17:40:59 +0200 |
commit | 96f8c63601a33a7e9e47397be2de811e00477ad8 (patch) | |
tree | 2bfab3676907f85852c33af58c227d885ec22544 /po | |
parent | 2051a98172dee59bbd046848ccee3a8e8282b91e (diff) | |
download | systemd-96f8c63601a33a7e9e47397be2de811e00477ad8.tar.gz |
meson: always use libatomic if found
Semi-quoting https://github.com/systemd/systemd/issues/25057:
clang-16 has made the choice to turn on -Werror=implicit-function-declaration,implicit-int.
(See Gentoo's tracker bug https://bugs.gentoo.org/870412).
Added in commit 132c73b57ad1d363e97e1f4720f0e920826f34e1, systemd now does a
check to see if libatomic is needed with some compile/link tests with e.g.
__atomic_exchange_1, but the tests don't provide a prototype for
__atomic_exchange_1 so with clang-16 the test fails, breaking the build.
Let's simplify things by linking to libatomic unconditionally if it is found
and seems to work. If actually unneeded, it might be dropped via --as-needed.
This seems to work with gcc and clang.
declare_dependency() is used instead of cc.find_library(), because the latter
picks up a symlink in gcc private directory (e.g.
/usr/lib/gcc/x86_64-redhat-linux/12/libatomic.so), and we don't want that.
Fixes #25057.
Diffstat (limited to 'po')
0 files changed, 0 insertions, 0 deletions