[aarch64-port-dev ] RFR: GensrcMisc.gmk linker issue on windows

Alex Kashchenko akashche at redhat.com
Thu Mar 9 13:46:31 UTC 2017


Hi,

On 03/09/2017 01:04 PM, Michal Vala wrote:
>
>
> On 03/09/2017 08:24 AM, Michal Vala wrote:
>>
>>> Have you tested that reverting this to the upstream jdk8u version
>>> doesn't break aarch64?
>>>
>>> I did a comparison of upstream jdk8u121-b14 with the current state of
>>> aarch64/jdk8u (attached)
>>> and all other changes do seem to be necessary for aarch64 (the test
>>> issue is a merge issue
>>> already resolved in the main jdk8u tree, but not jdk8u121-b14).
>>>
>>
>> Haven't tried on aarch64, but I'll do.
>>
>
> How you please got the patch? I just could find this huge merge
> changeset under the hash [1].
>
> If I tried to revert patch you sent "patch -R -p1 <
> ~/tmp/aarch64.jdk.patch" I got following error on aarch64:
>
> gmake[2]: *** No rule to make target
> `/mnt/ramdisk/tmp/aarch64-port-jdk8u/jdk/src/solaris/bin/aarch64/jvm.cfg',
> needed by
> `/mnt/ramdisk/tmp/aarch64-port-jdk8u/build/linux-aarch64-normal-server-release/jdk/lib/aarch64/jvm.cfg'.
>  Stop.
>
>
> With just LDEXE fix I sent, aarch64 build is ok.

I contributed the opposite change once for aarch32 [1]. Just checked 
with aarch64-jdk8u - proposed change breaks aarch64 cross-compilation 
(on ubuntu 16.04 x86_64 with --openjdk-target=aarch64-linux-gnu ) 
causing the following error:

/usr/bin/ld: warning: cannot find entry symbol _start; defaulting to 
00000000004000b0
/home/aarch64/jdk8u-aarch64/build/linux-aarch64-normal-server-release/jdk/btnative/genSocketOptionRegistry/genSocketOptionRegistry.o: 
In function `out':
genSocketOptionRegistry.c:(.text+0x10): undefined reference to `puts'
/home/aarch64/jdk8u-aarch64/build/linux-aarch64-normal-server-release/jdk/btnative/genSocketOptionRegistry/genSocketOptionRegistry.o: 
In function `emit':
genSocketOptionRegistry.c:(.text+0x48): undefined reference to `printf'
genSocketOptionRegistry.c:(.text+0x5c): undefined reference to `printf'
gensrc/GensrcMisc.gmk:74: recipe for target 
'/home/aarch64/jdk8u-aarch64/build/linux-aarch64-normal-server-release/jdk/btnative/genSocketOptionRegistry/genSocketOptionRegistry' 
failed
make[2]: *** 
[/home/aarch64/jdk8u-aarch64/build/linux-aarch64-normal-server-release/jdk/btnative/genSocketOptionRegistry/genSocketOptionRegistry] 
Error 1


Though this change is indeed required for windows builds, ojdkbuild 
brings a local patch for it [2].


[1] 
http://mail.openjdk.java.net/pipermail/aarch32-port-dev/2016-February/000111.html
[2] 
https://github.com/ojdkbuild/lookaside_java-1.8.0-openjdk/commit/e71366e75cabf16c0c7bd7789ec37b4f2925f93f

-- 
-Alex


More information about the aarch64-port-dev mailing list