added hdparm 6.1
authorMarcin Juszkiewicz <hrw@openembedded.org>
Mon, 1 Aug 2005 08:43:59 +0000 (08:43 +0000)
committerOpenEmbedded Project <openembedded-devel@lists.openembedded.org>
Mon, 1 Aug 2005 08:43:59 +0000 (08:43 +0000)
packages/hdparm/hdparm-6.1/.mtn2git_empty [new file with mode: 0644]
packages/hdparm/hdparm-6.1/bswap.patch [new file with mode: 0644]
packages/hdparm/hdparm-6.1/uclibc.patch [new file with mode: 0644]
packages/hdparm/hdparm_6.1.bb [new file with mode: 0644]

diff --git a/packages/hdparm/hdparm-6.1/.mtn2git_empty b/packages/hdparm/hdparm-6.1/.mtn2git_empty
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/packages/hdparm/hdparm-6.1/bswap.patch b/packages/hdparm/hdparm-6.1/bswap.patch
new file mode 100644 (file)
index 0000000..37fbcb7
--- /dev/null
@@ -0,0 +1,36 @@
+
+#
+# Patch managed by http://www.holgerschurig.de/patcher.html
+#
+
+--- hdparm-5.8/hdparm.c~bswap
++++ hdparm-5.8/hdparm.c
+@@ -20,7 +20,9 @@
+ #include <linux/types.h>
+ #include <linux/hdreg.h>
+ #include <linux/major.h>
+-#include <asm/byteorder.h>
++#include <byteswap.h>
++
++#define le16_to_cpus(x) bswap_16(htons(x))
+ #include "hdparm.h"
+@@ -1160,7 +1162,7 @@
+                       }
+               } else {
+                       for(i = 0; i < 0x100; ++i) {
+-                              __le16_to_cpus(&id[i]);
++                              le16_to_cpus(&id[i]);
+                       }
+                       identify((void *)id, NULL);
+               }
+@@ -1380,7 +1382,7 @@
+       }
+       for (i = 0; count >= 4; ++i) {
+               sbuf[i] = (fromhex(b[0]) << 12) | (fromhex(b[1]) << 8) | (fromhex(b[2]) << 4) | fromhex(b[3]);
+-              __le16_to_cpus((__u16 *)(&sbuf[i]));
++              le16_to_cpus((__u16 *)(&sbuf[i]));
+               b += 5;
+               count -= 5;
+       }
diff --git a/packages/hdparm/hdparm-6.1/uclibc.patch b/packages/hdparm/hdparm-6.1/uclibc.patch
new file mode 100644 (file)
index 0000000..495d749
--- /dev/null
@@ -0,0 +1,32 @@
+--- hdparm-5.8/hdparm.c.ark    2005-05-22 19:48:34.000000000 +0000
++++ hdparm-5.8/hdparm.c        2005-05-22 19:52:18.000000000 +0000
+@@ -17,7 +17,9 @@
+ #include <sys/times.h>
+ #include <sys/types.h>
+ #include <sys/mount.h>
++#ifndef __UCLIBC__
+ #include <linux/types.h>
++#endif
+ #include <linux/hdreg.h>
+ #include <linux/major.h>
+ #include <byteswap.h>
+--- hdparm-5.8/hdparm.h.ark    2005-05-22 19:51:49.000000000 +0000
++++ hdparm-5.8/hdparm.h        2005-05-22 19:54:54.000000000 +0000
+@@ -1,6 +1,6 @@
+ /* Some prototypes for extern functions. */
+-#include <linux/types.h>      /* for __u16 */
++#include <stdint.h>
+ #if !defined(__GNUC__) && !defined(__attribute__)
+ #define __attribute__(x)      /* if not using GCC, turn off the __attribute__
+@@ -11,7 +11,7 @@
+    others, though, were declared in hdparm.c with global scope; since other
+    functions in that file have static (file) scope, I assume the difference is
+    intentional. */
+-extern void identify (__u16 *id_supplied, const char *devname);
++extern void identify (uint16_t *id_supplied, const char *devname);
+ extern void usage_error(int out)    __attribute__((noreturn));
+ extern int main(int argc, char **argv) __attribute__((noreturn));
+
diff --git a/packages/hdparm/hdparm_6.1.bb b/packages/hdparm/hdparm_6.1.bb
new file mode 100644 (file)
index 0000000..a917289
--- /dev/null
@@ -0,0 +1,14 @@
+DESCRIPTION = "hdparm is a Linux shell utility for viewing \
+and manipulating various IDE drive and driver parameters."
+SECTION = "console/utils"
+PRIORITY = "optional"
+LICENSE = "BSD"
+
+SRC_URI = "http://www.ibiblio.org/pub/Linux/system/hardware/hdparm-${PV}.tar.gz \
+          file://bswap.patch;patch=1 \
+          file://uclibc.patch;patch=1"
+
+do_install () {
+       install -d ${D}/${sbindir} ${D}/${mandir}/man8
+       oe_runmake 'DESTDIR=${D}' install
+}