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

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