[aarch64-port-dev ] aarch64: jdk9: 8078245: fails to build from source

David Holmes david.holmes at oracle.com
Fri Apr 24 07:11:10 UTC 2015


Hi Ed,

On 21/04/2015 7:16 PM, Edward Nevill wrote:
> Hi,
>
> The current jdk9 tip fails to build from source on aarch64 with the following error message
>
> /home/ed/build/1504/dev/build/linux-aarch64-normal-server-release/support/native/java.desktop/libsplashscreen/pngrutil.o: In function `png_init_filter_functions':
> /home/ed/build/1504/dev/jdk/src/java.desktop/share/native/libsplashscreen/libpng/pngrutil.c:3947: undefined reference to `png_init_filter_functions_neon'
> collect2: error: ld returned 1 exit status
>
> The following webrev gets it building again.
>
> http://cr.openjdk.java.net/~enevill/8078245/webrev.00/

Shouldn't the guard be Aarch64 specific rather than just __arm__ ? I'm 
also wondering how we would get __ARM_NEON defined but not __arm__?

And looking closer at the original code:

154 #  if (defined(__ARM_NEON__) || defined(__ARM_NEON)) && \

we seem to have a stray ) that might be the cause of the problem?

Cheers,
David


Thanks,
David

> Please review and if approved push. See comments below.
>
> Thanks,
> Ed.
>
>
> This was introduced at changeset 11769
>
> changeset:   11769:cb75299d5933
> user:        azvegint
> date:        Mon Jan 19 20:02:31 2015 +0300
> files:       src/java.desktop/share/native/libsplashscreen/libpng/CHANGES src/java.desktop/share/native/libsplashscreen/libpng/LICENSE src/java.desktop/share/native/libsplashscreen/libpng/README src/java.desktop/share/native/libsplashscreen/libpng/png.c src/java.desktop/share/native/libsplashscreen/libpng/png.h src/java.desktop/share/native/libsplashscreen/libpng/pngconf.h src/java.desktop/share/native/libsplashscreen/libpng/pngdebug.h src/java.desktop/share/native/libsplashscreen/libpng/pngerror.c src/java.desktop/share/native/libsplashscreen/libpng/pngget.c src/java.desktop/share/native/libsplashscreen/libpng/pnginfo.h src/java.desktop/share/native/libsplashscreen/libpng/pnglibconf.h src/java.desktop/share/native/libsplashscreen/libpng/pngmem.c src/java.desktop/share/native/libsplashscreen/libpng/pngpread.c src/java.desktop/share/native/libsplashscreen/libpng/pngpriv.h src/java.desktop/share/native/libsplashscreen/libpng/pngread.c src/java.desktop/share/native/libsplashs!
 creen/li
bpng/pngrio.c src/java.desktop/share/native/libsplashscreen/libpng/pngrtran.c src/java.desktop/share/native/libsplashscreen/libpng/pngrutil.c src/java.desktop/share/native/libsplashscreen/libpng/pngset.c src/java.desktop/share/native/libsplashscreen/libpng/pngstruct.h src/java.desktop/share/native/libsplashscreen/libpng/pngtest.c src/java.desktop/share/native/libsplashscreen/libpng/pngtrans.c src/java.desktop/share/native/libsplashscreen/libpng/pngwio.c src/java.desktop/share/native/libsplashscreen/libpng/pngwrite.c src/java.desktop/share/native/libsplashscreen/libpng/pngwtran.c src/java.desktop/share/native/libsplashscreen/libpng/pngwutil.c
> description:
> 8069198: Upgrade image library
> Reviewed-by: ahgross, bae, mschoene, serb
>
> This changeset seems to introduce some ARM Neon optimisations, however I cannot seem to access the associated bug report JDK-8069198 as it seems I do not have suitable privileges to read the report.
>
> The problem is that it is also attempting to build this code for AARCH64 resulting in the above undefined symbol.
>
> The above webrev fixes this by ensuring that it only attempts to compile this code if defined(__arm__)
>
>


More information about the aarch64-port-dev mailing list