On Thu, Oct 27, 2016 at 2:22 PM, Volker Simonis
<volker.simo...@gmail.com> wrote:
> Hi,
>
> currently libelf support is checked on every 64-bit Linux and Solaris
> platform (see lib-elf.m4):
>
>   if ((test "x$OPENJDK_TARGET_OS" = "xlinux" \
>        || test "x$OPENJDK_TARGET_OS" = "xsolaris") && \
>       (test "x$OPENJDK_TARGET_CPU_BITS" = "x64")); then
>     LIBJELFSHIM_ENABLED="true"
>   else
>     LIBJELFSHIM_ENABLED="false"
>   fi
>
> As far as I understand, this is only required for AOT and should
> therefore only be checked for if AOT is enabled. We could do something
> similar like for FFI (see libraries.m4):
>
>   # Check if ffi is needed
>   if HOTSPOT_CHECK_JVM_VARIANT(zero) ||
> HOTSPOT_CHECK_JVM_VARIANT(zeroshark); then
>     NEEDS_LIB_FFI=true
>   else
>     NEEDS_LIB_FFI=false
>   fi
>
> And then test for "NEEDS_LIB_JELFSHIM" in lib-elf.m4 instead of
> testing for a specific platform.
>
> Otherwise we get ugly warning like:
>
> WARNING: Could not find libelf!  Not building libjelfshim.so
>

And I think in the case where we compile for AOT, we should print the
usual, platform-dependent hints like for example:

libelf.so not found: try  to run 'sudo apt-get install libelf-dev'

> during configuration if we are running on platforms without AOT
> support or if AOT support is switched of.
>
> Regards,
> Volker
>
>
>
> On Thu, Oct 27, 2016 at 2:45 AM, Vladimir Kozlov
> <vladimir.koz...@oracle.com> wrote:
>> AOT JEP:
>> https://bugs.openjdk.java.net/browse/JDK-8166089
>> Subtask:
>> https://bugs.openjdk.java.net/browse/JDK-8166416
>> Webrev:
>> http://cr.openjdk.java.net/~kvn/aot/top.webrev/
>> http://cr.openjdk.java.net/~kvn/aot/jdk.webrev/
>> http://cr.openjdk.java.net/~kvn/aot/hs.make.webrev/
>>
>> Please, review build changes for AOT.  Only Linux/x64 platform is supported.
>> 'jaotc' and AOT part of Hotspot will be build only on Linux/x64.
>>
>> Changes include new 'jaotc' launcher, makefile changes to build
>> jdk.vm.compiler (Graal) and jdk.aot modules used by 'jaotc'.
>> Both modules sources are located in Hotspot: hotspot/src/jdk.aot and
>> hotspot/src/jdk.vm.compiler.
>> 'jaotc' requires installed libelf package on a system to build native part
>> of 'jaotc'. It is used to generated AOT shared libraries (.so) as result of
>> AOT compilation.
>>
>> Hotspot makefile changes will be pushed together with Hotspot AOT changes.
>>
>> Thanks,
>> Vladimir

Reply via email to