RFR (XXS): 7130404: [macosx] "os.arch" value should be "x86_64" for compatibility with Apple JDK6
Kelly O'Hair
kelly.ohair at oracle.com
Wed Feb 22 09:51:34 PST 2012
Sorry I'm slow on the review.
Just a few comments, not sure any of it would cause me to reject your changes.
On Feb 21, 2012, at 3:08 PM, James Melvin wrote:
> Thanks for the reviews! Updated webrevs with all comments...
>
> http://cr.openjdk.java.net/~jmelvin/7130404/hotspot/webrev.01
Just FYI. I use startsWith("Mac"). But I'm not sure I have an opinion what you should use.
Seems like this comment was wrong to begin with, and is wrong now:
55 /* Returns "sparc" if on SPARC, "x86" if on x86. */
56 public static String getCPU() throws UnsupportedPlatformException {
It returns a wide variety of values. :^(
> http://cr.openjdk.java.net/~jmelvin/7130404/jdk/webrev.01
There are 4 critical ARCH weapons, all of them have inconsistencies and risks when sharpened or changed:
1. LIBARCH or the name in the install trees, e.g. lib/sparc, lib/i386, lib/amd64
2. os.arch, or what the Java property value is, e.g. x86, sparc, i586, i386?, sparcv9, amd64, x86_64,...
3. The arch name used in the bundle names, e.g. sparc, x86, x64, etc.
4. The arch name used in the build directories, e.g. build/solaris-sparc, build/solaris-x64, ...
However, like the Monty Python Spanish Inquisition, http://www.youtube.com/watch?v=vt0Y39eMvpI,
nobody really remembers what the real weapon list is. :^(
But I digress... In the Makefiles, I was trying to limit the ARCH values, and for 64bit x86
I have tried to use x64 or X64 and have been trying to avoid amd64 or x86_64.
This is separate from the above weapon list, they all do not and probably can never all be the
same, but where we can avoid repeating the same ARCH with a different spelling, we should.
I think the bottom line is that the Defs-macos.gmk and Platform.gmk file probably could be trimmed
down for Mac, but I don;t see a pressing need right now.
> http://cr.openjdk.java.net/~jmelvin/7130404/corba/webrev.01
Not sure this change is necessary, corba no longer compiles any native code.
But it seems harmless.
-kto
>
> Main changes were to refine the use of string compares for Mac OS X...
>
> < osName.startsWith("Mac OS")
> > osName.contains("OS X")
>
> Any final comments? A decision has not yet been made to include this
> change or not. I'll provide an update when there's progress.
>
> - Jim
>
>
>
> On 2/20/12 4:02 PM, James Melvin wrote:
>> Hi,
>>
>> To maintain compatibility with Apple JDKs, a proposal will be made to
>> change the 'os.arch' system property from 'amd64' to 'x86_64' on Mac OS
>> X. Minor changes are required to the following repositories, for which
>> I've provided webrevs...
>>
>> WEBREV:
>> http://cr.openjdk.java.net/~jmelvin/7130404/hotspot/webrev.00
>> http://cr.openjdk.java.net/~jmelvin/7130404/jdk/webrev.00
>>
>> TESTING:
>> JPRT job (2012-02-20-203901.jmelvin.hotspot)
>> Notepad, SwingSet2, SPECjbb2005
>>
>> This change will also impact a small number of internal tests and RE
>> scripts. The bundle names will also reflect the change amd64 -> x86_64.
>> HotSpot changes can be integrated first, with the JDK changes in the
>> following promotion. Should the proposal be rejected for 7u4, I
>> obviously withdraw the bugfix.
>>
>> Feedback welcome,
>>
>> Jim
More information about the jdk7-dev
mailing list