RFR: 8073139 PPC64: User-visible arch directory and os.arch value on ppc64le cause issues with Java tooling

Alexander Smundak asmundak at google.com
Tue Dec 8 17:44:18 UTC 2015


Thank you for the review.
If everyone involved is satisfied with the patch, I need a sponsor.

Sasha

On Mon, Dec 7, 2015 at 8:46 PM, David Holmes <david.holmes at oracle.com> wrote:
> On 8/12/2015 1:44 PM, Alexander Smundak wrote:
>>
>> It is achievable by adding a small ppc-specific check to the
>> common/autoconf/platform.m4:
>>
>> @@ -282,6 +282,8 @@
>>     elif test "x$OPENJDK_TARGET_OS" != xmacosx && test
>> "x$OPENJDK_TARGET_CPU" = xx86_64; then
>>       # On all platforms except MacOSX replace x86_64 with amd64.
>>       OPENJDK_TARGET_CPU_LEGACY="amd64"
>> +  elif test "x$OPENJDK_TARGET_CPU" = xppc64le; then
>> +    OPENJDK_TARGET_CPU_LEGACY="ppc64"
>>     fi
>>     AC_SUBST(OPENJDK_TARGET_CPU_LEGACY)
>>
>> However, there is a code in make/Images.gmk using
>> OPENJDK_TARGET_CPU_LEGACY
>>    $(call info-file-item, "OS_ARCH", "$(OPENJDK_TARGET_CPU_LEGACY)")
>> so that the 'release' file in the image directory will now have
>> JAVA_VERSION="9"
>> JAVA_FULL_VERSION="9-internal+0-2015-12-07-190811.asmundak.hs-rt"
>> OS_NAME="Linux"
>> OS_VERSION="2.6"
>> OS_ARCH="ppc64"
>>          ^^^^^^^^
>> SOURCE=..,
>>
>> instead of "ppc64le".
>>
>> If someone can tell me which other variable I should use to achieve
>> that without changing the contents of the 'release' file on other
>> platforms, I'll be grateful.
>
>
> Okay never mind - and thanks for looking into this. I see now this is set
> via:
>
> ./autoconf/flags.m4:  COMMON_CCXXFLAGS_JDK="$COMMON_CCXXFLAGS_JDK
> -DARCH='\"$OPENJDK_TARGET_CPU_LEGACY\"' -D$OPENJDK_TARGET_CPU_LEGACY"
>
> so there is no way to add a second value without introducing some additional
> variable. At the hotspot level it could be handled differently if we had a
> platform_ppc64le file, as it could just be added to the SYSDEFS.
>
> Thanks,
> David



More information about the build-dev mailing list