Code Review Request for MacOS X build change (7117748)

Daniel D. Daugherty daniel.daugherty at oracle.com
Mon Dec 5 13:43:37 PST 2011


On 12/5/11 2:33 PM, Mandy Chung wrote:
> On 12/5/11 8:57 AM, Daniel D. Daugherty wrote:
>>
>> The logic before Mandy's change says:
>>
>> - if the $(SA_CLASSPATH) file doesn't exist, then complain and exit
>>
>> Mandy's changeset updated that logic to:
>>
>> - if the $(SA_CLASSPATH) file doesn't exist AND if the lib/modules
>>   directory does not exist, then complain and exit
>>
>> Mandy also added a TODO note about needing to add a check to see
>> if the SA module is installed.
>>
>> So what does all this mean?
>>
>> - the modules logic that Mandy added is partial
>> - there is a TODO note about what else needs to be added
>> - if a proper boot JDK is provided, then the modules
>>   logic that Mandy added is never executed
>> - if an improper boot JDK is provided AND the lib/modules
>>   directory exists, then the error message and exit will
>>   be skipped, but the build will fail later because the
>>   JDI classes won't be found
>>
>
> I think Dan already got what he needs and Vladmir's approval to the 
> review.
>
> FWIW.  Some background to the SA build logic and modules image to 
> explain the change I made:
>
> The check for SA_CLASSPATH exists in the boot JDK is to detect if the 
> classpath was setup properly to compile the SA JDI connectors that 
> references com.sun.jdi.* API.   The build will fail before it compiles 
> any sa-jdi classes.   In the modular world, tools.jar, rt.jar, and 
> other jar files no longer exist.  Instead, com.sun.jdi will be 
> installed in the modular JDK as a module.   For a skip boot cycle 
> build, the JDK will be built with itself.  In other words, for jigsaw, 
> it will build itself with a modular JDK.  The makefile needs to detect 
> if the boot JDK is a modular JDK or legacy JDK (i.e. existing JDK 
> releases) and then checks for tools.jar or the module for JDI.  A 
> modular JDK will have a new "lib/modules" directory in which the jdk 
> modules are installed.  That's why the "lib/modules" check was added 
> as the partial fix.  A complete fix for this modules logic is to check 
> if the module for JDI exists.  In any case, this check can be removed 
> if it causes any confusion.
>
> Mandy

Mandy,

Thanks for filling in the history. I think I'm going with the fix for
7117748 as it is since I have reviews from Vladimir and Mike S from
Apple.

Dan



More information about the hotspot-runtime-dev mailing list