--- old/common/autoconf/bootcycle-spec.gmk.in 2014-10-03 12:10:53.217479942 +0200 +++ new/common/autoconf/bootcycle-spec.gmk.in 2014-10-03 12:10:53.121475993 +0200 @@ -48,6 +48,13 @@ # Use a different Boot JDK OLD_BOOT_JDK:=$(BOOT_JDK) BOOT_JDK:=@BUILD_OUTPUT@/images/j2sdk-image -BOOT_RTJAR:=@BUILD_OUTPUT@/images/j2sdk-image/jre/lib/rt.jar +BOOT_RTJAR:=$(BOOT_JDK)/jre/lib/rt.jar + +JAVA_CMD:=$(BOOT_JDK)/bin/java +JAVAC_CMD:=$(BOOT_JDK)/bin/javac +JAVAH_CMD:=$(BOOT_JDK)/bin/javah +JAR_CMD:=$(BOOT_JDK)/bin/jar +NATIVE2ASCII_CMD:=$(BOOT_JDK)/bin/native2ascii +JARSIGNER_CMD:=$(BOOT_JDK)/bin/jarsigner +SJAVAC_SERVER_JAVA_CMD:=$(JAVA_CMD) -SJAVAC_SERVER_JAVA:=$(subst $(OLD_BOOT_JDK),$(BOOT_JDK),$(SJAVAC_SERVER_JAVA)) --- old/common/autoconf/build-performance.m4 2014-10-03 12:10:53.649497712 +0200 +++ new/common/autoconf/build-performance.m4 2014-10-03 12:10:53.541493270 +0200 @@ -296,7 +296,7 @@ AC_SUBST(SJAVAC_SERVER_JAVA) if test "$MEMORY_SIZE" -gt "3000"; then - ADD_JVM_ARG_IF_OK([-d64],SJAVAC_SERVER_JAVA,[$SJAVAC_SERVER_JAVA]) + ADD_JVM_ARG_IF_OK([-d64],SJAVAC_SERVER_JAVA_FLAGS,[$SJAVAC_SERVER_JAVA]) if test "$JVM_ARG_OK" = true; then JVM_64BIT=true JVM_ARG_OK=false @@ -320,7 +320,8 @@ if test "$MX_VALUE" -lt "512"; then MX_VALUE=512 fi - ADD_JVM_ARG_IF_OK([-Xms${MS_VALUE}M -Xmx${MX_VALUE}M],SJAVAC_SERVER_JAVA,[$SJAVAC_SERVER_JAVA]) + ADD_JVM_ARG_IF_OK([-Xms${MS_VALUE}M -Xmx${MX_VALUE}M],SJAVAC_SERVER_JAVA_FLAGS,[$SJAVAC_SERVER_JAVA]) + AC_SUBST(SJAVAC_SERVER_JAVA_FLAGS) AC_ARG_ENABLE([sjavac], [AS_HELP_STRING([--enable-sjavac], [use sjavac to do fast incremental compiles @<:@disabled@:>@])], --- old/common/autoconf/generated-configure.sh 2014-10-03 12:10:54.149518281 +0200 +++ new/common/autoconf/generated-configure.sh 2014-10-03 12:10:53.989511700 +0200 @@ -633,6 +633,7 @@ USE_PRECOMPILED_HEADER SJAVAC_SERVER_DIR ENABLE_SJAVAC +SJAVAC_SERVER_JAVA_FLAGS SJAVAC_SERVER_JAVA JAVA_TOOL_FLAGS_SMALL JAVA_FLAGS_SMALL @@ -4327,7 +4328,7 @@ #CUSTOM_AUTOCONF_INCLUDE # Do not change or remove the following line, it is needed for consistency checks: -DATE_WHEN_GENERATED=1410791401 +DATE_WHEN_GENERATED=1412329015 ############################################################################### # @@ -50472,7 +50473,7 @@ 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 - SJAVAC_SERVER_JAVA="$SJAVAC_SERVER_JAVA -d64" + SJAVAC_SERVER_JAVA_FLAGS="$SJAVAC_SERVER_JAVA_FLAGS -d64" JVM_ARG_OK=true else $ECHO "Arg failed:" >&5 @@ -50510,7 +50511,7 @@ 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 - SJAVAC_SERVER_JAVA="$SJAVAC_SERVER_JAVA -Xms${MS_VALUE}M -Xmx${MX_VALUE}M" + SJAVAC_SERVER_JAVA_FLAGS="$SJAVAC_SERVER_JAVA_FLAGS -Xms${MS_VALUE}M -Xmx${MX_VALUE}M" JVM_ARG_OK=true else $ECHO "Arg failed:" >&5 @@ -50519,6 +50520,7 @@ fi + # Check whether --enable-sjavac was given. if test "${enable_sjavac+set}" = set; then : enableval=$enable_sjavac; ENABLE_SJAVAC="${enableval}" --- old/common/autoconf/spec.gmk.in 2014-10-03 12:10:55.281564848 +0200 +++ new/common/autoconf/spec.gmk.in 2014-10-03 12:10:55.165560077 +0200 @@ -256,7 +256,8 @@ BUILD_HOTSPOT=@BUILD_HOTSPOT@ -# The boot jdk to use +# The boot jdk to use. These are overridden in bootcycle-spec.gmk. Make sure to keep +# them in sync. BOOT_JDK:=@BOOT_JDK@ BOOT_RTJAR:=@BOOT_RTJAR@ BOOT_TOOLSJAR=$(BOOT_JDK)/lib/tools.jar @@ -453,23 +454,35 @@ JAVA_FLAGS_BIG:=@JAVA_FLAGS_BIG@ JAVA_FLAGS_SMALL:=@JAVA_FLAGS_SMALL@ JAVA_TOOL_FLAGS_SMALL:=@JAVA_TOOL_FLAGS_SMALL@ +SJAVAC_SERVER_JAVA_FLAGS:=@SJAVAC_SERVER_JAVA_FLAGS@ -JAVA=@FIXPATH@ @JAVA@ $(JAVA_FLAGS_BIG) $(JAVA_FLAGS) -JAVA_SMALL=@FIXPATH@ @JAVA@ $(JAVA_FLAGS_SMALL) $(JAVA_FLAGS) +# The *_CMD variables are defined separately to be easily overridden in bootcycle-spec.gmk +# for bootcycle-images build. Make sure to keep them in sync. Do not use the *_CMD +# versions of the variables directly. +JAVA_CMD:=@JAVA@ +JAVAC_CMD:=@JAVAC@ +JAVAH_CMD:=@JAVAH@ +JAR_CMD:=@JAR@ +NATIVE2ASCII_CMD:=@NATIVE2ASCII@ +JARSIGNER_CMD:=@JARSIGNER@ +SJAVAC_SERVER_JAVA_CMD:=@SJAVAC_SERVER_JAVA@ +# These variables are meant to be used. They are defined with = instead of := to make +# it possible to override only the *_CMD variables. +JAVA=@FIXPATH@ $(JAVA_CMD) $(JAVA_FLAGS_BIG) $(JAVA_FLAGS) +JAVA_SMALL=@FIXPATH@ $(JAVA_CMD) $(JAVA_FLAGS_SMALL) $(JAVA_FLAGS) +JAVAC=@FIXPATH@ $(JAVAC_CMD) +JAVAH=@FIXPATH@ $(JAVAH_CMD) +JAR=@FIXPATH@ $(JAR_CMD) +NATIVE2ASCII=@FIXPATH@ $(NATIVE2ASCII_CMD) $(JAVA_TOOL_FLAGS_SMALL) +JARSIGNER=@FIXPATH@ $(JARSIGNER_CMD) +# A specific java binary with specific options can be used to run +# the long running background sjavac servers and other long running tasks. +SJAVAC_SERVER_JAVA=@FIXPATH@ $(SJAVAC_SERVER_JAVA_CMD) $(SJAVAC_SERVER_JAVA_FLAGS) -JAVAC:=@FIXPATH@ @JAVAC@ # Hotspot sets this variable before reading the SPEC when compiling sa-jdi.jar. Avoid # overriding that value by using ?=. JAVAC_FLAGS?=@JAVAC_FLAGS@ -JAVAH:=@FIXPATH@ @JAVAH@ - -JAR:=@FIXPATH@ @JAR@ - -NATIVE2ASCII:=@FIXPATH@ @NATIVE2ASCII@ $(JAVA_TOOL_FLAGS_SMALL) - -JARSIGNER:=@FIXPATH@ @JARSIGNER@ - # You run the new javac using the boot jdk with $(BOOT_JDK)/bin/java $(NEW_JAVAC) ... INTERIM_LANGTOOLS_JAR := $(LANGTOOLS_OUTPUTDIR)/dist/interim_langtools.jar INTERIM_LANGTOOLS_ARGS := "-Xbootclasspath/p:$(INTERIM_LANGTOOLS_JAR)" -cp $(INTERIM_LANGTOOLS_JAR) @@ -486,10 +499,6 @@ RC_FLAGS:=@RC_FLAGS@ endif -# A specific java binary with specific options can be used to run -# the long running background sjavac servers and other long running tasks. -SJAVAC_SERVER_JAVA:=@FIXPATH@ @SJAVAC_SERVER_JAVA@ - # Tools adhering to a minimal and common standard of posix compliance. AWK:=@AWK@ BASENAME:=@BASENAME@