On Mon, 24 Jun 2024 22:22:38 GMT, Vladimir Petko <vpe...@openjdk.org> wrote:
> This PR sets COMPATIBLE_CDS_ALIGNMENT_DEFAULT to auto for aarch64. > This allows to avoid configure error on arm64: > > $ sh configure --disable-jvm-feature-cds > ... > checking if CDS archive is available... no (CDS is disabled) > checking if a default CDS archive should be generated... disabled, from > default 'auto' > checking if CDS archive is available... no (CDS is disabled) > checking if compatible cds region alignment enabled... enabled, default > configure: error: Option --enable-compatible-cds-alignment is not available > configure exiting with result code 1 > > after applying the change: > > $ sh configure --disable-jvm-feature-cds > ... > checking if the CDS classlist generation should be enabled... disabled, from > default 'auto' > checking if any translations should be excluded... no > checking if static man pages should be copied... enabled, default > checking if CDS archive is available... no (CDS is disabled) > checking if a default CDS archive should be generated... disabled, from > default 'auto' > checking if CDS archive is available... no (CDS is disabled) > checking if compatible cds region alignment enabled... disabled, from default > 'auto' > checking for number of cores... 4 > checking for memory size... 7943 MB > checking for appropriate number of jobs to run in parallel... 4 > checking whether to use javac server... enabled, default > checking flags for boot jdk java command ... -Duser.language=en > -Duser.country=US -XX:+UnlockDiagnosticVMOptions -XX:-VerifySharedSpaces > -XX:SharedArchiveFile=/build/magic/arm64/jdk/build/linux-aarch64-server-release/configure-support/classes.jsa > -Xshare:auto > checking flags for boot jdk java command for big workloads... -Xms64M > -Xmx1600M > checking flags for bootcycle boot jdk java command for big workloads... > -Xms64M -Xmx1600M > checking flags for boot jdk java command for small workloads... > -XX:+UseSerialGC -Xms32M -Xmx512M -XX:TieredStopAtLevel=1 > checking for --enable-icecc... disabled, default > checking if precompiled headers are available... yes > checking for --enable-precompiled-headers... enabled, from default 'auto' > checking for ccache... [not found] > checking if ccache is available... no, ccache binary missing or not executable > checking if ccache is enabled... disabled, default > checking if build directory is on local disk... yes > configure: creating > /build/magic/arm64/jdk/build/linux-aarch64-server-release/configure-support/config.status > config.status: creating > /build/magic/arm64/jdk/build/linux-aarch64-server-release/spec.gmk > config.status: creating... Looking at this, there are more problems. In the `UTIL_ARG_ENABLE` for `compatible-cds-alignment`, the `DEFAULT_DESC` is just `disabled` which isn't correct. It's disabled except on linux-aarch64. This seems like an oversight in JDK-8331942. Would you mind addressing this as well? make/autoconf/jdk-options.m4 line 202: > 200: COMPATIBLE_CDS_ALIGNMENT_DEFAULT=auto > 201: fi > 202: AC_SUBST(COMPATIBLE_CDS_ALIGNMENT_DEFAULT) This line should be removed. There is no reason to export the default value in spec.gmk (and it's not currently present either). ------------- PR Review: https://git.openjdk.org/jdk/pull/19869#pullrequestreview-2138045305 PR Review Comment: https://git.openjdk.org/jdk/pull/19869#discussion_r1652370222