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

David Holmes david.holmes at oracle.com
Tue Dec 8 04:46:42 UTC 2015


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