[oe-commits] Khem Raj : udev_151: Make it work with uclibc.

git version control git at git.openembedded.org
Sat Jun 5 13:53:40 UTC 2010


Module: openembedded.git
Branch: org.openembedded.dev
Commit: 7e47751d5d5d354a945fcaa120b8fff0dd07ce6f
URL:    http://gitweb.openembedded.net/?p=openembedded.git&a=commit;h=7e47751d5d5d354a945fcaa120b8fff0dd07ce6f

Author: Khem Raj <raj.khem at gmail.com>
Date:   Fri Jun  4 18:02:20 2010 -0700

udev_151: Make it work with uclibc.

* This only works with uclibc-git version at the moment.
  These two patch should not be needed as well once uclibc
  patches which adds lutimes and defines le16toh are
  committed.

Signed-off-by: Khem Raj <raj.khem at gmail.com>

---

 recipes/udev/udev-151/udev-replace-le16toh.patch |   21 ++++++++++++++++++
 recipes/udev/udev-151/udev-replace-lutimes.patch |   25 ++++++++++++++++++++++
 recipes/udev/udev_151.bb                         |    4 ++-
 3 files changed, 49 insertions(+), 1 deletions(-)

diff --git a/recipes/udev/udev-151/udev-replace-le16toh.patch b/recipes/udev/udev-151/udev-replace-le16toh.patch
new file mode 100644
index 0000000..7776c9a
--- /dev/null
+++ b/recipes/udev/udev-151/udev-replace-le16toh.patch
@@ -0,0 +1,21 @@
+This patch is needed on uclibc.
+
+-Khem
+
+Index: udev-151/extras/ata_id/ata_id.c
+===================================================================
+--- udev-151.orig/extras/ata_id/ata_id.c	2010-06-04 14:08:41.912730501 -0700
++++ udev-151/extras/ata_id/ata_id.c	2010-06-04 14:09:31.492734527 -0700
+@@ -168,7 +168,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/recipes/udev/udev-151/udev-replace-lutimes.patch b/recipes/udev/udev-151/udev-replace-lutimes.patch
new file mode 100644
index 0000000..dd77897
--- /dev/null
+++ b/recipes/udev/udev-151/udev-replace-lutimes.patch
@@ -0,0 +1,25 @@
+This patch is needed on uclibc
+
+-Khem
+Index: udev-151/udev/udev-node.c
+===================================================================
+--- udev-151.orig/udev/udev-node.c	2010-06-04 14:18:59.082727182 -0700
++++ udev-151/udev/udev-node.c	2010-06-04 14:20:27.485282812 -0700
+@@ -57,7 +57,7 @@ int udev_node_mknod(struct udev_device *
+ 			preserve = 1;
+ 			udev_selinux_lsetfilecon(udev, file, mode);
+ 			/* update time stamp when we re-use the node, like on media change events */
+-			utimes(file, NULL);
++			utimensat(AT_FDCWD, file, NULL, 0);
+ 		} else {
+ 			char file_tmp[UTIL_PATH_SIZE + sizeof(TMP_FILE_EXT)];
+ 
+@@ -178,7 +178,7 @@ static int node_symlink(struct udev *ude
+ 					info(udev, "preserve already existing symlink '%s' to '%s'\n",
+ 					     slink, target);
+ 					udev_selinux_lsetfilecon(udev, slink, S_IFLNK);
+-					lutimes(slink, NULL);
++					utimensat(AT_FDCWD, slink, NULL, AT_SYMLINK_NOFOLLOW);
+ 					goto exit;
+ 				}
+ 			}
diff --git a/recipes/udev/udev_151.bb b/recipes/udev/udev_151.bb
index 9bf0872..13f3a02 100644
--- a/recipes/udev/udev_151.bb
+++ b/recipes/udev/udev_151.bb
@@ -3,7 +3,7 @@ DESCRIPTION = "udev is a daemon which dynamically creates and removes device nod
 the hotplug package and requires a kernel not older than 2.6.12."
 LICENSE = "GPLv2+"
 
-PR = "r11"
+PR = "r12"
 
 # Untested
 DEFAULT_PREFERENCE = "-1"
@@ -13,6 +13,8 @@ DEPENDS = "gperf-native usbutils acl glib-2.0"
 RDEPENDS_${PN} += "module-init-tools-depmod udev-utils"
 
 SRC_URI = "http://kernel.org/pub/linux/utils/kernel/hotplug/udev-${PV}.tar.gz \
+	   file://udev-replace-le16toh.patch \
+	   file://udev-replace-lutimes.patch \
 	   file://mount.blacklist \
 	   file://run.rules \
 	   "





More information about the Openembedded-commits mailing list