summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Olbrich <m.olbrich@pengutronix.de>2012-02-12 12:23:41 +0100
committerMichael Olbrich <m.olbrich@pengutronix.de>2012-02-18 20:26:10 +0100
commite6ad184d539042ae088b21f503c067d4afc55ab4 (patch)
tree346232b510ac1ea0d0dcbd7f5244be38bb774574
parent086e0ad12b2ee6aa4f54c0d70cd571971503b135 (diff)
downloadptxdist-e6ad184d539042ae088b21f503c067d4afc55ab4.tar.gz
ptxdist-e6ad184d539042ae088b21f503c067d4afc55ab4.tar.xz
udev: version bump 162/172 -> 172/181
Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
-rwxr-xr-xpatches/udev-162/autogen.sh9
-rw-r--r--patches/udev-162/remove-SOCK_CLOEXEC.diff30
-rw-r--r--patches/udev-162/series5
-rw-r--r--patches/udev-162/udev-150-remove-le16toh.diff30
-rw-r--r--patches/udev-162/udev-150-revert-SOCK_CLOEXEC.diff129
-rw-r--r--patches/udev-162/udev-150-revert-bsg_h-removal.diff130
-rw-r--r--patches/udev-162/udev-150-split-extras.diff232
-rw-r--r--rules/systemd.in1
-rw-r--r--rules/udev.in412
-rw-r--r--rules/udev.make437
-rwxr-xr-xscripts/migrate/migrate_ptx12
11 files changed, 292 insertions, 1135 deletions
diff --git a/patches/udev-162/autogen.sh b/patches/udev-162/autogen.sh
deleted file mode 100755
index a14cd51d3..000000000
--- a/patches/udev-162/autogen.sh
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/bin/bash
-
-autoreconf \
- --force \
- --install \
- --warnings=syntax \
- --warnings=obsolete \
- --warnings=unsupported
-
diff --git a/patches/udev-162/remove-SOCK_CLOEXEC.diff b/patches/udev-162/remove-SOCK_CLOEXEC.diff
deleted file mode 100644
index 3c036938e..000000000
--- a/patches/udev-162/remove-SOCK_CLOEXEC.diff
+++ /dev/null
@@ -1,30 +0,0 @@
-From: Michael Olbrich <m.olbrich@pengutronix.de>
-Subject: HACK: remove SOCK_CLOEXEC usage
-
-SOCK_CLOEXEC is not supported by OSELAS.Toolchain-1.99.3
-
-Not for upstream.
-
-Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
-
----
- udev/udevd.c | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-Index: udev-162/udev/udevd.c
-===================================================================
---- udev-162.orig/udev/udevd.c
-+++ udev-162/udev/udevd.c
-@@ -982,10 +982,11 @@ static int init_notify(const char *state
- goto finish;
- }
-
-- if ((fd = socket(AF_UNIX, SOCK_DGRAM|SOCK_CLOEXEC, 0)) < 0) {
-+ if ((fd = socket(AF_UNIX, SOCK_DGRAM, 0)) < 0) {
- r = -errno;
- goto finish;
- }
-+ util_set_fd_cloexec(fd);
-
- memset(&sockaddr, 0, sizeof(sockaddr));
- sockaddr.sa.sa_family = AF_UNIX;
diff --git a/patches/udev-162/series b/patches/udev-162/series
deleted file mode 100644
index cbfcdab6c..000000000
--- a/patches/udev-162/series
+++ /dev/null
@@ -1,5 +0,0 @@
-udev-150-split-extras.diff
-udev-150-revert-SOCK_CLOEXEC.diff
-udev-150-revert-bsg_h-removal.diff
-udev-150-remove-le16toh.diff
-remove-SOCK_CLOEXEC.diff
diff --git a/patches/udev-162/udev-150-remove-le16toh.diff b/patches/udev-162/udev-150-remove-le16toh.diff
deleted file mode 100644
index 90b7ead8c..000000000
--- a/patches/udev-162/udev-150-remove-le16toh.diff
+++ /dev/null
@@ -1,30 +0,0 @@
-From: Michael Olbrich <m.olbrich@pengutronix.de>
-Subject: HACK: remove le16toh usage
-
-le16toh is not supported by OSELAS.Toolchain-1.99.3
-
-Not for upstream.
-
-Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
-
----
- extras/ata_id/ata_id.c | 6 +++++-
- 1 file changed, 5 insertions(+), 1 deletion(-)
-
-Index: udev-162/extras/ata_id/ata_id.c
-===================================================================
---- udev-162.orig/extras/ata_id/ata_id.c
-+++ udev-162/extras/ata_id/ata_id.c
-@@ -167,7 +167,11 @@ static void disk_identify_fixup_uint16 (
- uint16_t *p;
-
- p = (uint16_t *) identify;
-- p[offset_words] = le16toh (p[offset_words]);
-+#if __BYTE_ORDER == __LITTLE_ENDIAN
-+ p[offset_words] = p[offset_words];
-+#else
-+ p[offset_words] = __bswap_16 (p[offset_words]);
-+#endif
- }
-
- /**
diff --git a/patches/udev-162/udev-150-revert-SOCK_CLOEXEC.diff b/patches/udev-162/udev-150-revert-SOCK_CLOEXEC.diff
deleted file mode 100644
index 2da5f0971..000000000
--- a/patches/udev-162/udev-150-revert-SOCK_CLOEXEC.diff
+++ /dev/null
@@ -1,129 +0,0 @@
-From: Michael Olbrich <m.olbrich@pengutronix.de>
-Subject: HACK: revert 26347a4c5538008318188118872490128f43fcd3 (don't use SOCK_CLOEXEC)
-
-SOCK_CLOEXEC is not defined by the glibc in OSELAS.Toolchain-1.99.3
-
-Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
-
----
- libudev/libudev-monitor.c | 6 ++++--
- libudev/libudev-private.h | 1 +
- libudev/libudev-util.c | 12 ++++++++++++
- udev/udev-watch.c | 6 ++++--
- udev/udevd.c | 4 +++-
- 5 files changed, 24 insertions(+), 5 deletions(-)
-
-Index: udev-162/libudev/libudev-monitor.c
-===================================================================
---- udev-162.orig/libudev/libudev-monitor.c
-+++ udev-162/libudev/libudev-monitor.c
-@@ -144,12 +144,13 @@ struct udev_monitor *udev_monitor_new_fr
- util_strscpy(&udev_monitor->sun.sun_path[1], sizeof(udev_monitor->sun.sun_path)-1, socket_path);
- udev_monitor->addrlen = offsetof(struct sockaddr_un, sun_path) + strlen(socket_path)+1;
- }
-- udev_monitor->sock = socket(AF_LOCAL, SOCK_DGRAM|SOCK_CLOEXEC, 0);
-+ udev_monitor->sock = socket(AF_LOCAL, SOCK_DGRAM, 0);
- if (udev_monitor->sock == -1) {
- err(udev, "error getting socket: %m\n");
- free(udev_monitor);
- return NULL;
- }
-+ util_set_fd_cloexec(udev_monitor->sock);
-
- dbg(udev, "monitor %p created with '%s'\n", udev_monitor, socket_path);
- return udev_monitor;
-@@ -201,12 +202,13 @@ struct udev_monitor *udev_monitor_new_fr
- if (udev_monitor == NULL)
- return NULL;
-
-- udev_monitor->sock = socket(PF_NETLINK, SOCK_DGRAM|SOCK_CLOEXEC, NETLINK_KOBJECT_UEVENT);
-+ udev_monitor->sock = socket(PF_NETLINK, SOCK_DGRAM, NETLINK_KOBJECT_UEVENT);
- if (udev_monitor->sock == -1) {
- err(udev, "error getting socket: %m\n");
- free(udev_monitor);
- return NULL;
- }
-+ util_set_fd_cloexec(udev_monitor->sock);
-
- udev_monitor->snl.nl_family = AF_NETLINK;
- udev_monitor->snl.nl_groups = group;
-Index: udev-162/libudev/libudev-private.h
-===================================================================
---- udev-162.orig/libudev/libudev-private.h
-+++ udev-162/libudev/libudev-private.h
-@@ -205,6 +205,7 @@ size_t util_strscpyl(char *dest, size_t
- int udev_util_replace_whitespace(const char *str, char *to, size_t len);
- int udev_util_replace_chars(char *str, const char *white);
- int udev_util_encode_string(const char *str, char *str_enc, size_t len);
-+void util_set_fd_cloexec(int fd);
- unsigned int util_string_hash32(const char *key);
- uint64_t util_string_bloom64(const char *str);
-
-Index: udev-162/libudev/libudev-util.c
-===================================================================
---- udev-162.orig/libudev/libudev-util.c
-+++ udev-162/libudev/libudev-util.c
-@@ -535,6 +535,18 @@ static unsigned int murmur_hash2(const c
- return h;
- }
-
-+void util_set_fd_cloexec(int fd)
-+{
-+ int flags;
-+
-+ flags = fcntl(fd, F_GETFD);
-+ if (flags < 0)
-+ flags = FD_CLOEXEC;
-+ else
-+ flags |= FD_CLOEXEC;
-+ fcntl(fd, F_SETFD, flags);
-+}
-+
- unsigned int util_string_hash32(const char *str)
- {
- return murmur_hash2(str, strlen(str), 0);
-Index: udev-162/udev/udev-watch.c
-===================================================================
---- udev-162.orig/udev/udev-watch.c
-+++ udev-162/udev/udev-watch.c
-@@ -38,8 +38,10 @@ static int inotify_fd = -1;
- */
- int udev_watch_init(struct udev *udev)
- {
-- inotify_fd = inotify_init1(IN_CLOEXEC);
-- if (inotify_fd < 0)
-+ inotify_fd = inotify_init();
-+ if (inotify_fd >= 0)
-+ util_set_fd_cloexec(inotify_fd);
-+ else
- err(udev, "inotify_init failed: %m\n");
- return inotify_fd;
- }
-Index: udev-162/udev/udevd.c
-===================================================================
---- udev-162.orig/udev/udevd.c
-+++ udev-162/udev/udevd.c
-@@ -225,6 +225,7 @@ static void worker_new(struct event *eve
- /* allow the main daemon netlink address to send devices to the worker */
- udev_monitor_allow_unicast_sender(worker_monitor, monitor);
- udev_monitor_enable_receiving(worker_monitor);
-+ util_set_fd_cloexec(udev_monitor_get_fd(worker_monitor));
-
- worker = calloc(1, sizeof(struct worker));
- if (worker == NULL) {
-@@ -1227,13 +1228,14 @@ int main(int argc, char *argv[])
- }
-
- /* unnamed socket from workers to the main daemon */
-- if (socketpair(AF_LOCAL, SOCK_DGRAM|SOCK_CLOEXEC, 0, worker_watch) < 0) {
-+ if (socketpair(AF_LOCAL, SOCK_DGRAM, 0, worker_watch) < 0) {
- fprintf(stderr, "error getting socketpair\n");
- err(udev, "error getting socketpair\n");
- rc = 6;
- goto exit;
- }
- pfd[FD_WORKER].fd = worker_watch[READ_END];
-+ util_set_fd_cloexec(worker_watch[WRITE_END]);
-
- rules = udev_rules_new(udev, resolve_names);
- if (rules == NULL) {
diff --git a/patches/udev-162/udev-150-revert-bsg_h-removal.diff b/patches/udev-162/udev-150-revert-bsg_h-removal.diff
deleted file mode 100644
index adff65561..000000000
--- a/patches/udev-162/udev-150-revert-bsg_h-removal.diff
+++ /dev/null
@@ -1,130 +0,0 @@
-From: Michael Olbrich <m.olbrich@pengutronix.de>
-Subject: HACK: revert 24355313dc9686a14a618fcd9bbdedc29c57b651 (readd bsg.h)
-
-Readd bsg.h which is not part of the kernel headers in OSELAS.Toolchain-1.99.3
-
-Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
-
----
- Makefile.am | 3 +
- extras/scsi_id/bsg.h | 84 +++++++++++++++++++++++++++++++++++++++++++
- extras/scsi_id/scsi_serial.c | 3 +
- 3 files changed, 88 insertions(+), 2 deletions(-)
-
-Index: udev-162/Makefile.am
-===================================================================
---- udev-162.orig/Makefile.am
-+++ udev-162/Makefile.am
-@@ -287,7 +287,8 @@ extras_scsi_id_scsi_id_SOURCES =\
- extras/scsi_id/scsi_id.c \
- extras/scsi_id/scsi_serial.c \
- extras/scsi_id/scsi.h \
-- extras/scsi_id/scsi_id.h
-+ extras/scsi_id/scsi_id.h \
-+ extras/scsi_id/bsg.h
- extras_scsi_id_scsi_id_LDADD = libudev/libudev-private.la
- libexec_PROGRAMS += extras/scsi_id/scsi_id
- dist_man_MANS += extras/scsi_id/scsi_id.8
-Index: udev-162/extras/scsi_id/bsg.h
-===================================================================
---- /dev/null
-+++ udev-162/extras/scsi_id/bsg.h
-@@ -0,0 +1,84 @@
-+#ifndef BSG_H
-+#define BSG_H
-+
-+#define BSG_PROTOCOL_SCSI 0
-+
-+#define BSG_SUB_PROTOCOL_SCSI_CMD 0
-+#define BSG_SUB_PROTOCOL_SCSI_TMF 1
-+#define BSG_SUB_PROTOCOL_SCSI_TRANSPORT 2
-+
-+struct sg_io_v4 {
-+ __s32 guard; /* [i] 'Q' to differentiate from v3 */
-+ __u32 protocol; /* [i] 0 -> SCSI , .... */
-+ __u32 subprotocol; /* [i] 0 -> SCSI command, 1 -> SCSI task
-+ management function, .... */
-+
-+ __u32 request_len; /* [i] in bytes */
-+ __u64 request; /* [i], [*i] {SCSI: cdb} */
-+ __u64 request_tag; /* [i] {SCSI: task tag (only if flagged)} */
-+ __u32 request_attr; /* [i] {SCSI: task attribute} */
-+ __u32 request_priority; /* [i] {SCSI: task priority} */
-+ __u32 request_extra; /* [i] {spare, for padding} */
-+ __u32 max_response_len; /* [i] in bytes */
-+ __u64 response; /* [i], [*o] {SCSI: (auto)sense data} */
-+
-+ /* "dout_": data out (to device); "din_": data in (from device) */
-+ __u32 dout_iovec_count; /* [i] 0 -> "flat" dout transfer else
-+ dout_xfer points to array of iovec */
-+ __u32 dout_xfer_len; /* [i] bytes to be transferred to device */
-+ __u32 din_iovec_count; /* [i] 0 -> "flat" din transfer */
-+ __u32 din_xfer_len; /* [i] bytes to be transferred from device */
-+ __u64 dout_xferp; /* [i], [*i] */
-+ __u64 din_xferp; /* [i], [*o] */
-+
-+ __u32 timeout; /* [i] units: millisecond */
-+ __u32 flags; /* [i] bit mask */
-+ __u64 usr_ptr; /* [i->o] unused internally */
-+ __u32 spare_in; /* [i] */
-+
-+ __u32 driver_status; /* [o] 0 -> ok */
-+ __u32 transport_status; /* [o] 0 -> ok */
-+ __u32 device_status; /* [o] {SCSI: command completion status} */
-+ __u32 retry_delay; /* [o] {SCSI: status auxiliary information} */
-+ __u32 info; /* [o] additional information */
-+ __u32 duration; /* [o] time to complete, in milliseconds */
-+ __u32 response_len; /* [o] bytes of response actually written */
-+ __s32 din_resid; /* [o] din_xfer_len - actual_din_xfer_len */
-+ __s32 dout_resid; /* [o] dout_xfer_len - actual_dout_xfer_len */
-+ __u64 generated_tag; /* [o] {SCSI: transport generated task tag} */
-+ __u32 spare_out; /* [o] */
-+
-+ __u32 padding;
-+};
-+
-+#ifdef __KERNEL__
-+
-+#if defined(CONFIG_BLK_DEV_BSG)
-+struct bsg_class_device {
-+ struct device *class_dev;
-+ struct device *parent;
-+ int minor;
-+ struct request_queue *queue;
-+ struct kref ref;
-+ void (*release)(struct device *);
-+};
-+
-+extern int bsg_register_queue(struct request_queue *q,
-+ struct device *parent, const char *name,
-+ void (*release)(struct device *));
-+extern void bsg_unregister_queue(struct request_queue *);
-+#else
-+static inline int bsg_register_queue(struct request_queue *q,
-+ struct device *parent, const char *name,
-+ void (*release)(struct device *))
-+{
-+ return 0;
-+}
-+static inline void bsg_unregister_queue(struct request_queue *q)
-+{
-+}
-+#endif
-+
-+#endif /* __KERNEL__ */
-+
-+#endif
-Index: udev-162/extras/scsi_id/scsi_serial.c
-===================================================================
---- udev-162.orig/extras/scsi_id/scsi_serial.c
-+++ udev-162/extras/scsi_id/scsi_serial.c
-@@ -32,7 +32,8 @@
- #include <scsi/scsi.h>
- #include <scsi/sg.h>
- #include <linux/types.h>
--#include <linux/bsg.h>
-+/* #include <linux/bsg.h> */
-+#include "bsg.h"
-
- #include "libudev.h"
- #include "libudev-private.h"
diff --git a/patches/udev-162/udev-150-split-extras.diff b/patches/udev-162/udev-150-split-extras.diff
deleted file mode 100644
index 3c7d57c00..000000000
--- a/patches/udev-162/udev-150-split-extras.diff
+++ /dev/null
@@ -1,232 +0,0 @@
-From: Michael Olbrich <m.olbrich@pengutronix.de>
-Subject: split enabling extras with dependencies
-
-This patch patch makes it possible to enable all extras with external
-dependencies individually. It replaces:
- --disable-extras
-with
- --disable-gudev
- --disable-bluetooth
- --disable-keymap
- --disable-acl
- --disable-usbdb
- --disable-pcidb
- --disable-action_modeswitch
-as configure options
-
-Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
-
----
- Makefile.am | 24 +++++++++++++++++++++---
- configure.ac | 59 ++++++++++++++++++++++++++++++++++++++++++++++++++---------
- 2 files changed, 71 insertions(+), 12 deletions(-)
-
-Index: udev-162/Makefile.am
-===================================================================
---- udev-162.orig/Makefile.am
-+++ udev-162/Makefile.am
-@@ -307,7 +307,8 @@ extras_v4l_id_v4l_id_LDADD = libudev/lib
- libexec_PROGRAMS += extras/v4l_id/v4l_id
- dist_udevrules_DATA += extras/v4l_id/60-persistent-v4l.rules
-
--if ENABLE_EXTRAS
-+if ENABLE_USBDB
-+if ENABLE_PCIDB
- # ------------------------------------------------------------------------------
- # conditional extras (need glib, libusb, libacl, ...)
- # ------------------------------------------------------------------------------
-@@ -315,7 +316,12 @@ dist_udevrules_DATA += \
- rules/rules.d/75-net-description.rules \
- rules/rules.d/75-tty-description.rules \
- rules/rules.d/78-sound-card.rules
-+endif # ENABLE_PCIDB
-+endif # ENABLE_USBDB
-
-+BUILT_SOURCES =
-+
-+if ENABLE_GUDEV
- # ------------------------------------------------------------------------------
- # GUdev - libudev gobject interface
- # ------------------------------------------------------------------------------
-@@ -353,7 +359,7 @@ dist_extras_gudev_libgudev_1_0_la_SOURCE
- extras/gudev/gudevmarshal.c \
- extras/gudev/gudevenumtypes.h \
- extras/gudev/gudevenumtypes.c
--BUILT_SOURCES = $(dist_extras_gudev_libgudev_1_0_la_SOURCES)
-+BUILT_SOURCES += $(dist_extras_gudev_libgudev_1_0_la_SOURCES)
-
- extras_gudev_libgudev_1_0_la_CPPFLAGS = \
- $(AM_CPPFLAGS) \
-@@ -430,7 +436,9 @@ typelibs_DATA = extras/gudev/GUdev-1.0.t
-
- CLEANFILES += $(gir_DATA) $(typelibs_DATA)
- endif # ENABLE_INTROSPECTION
-+endif # ENABLE_GUDEV
-
-+if ENABLE_BLUETOOTH
- # ------------------------------------------------------------------------------
- # Bluetooth HID devices with special magic to switch the device
- # ------------------------------------------------------------------------------
-@@ -439,7 +447,9 @@ extras_hid2hci_hid2hci_CPPFLAGS = $(AM_C
- extras_hid2hci_hid2hci_LDADD = libudev/libudev-private.la $(LIBUSB_LIBS)
- dist_udevrules_DATA += extras/hid2hci/70-hid2hci.rules
- libexec_PROGRAMS += extras/hid2hci/hid2hci
-+endif # ENABLE_BLUETOOTH
-
-+if ENABLE_UDEV_ACL
- # ------------------------------------------------------------------------------
- # udev_acl - apply ACLs for users with local forground sessions
- # ------------------------------------------------------------------------------
-@@ -454,7 +464,9 @@ udevacl-install-hook:
- ln -sf $(libexecdir)/udev-acl $(DESTDIR)$(prefix)/lib/ConsoleKit/run-seat.d/udev-acl.ck
-
- INSTALL_EXEC_HOOKS += udevacl-install-hook
-+endif # ENABLE_UDEV_ACL
-
-+if ENABLE_USBDB
- # ------------------------------------------------------------------------------
- # usb-db - read USB vendor/device string database
- # ------------------------------------------------------------------------------
-@@ -462,7 +474,9 @@ extras_usb_db_usb_db_SOURCES = extras/us
- extras_usb_db_usb_db_CPPFLAGS = $(AM_CPPFLAGS) -DUSB_DATABASE=\"$(USB_DATABASE)\" -DBUILD_FOR_USB
- extras_usb_db_usb_db_LDADD = libudev/libudev-private.la
- libexec_PROGRAMS += extras/usb-db/usb-db
-+endif # ENABLE_USBDB
-
-+if ENABLE_PCIDB
- # ------------------------------------------------------------------------------
- # pci-db - read PCI vendor/device string database
- # ------------------------------------------------------------------------------
-@@ -470,7 +484,9 @@ extras_usb_db_pci_db_SOURCES = extras/us
- extras_usb_db_pci_db_CPPFLAGS = $(AM_CPPFLAGS) -DPCI_DATABASE=\"$(PCI_DATABASE)\" -DBUILD_FOR_PCI
- extras_usb_db_pci_db_LDADD = libudev/libudev-private.la
- libexec_PROGRAMS += extras/usb-db/pci-db
-+endif # ENABLE_PCIDB
-
-+if ENABLE_ACTION_MODESWITCH
- # ------------------------------------------------------------------------------
- # mobile-action-modeswitch - switch Mobile Action cables into serial mode
- # ------------------------------------------------------------------------------
-@@ -487,7 +503,9 @@ dist_udevrules_DATA += \
- extras/mobile-action-modeswitch/61-mobile-action.rules
-
- libexec_PROGRAMS += extras/mobile-action-modeswitch/mobile-action-modeswitch
-+endif # ENABLE_ACTION_MODESWITCH
-
-+if ENABLE_KEYMAP
- # ------------------------------------------------------------------------------
- # mtd_probe - autoloads FTL module for mtd devices
- # ------------------------------------------------------------------------------
-@@ -602,7 +620,7 @@ keymaps-distcheck-hook: extras/keymap/ke
- $(top_srcdir)/extras/keymap/check-keymaps.sh $(top_srcdir) $^
- DISTCHECK_HOOKS += keymaps-distcheck-hook
-
--endif # ENABLE_EXTRAS
-+endif # ENABLE_KEYMAP
-
- # ------------------------------------------------------------------------------
- # install, uninstall, clean hooks
-Index: udev-162/configure.ac
-===================================================================
---- udev-162.orig/configure.ac
-+++ udev-162/configure.ac
-@@ -71,29 +71,68 @@ if test "x$with_systemdsystemunitdir" !=
- fi
- AM_CONDITIONAL(WITH_SYSTEMD, [test -n "$with_systemdsystemunitdir" -a "x$with_systemdsystemunitdir" != xno ])
-
--AC_ARG_ENABLE([extras],
-- AS_HELP_STRING([--disable-extras], [disable extras with external dependencies]),
-- [], [enable_extras=yes])
--if test "x$enable_extras" = xyes; then
-+AC_ARG_ENABLE([gudev],
-+ AS_HELP_STRING([--disable-gudev], [disable libgudev - libudev gobject interface]),
-+ [], [enable_gudev=yes])
-+AM_CONDITIONAL([ENABLE_GUDEV], [test "x$enable_gudev" = xyes])
-+AC_ARG_ENABLE([bluetooth],
-+ AS_HELP_STRING([--disable-bluetooth], [disable Bluetooth HID devices with special magic to switch the device]),
-+ [], [enable_bluetooth=yes])
-+AM_CONDITIONAL([ENABLE_BLUETOOTH], [test "x$enable_bluetooth" = xyes])
-+AC_ARG_ENABLE([keymap],
-+ AS_HELP_STRING([--disable-keymap], [disable keymap - map custom hardware's multimedia keys]),
-+ [], [enable_keymap=yes])
-+AM_CONDITIONAL([ENABLE_KEYMAP], [test "x$enable_keymap" = xyes])
-+AC_ARG_ENABLE([udev_acl],
-+ AS_HELP_STRING([--disable-udev_acl], [disable udev_acl - apply ACLs for users with local forground sessions]),
-+ [], [enable_udev_acl=yes])
-+AM_CONDITIONAL([ENABLE_UDEV_ACL], [test "x$enable_udev_acl" = xyes])
-+AC_ARG_ENABLE([usbdb],
-+ AS_HELP_STRING([--disable-usbdb], [disable usb-db - read USB vendor/device string database]),
-+ [], [enable_usbdb=yes])
-+AM_CONDITIONAL([ENABLE_USBDB], [test "x$enable_usbdb" = xyes])
-+AC_ARG_ENABLE([pcidb],
-+ AS_HELP_STRING([--disable-pcidb], [disable pci-db - read PCI vendor/device string database]),
-+ [], [enable_pcidb=yes])
-+AM_CONDITIONAL([ENABLE_PCIDB], [test "x$enable_pcidb" = xyes])
-+AC_ARG_ENABLE([action_modeswitch],
-+ AS_HELP_STRING([--disable-action_modeswitch], [disable mobile-action-modeswitch - switch Mobile Action cables into serial mode]),
-+ [], [enable_action_modeswitch=yes])
-+AM_CONDITIONAL([ENABLE_ACTION_MODESWITCH], [test "x$enable_action_modeswitch" = xyes])
-+
-+if test "x$enable_keymap" = xyes; then
- AC_PATH_PROG([GPERF], [gperf])
- if test -z "$GPERF"; then
- AC_MSG_ERROR([gperf is needed])
- fi
-
-+ AC_CHECK_HEADER([linux/input.h], [:], AC_MSG_ERROR([kernel headers not found]))
-+ AC_SUBST([INCLUDE_PREFIX], [$(echo '#include <linux/input.h>' | eval $ac_cpp -E - | sed -n '/linux\/input.h/ {s:.*"\(.*\)/linux/input.h".*:\1:; p; q}')])
-+fi
-+
-+if test "x$enable_gudev" = xyes -o "x$enable_udev_acl" = xyes; then
- PKG_CHECK_MODULES([GLIB], [glib-2.0 >= 2.7.0 gobject-2.0 >= 2.7.0])
- AC_SUBST([GLIB_CFLAGS])
- AC_SUBST([GLIB_LIBS])
-+fi
-
-+if test "x$enable_udev_acl" = xyes; then
- AC_CHECK_LIB([acl], [acl_init], [:], AC_MSG_ERROR([libacl not found]))
- AC_CHECK_HEADER([acl/libacl.h], [:], AC_MSG_ERROR([libacl header not found]))
-+fi
-
-+if test "x$enable_bluetooth" = xyes -o "x$enable_action_modeswitch" = xyes; then
- PKG_CHECK_MODULES(LIBUSB, libusb >= 0.1.12)
- AC_SUBST(LIBUSB_CFLAGS)
- AC_SUBST(LIBUSB_LIBS)
-+fi
-
-+if test "x$enable_usbdb" = xyes; then
- PKG_CHECK_MODULES(USBUTILS, usbutils >= 0.82)
- AC_SUBST([USB_DATABASE], [$($PKG_CONFIG --variable=usbids usbutils)])
-+fi
-
-+if test "x$enable_pcidb" = xyes; then
- if test "x$cross_compiling" = "xno" ; then
- AC_CHECK_FILES([/usr/share/pci.ids], [pciids=/usr/share/pci.ids])
- AC_CHECK_FILES([/usr/share/hwdata/pci.ids], [pciids=/usr/share/hwdata/pci.ids])
-@@ -110,11 +149,9 @@ if test "x$enable_extras" = xyes; then
- AC_MSG_CHECKING([for PCI database location])
- AC_MSG_RESULT([$PCI_DATABASE])
- AC_SUBST(PCI_DATABASE)
--
-- AC_CHECK_HEADER([linux/input.h], [:], AC_MSG_ERROR([kernel headers not found]))
-- AC_SUBST([INCLUDE_PREFIX], [$(echo '#include <linux/input.h>' | eval $ac_cpp -E - | sed -n '/linux\/input.h/ {s:.*"\(.*\)/linux/input.h".*:\1:; p; q}')])
-+else
-+ PCI_DATABASE=no
- fi
--AM_CONDITIONAL([ENABLE_EXTRAS], [test "x$enable_extras" = xyes])
-
- AC_ARG_ENABLE([introspection],
- AS_HELP_STRING([--disable-introspection], [disable GObject introspection]),
-@@ -173,7 +210,11 @@ AC_MSG_RESULT([
- cflags: ${CFLAGS}
- ldflags: ${LDFLAGS}
-
-- extras: ${enable_extras}
-+ gudev: ${enable_gudev}
-+ bluetooth: ${enable_bluetooth}
-+ keymap: ${enable_keymap}
-+ acl: ${enable_udev_acl}
-+ action-modeswitch: ${enable_action_modeswitch}
- gintrospection: ${enable_introspection}
-
- usb.ids: ${USB_DATABASE}
diff --git a/rules/systemd.in b/rules/systemd.in
index a0703474e..561e031df 100644
--- a/rules/systemd.in
+++ b/rules/systemd.in
@@ -11,7 +11,6 @@ menuconfig SYSTEMD
select LIBCAP
select UDEV
select UDEV_LIBUDEV
- select UDEV_EXPERIMENTAL
select PYTHON if SYSTEMD_ANALYZE
select DBUS_PYTHON if SYSTEMD_ANALYZE
select TCPWRAPPER if SYSTEMD_TCPWRAP
diff --git a/rules/udev.in b/rules/udev.in
index cc9875013..e4c8f9d72 100644
--- a/rules/udev.in
+++ b/rules/udev.in
@@ -3,15 +3,14 @@ menuconfig UDEV
tristate
prompt "udev "
select ROOTFS_DEV
- select HOST_GPERF if UDEV_EXTRA_KEYMAP
- select GLIB if UDEV_LIBGUDEV
- select GLIB if UDEV_EXTRA_UDEV_ACL
- select ACL if UDEV_EXTRA_UDEV_ACL
- select USBUTILS if UDEV_EXTRA_USB_DB
- select LIBUSB_COMPAT if UDEV_EXTRA_HID2HCI
- select LIBUSB_COMPAT if UDEV_EXTRA_MOBILE_ACTION_MODESWITCH
- select PCIUTILS if UDEV_EXTRA_PCI_DB
- select LIBC_RT if UDEV_EXPERIMENTAL
+ select LIBC_RT
+ select LIBKMOD if !UDEV_LEGACY
+ select LIBBLKID if !UDEV_LEGACY
+ select ACL if UDEV_ACL
+ select ACL_SHARED if UDEV_ACL
+ select GLIB if UDEV_ACL || UDEV_LIBGUDEV
+ select PCIUTILS if UDEV_PERSISTENT_PCI
+ select USBUTILS if UDEV_PERSISTENT_USB
help
udev provides a dynamic device directory containing only the files for
actually present devices. It creates or removes device node files in the
@@ -26,267 +25,170 @@ menuconfig UDEV
specify a device node name and multiple symlink names and instruct udev
to run additional programs as part of the device event handling.
- Ensure: This udev implementation requires at least kernel 2.6.15 and
- must have sysfs, unix domain sockets and networking enabled.
+ Ensure: This udev implementation requires at least kernel 2.6.32 and
+ must have sysfs, unix domain sockets, networking and devtmpfs enabled.
if UDEV
menu "build options "
- config UDEV_EXPERIMENTAL
- bool
- prompt "use newer udev version"
- help
- Warning: this option only works with a new toolchain.
- SOCK_CLOEXEC, le16toh, etc. must be supported.
-
- config UDEV_DEBUG
- bool
- prompt "enable debug messages"
- help
- If enabled, very verbose debugging messages will be compiled
- into the udev binaries. The actual level of debugging is specified
- in the udev config file (refer entry "udev_log")
-
- config UDEV_SELINUX
- bool
- # not supported yet
- # prompt "enable selinux support"
-
- config UDEV_SYSLOG
- bool
- prompt "syslog support"
- help
- If enabled, udev is able to pass errors or debug information
- to syslog. This is very useful to see what udev is doing or not doing.
- Note: To use this feature the syslog daemon must start before udev
+config UDEV_LEGACY
+ bool
+ prompt "use older udev version"
+ help
+ This may be necessary e.g. for systems without devtmpfs
+
+config UDEV_DEBUG
+ bool
+ prompt "enable debug messages"
+ help
+ If enabled, very verbose debugging messages will be compiled
+ into the udev binaries. The actual level of debugging is specified
+ in the udev config file (refer entry "udev_log")
+
+config UDEV_SYSLOG
+ bool
+ prompt "enable system logging"
+ help
+ If enabled, udev is able to pass errors or debug information
+ to syslog. This is very useful to see what udev is doing or not doing.
+ Note: To use this feature the syslog daemon must start before udev
endmenu
menu "install options "
- config UDEV_ETC_CONF
- bool
- default y
- prompt "install udev.conf"
- help
- Installs /etc/udev/udev.conf. If you don't wish to install the
- generic udev.conf, just put a copy of your own udev.conf file into
- your own projectroot/etc/udev/
-
- config UDEV_DEFAULT_RULES
- bool
- prompt "install default udev rules"
- help
- This will install the generic udev rules files from the udev package
- under /lib/udev/rules.d/, except of rules to automatically load
- drivers modules.
-
- config UDEV_DEFAULT_DRIVERS_RULES
- bool
- prompt "install default udev driver rules"
- help
- This will install the generic udev drivers rules files from the udev package
- under /lib/udev/rules.d/,
- These rules are required to automatically load kernel modules on
- udev start.
- If unsure say Y.
-
- config UDEV_DEFAULT_KEYMAPS
- bool
- prompt "install default keymaps"
- help
- This will install some of the common keymaps shipped by udev.
-
- config UDEV_CUST_RULES
- bool
- prompt "install customized udev rules"
- help
- This will install the customized udev rules files from
- projectroot/lib/udev/rules.d into /lib/udev/rules.d
-
- config UDEV_LIBUDEV
- bool
- prompt "install libudev"
- help
- Install libudev.so on the target.
-
- config UDEV_LIBGUDEV
- bool
- select UDEV_LIBUDEV
- prompt "install libgudev"
- help
- Install libgudev.so on the target.
-
- config UDEV_STARTSCRIPT
- bool
- default y
- prompt "install /etc/init.d/udev or /etc/init/udev.conf"
- help
- Install the startup magic for either bbinit or upstart.
- Select Y here, as this is what you usually want.
-
- config UDEV_SYSTEMD
- bool
- default y
- depends on SYSTEMD
- select UDEV_EXPERIMENTAL
- prompt "install systemd service files"
+config UDEV_ETC_CONF
+ bool
+ default y
+ prompt "install udev.conf"
+ help
+ Installs /etc/udev/udev.conf. If you don't wish to install the
+ generic udev.conf, just put a copy of your own udev.conf file into
+ your own projectroot/etc/udev/
+
+config UDEV_DRIVERS_RULES
+ bool
+ prompt "install udev driver rules"
+ help
+ This will install the generic udev drivers rules files from the udev package
+ under /lib/udev/rules.d/,
+ These rules are required to automatically load kernel modules on
+ udev start.
+ If unsure say Y.
+
+config UDEV_KEYMAPS
+ bool
+ prompt "install keymaps"
+ help
+ This will install the keymaps shipped with udev. These are mostly
+ to map custom hardware's multimedia keys of various laptops
+
+config UDEV_CUST_RULES
+ bool
+ prompt "install customized udev rules"
+ help
+ This will install the customized udev rules files from
+ projectroot/lib/udev/rules.d into /lib/udev/rules.d
+
+config UDEV_LIBUDEV
+ bool
+ prompt "install libudev"
+ help
+ Install libudev.so on the target.
+
+config UDEV_LIBGUDEV
+ bool
+ select UDEV_LIBUDEV
+ prompt "install libgudev"
+ help
+ Install libgudev.so on the target.
+
+config UDEV_STARTSCRIPT
+ bool
+ default y
+ prompt "install /etc/init.d/udev or /etc/init/udev.conf"
+ help
+ Install the startup magic for either bbinit or upstart.
+ Select Y here, as this is what you usually want.
+
+config UDEV_SYSTEMD
+ bool
+ default y
+ depends on SYSTEMD
+ prompt "install systemd service files"
endmenu
-menuconfig UDEV_EXTRAS
- bool "extras "
-
-if UDEV_EXTRAS
-
- config UDEV_EXTRA_ATA_ID
- bool
- prompt "ata_id"
- help
- udev callout to read product/serial number from ATA drives
-
- config UDEV_EXTRA_CDROM_ID
- bool
- prompt "cdrom_id"
- help
- udev callout to determine the capabilities of optical drives and media
-
- config UDEV_EXTRA_COLLECT
- bool
- prompt "collect"
- help
- Collect variables across events
-
- config UDEV_EXTRA_EDD_ID
- bool
- prompt "edd_id"
- help
- Tool to get EDD ID
-
- config UDEV_EXTRA_FINDKEYBOARDS
- bool
- prompt "findkeyboards"
- help
- Tool to find attached keyboards
-
- config UDEV_EXTRA_FIRMWARE
- bool
- prompt "firmware"
- help
- This is a small helper binary to load some kind of firmware on demand
-
- config UDEV_EXTRA_FLOPPY
- bool
- prompt "create_floppy_devices"
- help
- FIXME
-
- config UDEV_EXTRA_FSTAB_IMPORT
- bool
- depends on !UDEV_EXPERIMENTAL
- prompt "fstab_import"
- help
- Find matching entry in fstab and export it
-
- config UDEV_EXTRA_HID2HCI
- bool
- depends on !UDEV_EXPERIMENTAL
- prompt "hid2hci"
- help
- Convert HID to HCI IDs
-
- config UDEV_EXTRA_INPUT_ID
- bool
- prompt "input_id"
- help
- FIXME
-
- config UDEV_EXTRA_KEYBOARD_FORCE_RELEASE
- bool
- prompt "keyboard-force-release.sh"
- help
- Keyboard support
-
- config UDEV_EXTRA_KEYMAP
- bool
- prompt "keymap"
- help
- Keymap support
-
- config UDEV_EXTRA_MOBILE_ACTION_MODESWITCH
- bool
- depends on !UDEV_EXPERIMENTAL
- prompt "mobile-action-modeswitch"
- help
- Option UMTS Modem support
-
- config UDEV_EXTRA_PATH_ID
- bool
- prompt "path_id"
- help
- udev callout to create a device path based unique name for a device to
- implement the Linux Persistent Device Naming scheme
-
- config UDEV_EXTRA_PCI_DB
- bool
- prompt "pci-db"
- help
- Name resolution for PCI IDs
-
- config UDEV_EXTRA_RULE_GENERATOR
- bool
- prompt "rule_generator"
- help
- FIXME
-
- config UDEV_EXTRA_SCSI_ID
- bool
- prompt "scsi_id"
- help
- Used to build unique IDs for an SCSI media to identify it again
-
- config UDEV_EXTRA_UDEV_ACL
- bool
- prompt "udev-acl"
- help
- FIXME
-
- config UDEV_EXTRA_USB_DB
- bool
- prompt "usb-db"
- help
- Name resolution for USB IDs
-
- config UDEV_EXTRA_USB_ID
- bool
- prompt "usb_id"
- help
- This is a helper to generate unique information about some kind of
- USB device. This is required to ensure the same hotplugged device to
- appear always at the same device node (via link)
-
- config UDEV_EXTRA_V4L_ID
- bool
- prompt "v4l_id"
- help
- FIXME
-
- config UDEV_EXTRA_WRITE_CD_RULES
- bool
- prompt "write_cd_rules"
- help
- This will generate udev-based persistent naming rules for your CD/DVD media
-
- config UDEV_EXTRA_WRITE_NET_RULES
- bool
- prompt "write_net_rules"
- help
- This will generate udev-based persistent naming rules for your network devices
+menu "persistent device node links "
-endif
+config UDEV_PERSISTENT_ATA
+ bool
+ prompt "ata"
-endif
+config UDEV_PERSISTENT_CDROM
+ bool
+ prompt "cdrom"
+
+config UDEV_PERSISTENT_EDD
+ bool
+ prompt "BIOS EDD data"
+
+config UDEV_PERSISTENT_GENERATOR
+ bool
+ prompt "cd / network generator"
+ help
+ This will generate udev-based persistent naming rules for
+ your CD/DVD media and network devices
+ Warning: this needs write access to /etc/udev/rules.d/
+
+config UDEV_PERSISTENT_PCI
+ bool
+ prompt "pci"
+config UDEV_PERSISTENT_USB
+ bool
+ prompt "usb"
+config UDEV_PERSISTENT_SCSI
+ bool
+ prompt "scsi"
+config UDEV_PERSISTENT_V4L
+ bool
+ prompt "v4l"
+
+endmenu
+
+menu "misc helper "
+
+config UDEV_ACCELEROMETER
+ bool
+ prompt "accelerometer"
+ help
+ When an "change" event is received on an accelerometer,
+ open its device node, and from the value, as well as the previous
+ value of the property, calculate the device's new orientation,
+ and export it as ID_INPUT_ACCELEROMETER_ORIENTATION.
+
+config UDEV_ACL
+ bool
+ prompt "local user acl permissions support"
+ help
+ FIXME
+
+config UDEV_COLLECT
+ bool
+ prompt "collect"
+ help
+ Collect variables across events
+
+config UDEV_MTD_PROBE
+ bool
+ prompt "mtd_probe"
+ help
+ autoloads FTL module for mtd devices
+
+endmenu
+
+endif
diff --git a/rules/udev.make b/rules/udev.make
index 3140c701b..6a992043d 100644
--- a/rules/udev.make
+++ b/rules/udev.make
@@ -1,6 +1,7 @@
# -*-makefile-*-
#
# Copyright (C) 2005-2008 by Robert Schwebel
+# 2012 by Michael Olbrich <m.olbrich@pengutronix.de>
#
# See CREDITS for details about who has contributed to this project.
#
@@ -16,145 +17,115 @@ PACKAGES-$(PTXCONF_UDEV) += udev
#
# Paths and names
#
-ifndef PTXCONF_UDEV_EXPERIMENTAL
-UDEV_VERSION := 162
-UDEV_MD5 := dd7099242e92084605e07db0c7299a02
-else
+ifdef PTXCONF_UDEV_LEGACY
UDEV_VERSION := 172
UDEV_MD5 := bd122d04cf758441f498aad0169a454f
+else
+UDEV_VERSION := 181
+UDEV_MD5 := 135c5acfd371febc5ed8326d48028922
endif
UDEV := udev-$(UDEV_VERSION)
UDEV_SUFFIX := tar.bz2
+UDEV_URL := $(call ptx/mirror, KERNEL, utils/kernel/hotplug/$(UDEV).$(UDEV_SUFFIX))
UDEV_SOURCE := $(SRCDIR)/$(UDEV).$(UDEV_SUFFIX)
UDEV_DIR := $(BUILDDIR)/$(UDEV)
-
-UDEV_URL := \
- $(call ptx/mirror, KERNEL, utils/kernel/hotplug/$(UDEV).$(UDEV_SUFFIX))
UDEV_LICENSE := GPLv2
# ----------------------------------------------------------------------------
-# Get
-# ----------------------------------------------------------------------------
-
-$(UDEV_SOURCE):
- @$(call targetinfo)
- @$(call get, UDEV)
-
-# ----------------------------------------------------------------------------
# Prepare
# ----------------------------------------------------------------------------
#
# autoconf
-
+#
UDEV_CONF_ENV := \
$(CROSS_ENV) \
CPPFLAGS="-I$(KERNEL_HEADERS_INCLUDE_DIR) $(CROSS_CPPFLAGS)"
-#
-# Note: explicit sbindir to avoid "${exec_prefix}/sbin/" on the target.
-UDEV_AUTOCONF := \
+UDEV_CONF_TOOL := autoconf
+UDEV_CONF_OPT := \
$(CROSS_AUTOCONF_ROOT) \
- --libexecdir=/lib/udev \
- --sbindir=/sbin \
- \
+ $(GLOBAL_LARGE_FILE_OPTION) \
+ --disable-static \
+ --enable-shared \
+ --disable-gtk-doc \
+ --disable-gtk-doc-html \
+ --disable-gtk-doc-pdf \
+ --$(call ptx/endis,PTXCONF_UDEV_DEBUG)-debug \
+ --$(call ptx/endis,PTXCONF_UDEV_SYSLOG)-logging \
+ --$(call ptx/endis,PTXCONF_UDEV_LIBGUDEV)-gudev \
--disable-introspection \
- --enable-shared
-
-ifdef PTXCONF_PCIUTILS_COMPRESS
-UDEV_AUTOCONF += --with-pci-ids-path=/usr/share/pci.ids.gz
-else
-UDEV_AUTOCONF += --with-pci-ids-path=/usr/share/pci.ids
-endif
-
-ifdef PTXCONF_UDEV_DEBUG
-UDEV_AUTOCONF += --enable-debug
-else
-UDEV_AUTOCONF += --disable-debug
-endif
-
-ifdef PTXCONF_UDEV_LIBGUDEV
-UDEV_AUTOCONF += --enable-gudev
-else
-UDEV_AUTOCONF += --disable-gudev
-endif
-
-ifdef PTXCONF_UDEV_SYSTEMD
-UDEV_AUTOCONF += --with-systemdsystemunitdir=/lib/systemd/system
-else
-UDEV_AUTOCONF += --without-systemdsystemunitdir
-endif
-
-ifndef PTXCONF_UDEV_EXPERIMENTAL
-ifeq ($(PTXCONF_ARCH_ARM)-$(PTXCONF_UDEV_EXTRA_HID2HCI),-y)
-UDEV_AUTOCONF += --enable-bluetooth
-else
-UDEV_AUTOCONF += --disable-bluetooth
-endif
-endif
-
-ifdef PTXCONF_UDEV_EXTRA_KEYMAP
-UDEV_AUTOCONF += --enable-keymap
-else
-UDEV_AUTOCONF += --disable-keymap
-endif
-
-ifdef PTXCONF_UDEV_EXTRA_UDEV_ACL
-UDEV_AUTOCONF += --enable-udev_acl
-else
-UDEV_AUTOCONF += --disable-udev_acl
-endif
-
-ifndef PTXCONF_UDEV_EXPERIMENTAL
-ifdef PTXCONF_UDEV_EXTRA_USB_DB
-UDEV_AUTOCONF += --enable-usbdb
-else
-UDEV_AUTOCONF += --disable-usbdb
-endif
-
-ifdef PTXCONF_UDEV_EXTRA_PCI_DB
-UDEV_AUTOCONF += --enable-pcidb
-else
-UDEV_AUTOCONF += --disable-pcidb
-endif
-else
-ifneq ($(PTXCONF_UDEV_EXTRA_USB_DB)$(PTXCONF_UDEV_EXTRA_PCI_DB),)
-UDEV_AUTOCONF += --enable-hwdb
-else
-UDEV_AUTOCONF += --disable-hwdb
-endif
-
-ifdef PTXCONF_UDEV_EXTRA_FLOPPY
-UDEV_AUTOCONF += --enable-floppy
-else
-UDEV_AUTOCONF += --disable-floppy
-endif
-
-ifdef PTXCONF_UDEV_EXTRA_EDD_ID
-UDEV_AUTOCONF += --enable-edd
-else
-UDEV_AUTOCONF += --disable-edd
-endif
-endif
-
-ifndef PTXCONF_UDEV_EXPERIMENTAL
-ifdef PTXCONF_UDEV_EXTRA_MOBILE_ACTION_MODESWITCH
-UDEV_AUTOCONF += --enable-action_modeswitch
-else
-UDEV_AUTOCONF += --disable-action_modeswitch
-endif
-endif
-
-ifdef PTXCONF_UDEV_SELINUX
-UDEV_AUTOCONF += --with-selinux
-else
-UDEV_AUTOCONF += --without-selinux
-endif
-
-ifdef PTXCONF_UDEV_SYSLOG
-UDEV_AUTOCONF += --enable-logging
-else
-UDEV_AUTOCONF += --disable-logging
+ --$(call ptx/endis,PTXCONF_UDEV_KEYMAPS)-keymap \
+ --$(call ptx/endis,PTXCONF_UDEV_PERSISTENT_GENERATOR)-rule_generator \
+ --$(call ptx/endis,PTXCONF_UDEV_ACL)-udev_acl \
+ --disable-floppy \
+ --$(call ptx/endis,PTXCONF_UDEV_PERSISTENT_EDD)-edd \
+ --with-usb-ids-path=/usr/share/usb.ids \
+ --with-pci-ids-path=/usr/share/pci.ids$(call ptx/ifdef, PTXCONF_PCIUTILS_COMPRESS,.gz,) \
+ --without-selinux \
+ --with-systemdsystemunitdir=/lib/systemd/system
+
+ifdef PTXCONF_UDEV_LEGACY
+UDEV_CONF_OPT += \
+ --libexecdir=/lib/udev \
+ --enable-hwdb
+else
+UDEV_CONF_OPT += \
+ --libexecdir=/lib \
+ --$(call ptx/endis,PTXCONF_UDEV_MTD_PROBE)-mtd_probe
+endif
+
+UDEV_RULES-y := \
+ 50-udev-default.rules \
+ 60-persistent-alsa.rules \
+ 60-persistent-input.rules \
+ 60-persistent-serial.rules \
+ 60-persistent-storage-tape.rules \
+ 60-persistent-storage.rules \
+ 75-net-description.rules \
+ 75-tty-description.rules \
+ 78-sound-card.rules \
+ 95-udev-late.rules
+
+UDEV_RULES-$(PTXCONF_UDEV_ACCELEROMETER) += 61-accelerometer.rules
+ifdef PTXCONF_UDEV_LEGACY
+UDEV_RULES-$(PTXCONF_UDEV_ACL) += 70-acl.rules
+else
+UDEV_RULES-$(PTXCONF_UDEV_ACL) += 70-udev-acl.rules
+endif
+UDEV_RULES-$(PTXCONF_UDEV_DRIVERS_RULES) += 80-drivers.rules
+UDEV_RULES-$(PTXCONF_UDEV_KEYMAPS) += 95-keyboard-force-release.rules
+UDEV_RULES-$(PTXCONF_UDEV_KEYMAPS) += 95-keymap.rules
+UDEV_RULES-$(PTXCONF_UDEV_MTD_PROBE) += 75-probe_mtd.rules
+UDEV_RULES-$(PTXCONF_UDEV_PERSISTENT_CDROM) += 60-cdrom_id.rules
+UDEV_RULES-$(PTXCONF_UDEV_PERSISTENT_EDD) += 61-persistent-storage-edd.rules
+UDEV_RULES-$(PTXCONF_UDEV_PERSISTENT_GENERATOR) += 75-cd-aliases-generator.rules
+UDEV_RULES-$(PTXCONF_UDEV_PERSISTENT_GENERATOR) += 75-persistent-net-generator.rules
+UDEV_RULES-$(PTXCONF_UDEV_PERSISTENT_V4L) += 60-persistent-v4l.rules
+
+UDEV_HELPER-$(PTXCONF_UDEV_ACCELEROMETER) += accelerometer
+UDEV_HELPER-$(PTXCONF_UDEV_PERSISTENT_ATA) += ata_id
+UDEV_HELPER-$(PTXCONF_UDEV_PERSISTENT_CDROM) += cdrom_id
+UDEV_HELPER-$(PTXCONF_UDEV_COLLECT) += collect
+UDEV_HELPER-$(PTXCONF_UDEV_PERSISTENT_EDD) += edd_id
+UDEV_HELPER-$(PTXCONF_UDEV_KEYMAPS) += findkeyboards
+UDEV_HELPER-$(PTXCONF_UDEV_KEYMAPS) += keyboard-force-release.sh
+UDEV_HELPER-$(PTXCONF_UDEV_KEYMAPS) += keymap
+UDEV_HELPER-$(PTXCONF_UDEV_MTD_PROBE) += mtd_probe
+UDEV_HELPER-$(PTXCONF_UDEV_PERSISTENT_GENERATOR) += rule_generator.functions
+UDEV_HELPER-$(PTXCONF_UDEV_PERSISTENT_SCSI) += scsi_id
+UDEV_HELPER-$(PTXCONF_UDEV_ACL) += udev-acl
+UDEV_HELPER-$(PTXCONF_UDEV_PERSISTENT_V4L) += v4l_id
+UDEV_HELPER-$(PTXCONF_UDEV_PERSISTENT_GENERATOR) += write_cd_rules
+UDEV_HELPER-$(PTXCONF_UDEV_PERSISTENT_GENERATOR) += write_net_rules
+
+ifdef PTXCONF_UDEV_LEGACY
+DEV_HELPER-$(PTXCONF_UDEV_LEGACY) += firmware
+DEV_HELPER-$(PTXCONF_UDEV_LEGACY) += input_id
+DEV_HELPER-$(PTXCONF_UDEV_LEGACY) += path_id
+DEV_HELPER-$(PTXCONF_UDEV_PERSISTENT_PCI) += pci-db
+DEV_HELPER-$(PTXCONF_UDEV_PERSISTENT_USB) += usb-db
+DEV_HELPER-$(PTXCONF_UDEV_PERSISTENT_USB) += usb_id
endif
# ----------------------------------------------------------------------------
@@ -170,64 +141,34 @@ $(STATEDIR)/udev.targetinstall:
@$(call install_fixup, udev,AUTHOR,"Robert Schwebel <r.schwebel@pengutronix.de>")
@$(call install_fixup, udev,DESCRIPTION,missing)
-# #
-# # binaries
-# #
+ifdef PTXCONF_UDEV_ETC_CONF
+ @$(call install_alternative, udev, 0, 0, 0644, /etc/udev/udev.conf)
+endif
+ifdef PTXCONF_UDEV_LEGACY
@$(call install_copy, udev, 0, 0, 0755, -, /sbin/udevd)
@$(call install_copy, udev, 0, 0, 0755, -, /sbin/udevadm)
-
-# #
-# # default rules
-# #
-
-# install everything apart of drivers rule.
-ifdef PTXCONF_UDEV_DEFAULT_RULES
- @for rule in \
- 50-udev-default.rules \
- 60-persistent-alsa.rules \
- 60-persistent-input.rules \
- 60-persistent-serial.rules \
- 60-persistent-storage-tape.rules \
- 60-persistent-storage.rules \
- 95-udev-late.rules; \
- do \
- $(call install_copy, udev, 0, 0, 0644, -, \
- /lib/udev/rules.d/$$rule); \
- done
-ifdef PTXCONF_UDEV_EXTRA_USB_DB
-ifdef PTXCONF_UDEV_EXTRA_PCI_DB
- @for rule in \
- 75-net-description.rules \
- 75-tty-description.rules \
- 78-sound-card.rules; \
- do \
- $(call install_copy, udev, 0, 0, 0644, -, \
- /lib/udev/rules.d/$$rule); \
- done
-endif
-endif
+else
+ @$(call install_copy, udev, 0, 0, 0755, -, /lib/udev/udevd)
+ @$(call install_copy, udev, 0, 0, 0755, -, /bin/udevadm)
endif
-# install drivers rules.
-ifdef PTXCONF_UDEV_DEFAULT_DRIVERS_RULES
- @$(call install_copy, udev, 0, 0, 0644, -, \
- /lib/udev/rules.d/80-drivers.rules)
-endif
+ @$(foreach rule, $(UDEV_RULES-y), \
+ $(call install_copy, udev, 0, 0, 0644, -, \
+ /lib/udev/rules.d/$(rule));)
-# install default keymaps.
-ifdef PTXCONF_UDEV_DEFAULT_KEYMAPS
- @cd $(UDEV_PKGDIR)/lib/udev/keymaps; \
- for file in `find . -type f`; do \
- $(call install_copy, udev, 0, 0, 0644, \
- $(UDEV_PKGDIR)/lib/udev/keymaps/$$file, \
- /lib/udev/keymaps/$$file, n); \
+ifdef PTXCONF_UDEV_KEYMAPS
+ @cd $(UDEV_PKGDIR) && \
+ for keymap in `find lib/udev/keymaps/ -type f`; do \
+ $(call install_copy, udev, 0, 0, 0644, -, /$$keymap); \
done
endif
ifdef PTXCONF_UDEV_CUST_RULES
@if [ -d $(PTXDIST_WORKSPACE)/projectroot/lib/udev/rules.d/ ]; then \
- $(call install_tree, udev, 0, 0, $(PTXDIST_WORKSPACE)/projectroot/lib/udev/rules.d, /lib/udev/rules.d); \
+ $(call install_tree, udev, 0, 0, \
+ $(PTXDIST_WORKSPACE)/projectroot/lib/udev/rules.d, \
+ /lib/udev/rules.d); \
else \
echo "UDEV_CUST_RULES is enabled but Directory containing" \
"customized udev rules is missing!"; \
@@ -235,9 +176,23 @@ ifdef PTXCONF_UDEV_CUST_RULES
fi
endif
-# #
-# # startup script
-# #
+ @$(foreach helper, $(UDEV_HELPER-y), \
+ $(call install_copy, udev, 0, 0, 0644, -, \
+ /lib/udev//$(helper));)
+
+ifdef PTXCONF_UDEV_ACL
+ @$(call install_link, udev, ../../udev/udev-acl, \
+ /lib/ConsoleKit/run-seat.d/udev-acl.ck)
+endif
+
+ifdef PTXCONF_UDEV_LIBUDEV
+ @$(call install_lib, udev, 0, 0, 0644, libudev)
+endif
+
+ifdef PTXCONF_UDEV_LIBGUDEV
+ @$(call install_lib, udev, 0, 0, 0644, libgudev-1.0)
+endif
+
ifdef PTXCONF_UDEV_STARTSCRIPT
ifdef PTXCONF_INITMETHOD_BBINIT
@$(call install_alternative, udev, 0, 0, 0755, /etc/init.d/udev)
@@ -255,152 +210,6 @@ ifdef PTXCONF_INITMETHOD_UPSTART
@$(call install_alternative, udev, 0, 0, 0644, /etc/init/udev-finish.conf)
endif
endif
-
-
-# #
-# # Install a configuration on demand only
-# #
-ifdef PTXCONF_UDEV_ETC_CONF
- @$(call install_alternative, udev, 0, 0, 0644, /etc/udev/udev.conf)
-endif
-
-# #
-# # utilities from extra/
-# #
-ifdef PTXCONF_UDEV_EXTRA_ATA_ID
- @$(call install_copy, udev, 0, 0, 0755, -, /lib/udev/ata_id)
-endif
-
-ifdef PTXCONF_UDEV_EXTRA_CDROM_ID
- @$(call install_copy, udev, 0, 0, 0755, -, /lib/udev/cdrom_id)
- @$(call install_copy, udev, 0, 0, 0644, -, \
- /lib/udev/rules.d/60-cdrom_id.rules,n)
- @$(call install_copy, udev, 0, 0, 0644, -, \
- /lib/udev/rules.d/75-cd-aliases-generator.rules,n)
-endif
-
-ifdef PTXCONF_UDEV_EXTRA_COLLECT
- @$(call install_copy, udev, 0, 0, 0755, -, /lib/udev/collect)
-endif
-
-ifdef PTXCONF_UDEV_EXTRA_EDD_ID
- @$(call install_copy, udev, 0, 0, 0755, -, /lib/udev/edd_id)
- @$(call install_copy, udev, 0, 0, 0644, -, \
- /lib/udev/rules.d/61-persistent-storage-edd.rules,n)
-endif
-
-ifdef PTXCONF_UDEV_EXTRA_FINDKEYBOARDS
- @$(call install_copy, udev, 0, 0, 0755, -, /lib/udev/findkeyboards)
-endif
-
-ifdef PTXCONF_UDEV_EXTRA_FIRMWARE
- @$(call install_copy, udev, 0, 0, 0755, -, /lib/udev/firmware)
- @$(call install_copy, udev, 0, 0, 0644, -, \
- /lib/udev/rules.d/50-firmware.rules,n)
-endif
-
-ifdef PTXCONF_UDEV_EXTRA_FLOPPY
- @$(call install_copy, udev, 0, 0, 0755, -, \
- /lib/udev/create_floppy_devices)
- @$(call install_copy, udev, 0, 0, 0644, -, \
- /lib/udev/rules.d/60-floppy.rules)
-endif
-
-ifdef PTXCONF_UDEV_EXTRA_FSTAB_IMPORT
- @$(call install_copy, udev, 0, 0, 0755, -, /lib/udev/fstab_import)
- @$(call install_copy, udev, 0, 0, 0644, -, \
- /lib/udev/rules.d/79-fstab_import.rules)
-endif
-
-ifndef PTXCONF_ARCH_ARM
-ifdef PTXCONF_UDEV_EXTRA_HID2HCI
- @$(call install_copy, udev, 0, 0, 0755, -, /lib/udev/hid2hci)
- @$(call install_copy, udev, 0, 0, 0644, -, \
- /lib/udev/rules.d/70-hid2hci.rules,n)
-endif
-endif
-
-ifdef PTXCONF_UDEV_EXTRA_INPUT_ID
- @$(call install_copy, udev, 0, 0, 0755, -, /lib/udev/input_id)
-endif
-
-ifdef PTXCONF_UDEV_EXTRA_KEYBOARD_FORCE_RELEASE
- @$(call install_copy, udev, 0, 0, 0755, -, /lib/udev/keyboard-force-release.sh, n)
- @$(call install_copy, udev, 0, 0, 0644, -, \
- /lib/udev/rules.d/95-keyboard-force-release.rules,n)
-endif
-
-ifdef PTXCONF_UDEV_EXTRA_KEYMAP
- @$(call install_copy, udev, 0, 0, 0755, -, /lib/udev/keymap)
- @$(call install_copy, udev, 0, 0, 0644, -, \
- /lib/udev/rules.d/95-keymap.rules,n)
-endif
-
-ifdef PTXCONF_UDEV_EXTRA_MOBILE_ACTION_MODESWITCH
- @$(call install_copy, udev, 0, 0, 0755, -, /lib/udev/mobile-action-modeswitch)
- @$(call install_copy, udev, 0, 0, 0644, -, \
- /lib/udev/rules.d/61-mobile-action.rules)
-endif
-
-ifdef PTXCONF_UDEV_EXTRA_PATH_ID
- @$(call install_copy, udev, 0, 0, 0755, -, /lib/udev/path_id)
-endif
-
-ifdef PTXCONF_UDEV_EXTRA_PCI_DB
- @$(call install_copy, udev, 0, 0, 0755, -, /lib/udev/pci-db)
-endif
-
-ifdef PTXCONF_UDEV_EXTRA_RULE_GENERATOR
- @$(call install_copy, udev, 0, 0, 0755, -, \
- /lib/udev/rule_generator.functions)
-endif
-
-ifdef PTXCONF_UDEV_EXTRA_SCSI_ID
- @$(call install_copy, udev, 0, 0, 0755, -, /lib/udev/scsi_id)
-endif
-
-ifdef PTXCONF_UDEV_EXTRA_UDEV_ACL
- @$(call install_copy, udev, 0, 0, 0755, -, /lib/udev/udev-acl)
- @$(call install_copy, udev, 0, 0, 0644, -, \
- /lib/udev/rules.d/70-acl.rules,n)
- @$(call install_link, udev, ../../udev/udev-acl, \
- /lib/ConsoleKit/run-seat.d/udev-acl.ck)
-endif
-
-ifdef PTXCONF_UDEV_EXTRA_USB_DB
- @$(call install_copy, udev, 0, 0, 0755, -, /lib/udev/usb-db)
-endif
-
-ifdef PTXCONF_UDEV_EXTRA_USB_ID
- @$(call install_copy, udev, 0, 0, 0755, -, /lib/udev/usb_id)
-endif
-
-ifdef PTXCONF_UDEV_EXTRA_V4L_ID
- @$(call install_copy, udev, 0, 0, 0755, -, /lib/udev/v4l_id)
- @$(call install_copy, udev, 0, 0, 0644, -, \
- /lib/udev/rules.d/60-persistent-v4l.rules,n)
-endif
-
-ifdef PTXCONF_UDEV_EXTRA_WRITE_CD_RULES
- @$(call install_copy, udev, 0, 0, 0755, -, /lib/udev//write_cd_rules)
-endif
-
-ifdef PTXCONF_UDEV_EXTRA_WRITE_NET_RULES
- @$(call install_copy, udev, 0, 0, 0755, -, /lib/udev//write_net_rules)
- @$(call install_copy, udev, 0, 0, 0644, -, \
- /lib/udev/rules.d/75-net-description.rules,n)
- @$(call install_copy, udev, 0, 0, 0644, -, \
- /lib/udev/rules.d/75-persistent-net-generator.rules,n)
-endif
-
-ifdef PTXCONF_UDEV_LIBUDEV
- @$(call install_lib, udev, 0, 0, 0644, libudev)
-endif
-
-ifdef PTXCONF_UDEV_LIBGUDEV
- @$(call install_lib, udev, 0, 0, 0644, libgudev-1.0)
-endif
-
ifdef PTXCONF_UDEV_SYSTEMD
@$(call install_copy, udev, 0, 0, 0644, -, \
/lib/systemd/system/udev-kernel.socket)
diff --git a/scripts/migrate/migrate_ptx b/scripts/migrate/migrate_ptx
index d8c4f491f..d8fc13102 100755
--- a/scripts/migrate/migrate_ptx
+++ b/scripts/migrate/migrate_ptx
@@ -153,3 +153,15 @@ s/^\(\(# \)\?PTXCONF_OWFS_\)_\(.*$\)/\1\3/
#
s/^\(\(# \)\?PTXCONF_\)E2FSPROGS_INSTALL\(_UUIDD\)/\1UTIL_LINUX_NG\3/
+#
+# from : ptxdist-2011.02.0
+# to : ptxdist-2011.03.0
+# reason : udev rules rewrite
+#
+s/^\(\(# \)\?PTXCONF_UDEV_\)DEFAULT_\(.*\)/\1\3/
+s/^\(\(# \)\?PTXCONF_UDEV_\)EXTRA_\(.*\)_ID/\1PERSISTENT_\3/
+s/^\(\(# \)\?PTXCONF_UDEV_\)EXTRA_RULE_\(GENERATOR\)/\1PERSISTENT_\3/
+s/^\(\(# \)\?PTXCONF_UDEV_\)EXTRA_\(.*\)_DB/\1PERSISTENT_\3/
+s/^\(\(# \)\?PTXCONF_UDEV_\)EXTRA_UDEV_ACL/\1ACL/
+s/^\(\(# \)\?PTXCONF_UDEV_\)EXTRA_COLLECT/\1COLLECT/
+