summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--package/udev/Makefile31
-rw-r--r--package/udev/udevextras-config.in51
2 files changed, 73 insertions, 9 deletions
diff --git a/package/udev/Makefile b/package/udev/Makefile
index 336e511f0..bb23172ed 100644
--- a/package/udev/Makefile
+++ b/package/udev/Makefile
@@ -35,13 +35,24 @@ endef
define Package/udevtrigger
$(call Package/udev)
TITLE:=Small utility to request kernel devices events for coldplug
+ DEPENDS:=udev
endef
-define Package/udev-vol-id
+define Package/udevextras
$(call Package/udev)
- TITLE:=Small utility to read volume ids
+ TITLE:=Utilities for udev scripts, for general device discovery
+ DEPENDS:=udev
+ MENU:=1
endef
+define Package/udevextras/config
+ source "$(SOURCE)/udevextras-config.in"
+endef
+
+UDEV_ALL_EXTRAS=ata_id cdrom_id dasd_id scsi_id path_id usb_id volume_id
+UDEV_EXTRAS=$(strip $(foreach e, $(UDEV_ALL_EXTRAS), \
+ $(if $(CONFIG_UDEVEXTRAS_$(e)),extras/$(e))))
+
define Build/Compile
$(MAKE) -C $(PKG_BUILD_DIR) \
CROSS_COMPILE="$(TARGET_CROSS)" \
@@ -49,7 +60,8 @@ define Build/Compile
OPTFLAGS="$(TARGET_CFLAGS)" \
DESTDIR="$(PKG_INSTALL_DIR)" \
INSTALL="install -c" \
- EXTRAS="extras/volume_id" \
+ EXTRAS="$(UDEV_EXTRAS)" \
+ VOLUME_ID_STATIC=true \
all install
endef
@@ -74,13 +86,14 @@ define Package/udevtrigger/install
$(INSTALL_DIR) $(1)/sbin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/sbin/udevtrigger $(1)/sbin/
endef
-define Package/udev-vol-id/install
- $(INSTALL_DIR) $(1)/sbin
- $(INSTALL_DIR) $(1)/lib
- $(INSTALL_BIN) $(PKG_INSTALL_DIR)/lib/libvolume_id.so* $(1)/lib/
- $(INSTALL_BIN) $(PKG_INSTALL_DIR)/lib/udev/vol_id $(1)/sbin/
+
+define Package/udevextras/install
+ $(INSTALL_DIR) $(1)/lib/udev
+ $(CP) $(PKG_INSTALL_DIR)/lib/udev/* $(1)/lib/udev/
+ $(INSTALL_DIR) $(1)/etc/udev
+ $(CP) $(PKG_BUILD_DIR)/etc/udev/rules.d $(1)/etc/udev/
endef
$(eval $(call BuildPackage,udev))
$(eval $(call BuildPackage,udevtrigger))
-$(eval $(call BuildPackage,udev-vol-id))
+$(eval $(call BuildPackage,udevextras))
diff --git a/package/udev/udevextras-config.in b/package/udev/udevextras-config.in
new file mode 100644
index 000000000..3e940042f
--- /dev/null
+++ b/package/udev/udevextras-config.in
@@ -0,0 +1,51 @@
+
+config UDEVEXTRAS_ata_id
+ bool
+ prompt "ata_id" if PACKAGE_udevextras
+ default n
+ help
+ ata_id can find unique identifiers for ATA devices
+
+config UDEVEXTRAS_cdrom_id
+ bool
+ prompt "cdrom_id" if PACKAGE_udevextras
+ default n
+ help
+ cdrom_id can find unique identifiers for CDROM devices
+
+config UDEVEXTRAS_dasd_id
+ bool
+ prompt "dasd_id" if PACKAGE_udevextras
+ default n
+ help
+ dasd_id can find unique identifiers for DASD devices
+
+config UDEVEXTRAS_path_id
+ bool
+ prompt "path_id" if PACKAGE_udevextras
+ default n
+ help
+ path_id can find the full path (eg. bus-device-partition)
+ of devices
+
+config UDEVEXTRAS_scsi_id
+ bool
+ prompt "scsi_id" if PACKAGE_udevextras
+ default n
+ help
+ scsi_id can find unique identifiers for SCSI devices
+
+config UDEVEXTRAS_volume_id
+ bool
+ prompt "volume_id" if PACKAGE_udevextras
+ default n
+ help
+ volume_id can find the volume label of storage devices
+
+config UDEVEXTRAS_usb_id
+ bool
+ prompt "usb_id" if PACKAGE_udevextras
+ default n
+ help
+ usb_id can find the unique id of USB devices
+