aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libjava/ChangeLog6
-rw-r--r--libjava/java/lang/natRuntime.cc12
2 files changed, 17 insertions, 1 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index e28cc6e..6f14af2 100644
--- a/libjava/ChangeLog
+++ b/libjava/ChangeLog
@@ -1,5 +1,11 @@
2005-02-18 Anthony Green <green@redhat.com>
+ * java/lang/natRuntime.cc (insertSystemProperties): Normalize x86
+ architecture names to "i386" for compatibility reasons. Win32
+ still uses "x86".
+
+2005-02-18 Anthony Green <green@redhat.com>
+
* gij.cc (version): Change year for '--version' to 2005.
* gnu/gcj/convert/Convert.java: Ditto.
* gnu/java/rmi/rmic/RMIC.java: Ditto.
diff --git a/libjava/java/lang/natRuntime.cc b/libjava/java/lang/natRuntime.cc
index 0f3b798..37d7b4b 100644
--- a/libjava/java/lang/natRuntime.cc
+++ b/libjava/java/lang/natRuntime.cc
@@ -436,8 +436,18 @@ java::lang::Runtime::insertSystemProperties (java::util::Properties *newprops)
if (! uname (&u))
{
SET ("os.name", u.sysname);
- SET ("os.arch", u.machine);
SET ("os.version", u.release);
+
+ // Normalize x86 architecture names to "i386" (except on Windows, which
+ // is handled in win32.cc).
+ if (u.machine[0] == 'i'
+ && u.machine[1] != 0
+ && u.machine[2] == '8'
+ && u.machine[3] == '6'
+ && u.machine[4] == 0)
+ SET ("os.arch", "i386");
+ else
+ SET ("os.arch", u.machine);
}
else
{