Code Review Request for MacOS X build change (7117748)
Mike Swingler
swingler at apple.com
Sun Dec 4 11:05:19 PST 2011
On Dec 4, 2011, at 10:35 AM, Daniel D. Daugherty wrote:
> Hey Mike,
>
> Thanks for the quick review!
>
> On 12/4/11 9:43 AM, Mike Swingler wrote:
>> On Dec 3, 2011, at 8:13 PM, Daniel D. Daugherty wrote:
>>
>>> Greetings,
>>>
>>> I have a fix that allows HSX-23 to be built on MacOS X via JPRT
>>> without specifying SA_APPLE_BOOT_JAVA or ALWAYS_PASS_TEST_GAMMA
>>> on the command line. I'm targeting this fix at RT_Baseline for
>>> the HSX-23-B08 snapshot.
>>>
>>> Here is the webrev URL:
>>>
>>> http://cr.openjdk.java.net/~dcubed/7117748-webrev/0/
>>>
>>> I tested this fix with the default JPRT boot JDK (JDK6 from Apple)
>>> and with JDK7 boot JDK (JDK7 bits from Oracle).
>>>
>>> Thanks, in advance, for any reviews.
>> My concern is that you are skipping the gamma checks in the case when OpenJDK is being built with OpenJDK on the Mac.
>
> My understanding is that gamma doesn't currently build on Mac OS X
> in either the macosx-port forest or in the 7u-osx forest. Jim Melvin
> has been working to resolve that issue and when that work is done,
> then the ALWAYS_PASS_TEST_GAMMA stuff can go away.
>
>> The gamma tests (and the SA_CLASSPATH) logic only needs to be adjusted when you are building OpenJDK with Apple's Java SE 6.
>
> The SA_CLASSPATH stuff only checks for Apple's Java SE 6 layout when
> it can't find tools.jar. Please see my answer to Vladimir for when
> Apple's Java SE 6 is used as the boot JDK.
Yeah, I read that after I replied. :-P
> As for gamma, are you saying that the gamma build is not broken when
> the MacOS X port is built with OpenJDK7 as the boot JDK? That's not
> my understanding, but I haven't tested it myself (yet).
I thought it works, but only when bootstrapped under JDK7...but I could be mistaken.
>> I like the general direction of these fixes, but could you conditionalize the logic so that these hacky patches only get set when the current bootstrap Java is 1.6?
>
> Hacky? :-) And I thought it was hacky to have to pass those variables
> on the build command line... :-) More seriously, the goal of this
> changeset is to get those variables off the command line so that
> MacOS X JPRT jobs can be submitted just like the other platforms...
Oh, of course...I don't think we should have anything more on the command line than "make". Personally, I wish the parallelization options could be auto-determined based on cores and total ram size ratio, and you should pass a parameter when you don't want them, or want to override them.
> For the SA_CLASSPATH stuff, I think the logic is conditional enough:
>
> - look for tools.jar
> - if not found and building MacOS X, then look for
> Apple's Java SE 6 layout (classes.jar)
> - complain and fail if JDI classes cannot be found
>
> For gamma, all that logic will get deleted when we start being able to
> build gamma. If gamma builds now when OpenJDK7 is used as the boot JDK,
> then we'll rework the logic to be conditional when Apple's Java SE 6 is
> used as the boot JDK.
>
> Please let me know if this addresses your concerns.
I was under the impression that gamma actually passes when JDK7 is bootstrapped with JDK7, but I haven't tested that recently.
Cheers,
Mike Swingler
Apple Inc.
More information about the hotspot-runtime-dev
mailing list