1.1 --- a/common/autoconf/jdk-options.m4 Mon Mar 31 14:06:57 2014 -0700 1.2 +++ b/common/autoconf/jdk-options.m4 Wed Apr 02 10:01:38 2014 -0700 1.3 @@ -51,6 +51,33 @@ 1.4 AC_MSG_RESULT([$JDK_VARIANT]) 1.5 ]) 1.6 1.7 +AC_DEFUN_ONCE([JDKOPT_SETUP_JVM_INTERPRETER], 1.8 +[ 1.9 +############################################################################### 1.10 +# 1.11 +# Check which interpreter of the JVM we want to build. 1.12 +# Currently we have: 1.13 +# template: Template interpreter (the default) 1.14 +# cpp : C++ interpreter 1.15 +AC_MSG_CHECKING([which interpreter of the JVM to build]) 1.16 +AC_ARG_WITH([jvm-interpreter], [AS_HELP_STRING([--with-jvm-interpreter], 1.17 + [JVM interpreter to build (template, cpp) @<:@template@:>@])]) 1.18 + 1.19 +if test "x$with_jvm_interpreter" = x; then 1.20 + with_jvm_interpreter="template" 1.21 +fi 1.22 + 1.23 +JVM_INTERPRETER="$with_jvm_interpreter" 1.24 + 1.25 +if test "x$JVM_INTERPRETER" != xtemplate && test "x$JVM_INTERPRETER" != xcpp; then 1.26 + AC_MSG_ERROR([The available JVM interpreters are: template, cpp]) 1.27 +fi 1.28 + 1.29 +AC_SUBST(JVM_INTERPRETER) 1.30 + 1.31 +AC_MSG_RESULT([$with_jvm_interpreter]) 1.32 +]) 1.33 + 1.34 AC_DEFUN_ONCE([JDKOPT_SETUP_JVM_VARIANTS], 1.35 [ 1.36 1.37 @@ -65,19 +92,20 @@ 1.38 # ie normal interpreter and C1, only the serial GC, kernel jvmti etc 1.39 # zero: no machine code interpreter, no compiler 1.40 # zeroshark: zero interpreter and shark/llvm compiler backend 1.41 +# core: interpreter only, no compiler (only works on some platforms) 1.42 AC_MSG_CHECKING([which variants of the JVM to build]) 1.43 AC_ARG_WITH([jvm-variants], [AS_HELP_STRING([--with-jvm-variants], 1.44 - [JVM variants (separated by commas) to build (server, client, minimal1, kernel, zero, zeroshark) @<:@server@:>@])]) 1.45 + [JVM variants (separated by commas) to build (server, client, minimal1, kernel, zero, zeroshark, core) @<:@server@:>@])]) 1.46 1.47 if test "x$with_jvm_variants" = x; then 1.48 with_jvm_variants="server" 1.49 fi 1.50 1.51 JVM_VARIANTS=",$with_jvm_variants," 1.52 - TEST_VARIANTS=`$ECHO "$JVM_VARIANTS" | $SED -e 's/server,//' -e 's/client,//' -e 's/minimal1,//' -e 's/kernel,//' -e 's/zero,//' -e 's/zeroshark,//'` 1.53 + TEST_VARIANTS=`$ECHO "$JVM_VARIANTS" | $SED -e 's/server,//' -e 's/client,//' -e 's/minimal1,//' -e 's/kernel,//' -e 's/zero,//' -e 's/zeroshark,//' -e 's/core,//'` 1.54 1.55 if test "x$TEST_VARIANTS" != "x,"; then 1.56 - AC_MSG_ERROR([The available JVM variants are: server, client, minimal1, kernel, zero, zeroshark]) 1.57 + AC_MSG_ERROR([The available JVM variants are: server, client, minimal1, kernel, zero, zeroshark, core]) 1.58 fi 1.59 AC_MSG_RESULT([$with_jvm_variants]) 1.60 1.61 @@ -87,6 +115,7 @@ 1.62 JVM_VARIANT_KERNEL=`$ECHO "$JVM_VARIANTS" | $SED -e '/,kernel,/!s/.*/false/g' -e '/,kernel,/s/.*/true/g'` 1.63 JVM_VARIANT_ZERO=`$ECHO "$JVM_VARIANTS" | $SED -e '/,zero,/!s/.*/false/g' -e '/,zero,/s/.*/true/g'` 1.64 JVM_VARIANT_ZEROSHARK=`$ECHO "$JVM_VARIANTS" | $SED -e '/,zeroshark,/!s/.*/false/g' -e '/,zeroshark,/s/.*/true/g'` 1.65 + JVM_VARIANT_CORE=`$ECHO "$JVM_VARIANTS" | $SED -e '/,core,/!s/.*/false/g' -e '/,core,/s/.*/true/g'` 1.66 1.67 if test "x$JVM_VARIANT_CLIENT" = xtrue; then 1.68 if test "x$OPENJDK_TARGET_CPU_BITS" = x64; then 1.69 @@ -106,7 +135,7 @@ 1.70 1.71 # Replace the commas with AND for use in the build directory name. 1.72 ANDED_JVM_VARIANTS=`$ECHO "$JVM_VARIANTS" | $SED -e 's/^,//' -e 's/,$//' -e 's/,/AND/'` 1.73 - COUNT_VARIANTS=`$ECHO "$JVM_VARIANTS" | $SED -e 's/server,/1/' -e 's/client,/1/' -e 's/minimal1,/1/' -e 's/kernel,/1/' -e 's/zero,/1/' -e 's/zeroshark,/1/'` 1.74 + COUNT_VARIANTS=`$ECHO "$JVM_VARIANTS" | $SED -e 's/server,/1/' -e 's/client,/1/' -e 's/minimal1,/1/' -e 's/kernel,/1/' -e 's/zero,/1/' -e 's/zeroshark,/1/' -e 's/core,/1/'` 1.75 if test "x$COUNT_VARIANTS" != "x,1"; then 1.76 BUILDING_MULTIPLE_JVM_VARIANTS=yes 1.77 else 1.78 @@ -120,6 +149,7 @@ 1.79 AC_SUBST(JVM_VARIANT_KERNEL) 1.80 AC_SUBST(JVM_VARIANT_ZERO) 1.81 AC_SUBST(JVM_VARIANT_ZEROSHARK) 1.82 + AC_SUBST(JVM_VARIANT_CORE) 1.83 1.84 INCLUDE_SA=true 1.85 if test "x$JVM_VARIANT_ZERO" = xtrue ; then 1.86 @@ -128,6 +158,9 @@ 1.87 if test "x$JVM_VARIANT_ZEROSHARK" = xtrue ; then 1.88 INCLUDE_SA=false 1.89 fi 1.90 + if test "x$VAR_CPU" = xppc64 ; then 1.91 + INCLUDE_SA=false 1.92 + fi 1.93 AC_SUBST(INCLUDE_SA) 1.94 1.95 if test "x$OPENJDK_TARGET_OS" = "xmacosx"; then 1.96 @@ -236,6 +269,10 @@ 1.97 HOTSPOT_TARGET="$HOTSPOT_TARGET${HOTSPOT_DEBUG_LEVEL}shark " 1.98 fi 1.99 1.100 + if test "x$JVM_VARIANT_CORE" = xtrue; then 1.101 + HOTSPOT_TARGET="$HOTSPOT_TARGET${HOTSPOT_DEBUG_LEVEL}core " 1.102 + fi 1.103 + 1.104 HOTSPOT_TARGET="$HOTSPOT_TARGET docs export_$HOTSPOT_EXPORT" 1.105 1.106 # On Macosx universal binaries are produced, but they only contain