Commit fabcb119 authored by eric.le.bihan.dev@free.fr's avatar eric.le.bihan.dev@free.fr Committed by Peter Korsgaard
Browse files

udev: convert to virtual package



This patch converts udev to a virtual package. For the moment, there is only
one provider for the udev features: eudev.

Packages meant to provide udev-like features must select the symbol
BR2_PACKAGE_HAS_UDEV.

Packages depending on BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_UDEV or
BR2_PACKAGE_UDEV have been converted to use the new symbol.

[Peter: move legacy symbols under 2014.05]
Signed-off-by: default avatarEric Le Bihan <eric.le.bihan.dev@free.fr>
Signed-off-by: default avatarPeter Korsgaard <peter@korsgaard.com>
parent 937a9544
Loading
Loading
Loading
Loading
+58 −0
Original line number Diff line number Diff line
@@ -98,6 +98,64 @@ comment "build, or run, in unpredictable ways. "
comment "----------------------------------------------------"
endif

###############################################################################
comment "Legacy options removed in 2014.05"

config BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_UDEV
	bool "/dev management by udev removed"
	select BR2_LEGACY
	help
	  The 'udev' package has been converted to a virtual package.
	  There is currently one provider for this feature: 'eudev'.

	  Therefore, you must choose 'Dynamic using eudev' in the
	  '/dev management' menu to get the same behaviour as in your
	   old configuration.

	  You must also check the packages depending on 'udev' are still
	  selected.

config BR2_PACKAGE_UDEV
	bool "udev is now a virtual package"
	select BR2_LEGACY
	select BR2_PACKAGE_HAS_UDEV
	help
	  The 'udev' package has been converted to a virtual package.
	  There is currently one provider for this feature: 'eudev'.

	  Your old configuration refers to packages depending on 'udev',
	  either for build or at runtime.

	  Check that a 'udev' provider is selected, i.e. that 'eudev' is
	  selected, which is the case if '/dev management' is set to
	  'Dynamic using eudev'.

config BR2_PACKAGE_UDEV_RULES_GEN
	bool "udev rules generation handled by eudev"
	select BR2_LEGACY
	select BR2_PACKAGE_EUDEV
	select BR2_PACKAGE_EUDEV_RULES_GEN
	help
	  The 'udev' package has been converted to a virtual package.
	  There is currently one provider for this feature: 'eudev'.

	  udev rules generation will now be handled by 'eudev'.

	  Check that '/dev management' is set to 'Dynamic using eudev'
	  to get the same behaviour as in your old configuration.

config BR2_PACKAGE_UDEV_ALL_EXTRAS
	bool "udev extras removed"
	select BR2_LEGACY
	help
	  The 'udev' package has been converted to a virtual package.
	  There is currently one provider for this feature: 'eudev'.

	  The option to enable the extra features of 'udev' (gudev, ...)
	  has been removed. These features are automatically enabled in
	  the 'udev' providers if the dependencies are selected. For
	  example, selecting 'libglib2' will trigger the build of gudev.

###############################################################################
comment "Legacy options removed in 2014.02"

+1 −2
Original line number Diff line number Diff line
@@ -273,8 +273,7 @@ foo needs a toolchain w/ featA, featB, featC and a Linux kernel to be built
Dependencies on udev /dev management
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
If a package needs udev /dev management, it should depend on symbol
+BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_UDEV+, and the following comment
should be added:
+BR2_PACKAGE_HAS_UDEV+, and the following comment should be added:

--------------------------
foo needs udev /dev management
+0 −2
Original line number Diff line number Diff line
@@ -186,8 +186,6 @@ define LINUX_CONFIGURE_CMDS
	$(if $(BR2_ROOTFS_DEVICE_CREATION_STATIC),,
		$(call KCONFIG_ENABLE_OPT,CONFIG_DEVTMPFS,$(@D)/.config)
		$(call KCONFIG_ENABLE_OPT,CONFIG_DEVTMPFS_MOUNT,$(@D)/.config))
	$(if $(BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_UDEV),
		$(call KCONFIG_ENABLE_OPT,CONFIG_INOTIFY_USER,$(@D)/.config))
	$(if $(BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV),
		$(call KCONFIG_ENABLE_OPT,CONFIG_INOTIFY_USER,$(@D)/.config))
	$(if $(BR2_PACKAGE_KTAP),
+1 −1
Original line number Diff line number Diff line
@@ -12,7 +12,7 @@ CCID_LICENSE_FILES = COPYING
CCID_INSTALL_STAGING = YES
CCID_DEPENDENCIES = pcsc-lite host-pkgconf libusb

ifeq ($(BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_UDEV),y)
ifeq ($(BR2_PACKAGE_HAS_UDEV),y)
define CCID_INSTALL_UDEV_RULES
	if test -d $(TARGET_DIR)/etc/udev/rules.d ; then \
		cp $(@D)/src/92_pcscd_ccid.rules $(TARGET_DIR)/etc/udev/rules.d/ ; \
+1 −0
Original line number Diff line number Diff line
@@ -6,6 +6,7 @@ config BR2_PACKAGE_EUDEV
	depends on BR2_LARGEFILE # util-linux
	depends on BR2_USE_WCHAR # util-linux
	depends on !BR2_PREFER_STATIC_LIB # kmod
	select BR2_PACKAGE_HAS_UDEV
	select BR2_PACKAGE_UTIL_LINUX
	select BR2_PACKAGE_UTIL_LINUX_LIBBLKID
	select BR2_PACKAGE_KMOD
Loading