< prev index next >

make/autoconf/hotspot.m4

Print this page

        

*** 91,116 **** # Also use minimal, not minimal1 (which is kept for backwards compatibility). JVM_VARIANTS=`$ECHO $JVM_VARIANTS_OPT | $SED -e 's/,/ /g' -e 's/minimal1/minimal/'` AC_MSG_RESULT([$JVM_VARIANTS]) # Check that the selected variants are valid ! ! # grep filter function inspired by a comment to http://stackoverflow.com/a/1617326 ! # Notice that the original variant failes on SLES 10 and 11 ! NEEDLE=${VALID_JVM_VARIANTS// /$'\n'} ! STACK=${JVM_VARIANTS// /$'\n'} ! INVALID_VARIANTS=`$GREP -Fvx "${NEEDLE}" <<< "${STACK}"` if test "x$INVALID_VARIANTS" != x; then ! AC_MSG_NOTICE([Unknown variant(s) specified: $INVALID_VARIANTS]) ! AC_MSG_ERROR([The available JVM variants are: $VALID_JVM_VARIANTS]) fi # All "special" variants share the same output directory ("server") VALID_MULTIPLE_JVM_VARIANTS="server client minimal" ! NEEDLE=${VALID_MULTIPLE_JVM_VARIANTS// /$'\n'} ! STACK=${JVM_VARIANTS// /$'\n'} ! INVALID_MULTIPLE_VARIANTS=`$GREP -Fvx "${NEEDLE}" <<< "${STACK}"` if test "x$INVALID_MULTIPLE_VARIANTS" != x && test "x$BUILDING_MULTIPLE_JVM_VARIANTS" = xtrue; then AC_MSG_ERROR([You cannot build multiple variants with anything else than $VALID_MULTIPLE_JVM_VARIANTS.]) fi # The "main" variant is the one used by other libs to link against during the --- 91,110 ---- # Also use minimal, not minimal1 (which is kept for backwards compatibility). JVM_VARIANTS=`$ECHO $JVM_VARIANTS_OPT | $SED -e 's/,/ /g' -e 's/minimal1/minimal/'` AC_MSG_RESULT([$JVM_VARIANTS]) # Check that the selected variants are valid ! BASIC_GET_NON_MATCHING_VALUES(INVALID_VARIANTS, $JVM_VARIANTS, $VALID_JVM_VARIANTS) if test "x$INVALID_VARIANTS" != x; then ! AC_MSG_NOTICE([Unknown variant(s) specified: "$INVALID_VARIANTS"]) ! AC_MSG_NOTICE([The available JVM variants are: "$VALID_JVM_VARIANTS"]) ! AC_MSG_ERROR([Cannot continue]) fi # All "special" variants share the same output directory ("server") VALID_MULTIPLE_JVM_VARIANTS="server client minimal" ! BASIC_GET_NON_MATCHING_VALUES(INVALID_MULTIPLE_VARIANTS, $JVM_VARIANTS, $VALID_MULTIPLE_JVM_VARIANTS) if test "x$INVALID_MULTIPLE_VARIANTS" != x && test "x$BUILDING_MULTIPLE_JVM_VARIANTS" = xtrue; then AC_MSG_ERROR([You cannot build multiple variants with anything else than $VALID_MULTIPLE_JVM_VARIANTS.]) fi # The "main" variant is the one used by other libs to link against during the
*** 261,278 **** ############################################################################### # Set up all JVM features for each JVM variant. # AC_DEFUN_ONCE([HOTSPOT_SETUP_JVM_FEATURES], [ # The user can in some cases supply additional jvm features. For the custom # variant, this defines the entire variant. AC_ARG_WITH([jvm-features], [AS_HELP_STRING([--with-jvm-features], ! [additional JVM features to enable (separated by comma), use '--help' to show possible values @<:@none@:>@])]) if test "x$with_jvm_features" != x; then ! AC_MSG_CHECKING([additional JVM features]) ! JVM_FEATURES=`$ECHO $with_jvm_features | $SED -e 's/,/ /g'` ! AC_MSG_RESULT([$JVM_FEATURES]) fi # Override hotspot cpu definitions for ARM platforms if test "x$OPENJDK_TARGET_CPU" = xarm; then HOTSPOT_TARGET_CPU=arm_32 --- 255,288 ---- ############################################################################### # Set up all JVM features for each JVM variant. # AC_DEFUN_ONCE([HOTSPOT_SETUP_JVM_FEATURES], [ + # Prettify the VALID_JVM_FEATURES string + BASIC_SORT_LIST(VALID_JVM_FEATURES, $VALID_JVM_FEATURES) + # The user can in some cases supply additional jvm features. For the custom # variant, this defines the entire variant. AC_ARG_WITH([jvm-features], [AS_HELP_STRING([--with-jvm-features], ! [JVM features to enable (foo) or disable (-foo), separated by comma. Use '--help' to show possible values @<:@none@:>@])]) if test "x$with_jvm_features" != x; then ! AC_MSG_CHECKING([user specified JVM feature list]) ! USER_JVM_FEATURE_LIST=`$ECHO $with_jvm_features | $SED -e 's/,/ /g'` ! AC_MSG_RESULT([$user_jvm_feature_list]) ! # These features will be added to all variant defaults ! JVM_FEATURES=`$ECHO $USER_JVM_FEATURE_LIST | $AWK '{ for (i=1; i<=NF; i++) if (!match($i, /-.*/)) print $i }'` ! # These features will be removed from all variant defaults ! DISABLED_JVM_FEATURES=`$ECHO $USER_JVM_FEATURE_LIST | $AWK '{ for (i=1; i<=NF; i++) if (match($i, /-.*/)) print substr($i, 2) }'` ! ! # Verify that the user has provided valid features ! BASIC_GET_NON_MATCHING_VALUES(INVALID_FEATURES, $JVM_FEATURES $DISABLED_JVM_FEATURES, $VALID_JVM_FEATURES) ! if test "x$INVALID_FEATURES" != x; then ! AC_MSG_NOTICE([Unknown JVM features specified: "$INVALID_FEATURES"]) ! AC_MSG_NOTICE([The available JVM features are: "$VALID_JVM_FEATURES"]) ! AC_MSG_ERROR([Cannot continue]) ! fi ! fi # Override hotspot cpu definitions for ARM platforms if test "x$OPENJDK_TARGET_CPU" = xarm; then HOTSPOT_TARGET_CPU=arm_32
*** 388,398 **** NON_MINIMAL_FEATURES="$NON_MINIMAL_FEATURES jvmti vm-structs jni-check services management all-gcs nmt" if test "x$ENABLE_CDS" = "xtrue"; then NON_MINIMAL_FEATURES="$NON_MINIMAL_FEATURES cds" fi ! # Enable features depending on variant. JVM_FEATURES_server="compiler1 compiler2 $NON_MINIMAL_FEATURES $JVM_FEATURES $JVM_FEATURES_jvmci $JVM_FEATURES_aot $JVM_FEATURES_graal" JVM_FEATURES_client="compiler1 $NON_MINIMAL_FEATURES $JVM_FEATURES $JVM_FEATURES_jvmci" JVM_FEATURES_core="$NON_MINIMAL_FEATURES $JVM_FEATURES" JVM_FEATURES_minimal="compiler1 minimal $JVM_FEATURES $JVM_FEATURES_link_time_opt" JVM_FEATURES_zero="zero $NON_MINIMAL_FEATURES $JVM_FEATURES" --- 398,408 ---- NON_MINIMAL_FEATURES="$NON_MINIMAL_FEATURES jvmti vm-structs jni-check services management all-gcs nmt" if test "x$ENABLE_CDS" = "xtrue"; then NON_MINIMAL_FEATURES="$NON_MINIMAL_FEATURES cds" fi ! # Enable default features depending on variant. JVM_FEATURES_server="compiler1 compiler2 $NON_MINIMAL_FEATURES $JVM_FEATURES $JVM_FEATURES_jvmci $JVM_FEATURES_aot $JVM_FEATURES_graal" JVM_FEATURES_client="compiler1 $NON_MINIMAL_FEATURES $JVM_FEATURES $JVM_FEATURES_jvmci" JVM_FEATURES_core="$NON_MINIMAL_FEATURES $JVM_FEATURES" JVM_FEATURES_minimal="compiler1 minimal $JVM_FEATURES $JVM_FEATURES_link_time_opt" JVM_FEATURES_zero="zero $NON_MINIMAL_FEATURES $JVM_FEATURES"
*** 411,443 **** # We don't support --with-jvm-interpreter anymore, use zero instead. BASIC_DEPRECATED_ARG_WITH(jvm-interpreter) ]) ############################################################################### ! # Validate JVM features once all setup is complete, including custom setup. # ! AC_DEFUN_ONCE([HOTSPOT_VALIDATE_JVM_FEATURES], [ - # Keep feature lists sorted and free of duplicates - JVM_FEATURES_server="$($ECHO $($PRINTF '%s\n' $JVM_FEATURES_server | $SORT -u))" - JVM_FEATURES_client="$($ECHO $($PRINTF '%s\n' $JVM_FEATURES_client | $SORT -u))" - JVM_FEATURES_core="$($ECHO $($PRINTF '%s\n' $JVM_FEATURES_core | $SORT -u))" - JVM_FEATURES_minimal="$($ECHO $($PRINTF '%s\n' $JVM_FEATURES_minimal | $SORT -u))" - JVM_FEATURES_zero="$($ECHO $($PRINTF '%s\n' $JVM_FEATURES_zero | $SORT -u))" - JVM_FEATURES_custom="$($ECHO $($PRINTF '%s\n' $JVM_FEATURES_custom | $SORT -u))" - - # Validate features for variant in $JVM_VARIANTS; do AC_MSG_CHECKING([JVM features for JVM variant '$variant']) features_var_name=JVM_FEATURES_$variant ! JVM_FEATURES_TO_TEST=${!features_var_name} ! AC_MSG_RESULT([$JVM_FEATURES_TO_TEST]) ! NEEDLE=${VALID_JVM_FEATURES// /$'\n'} ! STACK=${JVM_FEATURES_TO_TEST// /$'\n'} ! INVALID_FEATURES=`$GREP -Fvx "${NEEDLE}" <<< "${STACK}"` if test "x$INVALID_FEATURES" != x; then ! AC_MSG_ERROR([Invalid JVM feature(s): $INVALID_FEATURES]) fi done ]) ################################################################################ --- 421,453 ---- # We don't support --with-jvm-interpreter anymore, use zero instead. BASIC_DEPRECATED_ARG_WITH(jvm-interpreter) ]) ############################################################################### ! # Finalize JVM features once all setup is complete, including custom setup. # ! AC_DEFUN_ONCE([HOTSPOT_FINALIZE_JVM_FEATURES], [ for variant in $JVM_VARIANTS; do AC_MSG_CHECKING([JVM features for JVM variant '$variant']) features_var_name=JVM_FEATURES_$variant ! JVM_FEATURES_FOR_VARIANT=${!features_var_name} ! ! # Filter out user-requested disabled features ! BASIC_GET_NON_MATCHING_VALUES(JVM_FEATURES_FOR_VARIANT, $JVM_FEATURES_FOR_VARIANT, $DISABLED_JVM_FEATURES) ! ! # Keep feature lists sorted and free of duplicates ! BASIC_SORT_LIST(JVM_FEATURES_FOR_VARIANT, $JVM_FEATURES_FOR_VARIANT) ! ! # Update real feature set variable ! eval $features_var_name='"'$JVM_FEATURES_FOR_VARIANT'"' ! AC_MSG_RESULT(["$JVM_FEATURES_FOR_VARIANT"]) ! ! # Validate features (for configure script errors, not user errors) ! INVALID_FEATURES=`$GREP -Fvx "${VALID_JVM_FEATURES// /$'\n'}" <<< "${JVM_FEATURES_FOR_VARIANT// /$'\n'}"` if test "x$INVALID_FEATURES" != x; then ! AC_MSG_ERROR([Internal configure script error. Invalid JVM feature(s): $INVALID_FEATURES]) fi done ]) ################################################################################
< prev index next >