RFR: JDK-8164297: Jtreg test exeinvoke fails to link on Ubuntu
David Holmes
david.holmes at oracle.com
Thu Aug 18 10:51:33 UTC 2016
Sorry missed this. Resending reply ...
On 18/08/2016 6:14 PM, Erik Joelsson wrote:
> (Resending with proper subject)
>
>
> On 2016-08-18 10:11, Erik Joelsson wrote:
>> Thank you,
>>
>> Here is a request for review on that change.
>>
>> Webrev: http://cr.openjdk.java.net/~erikj/8164297/webrev.01/
>> Bug: https://bugs.openjdk.java.net/browse/JDK-8164297
>>
>> I will push this to jdk9/hs when reviewed unless anyone thinks it
>> belongs better somewhere else.
Fix seems to work, as reported, but why do we have:
BUILD_HOTSPOT_JTREG_EXECUTABLES_LIBS_* := -ljvm ...
yet:
BUILD_HOTSPOT_JTREG_LIBRARIES_LDFLAGS_* := -lc
? Shouldn't they both be _LIBS ?
Thanks,
David
>> /Erik
>>
>> On 2016-08-17 19:56, Gustavo Romero wrote:
>>> Hi Erik,
>>>
>>> On 17-08-2016 12:23, Erik Joelsson wrote:
>>>> I'm sorry, you also need this patch, which I for some reason I can't
>>>> remember had in my local forest.
>>>>
>>>> diff -r a24702d4d5ab make/common/TestFilesCompilation.gmk
>>>> --- a/make/common/TestFilesCompilation.gmk
>>>> +++ b/make/common/TestFilesCompilation.gmk
>>>> @@ -86,6 +86,7 @@
>>>> LANG := C, \
>>>> CFLAGS := $$($1_CFLAGS)
>>>> $$($1_CFLAGS_$$($1_PREFIX)$$(name)), \
>>>> LDFLAGS := $$($1_LDFLAGS)
>>>> $$($1_LDFLAGS_$$($1_PREFIX)$$(name)), \
>>>> + LIBS := $$($1_LIBS_$$($1_PREFIX)$$(name)), \
>>>> OPTIMIZATION := LOW, \
>>>> )) \
>>>> $$(eval $1 += $$(BUILD_TEST_$$(name)) ) \
>>>>
>>>> /Erik
>>>>
>>>> On 2016-08-17 16:56, Gustavo Romero wrote:
>>>>> Hi Erik,
>>>>>
>>>>> I applied your change:
>>>>>
>>>>> diff -r 397565766eb4 make/test/JtregNative.gmk
>>>>> --- a/make/test/JtregNative.gmk Thu Aug 11 16:22:08 2016 -0700
>>>>> +++ b/make/test/JtregNative.gmk Wed Aug 17 09:54:20 2016 -0500
>>>>> @@ -79,7 +79,7 @@
>>>>> ifeq ($(OPENJDK_TARGET_OS), linux)
>>>>> BUILD_HOTSPOT_JTREG_LIBRARIES_LDFLAGS_libtest-rw := -z
>>>>> noexecstack
>>>>> BUILD_HOTSPOT_JTREG_LIBRARIES_LDFLAGS_libtest-rwx := -z
>>>>> execstack
>>>>> - BUILD_HOTSPOT_JTREG_EXECUTABLES_LDFLAGS_exeinvoke := -ljvm
>>>>> -lpthread
>>>>> + BUILD_HOTSPOT_JTREG_EXECUTABLES_LIBS_exeinvoke := -ljvm -lpthread
>>>>> BUILD_TEST_invoke_exeinvoke.c_OPTIMIZATION := NONE
>>>>> endif
>>>>>
>>>>>
>>>>> but it seems the new param is not passed to the linker now. So it
>>>>> failed.
>>>>>
>>> I confirm that your patch fixes the issue on Ubuntu 16.04 PPC64 &&
>>> x64, applying
>>> cleanly to:
>>>
>>> http://hg.openjdk.java.net/jdk9/hs-comp, 37de4195dd18+ tip:
>>>
>>> diff -r 37de4195dd18 make/common/TestFilesCompilation.gmk
>>> --- a/make/common/TestFilesCompilation.gmk Fri Aug 05 09:50:23
>>> 2016 -0700
>>> +++ b/make/common/TestFilesCompilation.gmk Wed Aug 17 13:54:43
>>> 2016 -0400
>>> @@ -86,6 +86,7 @@
>>> LANG := C, \
>>> CFLAGS := $$($1_CFLAGS) $$($1_CFLAGS_$$($1_PREFIX)$$(name)), \
>>> LDFLAGS := $$($1_LDFLAGS)
>>> $$($1_LDFLAGS_$$($1_PREFIX)$$(name)), \
>>> + LIBS := $$($1_LIBS_$$($1_PREFIX)$$(name)), \
>>> OPTIMIZATION := LOW, \
>>> )) \
>>> $$(eval $1 += $$(BUILD_TEST_$$(name)) ) \
>>>
>>>
>>> http://hg.openjdk.java.net/jdk9/hs-comp/hotspot, 031f53ef620a+ tip:
>>>
>>> diff -r 031f53ef620a make/test/JtregNative.gmk
>>> --- a/make/test/JtregNative.gmk Wed Aug 17 06:23:04 2016 +0000
>>> +++ b/make/test/JtregNative.gmk Wed Aug 17 13:54:58 2016 -0400
>>> @@ -79,7 +79,7 @@
>>> ifeq ($(OPENJDK_TARGET_OS), linux)
>>> BUILD_HOTSPOT_JTREG_LIBRARIES_LDFLAGS_libtest-rw := -z noexecstack
>>> BUILD_HOTSPOT_JTREG_LIBRARIES_LDFLAGS_libtest-rwx := -z execstack
>>> - BUILD_HOTSPOT_JTREG_EXECUTABLES_LDFLAGS_exeinvoke := -ljvm
>>> -lpthread
>>> + BUILD_HOTSPOT_JTREG_EXECUTABLES_LIBS_exeinvoke := -ljvm -lpthread
>>> BUILD_TEST_invoke_exeinvoke.c_OPTIMIZATION := NONE
>>> endif
>>>
>>> Thank you very much for having a look.
>>>
>>> Kind regards,
>>> Gustavo
>>>
>>>
>>
>
More information about the build-dev
mailing list