diff options
author | Khem Raj <raj.khem@gmail.com> | 2010-06-04 18:02:20 -0700 |
---|---|---|
committer | Khem Raj <raj.khem@gmail.com> | 2010-06-05 06:52:42 -0700 |
commit | 7e47751d5d5d354a945fcaa120b8fff0dd07ce6f (patch) | |
tree | 396203b09be80eb86bc3ca725b60599ffafb9433 /recipes | |
parent | df9cb262d95bacb06192dcf69b303e4088557832 (diff) |
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@gmail.com>
Diffstat (limited to 'recipes')
-rw-r--r-- | recipes/udev/udev-151/udev-replace-le16toh.patch | 21 | ||||
-rw-r--r-- | recipes/udev/udev-151/udev-replace-lutimes.patch | 25 | ||||
-rw-r--r-- | 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 0000000000..7776c9a10e --- /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 0000000000..dd77897345 --- /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 9bf0872b8a..13f3a02a0a 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 \ " |