0552bb1b6a127424e4c68c17b26e60b47a0970ef
[openwrt/svn-archive/archive.git] / package / udev / Makefile
1 #
2 # Copyright (C) 2006-2008 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7 # $Id$
8
9 include $(TOPDIR)/rules.mk
10
11 PKG_NAME:=udev
12 PKG_VERSION:=106
13 PKG_RELEASE:=1
14
15 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
16 PKG_SOURCE_URL:=@KERNEL/linux/utils/kernel/hotplug/
17 PKG_MD5SUM:=320ccd2d0f4540d10e021bafa14f8985
18
19 include $(INCLUDE_DIR)/package.mk
20
21 define Package/udev
22 SECTION:=utils
23 CATEGORY:=Utilities
24 DEPENDS:=@LINUX_2_6
25 TITLE:=Dynamic device management subsystem
26 URL:=http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev.html
27 endef
28
29 define Package/udev/description
30 udev provides a dynamic device directory containing only the files for
31 actually present devices. It creates or removes device node files in
32 the /dev directory, or it renames network interfaces.
33 endef
34
35 define Package/udevtrigger
36 $(call Package/udev)
37 SECTION:=base
38 CATEGORY:=Base system
39 TITLE:=Small utility to request kernel devices events for coldplug
40 endef
41
42 define Package/udevextras
43 $(call Package/udev)
44 TITLE:=Utilities for udev scripts, for general device discovery
45 MENU:=1
46 endef
47
48 define Package/udevextras/config
49 source "$(SOURCE)/udevextras-config.in"
50 endef
51
52 UDEV_ALL_EXTRAS=ata_id cdrom_id dasd_id scsi_id path_id usb_id volume_id
53 UDEV_EXTRAS=$(strip $(foreach e, $(UDEV_ALL_EXTRAS), \
54 $(if $(CONFIG_UDEVEXTRAS_$(e)),extras/$(e))))
55
56 define Build/Compile
57 $(MAKE) -C $(PKG_BUILD_DIR) \
58 CROSS_COMPILE="$(TARGET_CROSS)" \
59 STRIP="/bin/true" \
60 OPTFLAGS="$(TARGET_CFLAGS)" \
61 DESTDIR="$(PKG_INSTALL_DIR)" \
62 INSTALL="install -c" \
63 EXTRAS="$(UDEV_EXTRAS)" \
64 VOLUME_ID_STATIC=true \
65 all install
66 endef
67
68 define Package/udev/install
69 install -d -m0775 $(1)/etc/udev
70 $(CP) $(PKG_INSTALL_DIR)/etc/udev/* $(1)/etc/udev/
71 install -d -m0775 $(1)/lib/udev
72 install -d -m0775 $(1)/sbin/
73 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/sbin/udevcontrol $(1)/sbin/
74 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/sbin/udevd $(1)/sbin/
75 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/sbin/udevsettle $(1)/sbin/
76 install -d -m0775 $(1)/usr/bin/
77 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/udevinfo $(1)/usr/bin/
78 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/udevtest $(1)/usr/bin/
79 install -d -m0775 $(1)/usr/sbin/
80 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/udevmonitor $(1)/usr/sbin/
81 install -d -m0775 $(1)/etc/udev/rules.d
82 $(CP) files/20-input-grouping.rules $(1)/etc/udev/rules.d/
83 endef
84
85 define Package/udevtrigger/install
86 $(INSTALL_DIR) $(1)/sbin
87 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/sbin/udevtrigger $(1)/sbin/
88 endef
89
90 define Package/udevextras/install
91 $(INSTALL_DIR) $(1)/etc/udev
92 $(CP) $(PKG_BUILD_DIR)/etc/udev/rules.d $(1)/etc/udev/
93 $(INSTALL_DIR) $(1)/lib/udev
94 $$(foreach f, $$(shell $(FIND) $(PKG_INSTALL_DIR)/lib/udev/ -type f), \
95 $(CP) $$(f) $(1)/lib/udev/ ; \
96 )
97 endef
98
99 $(eval $(call BuildPackage,udev))
100 $(eval $(call BuildPackage,udevtrigger))
101 $(eval $(call BuildPackage,udevextras))