package/systemd: needs glibc
authorYann E. MORIN <yann.morin.1998@free.fr>
Wed, 21 Nov 2018 21:05:56 +0000 (22:05 +0100)
committerPeter Korsgaard <peter@korsgaard.com>
Thu, 22 Nov 2018 16:15:33 +0000 (17:15 +0100)
Since version v239, systemd-nspawn unconditioanlly uses prlimit(2),
which is not implemented in uClibc-ng. systemd-nspawn can not be
disabled.

This makes systemd glibc-only again.

After a bit of discussion with upstream (om IRC), it looks very
improbable that they accept a patch making systemd-nspawn optional.
They would probably consider a patch that provides that syscall wrapper
if it is missing, though, but that's less trivial...

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Waldemar Brodkorb <wbx@openadk.org>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Peter Korsgaard <peter@korsgaard.com>
Reviewed-by: Matt Weber <matthew.weber@rockwellcollins.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
package/systemd/Config.in
package/systemd/systemd.mk
system/Config.in

index c858d89c051bed3be1011d3a9bff790abbc468ab..25f322e8f34595b36620420ed0f33556c5736f00 100644 (file)
@@ -192,7 +192,6 @@ config BR2_PACKAGE_SYSTEMD_MACHINED
 config BR2_PACKAGE_SYSTEMD_MYHOSTNAME
        bool "enable myhostname NSS plugin"
        default y
-       depends on !BR2_TOOLCHAIN_USES_UCLIBC # needs nss.h
        help
          nss-myhostname is a plug-in module for the GNU Name Service
          Switch (NSS) functionality of the GNU C Library (glibc),
@@ -252,7 +251,6 @@ config BR2_PACKAGE_SYSTEMD_RANDOMSEED
 config BR2_PACKAGE_SYSTEMD_RESOLVED
        bool "enable resolve daemon"
        default y
-       depends on !BR2_TOOLCHAIN_USES_UCLIBC # needs nss.h
        help
          systemd-resolved is a system service that provides network
          name resolution to local applications. It implements a
@@ -285,7 +283,6 @@ config BR2_PACKAGE_SYSTEMD_SMACK_SUPPORT
 
 config BR2_PACKAGE_SYSTEMD_SYSUSERS
        bool "enable sysusers support"
-       depends on !BR2_TOOLCHAIN_USES_UCLIBC # needs gshadow.h
        help
          systemd-sysusers creates system users and groups, based on
          the file format and location specified in sysusers.d(5).
index ecbf7e97ffb1f1acddb0a0e267cea3b3607ea012..e53f0b699a5d0164db76b1900782e1c1b80aa2af 100644 (file)
@@ -40,18 +40,9 @@ SYSTEMD_CONF_OPTS += \
        -Dsulogin-path=/usr/sbin/sulogin \
        -Dmount-path=/usr/bin/mount \
        -Dumount-path=/usr/bin/umount \
-       -Dnobody-group=nogroup
-
-# disable unsupported features for non-glibc toolchains
-ifeq ($(BR2_TOOLCHAIN_USES_GLIBC),y)
-SYSTEMD_CONF_OPTS += \
+       -Dnobody-group=nogroup \
        -Didn=true \
        -Dnss-systemd=true
-else
-SYSTEMD_CONF_OPTS += \
-       -Didn=false \
-       -Dnss-systemd=false
-endif
 
 ifeq ($(BR2_PACKAGE_ACL),y)
 SYSTEMD_DEPENDENCIES += acl
index f63f27b126809020817020e555397843aad57f32..9e34f11b6cc9c468b2f6c29829552d38cbe128ea 100644 (file)
@@ -127,9 +127,7 @@ config BR2_INIT_SYSV
 config BR2_INIT_SYSTEMD
        bool "systemd"
        depends on BR2_PACKAGE_SYSTEMD_ARCH_SUPPORTS
-       depends on BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_UCLIBC
-       depends on BR2_USE_WCHAR
-       depends on BR2_TOOLCHAIN_HAS_THREADS
+       depends on BR2_TOOLCHAIN_USES_GLIBC
        depends on BR2_TOOLCHAIN_HAS_SSP
        depends on BR2_USE_MMU
        depends on !BR2_STATIC_LIBS
@@ -137,14 +135,11 @@ config BR2_INIT_SYSTEMD
        select BR2_ROOTFS_MERGED_USR
        select BR2_PACKAGE_SYSTEMD
 
-comment "systemd needs a glibc or uClibc toolchain w/ wchar, threads, SSP, dynamic library, headers >= 3.10"
+comment "systemd needs a glibc toolchain w/ SSP, headers >= 3.10"
        depends on BR2_PACKAGE_SYSTEMD_ARCH_SUPPORTS
        depends on BR2_USE_MMU
-       depends on !(BR2_TOOLCHAIN_USES_GLIBC || BR2_TOOLCHAIN_USES_UCLIBC) || \
-               !BR2_USE_WCHAR || \
-               !BR2_TOOLCHAIN_HAS_THREADS || \
+       depends on !BR2_TOOLCHAIN_USES_GLIBC || \
                !BR2_TOOLCHAIN_HAS_SSP || \
-               BR2_STATIC_LIBS || \
                !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10
 
 config BR2_INIT_NONE