package/systemd: make sure init choice and package have same dependencies

Currently, the dependencies for the init system choice, and the
dependencies for the package, are slightly different, and not in the
same order, the latter making it difficult to assess consistency between
the two.

Fix all that, by cross-duplicating dependencies from the init choice and
the package, and order the dependencies according to the manual (arch
first, toolchain, then the others).

Note that some dependencies are redundant, but kept nonetheless for
correctness:

  - BR2_USE_MMU is implied by BR2_TOOLCHAIN_USES_GLIBC, but systemd does
    use fork();

  - !BR2_STATIC_LIBS is also implied by BR2_TOOLCHAIN_USES_GLIBC, but it
    is also inherited from kmod which we select;

  - BR2_TOOLCHAIN_HAS_THREADS is also implied by BR2_TOOLCHAIN_USES_GLIBC,
    but systemd does use pthread_*() functions.

Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
This commit is contained in:
Yann E. MORIN 2020-04-05 19:55:05 +02:00
parent 2196ee25ff
commit b57632683b
2 changed files with 8 additions and 4 deletions

View File

@ -16,9 +16,12 @@ config BR2_PACKAGE_SYSTEMD_ARCH_SUPPORTS
menuconfig BR2_PACKAGE_SYSTEMD
bool "systemd"
depends on BR2_INIT_SYSTEMD
depends on BR2_PACKAGE_SYSTEMD_ARCH_SUPPORTS
depends on BR2_USE_MMU
depends on !BR2_STATIC_LIBS # kmod
depends on BR2_TOOLCHAIN_HAS_THREADS # dbus
depends on BR2_USE_MMU # dbus
depends on BR2_TOOLCHAIN_USES_GLIBC
depends on BR2_TOOLCHAIN_HAS_SSP
depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5
depends on BR2_HOST_GCC_AT_LEAST_5 # host-systemd
select BR2_PACKAGE_HAS_UDEV

View File

@ -116,10 +116,11 @@ comment "openrc needs a toolchain w/ dynamic library"
config BR2_INIT_SYSTEMD
bool "systemd"
depends on BR2_PACKAGE_SYSTEMD_ARCH_SUPPORTS
depends on BR2_TOOLCHAIN_USES_GLIBC
depends on BR2_TOOLCHAIN_HAS_SSP
depends on BR2_USE_MMU
depends on !BR2_STATIC_LIBS
depends on BR2_TOOLCHAIN_USES_GLIBC
depends on BR2_TOOLCHAIN_HAS_SSP
depends on BR2_TOOLCHAIN_HAS_THREADS
depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5
depends on BR2_HOST_GCC_AT_LEAST_5