RFR: JDK-8087195: Support building hotspot with devkits on Macosx

Magnus Ihse Bursie magnus.ihse.bursie at oracle.com
Fri Jun 12 13:12:11 UTC 2015


On 2015-06-12 08:35, Erik Joelsson wrote:
> Hello David,
>
> On 2015-06-12 04:20, David Holmes wrote:
>> Hi Erik,
>>
>> On 11/06/2015 11:11 PM, Erik Joelsson wrote:
>>> Hello again,
>>>
>>> I missed cleaning the path correctly when testing this so missed 
>>> another
>>> needed change. When calling "lipo", the hotspot makefiles should use 
>>> the
>>> variable supplied by configure. Here is an updated patch.
>>>
>>> Webrev: http://cr.openjdk.java.net/~erikj/8087195/webrev.hotspot.01/
>>
>> Typo: + # we run it explicitly before runing dtrace.
>>
>> runing -> running
>>
> Fixing that.

Looks good to me then.

/Magnus

>> Looks okay, only question I have is whether the preprocessed .d files 
>> should be placed into DtraceOutDir or some tmp location? I'm not sure 
>> where the contents of DtraceOutDir end up.
>>
> It's defined as
> DtraceOutDir = $(GENERATED)/dtracefiles
>
> which I assume is added to -I for the compiler later. I would say that 
> it's safe to have a couple of other files end up in the same directory.
>
> Thanks
> /Erik
>> Thanks,
>> David
>>
>>> /Erik
>>>
>>> On 2015-06-11 12:53, Erik Joelsson wrote:
>>>> Hello,
>>>>
>>>> Please review this small makefile tweak. When using a devkit to build
>>>> hotspot on Macosx, the dtrace command gets confused and tries to use
>>>> the wrong preprocessor. I've fixed this by splitting out the running
>>>> of the preprocessor to a separate call. I've verified by comparing the
>>>> generated header files with and without the patch.
>>>>
>>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8087195
>>>> Patch inline:
>>>> diff -r 11af3990d56c make/bsd/makefiles/dtrace.make
>>>> --- a/make/bsd/makefiles/dtrace.make
>>>> +++ b/make/bsd/makefiles/dtrace.make
>>>> @@ -263,14 +263,19 @@
>>>>  $(DtraceOutDir):
>>>>      mkdir $(DtraceOutDir)
>>>>
>>>> +# When building using a devkit, dtrace cannot find the correct
>>>> preprocessor so
>>>> +# we run it explicitly before runing dtrace.
>>>>  $(DtraceOutDir)/hotspot.h: $(DTRACE_COMMON_SRCDIR)/hotspot.d |
>>>> $(DtraceOutDir)
>>>> -    $(QUIETLY) $(DTRACE_PROG) $(DTRACE_OPTS) -C -I. -h -o $@ -s
>>>> $(DTRACE_COMMON_SRCDIR)/hotspot.d
>>>> +    $(QUIETLY) $(CC) -E $(DTRACE_OPTS) -I. -x c
>>>> $(DTRACE_COMMON_SRCDIR)/hotspot.d > $(DtraceOutDir)/hotspot.d
>>>> +    $(QUIETLY) $(DTRACE_PROG) -h -o $@ -s $(DtraceOutDir)/hotspot.d
>>>>
>>>>  $(DtraceOutDir)/hotspot_jni.h: $(DTRACE_COMMON_SRCDIR)/hotspot_jni.d
>>>> | $(DtraceOutDir)
>>>> -    $(QUIETLY) $(DTRACE_PROG) $(DTRACE_OPTS) -C -I. -h -o $@ -s
>>>> $(DTRACE_COMMON_SRCDIR)/hotspot_jni.d
>>>> +    $(QUIETLY) $(CC) -E $(DTRACE_OPTS) -I. -x c
>>>> $(DTRACE_COMMON_SRCDIR)/hotspot_jni.d > $(DtraceOutDir)/hotspot_jni.d
>>>> +    $(QUIETLY) $(DTRACE_PROG) -h -o $@ -s 
>>>> $(DtraceOutDir)/hotspot_jni.d
>>>>
>>>>  $(DtraceOutDir)/hs_private.h: $(DTRACE_COMMON_SRCDIR)/hs_private.d |
>>>> $(DtraceOutDir)
>>>> -    $(QUIETLY) $(DTRACE_PROG) $(DTRACE_OPTS) -C -I. -h -o $@ -s
>>>> $(DTRACE_COMMON_SRCDIR)/hs_private.d
>>>> +    $(QUIETLY) $(CC) -E $(DTRACE_OPTS) -I. -x c
>>>> $(DTRACE_COMMON_SRCDIR)/hs_private.d > $(DtraceOutDir)/hs_private.d
>>>> +    $(QUIETLY) $(DTRACE_PROG) -h -o $@ -s 
>>>> $(DtraceOutDir)/hs_private.d
>>>>
>>>>  dtrace_gen_headers: $(DtraceOutDir)/hotspot.h
>>>> $(DtraceOutDir)/hotspot_jni.h $(DtraceOutDir)/hs_private.h
>>>>
>>>>
>>>> /Erik
>>>
>



More information about the hotspot-dev mailing list