Blame SOURCES/coreutils-8.2-uname-processortype.patch

d3767b
diff --git a/src/uname.c b/src/uname.c
d3767b
index 6371ca2..1ad8fd7 100644
d3767b
--- a/src/uname.c
d3767b
+++ b/src/uname.c
d3767b
@@ -300,13 +300,19 @@ main (int argc, char **argv)
d3767b
 
d3767b
   if (toprint & PRINT_PROCESSOR)
d3767b
     {
d3767b
-      char const *element = unknown;
d3767b
+      char *element = unknown;
d3767b
 #if HAVE_SYSINFO && defined SI_ARCHITECTURE
d3767b
       {
d3767b
         static char processor[257];
d3767b
         if (0 <= sysinfo (SI_ARCHITECTURE, processor, sizeof processor))
d3767b
           element = processor;
d3767b
       }
d3767b
+#else
d3767b
+      {
d3767b
+	static struct utsname u;
d3767b
+	uname(&u);
d3767b
+	element = u.machine;
d3767b
+      }
d3767b
 #endif
d3767b
 #ifdef UNAME_PROCESSOR
d3767b
       if (element == unknown)
d3767b
@@ -344,7 +350,7 @@ main (int argc, char **argv)
d3767b
 
d3767b
   if (toprint & PRINT_HARDWARE_PLATFORM)
d3767b
     {
d3767b
-      char const *element = unknown;
d3767b
+      char *element = unknown;
d3767b
 #if HAVE_SYSINFO && defined SI_PLATFORM
d3767b
       {
d3767b
         static char hardware_platform[257];
d3767b
@@ -352,6 +358,14 @@ main (int argc, char **argv)
d3767b
                           hardware_platform, sizeof hardware_platform))
d3767b
           element = hardware_platform;
d3767b
       }
d3767b
+#else
d3767b
+      {
d3767b
+	static struct utsname u;
d3767b
+	uname(&u);
d3767b
+	element = u.machine;
d3767b
+	if(strlen(element)==4 && element[0]=='i' && element[2]=='8' && element[3]=='6')
d3767b
+		element[1]='3';
d3767b
+      }
d3767b
 #endif
d3767b
 #ifdef UNAME_HARDWARE_PLATFORM
d3767b
       if (element == unknown)