X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/2480491ede3c8ba6a98698cb857dad37fe0d046a..46a8296e03ee1456ee01a5a6b9c96511f2af4f1a:/package/udev/Makefile diff --git a/package/udev/Makefile b/package/udev/Makefile index 86e305cde..7673be76f 100644 --- a/package/udev/Makefile +++ b/package/udev/Makefile @@ -1,99 +1,156 @@ -# +# # Copyright (C) 2006-2008 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. # -# $Id$ include $(TOPDIR)/rules.mk PKG_NAME:=udev -PKG_VERSION:=106 +PKG_VERSION:=173 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=@KERNEL/linux/utils/kernel/hotplug/ -PKG_MD5SUM:=320ccd2d0f4540d10e021bafa14f8985 +PKG_MD5SUM:=91a88a359b60bbd074b024883cc0dbde include $(INCLUDE_DIR)/package.mk +PKG_INSTALL=1 + define Package/udev - SECTION:=utils - CATEGORY:=Utilities - DEPENDS:=@LINUX_2_6 + SECTION:=base + CATEGORY:=Base system TITLE:=Dynamic device management subsystem URL:=http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev.html + MAINTAINER:=Geoff Levand + MENU:=1 + DEPENDS:=+librt endef define Package/udev/description - udev provides a dynamic device directory containing only the files for - actually present devices. It creates or removes device node files in - the /dev directory, or it renames network interfaces. + udev allows Linux users to have a dynamic /dev directory and it + provides the ability to have persistent device names. endef -define Package/udevtrigger -$(call Package/udev) - TITLE:=Small utility to request kernel devices events for coldplug +define Package/udev/conffiles +/etc/udev/udev.conf endef -define Package/udevextras -$(call Package/udev) - TITLE:=Utilities for udev scripts, for general device discovery - MENU:=1 +define Package/udev/config + source "$(SOURCE)/Config.in" endef -define Package/udevextras/config - source "$(SOURCE)/udevextras-config.in" -endef +udev-args-$(CONFIG_UDEV_DISABLE_LOGGING) += --disable-logging +udev-args-$(CONFIG_UDEV_ENABLE_DEBUG) += --enable-debug +udev-args-$(CONFIG_UDEV_EXTRA_edd_id) += --enable-edd +udev-args-$(CONFIG_UDEV_EXTRA_floppy) += --enable-floppy + +# TODO: make hwdb and introspection work + +CONFIGURE_ARGS += --prefix=/usr --exec-prefix= --sysconfdir=/etc \ + --disable-hwdb --disable-keymap --disable-gudev --disable-introspection \ + --libexecdir=/lib/udev --disable-gtk-doc-html \ + --sbindir=/sbin $(udev-args-y) + +udev-extra-lib-bin-$(CONFIG_UDEV_EXTRA_accelerometer) += accelerometer +udev-extra-rules-$(CONFIG_UDEV_EXTRA_accelerometer) += 61-accelerometer.rules + +udev-extra-lib-bin-$(CONFIG_UDEV_EXTRA_ata_id) += ata_id + +udev-extra-lib-bin-$(CONFIG_UDEV_EXTRA_cdrom_id) += cdrom_id +udev-extra-rules-$(CONFIG_UDEV_EXTRA_cdrom_id) += 60-cdrom_id.rules + +udev-extra-lib-bin-$(CONFIG_UDEV_EXTRA_collect) += collect + +udev-extra-lib-bin-$(CONFIG_UDEV_EXTRA_edd_id) += edd_id +udev-extra-rules-$(CONFIG_UDEV_EXTRA_edd_id) += 61-persistent-storage-edd.rules + +udev-extra-lib-bin-$(CONFIG_UDEV_EXTRA_firmware) += firmware +udev-extra-rules-$(CONFIG_UDEV_EXTRA_firmware) += 50-firmware.rules + +udev-extra-lib-bin-$(CONFIG_UDEV_EXTRA_floppy) += create_floppy_devices + +# TODO: make gudev work -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)" \ - STRIP="/bin/true" \ - OPTFLAGS="$(TARGET_CFLAGS)" \ - DESTDIR="$(PKG_INSTALL_DIR)" \ - INSTALL="install -c" \ - EXTRAS="$(UDEV_EXTRAS)" \ - VOLUME_ID_STATIC=true \ - all install +udev-extra-lib-bin-$(CONFIG_UDEV_EXTRA_input_id) += input_id + +# TODO: make keymap work + +udev-extra-lib-bin-$(CONFIG_UDEV_EXTRA_mtd_probe) += mtd_probe +udev-extra-rules-$(CONFIG_UDEV_EXTRA_mtd_probe) += 75-probe_mtd.rules + +udev-extra-lib-bin-$(CONFIG_UDEV_EXTRA_path_id) += path_id + +udev-extra-rules-$(CONFIG_UDEV_EXTRA_qemu) += 42-qemu-usb.rules + +udev-extra-lib-bin-$(CONFIG_UDEV_EXTRA_rule_generator) += \ + write_cd_rules write_net_rules +udev-extra-lib-data-$(CONFIG_UDEV_EXTRA_rule_generator) += \ + rule_generator.functions +udev-extra-rules-$(CONFIG_UDEV_EXTRA_rule_generator) += \ + 75-cd-aliases-generator.rules 75-persistent-net-generator.rules + +udev-extra-lib-bin-$(CONFIG_UDEV_EXTRA_scsi_id) += scsi_id + +# TODO: make udev-acl work + +udev-extra-lib-bin-$(CONFIG_UDEV_EXTRA_usb_id) += usb_id + +udev-extra-lib-bin-$(CONFIG_UDEV_EXTRA_v4l_id) += v4l_id +udev-extra-rules-$(CONFIG_UDEV_EXTRA_v4l_id) += 60-persistent-v4l.rules + +define Build/InstallDev + $(INSTALL_DIR) $(1)/usr/include + $(CP) $(PKG_INSTALL_DIR)/usr/include/libudev.h $(1)/usr/include + $(INSTALL_DIR) $(1)/usr/share/pkgconfig + $(CP) $(PKG_INSTALL_DIR)/usr/share/pkgconfig/udev.pc $(1)/usr/share/pkgconfig + $(INSTALL_DIR) $(1)/lib + $(CP) $(PKG_INSTALL_DIR)/lib/libudev.so* $(1)/lib + $(INSTALL_DIR) $(1)/usr/lib/pkgconfig + $(CP) $(PKG_INSTALL_DIR)/lib/pkgconfig/libudev.pc $(1)/usr/lib/pkgconfig endef define Package/udev/install - install -d -m0775 $(1)/etc/udev - $(CP) $(PKG_INSTALL_DIR)/etc/udev/* $(1)/etc/udev/ - install -d -m0775 $(1)/lib/udev - install -d -m0775 $(1)/sbin/ - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/sbin/udevcontrol $(1)/sbin/ - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/sbin/udevd $(1)/sbin/ - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/sbin/udevsettle $(1)/sbin/ - install -d -m0775 $(1)/usr/bin/ - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/udevinfo $(1)/usr/bin/ - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/udevtest $(1)/usr/bin/ - install -d -m0775 $(1)/usr/sbin/ - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/udevmonitor $(1)/usr/sbin/ - install -d -m0775 $(1)/etc/udev/rules.d - $(CP) files/20-input-grouping.rules $(1)/etc/udev/rules.d/ -endef + $(INSTALL_DIR) $(1)/etc/udev/rules.d + $(INSTALL_DATA) $(PKG_INSTALL_DIR)/etc/udev/udev.conf $(1)/etc/udev -define Package/udevtrigger/install $(INSTALL_DIR) $(1)/sbin - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/sbin/udevtrigger $(1)/sbin/ -endef + $(INSTALL_BIN) \ + $(PKG_INSTALL_DIR)/sbin/udevadm \ + $(PKG_INSTALL_DIR)/sbin/udevd \ + $(1)/sbin + + $(INSTALL_DIR) $(1)/lib/udev/rules.d + $(INSTALL_DATA) \ + $(addprefix $(PKG_INSTALL_DIR)/lib/udev/rules.d/, \ + $(udev-extra-rules-y)) \ + $(addprefix $(PKG_INSTALL_DIR)/lib/udev/rules.d/, \ + 50-udev-default.rules \ + 60-persistent-input.rules \ + 60-persistent-serial.rules \ + 60-persistent-storage.rules \ + 80-drivers.rules \ + 95-udev-late.rules) \ + $(1)/lib/udev/rules.d + + $(INSTALL_DIR) $(1)/lib + $(CP) $(PKG_INSTALL_DIR)/lib/libudev.so* $(1)/lib -define Package/udevextras/install - $(INSTALL_DIR) $(1)/etc/udev - $(CP) $(PKG_BUILD_DIR)/etc/udev/rules.d $(1)/etc/udev/ $(INSTALL_DIR) $(1)/lib/udev - $$(foreach f, $$(shell $(FIND) $(PKG_INSTALL_DIR)/lib/udev/ -type f), \ - $(CP) $$(f) $(1)/lib/udev/ ; \ - ) +ifneq ($(udev-extra-lib-bin-y),) + $(INSTALL_BIN) \ + $(addprefix $(PKG_INSTALL_DIR)/lib/udev/, \ + $(udev-extra-lib-bin-y)) \ + $(1)/lib/udev/ +endif +ifneq ($(udev-extra-lib-data-y),) + $(INSTALL_DATA) \ + $(addprefix $(PKG_INSTALL_DIR)/lib/udev/, \ + $(udev-extra-lib-data-y)) \ + $(1)/lib/udev/ +endif endef $(eval $(call BuildPackage,udev)) -$(eval $(call BuildPackage,udevtrigger)) -$(eval $(call BuildPackage,udevextras))