mirror of
https://github.com/systemd/systemd-stable.git
synced 2025-02-08 05:57:26 +03:00
shared/build: make the version string definition less terrible
The BLKID and ELFUTILS strings were present twice. Let's reaarange things so that each times requires definition in exactly one place. Also let's sort things a bit: the "heavy hitters" like PAM/MAC first, then crypto libs, then other libs, alphabetically, compressors, and external compat integrations. I think it's useful for users to group similar concepts together to some extent. For example, when checking what compression is available, it helps a lot to have them listed together. FDISK is renamed to LIBFDISK to make it clear that this is about he library and the executable.
This commit is contained in:
parent
6c822dc2d5
commit
91b79ba84e
216
src/basic/build.c
Normal file
216
src/basic/build.c
Normal file
@ -0,0 +1,216 @@
|
||||
/* SPDX-License-Identifier: LGPL-2.1-or-later */
|
||||
|
||||
#include "build.h"
|
||||
|
||||
const char* const systemd_features =
|
||||
|
||||
/* PAM and MAC frameworks */
|
||||
|
||||
#if HAVE_PAM
|
||||
"+PAM"
|
||||
#else
|
||||
"-PAM"
|
||||
#endif
|
||||
|
||||
#if HAVE_AUDIT
|
||||
" +AUDIT"
|
||||
#else
|
||||
" -AUDIT"
|
||||
#endif
|
||||
|
||||
#if HAVE_SELINUX
|
||||
" +SELINUX"
|
||||
#else
|
||||
" -SELINUX"
|
||||
#endif
|
||||
|
||||
#if HAVE_APPARMOR
|
||||
" +APPARMOR"
|
||||
#else
|
||||
" -APPARMOR"
|
||||
#endif
|
||||
|
||||
#if ENABLE_IMA
|
||||
" +IMA"
|
||||
#else
|
||||
" -IMA"
|
||||
#endif
|
||||
|
||||
#if ENABLE_SMACK
|
||||
" +SMACK"
|
||||
#else
|
||||
" -SMACK"
|
||||
#endif
|
||||
|
||||
#if HAVE_SECCOMP
|
||||
" +SECCOMP"
|
||||
#else
|
||||
" -SECCOMP"
|
||||
#endif
|
||||
|
||||
/* crypto libraries */
|
||||
|
||||
#if HAVE_GCRYPT
|
||||
" +GCRYPT"
|
||||
#else
|
||||
" -GCRYPT"
|
||||
#endif
|
||||
|
||||
#if HAVE_GNUTLS
|
||||
" +GNUTLS"
|
||||
#else
|
||||
" -GNUTLS"
|
||||
#endif
|
||||
|
||||
#if HAVE_OPENSSL
|
||||
" +OPENSSL"
|
||||
#else
|
||||
" -OPENSSL"
|
||||
#endif
|
||||
|
||||
/* all other libraries, sorted alphabetically */
|
||||
|
||||
#if HAVE_ACL
|
||||
" +ACL"
|
||||
#else
|
||||
" -ACL"
|
||||
#endif
|
||||
|
||||
#if HAVE_BLKID
|
||||
" +BLKID"
|
||||
#else
|
||||
" -BLKID"
|
||||
#endif
|
||||
|
||||
#if HAVE_LIBCURL
|
||||
" +CURL"
|
||||
#else
|
||||
" -CURL"
|
||||
#endif
|
||||
|
||||
#if HAVE_ELFUTILS
|
||||
" +ELFUTILS"
|
||||
#else
|
||||
" -ELFUTILS"
|
||||
#endif
|
||||
|
||||
#if HAVE_LIBFIDO2
|
||||
" +FIDO2"
|
||||
#else
|
||||
" -FIDO2"
|
||||
#endif
|
||||
|
||||
#if HAVE_LIBIDN2
|
||||
" +IDN2"
|
||||
#else
|
||||
" -IDN2"
|
||||
#endif
|
||||
|
||||
#if HAVE_LIBIDN
|
||||
" +IDN"
|
||||
#else
|
||||
" -IDN"
|
||||
#endif
|
||||
|
||||
#if HAVE_LIBIPTC
|
||||
" +IPTC"
|
||||
#else
|
||||
" -IPTC"
|
||||
#endif
|
||||
|
||||
#if HAVE_KMOD
|
||||
" +KMOD"
|
||||
#else
|
||||
" -KMOD"
|
||||
#endif
|
||||
|
||||
#if HAVE_LIBCRYPTSETUP
|
||||
" +LIBCRYPTSETUP"
|
||||
#else
|
||||
" -LIBCRYPTSETUP"
|
||||
#endif
|
||||
|
||||
#if HAVE_LIBFDISK
|
||||
" +LIBFDISK"
|
||||
#else
|
||||
" -LIBFDISK"
|
||||
#endif
|
||||
|
||||
#if HAVE_PCRE2
|
||||
" +PCRE2"
|
||||
#else
|
||||
" -PCRE2"
|
||||
#endif
|
||||
|
||||
#if HAVE_PWQUALITY
|
||||
" +PWQUALITY"
|
||||
#else
|
||||
" -PWQUALITY"
|
||||
#endif
|
||||
|
||||
#if HAVE_P11KIT
|
||||
" +P11KIT"
|
||||
#else
|
||||
" -P11KIT"
|
||||
#endif
|
||||
|
||||
#if HAVE_QRENCODE
|
||||
" +QRENCODE"
|
||||
#else
|
||||
" -QRENCODE"
|
||||
#endif
|
||||
|
||||
/* compressors */
|
||||
|
||||
#if HAVE_BZIP2
|
||||
" +BZIP2"
|
||||
#else
|
||||
" -BZIP2"
|
||||
#endif
|
||||
|
||||
#if HAVE_LZ4
|
||||
" +LZ4"
|
||||
#else
|
||||
" -LZ4"
|
||||
#endif
|
||||
|
||||
#if HAVE_XZ
|
||||
" +XZ"
|
||||
#else
|
||||
" -XZ"
|
||||
#endif
|
||||
|
||||
#if HAVE_ZLIB
|
||||
" +ZLIB"
|
||||
#else
|
||||
" -ZLIB"
|
||||
#endif
|
||||
|
||||
#if HAVE_ZSTD
|
||||
" +ZSTD"
|
||||
#else
|
||||
" -ZSTD"
|
||||
#endif
|
||||
|
||||
/* other stuff that doesn't fit above */
|
||||
|
||||
#if HAVE_XKBCOMMON
|
||||
" +XKBCOMMON"
|
||||
#else
|
||||
" -XKBCOMMON"
|
||||
#endif
|
||||
|
||||
#if ENABLE_UTMP
|
||||
" +UTMP"
|
||||
#else
|
||||
" -UTMP"
|
||||
#endif
|
||||
|
||||
#if HAVE_SYSV_COMPAT
|
||||
" +SYSVINIT"
|
||||
#else
|
||||
" -SYSVINIT"
|
||||
#endif
|
||||
|
||||
" default-hierarchy=" DEFAULT_HIERARCHY_NAME
|
||||
;
|
@ -3,255 +3,7 @@
|
||||
|
||||
#include "version.h"
|
||||
|
||||
#if HAVE_PAM
|
||||
#define _PAM_FEATURE_ "+PAM"
|
||||
#else
|
||||
#define _PAM_FEATURE_ "-PAM"
|
||||
#endif
|
||||
|
||||
#if HAVE_AUDIT
|
||||
#define _AUDIT_FEATURE_ "+AUDIT"
|
||||
#else
|
||||
#define _AUDIT_FEATURE_ "-AUDIT"
|
||||
#endif
|
||||
|
||||
#if HAVE_SELINUX
|
||||
#define _SELINUX_FEATURE_ "+SELINUX"
|
||||
#else
|
||||
#define _SELINUX_FEATURE_ "-SELINUX"
|
||||
#endif
|
||||
|
||||
#if HAVE_APPARMOR
|
||||
#define _APPARMOR_FEATURE_ "+APPARMOR"
|
||||
#else
|
||||
#define _APPARMOR_FEATURE_ "-APPARMOR"
|
||||
#endif
|
||||
|
||||
#if ENABLE_IMA
|
||||
#define _IMA_FEATURE_ "+IMA"
|
||||
#else
|
||||
#define _IMA_FEATURE_ "-IMA"
|
||||
#endif
|
||||
|
||||
#if ENABLE_SMACK
|
||||
#define _SMACK_FEATURE_ "+SMACK"
|
||||
#else
|
||||
#define _SMACK_FEATURE_ "-SMACK"
|
||||
#endif
|
||||
|
||||
#if HAVE_SYSV_COMPAT
|
||||
#define _SYSVINIT_FEATURE_ "+SYSVINIT"
|
||||
#else
|
||||
#define _SYSVINIT_FEATURE_ "-SYSVINIT"
|
||||
#endif
|
||||
|
||||
#if ENABLE_UTMP
|
||||
#define _UTMP_FEATURE_ "+UTMP"
|
||||
#else
|
||||
#define _UTMP_FEATURE_ "-UTMP"
|
||||
#endif
|
||||
|
||||
#if HAVE_LIBCRYPTSETUP
|
||||
#define _LIBCRYPTSETUP_FEATURE_ "+LIBCRYPTSETUP"
|
||||
#else
|
||||
#define _LIBCRYPTSETUP_FEATURE_ "-LIBCRYPTSETUP"
|
||||
#endif
|
||||
|
||||
#if HAVE_GCRYPT
|
||||
#define _GCRYPT_FEATURE_ "+GCRYPT"
|
||||
#else
|
||||
#define _GCRYPT_FEATURE_ "-GCRYPT"
|
||||
#endif
|
||||
|
||||
#if HAVE_GNUTLS
|
||||
#define _GNUTLS_FEATURE_ "+GNUTLS"
|
||||
#else
|
||||
#define _GNUTLS_FEATURE_ "-GNUTLS"
|
||||
#endif
|
||||
|
||||
#if HAVE_OPENSSL
|
||||
#define _OPENSSL_FEATURE_ "+OPENSSL"
|
||||
#else
|
||||
#define _OPENSSL_FEATURE_ "-OPENSSL"
|
||||
#endif
|
||||
|
||||
#if HAVE_ACL
|
||||
#define _ACL_FEATURE_ "+ACL"
|
||||
#else
|
||||
#define _ACL_FEATURE_ "-ACL"
|
||||
#endif
|
||||
|
||||
#if HAVE_ZLIB
|
||||
#define _ZLIB_FEATURE_ "+ZLIB"
|
||||
#else
|
||||
#define _ZLIB_FEATURE_ "-ZLIB"
|
||||
#endif
|
||||
|
||||
#if HAVE_XZ
|
||||
#define _XZ_FEATURE_ "+XZ"
|
||||
#else
|
||||
#define _XZ_FEATURE_ "-XZ"
|
||||
#endif
|
||||
|
||||
#if HAVE_LZ4
|
||||
#define _LZ4_FEATURE_ "+LZ4"
|
||||
#else
|
||||
#define _LZ4_FEATURE_ "-LZ4"
|
||||
#endif
|
||||
|
||||
#if HAVE_ZSTD
|
||||
#define _ZSTD_FEATURE_ "+ZSTD"
|
||||
#else
|
||||
#define _ZSTD_FEATURE_ "-ZSTD"
|
||||
#endif
|
||||
|
||||
#if HAVE_BZIP2
|
||||
#define _BZIP2_FEATURE_ "+BZIP2"
|
||||
#else
|
||||
#define _BZIP2_FEATURE_ "-BZIP2"
|
||||
#endif
|
||||
|
||||
#if HAVE_SECCOMP
|
||||
#define _SECCOMP_FEATURE_ "+SECCOMP"
|
||||
#else
|
||||
#define _SECCOMP_FEATURE_ "-SECCOMP"
|
||||
#endif
|
||||
|
||||
#if HAVE_BLKID
|
||||
#define _BLKID_FEATURE_ "+BLKID"
|
||||
#else
|
||||
#define _BLKID_FEATURE_ "-BLKID"
|
||||
#endif
|
||||
|
||||
#if HAVE_ELFUTILS
|
||||
#define _ELFUTILS_FEATURE_ "+ELFUTILS"
|
||||
#else
|
||||
#define _ELFUTILS_FEATURE_ "-ELFUTILS"
|
||||
#endif
|
||||
|
||||
#if HAVE_KMOD
|
||||
#define _KMOD_FEATURE_ "+KMOD"
|
||||
#else
|
||||
#define _KMOD_FEATURE_ "-KMOD"
|
||||
#endif
|
||||
|
||||
#if HAVE_LIBIDN2
|
||||
#define _IDN2_FEATURE_ "+IDN2"
|
||||
#else
|
||||
#define _IDN2_FEATURE_ "-IDN2"
|
||||
#endif
|
||||
|
||||
#if HAVE_LIBIDN
|
||||
#define _IDN_FEATURE_ "+IDN"
|
||||
#else
|
||||
#define _IDN_FEATURE_ "-IDN"
|
||||
#endif
|
||||
|
||||
#if HAVE_PCRE2
|
||||
#define _PCRE2_FEATURE_ "+PCRE2"
|
||||
#else
|
||||
#define _PCRE2_FEATURE_ "-PCRE2"
|
||||
#endif
|
||||
|
||||
#if HAVE_PWQUALITY
|
||||
#define _PWQUALITY_FEATURE_ "+PWQUALITY"
|
||||
#else
|
||||
#define _PWQUALITY_FEATURE_ "-PWQUALITY"
|
||||
#endif
|
||||
|
||||
#if HAVE_LIBFDISK
|
||||
#define _FDISK_FEATURE_ "+FDISK"
|
||||
#else
|
||||
#define _FDISK_FEATURE_ "-FDISK"
|
||||
#endif
|
||||
|
||||
#if HAVE_P11KIT
|
||||
#define _P11KIT_FEATURE_ "+P11KIT"
|
||||
#else
|
||||
#define _P11KIT_FEATURE_ "-P11KIT"
|
||||
#endif
|
||||
|
||||
#if HAVE_LIBFIDO2
|
||||
#define _FIDO2_FEATURE_ "+FIDO2"
|
||||
#else
|
||||
#define _FIDO2_FEATURE_ "-FIDO2"
|
||||
#endif
|
||||
|
||||
#if HAVE_QRENCODE
|
||||
#define _QRENCODE_FEATURE_ "+QRENCODE"
|
||||
#else
|
||||
#define _QRENCODE_FEATURE_ "-QRENCODE"
|
||||
#endif
|
||||
|
||||
#if HAVE_LIBCURL
|
||||
#define _CURL_FEATURE_ "+CURL"
|
||||
#else
|
||||
#define _CURL_FEATURE_ "-CURL"
|
||||
#endif
|
||||
|
||||
#if HAVE_LIBIPTC
|
||||
#define _IPTC_FEATURE_ "+IPTC"
|
||||
#else
|
||||
#define _IPTC_FEATURE_ "-IPTC"
|
||||
#endif
|
||||
|
||||
#if HAVE_ELFUTILS
|
||||
#define _ELFUTILS_FEATURE_ "+ELFUTILS"
|
||||
#else
|
||||
#define _ELFUTILS_FEATURE_ "-ELFUTILS"
|
||||
#endif
|
||||
|
||||
#if HAVE_XKBCOMMON
|
||||
#define _XKBCOMMON_FEATURE_ "+XKBCOMMON"
|
||||
#else
|
||||
#define _XKBCOMMON_FEATURE_ "-XKBCOMMON"
|
||||
#endif
|
||||
|
||||
#if HAVE_BLKID
|
||||
#define _BLKID_FEATURE_ "+BLKID"
|
||||
#else
|
||||
#define _BLKID_FEATURE_ "-BLKID"
|
||||
#endif
|
||||
|
||||
#define _CGROUP_HIERARCHY_ "default-hierarchy=" DEFAULT_HIERARCHY_NAME
|
||||
|
||||
#define SYSTEMD_FEATURES \
|
||||
_PAM_FEATURE_ " " \
|
||||
_AUDIT_FEATURE_ " " \
|
||||
_SELINUX_FEATURE_ " " \
|
||||
_IMA_FEATURE_ " " \
|
||||
_APPARMOR_FEATURE_ " " \
|
||||
_SMACK_FEATURE_ " " \
|
||||
_SYSVINIT_FEATURE_ " " \
|
||||
_UTMP_FEATURE_ " " \
|
||||
_LIBCRYPTSETUP_FEATURE_ " " \
|
||||
_GCRYPT_FEATURE_ " " \
|
||||
_GNUTLS_FEATURE_ " " \
|
||||
_OPENSSL_FEATURE_ " " \
|
||||
_ACL_FEATURE_ " " \
|
||||
_ZLIB_FEATURE_ " " \
|
||||
_XZ_FEATURE_ " " \
|
||||
_LZ4_FEATURE_ " " \
|
||||
_ZSTD_FEATURE_ " " \
|
||||
_BZIP2_FEATURE_ " " \
|
||||
_SECCOMP_FEATURE_ " " \
|
||||
_BLKID_FEATURE_ " " \
|
||||
_ELFUTILS_FEATURE_ " " \
|
||||
_KMOD_FEATURE_ " " \
|
||||
_IDN2_FEATURE_ " " \
|
||||
_IDN_FEATURE_ " " \
|
||||
_PCRE2_FEATURE_ " " \
|
||||
_PWQUALITY_FEATURE_ " " \
|
||||
_FDISK_FEATURE_ " " \
|
||||
_P11KIT_FEATURE_ " " \
|
||||
_FIDO2_FEATURE_ " " \
|
||||
_QRENCODE_FEATURE_ " " \
|
||||
_CURL_FEATURE_ " " \
|
||||
_IPTC_FEATURE_ " " \
|
||||
_ELFUTILS_FEATURE_ " " \
|
||||
_XKBCOMMON_FEATURE_ " " \
|
||||
_BLKID_FEATURE_ " " \
|
||||
_CGROUP_HIERARCHY_
|
||||
extern const char* const systemd_features;
|
||||
|
||||
enum {
|
||||
BUILD_MODE_DEVELOPER,
|
||||
|
@ -19,6 +19,7 @@ basic_sources = files('''
|
||||
blockdev-util.h
|
||||
btrfs-util.c
|
||||
btrfs-util.h
|
||||
build.c
|
||||
build.h
|
||||
bus-label.c
|
||||
bus-label.h
|
||||
|
@ -193,8 +193,8 @@ int container_get_leader(const char *machine, pid_t *pid) {
|
||||
}
|
||||
|
||||
int version(void) {
|
||||
puts("systemd " STRINGIFY(PROJECT_VERSION) " (" GIT_VERSION ")\n"
|
||||
SYSTEMD_FEATURES);
|
||||
printf("systemd " STRINGIFY(PROJECT_VERSION) " (" GIT_VERSION ")\n%s\n",
|
||||
systemd_features);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -49,7 +49,7 @@ static UnitFileFlags unit_file_bools_to_flags(bool runtime, bool force) {
|
||||
BUS_DEFINE_PROPERTY_GET_ENUM(bus_property_get_oom_policy, oom_policy, OOMPolicy);
|
||||
|
||||
static BUS_DEFINE_PROPERTY_GET_GLOBAL(property_get_version, "s", GIT_VERSION);
|
||||
static BUS_DEFINE_PROPERTY_GET_GLOBAL(property_get_features, "s", SYSTEMD_FEATURES);
|
||||
static BUS_DEFINE_PROPERTY_GET_GLOBAL(property_get_features, "s", systemd_features);
|
||||
static BUS_DEFINE_PROPERTY_GET_GLOBAL(property_get_architecture, "s", architecture_to_string(uname_architecture()));
|
||||
static BUS_DEFINE_PROPERTY_GET2(property_get_system_state, "s", Manager, manager_state, manager_state_to_string);
|
||||
static BUS_DEFINE_PROPERTY_GET_GLOBAL(property_get_timer_slack_nsec, "t", (uint64_t) prctl(PR_GET_TIMERSLACK));
|
||||
|
@ -1987,8 +1987,9 @@ static void log_execution_mode(bool *ret_first_boot) {
|
||||
if (arg_system) {
|
||||
int v;
|
||||
|
||||
log_info("systemd " GIT_VERSION " running in %ssystem mode. (" SYSTEMD_FEATURES ")",
|
||||
arg_action == ACTION_TEST ? "test " : "" );
|
||||
log_info("systemd " GIT_VERSION " running in %ssystem mode. (%s)",
|
||||
arg_action == ACTION_TEST ? "test " : "",
|
||||
systemd_features);
|
||||
|
||||
v = detect_virtualization();
|
||||
if (v > 0)
|
||||
@ -2026,8 +2027,9 @@ static void log_execution_mode(bool *ret_first_boot) {
|
||||
_cleanup_free_ char *t;
|
||||
|
||||
t = uid_to_name(getuid());
|
||||
log_debug("systemd " GIT_VERSION " running in %suser mode for user " UID_FMT "/%s. (" SYSTEMD_FEATURES ")",
|
||||
arg_action == ACTION_TEST ? " test" : "", getuid(), strna(t));
|
||||
log_debug("systemd " GIT_VERSION " running in %suser mode for user " UID_FMT "/%s. (%s)",
|
||||
arg_action == ACTION_TEST ? " test" : "",
|
||||
getuid(), strna(t), systemd_features);
|
||||
}
|
||||
|
||||
*ret_first_boot = false;
|
||||
|
@ -18,7 +18,7 @@ static void test_is_wanted_print(bool header) {
|
||||
assert_se(proc_cmdline(&cmdline) >= 0);
|
||||
log_info("cmdline: %s", cmdline);
|
||||
if (header) {
|
||||
log_info(_CGROUP_HIERARCHY_);
|
||||
log_info("default-hierarchy=" DEFAULT_HIERARCHY_NAME);
|
||||
(void) system("findmnt -n /sys/fs/cgroup");
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user