which overlaps with program_invocation_name on glibc 2.27, at least.
I am not sure this is the best fix, but it works for now.
Submitted upstream: https://github.com/elogind/elogind/issues/92
The old implementation was done assuming that only glibc provides
both program_invocation_name and program_invocation_short_name.
This worked well for users using musl-libc with the library having
been built without -D_GNU_SOURCE. However, alternative libc
implementations that actually do provide these variables, could
cause elogind to crash.
To be on the safe side, we now actually check whether both these
variables are present by letting meson check whether a code snippet
accessing these compiles and links.
The final test use the outcome of the already masked part that
utilizes terminal_urlify_path(). That function is masked, because
it is nowhere used within elogind.
The previously unmasked final test used the outcome of that already
masked part and therefore crashed.
Bug: https://github.com/elogind/elogind/issues/81
Closes: https://github.com/elogind/elogind/issues/81
Signed-of-by: Sven Eden <sven.eden@prydeworx.com>
Elogind is missing the man page for elogind-inhibit: this is just a copy of the systemd-inhibit manpage from systemd upstream, with 'systemd' replaced by 'elogind', where applicable.
Currently the path to system_bus_socket is hardcoded to
/run/dbus/system_bus_socket
which works everywhere for systemd.
However, distributions which do no symlink /var/run on /run will have
it only accessible via
/run/dbus/system_bus_socket
which should be supported by elogind, too.
Closes#77
Signed-off-by: Christoph Willing <chris.willing@linux.com>
Sigend-off-by: Sven Eden <sven.eden@prydeworx.com>
It appears that the necessary bits were already there, but commented
out. When meson checked for 'struct statx', the inclusion of both
sys/stat.h and linux/stat.h where commented out. Uncommenting them
should be enough.