# HG changeset patch # User mduigou # Date 1393867302 28800 # Node ID 0a9d96bf20233e81da422ea5b81fb2ea5b9ca0a6 # Parent 7d0c85ad2eece0ca740003ec11a41cea2f5c998d 8036079: --with-boot-jdk-jvmargs configure options are ignored Reviewed-by: erikj diff -r 7d0c85ad2eec -r 0a9d96bf2023 common/autoconf/boot-jdk.m4 --- a/common/autoconf/boot-jdk.m4 Fri Feb 28 13:35:32 2014 +0100 +++ b/common/autoconf/boot-jdk.m4 Mon Mar 03 09:21:42 2014 -0800 @@ -341,39 +341,45 @@ [ ############################################################################## # - # Specify options for anything that is run with the Boot JDK. + # Specify jvm options for anything that is run with the Boot JDK. + # Not all JVM:s accept the same arguments on the command line. # AC_ARG_WITH(boot-jdk-jvmargs, [AS_HELP_STRING([--with-boot-jdk-jvmargs], - [specify JVM arguments to be passed to all invocations of the Boot JDK, overriding the default values, + [specify JVM arguments to be passed to all java invocations of boot JDK, overriding the default values, e.g --with-boot-jdk-jvmargs="-Xmx8G -enableassertions"])]) - if test "x$with_boot_jdk_jvmargs" = x; then - # Not all JVM:s accept the same arguments on the command line. - # OpenJDK specific increase in thread stack for JDK build, - # well more specifically, when running javac. - if test "x$BUILD_NUM_BITS" = x32; then - STACK_SIZE=768 - else - # Running Javac on a JVM on a 64-bit machine, the stack takes more space - # since 64-bit pointers are pushed on the stach. Apparently, we need - # to increase the stack space when javacing the JDK.... - STACK_SIZE=1536 - fi + AC_MSG_CHECKING([flags for boot jdk java command] ) + + # Starting amount of heap memory. + ADD_JVM_ARG_IF_OK([-Xms64M],boot_jdk_jvmargs,[$JAVA]) - # Minimum amount of heap memory. - ADD_JVM_ARG_IF_OK([-Xms64M],boot_jdk_jvmargs,[$JAVA]) - if test "x$OPENJDK_TARGET_OS" = "xmacosx" || test "x$OPENJDK_TARGET_CPU" = "xppc64" ; then - # Why does macosx need more heap? Its the huge JDK batch. - ADD_JVM_ARG_IF_OK([-Xmx1600M],boot_jdk_jvmargs,[$JAVA]) - else - ADD_JVM_ARG_IF_OK([-Xmx1100M],boot_jdk_jvmargs,[$JAVA]) - fi - # When is adding -client something that speeds up the JVM? - # ADD_JVM_ARG_IF_OK([-client],boot_jdk_jvmargs,[$JAVA]) - ADD_JVM_ARG_IF_OK([-XX:ThreadStackSize=$STACK_SIZE],boot_jdk_jvmargs,[$JAVA]) - # Disable special log output when a debug build is used as Boot JDK... - ADD_JVM_ARG_IF_OK([-XX:-PrintVMOptions -XX:-UnlockDiagnosticVMOptions -XX:-LogVMOutput],boot_jdk_jvmargs,[$JAVA]) + # Maximum amount of heap memory. + # Maximum stack size. + if test "x$BUILD_NUM_BITS" = x32; then + JVM_MAX_HEAP=1100M + STACK_SIZE=768 + else + # Running Javac on a JVM on a 64-bit machine, takes more space since 64-bit + # pointers are used. Apparently, we need to increase the heap and stack + # space for the jvm. More specifically, when running javac to build huge + # jdk batch + JVM_MAX_HEAP=1600M + STACK_SIZE=1536 fi + ADD_JVM_ARG_IF_OK([-Xmx$JVM_MAX_HEAP],boot_jdk_jvmargs,[$JAVA]) + ADD_JVM_ARG_IF_OK([-XX:ThreadStackSize=$STACK_SIZE],boot_jdk_jvmargs,[$JAVA]) + + # Disable special log output when a debug build is used as Boot JDK... + ADD_JVM_ARG_IF_OK([-XX:-PrintVMOptions -XX:-UnlockDiagnosticVMOptions -XX:-LogVMOutput],boot_jdk_jvmargs,[$JAVA]) + + # Apply user provided options. + ADD_JVM_ARG_IF_OK([$with_boot_jdk_jvmargs],boot_jdk_jvmargs,[$JAVA]) + + AC_MSG_RESULT([$boot_jdk_jvmargs]) + + # For now, general JAVA_FLAGS are the same as the boot jdk jvmargs + JAVA_FLAGS=$boot_jdk_jvmargs AC_SUBST(BOOT_JDK_JVMARGS, $boot_jdk_jvmargs) + AC_SUBST(JAVA_FLAGS, $JAVA_FLAGS) ]) diff -r 7d0c85ad2eec -r 0a9d96bf2023 common/autoconf/configure.ac --- a/common/autoconf/configure.ac Fri Feb 28 13:35:32 2014 +0100 +++ b/common/autoconf/configure.ac Mon Mar 03 09:21:42 2014 -0800 @@ -31,7 +31,7 @@ AC_PREREQ([2.69]) -AC_INIT(OpenJDK, jdk8, build-dev@openjdk.java.net,,http://openjdk.java.net) +AC_INIT(OpenJDK, jdk9, build-dev@openjdk.java.net,,http://openjdk.java.net) AC_CONFIG_AUX_DIR([$TOPDIR/common/autoconf/build-aux]) m4_include([build-aux/pkg.m4]) diff -r 7d0c85ad2eec -r 0a9d96bf2023 common/autoconf/generated-configure.sh --- a/common/autoconf/generated-configure.sh Fri Feb 28 13:35:32 2014 +0100 +++ b/common/autoconf/generated-configure.sh Mon Mar 03 09:21:42 2014 -0800 @@ -6,7 +6,7 @@ # #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for OpenJDK jdk8. +# Generated by GNU Autoconf 2.69 for OpenJDK jdk9. # # Report bugs to . # @@ -586,8 +586,8 @@ # Identity of this package. PACKAGE_NAME='OpenJDK' PACKAGE_TARNAME='openjdk' -PACKAGE_VERSION='jdk8' -PACKAGE_STRING='OpenJDK jdk8' +PACKAGE_VERSION='jdk9' +PACKAGE_STRING='OpenJDK jdk9' PACKAGE_BUGREPORT='build-dev@openjdk.java.net' PACKAGE_URL='http://openjdk.java.net' @@ -793,6 +793,7 @@ JAXP_TOPDIR CORBA_TOPDIR LANGTOOLS_TOPDIR +JAVA_FLAGS BOOT_JDK_JVMARGS JAVAC_FLAGS BOOT_JDK_SOURCETARGET @@ -1725,7 +1726,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures OpenJDK jdk8 to adapt to many kinds of systems. +\`configure' configures OpenJDK jdk9 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1795,7 +1796,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of OpenJDK jdk8:";; + short | recursive ) echo "Configuration of OpenJDK jdk9:";; esac cat <<\_ACEOF @@ -1871,8 +1872,8 @@ number is not set.[username_builddateb00] --with-build-number Set build number value for build [b00] --with-boot-jdk path to Boot JDK (used to bootstrap build) [probed] - --with-boot-jdk-jvmargs specify JVM arguments to be passed to all - invocations of the Boot JDK, overriding the default + --with-boot-jdk-jvmargs specify JVM arguments to be passed to all java + invocations of boot JDK, overriding the default values, e.g --with-boot-jdk-jvmargs="-Xmx8G -enableassertions" --with-add-source-root for each and every source directory, look in this @@ -2116,7 +2117,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -OpenJDK configure jdk8 +OpenJDK configure jdk9 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2812,7 +2813,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by OpenJDK $as_me jdk8, which was +It was created by OpenJDK $as_me jdk9, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -4220,7 +4221,7 @@ #CUSTOM_AUTOCONF_INCLUDE # Do not change or remove the following line, it is needed for consistency checks: -DATE_WHEN_GENERATED=1393490405 +DATE_WHEN_GENERATED=1393867368 ############################################################################### # @@ -25842,7 +25843,8 @@ ############################################################################## # - # Specify options for anything that is run with the Boot JDK. + # Specify jvm options for anything that is run with the Boot JDK. + # Not all JVM:s accept the same arguments on the command line. # # Check whether --with-boot-jdk-jvmargs was given. @@ -25851,20 +25853,10 @@ fi - if test "x$with_boot_jdk_jvmargs" = x; then - # Not all JVM:s accept the same arguments on the command line. - # OpenJDK specific increase in thread stack for JDK build, - # well more specifically, when running javac. - if test "x$BUILD_NUM_BITS" = x32; then - STACK_SIZE=768 - else - # Running Javac on a JVM on a 64-bit machine, the stack takes more space - # since 64-bit pointers are pushed on the stach. Apparently, we need - # to increase the stack space when javacing the JDK.... - STACK_SIZE=1536 - fi - - # Minimum amount of heap memory. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking flags for boot jdk java command " >&5 +$as_echo_n "checking flags for boot jdk java command ... " >&6; } + + # Starting amount of heap memory. $ECHO "Check if jvm arg is ok: -Xms64M" >&5 $ECHO "Command: $JAVA -Xms64M -version" >&5 @@ -25880,16 +25872,28 @@ JVM_ARG_OK=false fi - if test "x$OPENJDK_TARGET_OS" = "xmacosx" || test "x$OPENJDK_TARGET_CPU" = "xppc64" ; then - # Why does macosx need more heap? Its the huge JDK batch. - - $ECHO "Check if jvm arg is ok: -Xmx1600M" >&5 - $ECHO "Command: $JAVA -Xmx1600M -version" >&5 - OUTPUT=`$JAVA -Xmx1600M -version 2>&1` + + # Maximum amount of heap memory. + # Maximum stack size. + if test "x$BUILD_NUM_BITS" = x32; then + JVM_MAX_HEAP=1100M + STACK_SIZE=768 + else + # Running Javac on a JVM on a 64-bit machine, takes more space since 64-bit + # pointers are used. Apparently, we need to increase the heap and stack + # space for the jvm. More specifically, when running javac to build huge + # jdk batch + JVM_MAX_HEAP=1600M + STACK_SIZE=1536 + fi + + $ECHO "Check if jvm arg is ok: -Xmx$JVM_MAX_HEAP" >&5 + $ECHO "Command: $JAVA -Xmx$JVM_MAX_HEAP -version" >&5 + OUTPUT=`$JAVA -Xmx$JVM_MAX_HEAP -version 2>&1` FOUND_WARN=`$ECHO "$OUTPUT" | grep -i warn` FOUND_VERSION=`$ECHO $OUTPUT | grep " version \""` if test "x$FOUND_VERSION" != x && test "x$FOUND_WARN" = x; then - boot_jdk_jvmargs="$boot_jdk_jvmargs -Xmx1600M" + boot_jdk_jvmargs="$boot_jdk_jvmargs -Xmx$JVM_MAX_HEAP" JVM_ARG_OK=true else $ECHO "Arg failed:" >&5 @@ -25897,25 +25901,6 @@ JVM_ARG_OK=false fi - else - - $ECHO "Check if jvm arg is ok: -Xmx1100M" >&5 - $ECHO "Command: $JAVA -Xmx1100M -version" >&5 - OUTPUT=`$JAVA -Xmx1100M -version 2>&1` - FOUND_WARN=`$ECHO "$OUTPUT" | grep -i warn` - FOUND_VERSION=`$ECHO $OUTPUT | grep " version \""` - if test "x$FOUND_VERSION" != x && test "x$FOUND_WARN" = x; then - boot_jdk_jvmargs="$boot_jdk_jvmargs -Xmx1100M" - JVM_ARG_OK=true - else - $ECHO "Arg failed:" >&5 - $ECHO "$OUTPUT" >&5 - JVM_ARG_OK=false - fi - - fi - # When is adding -client something that speeds up the JVM? - # ADD_JVM_ARG_IF_OK([-client],boot_jdk_jvmargs,[$JAVA]) $ECHO "Check if jvm arg is ok: -XX:ThreadStackSize=$STACK_SIZE" >&5 $ECHO "Command: $JAVA -XX:ThreadStackSize=$STACK_SIZE -version" >&5 @@ -25931,7 +25916,8 @@ JVM_ARG_OK=false fi - # Disable special log output when a debug build is used as Boot JDK... + + # Disable special log output when a debug build is used as Boot JDK... $ECHO "Check if jvm arg is ok: -XX:-PrintVMOptions -XX:-UnlockDiagnosticVMOptions -XX:-LogVMOutput" >&5 $ECHO "Command: $JAVA -XX:-PrintVMOptions -XX:-UnlockDiagnosticVMOptions -XX:-LogVMOutput -version" >&5 @@ -25947,10 +25933,34 @@ JVM_ARG_OK=false fi - fi + + # Apply user provided options. + + $ECHO "Check if jvm arg is ok: $with_boot_jdk_jvmargs" >&5 + $ECHO "Command: $JAVA $with_boot_jdk_jvmargs -version" >&5 + OUTPUT=`$JAVA $with_boot_jdk_jvmargs -version 2>&1` + FOUND_WARN=`$ECHO "$OUTPUT" | grep -i warn` + FOUND_VERSION=`$ECHO $OUTPUT | grep " version \""` + if test "x$FOUND_VERSION" != x && test "x$FOUND_WARN" = x; then + boot_jdk_jvmargs="$boot_jdk_jvmargs $with_boot_jdk_jvmargs" + JVM_ARG_OK=true + else + $ECHO "Arg failed:" >&5 + $ECHO "$OUTPUT" >&5 + JVM_ARG_OK=false + fi + + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $boot_jdk_jvmargs" >&5 +$as_echo "$boot_jdk_jvmargs" >&6; } + + # For now, general JAVA_FLAGS are the same as the boot jdk jvmargs + JAVA_FLAGS=$boot_jdk_jvmargs BOOT_JDK_JVMARGS=$boot_jdk_jvmargs + JAVA_FLAGS=$JAVA_FLAGS + ############################################################################### @@ -49138,7 +49148,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by OpenJDK $as_me jdk8, which was +This file was extended by OpenJDK $as_me jdk9, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -49201,7 +49211,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -OpenJDK config.status jdk8 +OpenJDK config.status jdk9 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff -r 7d0c85ad2eec -r 0a9d96bf2023 common/autoconf/spec.gmk.in --- a/common/autoconf/spec.gmk.in Fri Feb 28 13:35:32 2014 +0100 +++ b/common/autoconf/spec.gmk.in Mon Mar 03 09:21:42 2014 -0800 @@ -441,7 +441,7 @@ POST_STRIP_CMD:=@POST_STRIP_CMD@ POST_MCS_CMD:=@POST_MCS_CMD@ -JAVA_FLAGS:=@BOOT_JDK_JVMARGS@ +JAVA_FLAGS:=@JAVA_FLAGS@ JAVA=@FIXPATH@ @JAVA@ $(JAVA_FLAGS)