Files
Fiona Klute 41258a8194 package/eudev: refactor init script and rename it to S10udevd
This brings the script in line with current init script standards, and
fixes all make check-package warnings. Other notable changes:

* Use start-stop-daemon to create a PID file, so we can monitor shutdown.

* Use "udevadm control --exit" to implement stop, instead of "killall".

* Do not require /etc/udev/udev.conf to exist, the default contains
  only comments and udevd works without.

* Do not parse /etc/udev/udev.conf, the udev_root configuration option
  it was used for has been removed in version 1.5.1 [1].

* Implement reload using udevadm.

[1] https://github.com/eudev-project/eudev/commit/6ada823a9a0979ea145fd70add1007c21caa45c0

Signed-off-by: Fiona Klute <fiona.klute@gmx.de>
Signed-off-by: Julien Olivain <ju.o@free.fr>
2025-07-14 11:48:31 +02:00

91 lines
2.2 KiB
Makefile

################################################################################
#
# eudev
#
################################################################################
EUDEV_VERSION = 3.2.14
EUDEV_SITE = https://github.com/eudev-project/eudev/releases/download/v$(EUDEV_VERSION)
EUDEV_LICENSE = GPL-2.0+ (programs), LGPL-2.1+ (libraries)
EUDEV_LICENSE_FILES = COPYING
EUDEV_INSTALL_STAGING = YES
EUDEV_CONF_OPTS = \
--disable-manpages \
--sbindir=/sbin \
--libexecdir=/lib \
--enable-kmod \
--enable-blkid
# eudev requires only the util-linux libraries at build time
EUDEV_DEPENDENCIES = host-gperf host-pkgconf util-linux-libs
EUDEV_PROVIDES = udev
ifeq ($(BR2_ROOTFS_MERGED_USR),)
EUDEV_CONF_OPTS += --with-rootlibdir=/lib --enable-split-usr
endif
ifeq ($(BR2_PACKAGE_EUDEV_MODULE_LOADING),y)
EUDEV_CONF_OPTS += --enable-kmod
EUDEV_DEPENDENCIES += kmod
else
EUDEV_CONF_OPTS += --disable-kmod
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_LIBSELINUX),y)
EUDEV_CONF_OPTS += --enable-selinux
EUDEV_DEPENDENCIES += libselinux
else
EUDEV_CONF_OPTS += --disable-selinux
endif
define EUDEV_INSTALL_INIT_SYSV
$(INSTALL) -D -m 0755 package/eudev/S10udevd $(TARGET_DIR)/etc/init.d/S10udevd
endef
# Avoid installing S10udevd with openrc, as the service is started by a unit
# from the udev-gentoo-scripts package.
define EUDEV_INSTALL_INIT_OPENRC
@:
endef
HOST_EUDEV_DEPENDENCIES = host-gperf host-pkgconf
HOST_EUDEV_CONF_OPTS = \
--prefix=/usr \
--sbindir=/sbin \
--libexecdir=/lib \
--with-rootlibdir=/lib \
--sysconfdir=/etc \
--disable-blkid \
--disable-kmod \
--disable-manpages \
--disable-rule-generator \
--disable-selinux \
--enable-hwdb
define HOST_EUDEV_INSTALL_CMDS
$(INSTALL) -D -m 0755 $(@D)/src/udev/udevadm \
$(HOST_DIR)/bin/udevadm
endef
define HOST_EUDEV_BUILD_HWDB
$(HOST_DIR)/bin/udevadm hwdb --update --usr --root $(TARGET_DIR)
endef
HOST_EUDEV_TARGET_FINALIZE_HOOKS += HOST_EUDEV_BUILD_HWDB
$(eval $(autotools-package))
$(eval $(host-autotools-package))