Go to file
Zbigniew Jędrzejewski-Szmek 96f8c63601 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 132c73b57a, 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.
2022-10-21 17:40:59 +02:00
.clusterfuzzlite ci: unpin CFLite 2022-04-26 09:13:57 +00:00
.github ci: run the Scorecards action in PRs only on config update 2022-10-20 17:10:50 +02:00
.semaphore semaphore: run autopkgtest with sudo 2022-08-11 13:36:15 +02:00
catalog man: reword some awkward sentences 2022-10-14 15:56:58 +02:00
coccinelle basic/list: drop LIST_IS_EMPTY 2022-07-02 12:46:16 +02:00
docs docs: update translation strings before new release 2022-10-20 10:39:03 +02:00
factory meson: also allow setting GIT_VERSION via templates 2022-04-05 22:18:31 +02:00
hwdb.d hwdb: Add support for Elgato Stream Deck XL (gen 2) 2022-10-21 16:53:33 +02:00
LICENSES network: license all config files as CC0 2022-01-12 16:05:59 +01:00
man Merge pull request #25077 from keszybz/completions-optional-components 2022-10-20 15:57:46 +02:00
mkosi.default.d mkosi: Switch to Fedora 37 2022-10-17 16:02:16 +02:00
modprobe.d meson: install the right README file in modprobe.d 2021-07-07 14:52:05 +02:00
network network: add example file that enables DHCP on ethernet links 2022-01-12 16:05:59 +01:00
po po: Update translation files 2022-10-20 12:06:08 +00:00
presets units: enable systemd-network-generator by default 2021-12-16 09:49:39 +01:00
rules.d udev-builtin-kmod: support to run without arguments 2022-10-14 21:32:24 +09:00
shell-completion shell-completion/zsh: rename helper for clarity 2022-10-20 09:58:00 +02:00
src Merge pull request #25083 from bluca/revert_timer 2022-10-20 19:58:10 +02:00
sysctl.d tree-wide: link to docs.kernel.org for kernel documentation 2022-07-04 19:56:53 +02:00
sysusers.d Use descriptive name for nobody 2022-05-27 22:09:24 +01:00
test Revert "Fix issue with system time set back (#24131)" 2022-10-20 14:01:09 +01:00
tmpfiles.d tree-wide: replace "plural(s)" by "plurals" 2022-10-17 15:10:53 +02:00
tools docs/DPS: use the SD_GPT_* constants here too 2022-09-21 15:30:31 +02:00
units pcrphase: add two additional phases 2022-10-17 12:09:43 +02:00
xorg xorg/50-systemd-user: add a full license header 2021-10-01 14:45:00 +02:00
.clang-format clang-format: Adjust style of pointers 2022-05-30 04:00:54 +09:00
.ctags editors: Prevent ctags from following symlinks 2019-02-15 11:01:20 -08:00
.dir-locals.el scripts: use 4 space indentation 2019-04-12 08:30:31 +02:00
.editorconfig docs: configure editorconfig for css and html 2022-05-17 21:13:17 +02:00
.gitattributes gitattributes: introduce and use "generated" attribute 2021-10-18 09:42:55 +02:00
.gitignore core/cgroup: CPUWeight/CPUShares support idle input 2022-08-11 14:25:58 +02:00
.mailmap mailmap: two more names 2021-03-30 13:17:58 +02:00
.packit.yml Packit: build SRPMs in Copr 2022-03-09 09:52:41 +00:00
.vimrc scripts: use 4 space indentation 2019-04-12 08:30:31 +02:00
.ycm_extra_conf.py ycm: add doc string for all the functions in configuration file 2017-11-29 13:21:49 -07:00
configure tools: shellcheck-ify tool scripts 2021-09-30 12:27:06 +02:00
LICENSE.GPL2 relicense to LGPLv2.1 (with exceptions) 2012-04-12 00:24:39 +02:00
LICENSE.LGPL2.1 licence: remove references to old FSF address 2012-12-17 11:41:31 +01:00
Makefile tree-wide: add spdx header on all scripts and helpers 2021-01-28 09:55:35 +01:00
meson.build meson: always use libatomic if found 2022-10-21 17:40:59 +02:00
meson_options.txt core: allow disabling system time correction if rtc returns time far in the future 2022-08-24 21:39:46 +01:00
mkosi.build mkosi: Make sure bpf-framework works on CentOS Stream 8 as well 2022-10-17 08:45:48 +02:00
mkosi.postinst mkosi: Ensure we build all features/components in mkosi 2022-08-23 15:19:26 +02:00
NEWS NEWS: add entries after 252-rc1, update contrib list 2022-10-18 14:30:54 +02:00
README README: Fix libbpf minimum version 2022-10-17 08:45:16 +02:00
README.md README.md: add a missing line break 2022-10-19 11:17:33 +02:00
TODO update TODO 2022-10-20 18:28:55 +02:00

Systemd

System and Service Manager

Semaphore CI 2.0 Build Status
Coverity Scan Status
OSS-Fuzz Status
CIFuzz
CII Best Practices
CentOS CI - CentOS 8
CentOS CI - Arch
CentOS CI - Arch (sanitizers)
CentOS CI - Rawhide (SELinux)
Fossies codespell report
Coverage Status
Packaging status
OpenSSF Scorecard

Details

Most documentation is available on systemd's web site.

Assorted, older, general information about systemd can be found in the systemd Wiki.

Information about build requirements is provided in the README file.

Consult our NEWS file for information about what's new in the most recent systemd versions.

Please see the Code Map for information about this repository's layout and content.

Please see the Hacking guide for information on how to hack on systemd and test your modifications.

Please see our Contribution Guidelines for more information about filing GitHub Issues and posting GitHub Pull Requests.

When preparing patches for systemd, please follow our Coding Style Guidelines.

If you are looking for support, please contact our mailing list or join our IRC channel.

Stable branches with backported patches are available in the stable repo.