diff mbox series

[PATCH/next,v9,02/12] package/eudev: allow building only the library

Message ID 20230806140241.4155773-3-bernd@kuhls.net
State New
Headers show
Series Introduce libudev (branch yem/libudev-6) | expand

Commit Message

Bernd Kuhls Aug. 6, 2023, 2:02 p.m. UTC
From: "Yann E. MORIN" <yann.morin.1998@free.fr>

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
---
 package/eudev/Config.in | 12 +++++++----
 package/eudev/eudev.mk  | 46 ++++++++++++++++++++++++++++-------------
 2 files changed, 40 insertions(+), 18 deletions(-)
diff mbox series

Patch

diff --git a/package/eudev/Config.in b/package/eudev/Config.in
index a561a96edf..e31f8ae8c8 100644
--- a/package/eudev/Config.in
+++ b/package/eudev/Config.in
@@ -1,9 +1,9 @@ 
 config BR2_PACKAGE_EUDEV
 	bool "eudev"
-	depends on BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV
 	depends on BR2_USE_MMU # uses fork()
 	depends on BR2_USE_WCHAR # needs C99 compiler
 	depends on !BR2_STATIC_LIBS # kmod
+	depends on !BR2_INIT_SYSTEMD
 	help
 	  eudev is a fork of systemd-udev with the goal of obtaining
 	  better compatibility with existing software such as OpenRC and
@@ -45,12 +45,16 @@  config BR2_PACKAGE_EUDEV_ENABLE_HWDB
 	help
 	  Enables hardware database installation to /etc/udev/hwdb.bin
 
-endif # BR2_PACKAGE_EUDEV
-
-comment "eudev needs eudev /dev management"
+comment "udev daemon needs eudev /dev management"
 	depends on BR2_USE_MMU
 	depends on !BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV
 
+endif # BR2_PACKAGE_EUDEV
+
 comment "eudev needs a toolchain w/ wchar, dynamic library"
 	depends on BR2_USE_MMU
 	depends on !BR2_USE_WCHAR || BR2_STATIC_LIBS
+	depends on !BR2_INIT_SYSTEMD
+
+comment "eudev is incompatible with systemd init"
+	depends on BR2_INIT_SYSTEMD
diff --git a/package/eudev/eudev.mk b/package/eudev/eudev.mk
index 235a71967e..120307b6e6 100644
--- a/package/eudev/eudev.mk
+++ b/package/eudev/eudev.mk
@@ -10,34 +10,41 @@  EUDEV_LICENSE = GPL-2.0+ (programs), LGPL-2.1+ (libraries)
 EUDEV_LICENSE_FILES = COPYING
 EUDEV_INSTALL_STAGING = YES
 
+EUDEV_DEPENDENCIES = host-gperf host-pkgconf
+
 EUDEV_CONF_OPTS = \
 	--disable-manpages \
-	--sbindir=/sbin \
-	--libexecdir=/lib \
 	--disable-introspection \
-	--enable-kmod \
-	--enable-blkid
-
-# eudev requires only the util-linux libraries at build time
-EUDEV_DEPENDENCIES = host-gperf host-pkgconf util-linux-libs kmod
-EUDEV_PROVIDES = udev
+	--libexecdir=/lib
 
 ifeq ($(BR2_ROOTFS_MERGED_USR),)
 EUDEV_CONF_OPTS += --with-rootlibdir=/lib --enable-split-usr
 endif
 
-ifeq ($(BR2_PACKAGE_EUDEV_RULES_GEN),y)
-EUDEV_CONF_OPTS += --enable-rule-generator
-else
-EUDEV_CONF_OPTS += --disable-rule-generator
-endif
-
 ifeq ($(BR2_PACKAGE_EUDEV_ENABLE_HWDB),y)
 EUDEV_CONF_OPTS += --enable-hwdb
 else
 EUDEV_CONF_OPTS += --disable-hwdb
 endif
 
+ifeq ($(BR2_PACKAGE_EUDEV_DAEMON),y)
+
+# eudev requires only the util-linux libraries at build time
+EUDEV_DEPENDENCIES += util-linux-libs kmod
+EUDEV_PROVIDES = udev
+
+EUDEV_CONF_OPTS += \
+	--enable-programs \
+	--sbindir=/sbin \
+	--enable-kmod \
+	--enable-blkid
+
+ifeq ($(BR2_PACKAGE_EUDEV_RULES_GEN),y)
+EUDEV_CONF_OPTS += --enable-rule-generator
+else
+EUDEV_CONF_OPTS += --disable-rule-generator
+endif
+
 ifeq ($(BR2_PACKAGE_LIBSELINUX),y)
 EUDEV_CONF_OPTS += --enable-selinux
 EUDEV_DEPENDENCIES += libselinux
@@ -55,6 +62,17 @@  define EUDEV_INSTALL_INIT_OPENRC
 	@:
 endef
 
+else # !BR2_PACKAGE_EUDEV_DAEMON
+
+EUDEV_CONF_OPTS += \
+	--disable-programs \
+	--disable-blkid \
+	--disable-selinux \
+	--disable-kmod \
+	--disable-rule-generator
+
+endif
+
 HOST_EUDEV_DEPENDENCIES = host-gperf host-pkgconf
 
 HOST_EUDEV_CONF_OPTS = \