]>
Commit | Line | Data |
---|---|---|
aa915009 EA |
1 | ############################################################# |
2 | # | |
3 | # udev | |
4 | # | |
5 | ############################################################# | |
12ab8c75 | 6 | UDEV_VERSION:=094 |
aa915009 EA |
7 | UDEV_SOURCE:=udev-$(UDEV_VERSION).tar.bz2 |
8 | UDEV_SITE:=ftp://ftp.kernel.org/pub/linux/utils/kernel/hotplug/ | |
6e2823c1 | 9 | UDEV_CAT:=$(BZCAT) |
aa915009 EA |
10 | UDEV_DIR:=$(BUILD_DIR)/udev-$(UDEV_VERSION) |
11 | UDEV_TARGET_BINARY:=sbin/udev | |
12 | UDEV_BINARY:=udev | |
13 | ||
246d05c7 EA |
14 | # UDEV_ROOT is /dev so we can replace devfs, not /udev for experiments |
15 | UDEV_ROOT:=/dev | |
16 | ||
aa915009 EA |
17 | $(DL_DIR)/$(UDEV_SOURCE): |
18 | $(WGET) -P $(DL_DIR) $(UDEV_SITE)/$(UDEV_SOURCE) | |
19 | ||
20 | udev-source: $(DL_DIR)/$(UDEV_SOURCE) | |
21 | ||
22 | $(UDEV_DIR)/.unpacked: $(DL_DIR)/$(UDEV_SOURCE) | |
23 | $(UDEV_CAT) $(DL_DIR)/$(UDEV_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) - | |
1718a206 | 24 | toolchain/patch-kernel.sh $(UDEV_DIR) package/udev \*.patch |
aa915009 EA |
25 | touch $(UDEV_DIR)/.unpacked |
26 | ||
27 | $(UDEV_DIR)/.configured: $(UDEV_DIR)/.unpacked | |
dfebda00 | 28 | touch $(UDEV_DIR)/.configured |
aa915009 EA |
29 | |
30 | $(UDEV_DIR)/$(UDEV_BINARY): $(UDEV_DIR)/.configured | |
31 | $(MAKE) CROSS=$(TARGET_CROSS) GCC=$(TARGET_CC) \ | |
246d05c7 EA |
32 | USE_LOG=false USE_SELINUX=false \ |
33 | udevdir=$(UDEV_ROOT) -C $(UDEV_DIR) | |
aa915009 EA |
34 | touch -c $(UDEV_DIR)/$(UDEV_BINARY) |
35 | ||
246d05c7 EA |
36 | # UDEV_CONF overrides default policies for device access control and naming; |
37 | # default access controls prevent non-root tasks from running. Many of the | |
38 | # rule files rely on PROGRAM invocations (e.g. extra /etc/udev/scripts); | |
39 | # for now we'll avoid having buildroot systems rely on them. | |
40 | UDEV_CONF:=etc/udev/frugalware/udev.rules | |
41 | ||
aa915009 | 42 | $(TARGET_DIR)/$(UDEV_TARGET_BINARY): $(UDEV_DIR)/$(UDEV_BINARY) |
246d05c7 EA |
43 | -mkdir $(TARGET_DIR)/sys |
44 | install -D -m 0644 $(UDEV_DIR)/$(UDEV_CONF) \ | |
45 | $(TARGET_DIR)/etc/udev/rules.d/50-udev.rules | |
aa915009 | 46 | $(MAKE) CROSS=$(TARGET_CROSS) GCC=$(TARGET_CC) DESTDIR=$(TARGET_DIR) \ |
246d05c7 EA |
47 | USE_LOG=false USE_SELINUX=false \ |
48 | udevdir=$(UDEV_ROOT) -C $(UDEV_DIR) install | |
49 | $(INSTALL) -m 0755 -D package/udev/init-udev $(TARGET_DIR)/etc/init.d/S10udev | |
aa915009 EA |
50 | |
51 | udev: uclibc $(TARGET_DIR)/$(UDEV_TARGET_BINARY) | |
52 | ||
53 | udev-clean: | |
54 | $(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(UDEV_DIR) uninstall | |
55 | -$(MAKE) -C $(UDEV_DIR) clean | |
56 | ||
57 | udev-dirclean: | |
58 | rm -rf $(UDEV_DIR) | |
59 | ||
60 | ############################################################# | |
61 | # | |
62 | # Toplevel Makefile options | |
63 | # | |
64 | ############################################################# | |
65 | ifeq ($(strip $(BR2_PACKAGE_UDEV)),y) | |
66 | TARGETS+=udev | |
67 | endif |