184 [ 185 # The user can in some cases supply additional jvm features. For the custom 186 # variant, this defines the entire variant. 187 AC_ARG_WITH([jvm-features], [AS_HELP_STRING([--with-jvm-features], 188 [additional JVM features to enable (separated by comma), use '--help' to show possible values @<:@none@:>@])]) 189 if test "x$with_jvm_features" != x; then 190 AC_MSG_CHECKING([additional JVM features]) 191 JVM_FEATURES=`$ECHO $with_jvm_features | $SED -e 's/,/ /g'` 192 AC_MSG_RESULT([$JVM_FEATURES]) 193 fi 194 195 # Verify that dependencies are met for explicitly set features. 196 if HOTSPOT_CHECK_JVM_FEATURE(jvmti) && ! HOTSPOT_CHECK_JVM_FEATURE(services); then 197 AC_MSG_ERROR([Specified JVM feature 'jvmti' requires feature 'services']) 198 fi 199 200 if HOTSPOT_CHECK_JVM_FEATURE(management) && ! HOTSPOT_CHECK_JVM_FEATURE(nmt); then 201 AC_MSG_ERROR([Specified JVM feature 'management' requires feature 'nmt']) 202 fi 203 204 if HOTSPOT_CHECK_JVM_FEATURE(jvmci) && ! HOTSPOT_CHECK_JVM_FEATURE(compiler2); then 205 AC_MSG_ERROR([Specified JVM feature 'jvmci' requires feature 'compiler2']) 206 fi 207 208 if HOTSPOT_CHECK_JVM_FEATURE(compiler2) && ! HOTSPOT_CHECK_JVM_FEATURE(all-gcs); then 209 AC_MSG_ERROR([Specified JVM feature 'compiler2' requires feature 'all-gcs']) 210 fi 211 212 if HOTSPOT_CHECK_JVM_FEATURE(vm-structs) && ! HOTSPOT_CHECK_JVM_FEATURE(all-gcs); then 213 AC_MSG_ERROR([Specified JVM feature 'vm-structs' requires feature 'all-gcs']) 214 fi 215 216 # Turn on additional features based on other parts of configure 217 if test "x$INCLUDE_DTRACE" = "xtrue"; then 218 JVM_FEATURES="$JVM_FEATURES dtrace" 219 else 220 if HOTSPOT_CHECK_JVM_FEATURE(dtrace); then 221 AC_MSG_ERROR([To enable dtrace, you must use --enable-dtrace]) 222 fi 223 fi 224 225 if test "x$STATIC_BUILD" = "xtrue"; then 226 JVM_FEATURES="$JVM_FEATURES static-build" 227 else 228 if HOTSPOT_CHECK_JVM_FEATURE(static-build); then 229 AC_MSG_ERROR([To enable static-build, you must use --enable-static-build]) 230 fi 231 fi 232 233 if ! HOTSPOT_CHECK_JVM_VARIANT(zero) && ! HOTSPOT_CHECK_JVM_VARIANT(zeroshark); then 234 if HOTSPOT_CHECK_JVM_FEATURE(zero); then 235 AC_MSG_ERROR([To enable zero/zeroshark, you must use --with-jvm-variants=zero/zeroshark]) 236 fi 237 fi 238 239 if ! HOTSPOT_CHECK_JVM_VARIANT(zeroshark); then 240 if HOTSPOT_CHECK_JVM_FEATURE(shark); then 241 AC_MSG_ERROR([To enable shark, you must use --with-jvm-variants=zeroshark]) 242 fi 243 fi 244 245 # Only enable jvmci on x86_64, sparcv9 and aarch64, and only on server. 246 if test "x$OPENJDK_TARGET_CPU" = "xx86_64" || \ 247 test "x$OPENJDK_TARGET_CPU" = "xsparcv9" || \ 248 test "x$OPENJDK_TARGET_CPU" = "xaarch64" ; then 249 JVM_FEATURES_jvmci="jvmci" 250 else 251 JVM_FEATURES_jvmci="" 252 fi 253 254 # All variants but minimal (and custom) get these features 255 NON_MINIMAL_FEATURES="$NON_MINIMAL_FEATURES jvmti fprof vm-structs jni-check services management all-gcs nmt cds" 256 257 # Enable features depending on variant. 258 JVM_FEATURES_server="compiler1 compiler2 $NON_MINIMAL_FEATURES $JVM_FEATURES $JVM_FEATURES_jvmci" 259 JVM_FEATURES_client="compiler1 $NON_MINIMAL_FEATURES $JVM_FEATURES" 260 JVM_FEATURES_core="$NON_MINIMAL_FEATURES $JVM_FEATURES" 261 JVM_FEATURES_minimal="compiler1 minimal $JVM_FEATURES" 262 JVM_FEATURES_zero="zero $NON_MINIMAL_FEATURES $JVM_FEATURES" 263 JVM_FEATURES_zeroshark="zero shark $NON_MINIMAL_FEATURES $JVM_FEATURES" 264 JVM_FEATURES_custom="$JVM_FEATURES" 265 266 AC_SUBST(JVM_FEATURES_server) 267 AC_SUBST(JVM_FEATURES_client) 268 AC_SUBST(JVM_FEATURES_core) 269 AC_SUBST(JVM_FEATURES_minimal) 270 AC_SUBST(JVM_FEATURES_zero) 271 AC_SUBST(JVM_FEATURES_zeroshark) 272 AC_SUBST(JVM_FEATURES_custom) 273 274 # Used for verification of Makefiles by check-jvm-feature 275 AC_SUBST(VALID_JVM_FEATURES) 276 277 # We don't support --with-jvm-interpreter anymore, use zero instead. 278 BASIC_DEPRECATED_ARG_WITH(jvm-interpreter) 279 ]) | 184 [ 185 # The user can in some cases supply additional jvm features. For the custom 186 # variant, this defines the entire variant. 187 AC_ARG_WITH([jvm-features], [AS_HELP_STRING([--with-jvm-features], 188 [additional JVM features to enable (separated by comma), use '--help' to show possible values @<:@none@:>@])]) 189 if test "x$with_jvm_features" != x; then 190 AC_MSG_CHECKING([additional JVM features]) 191 JVM_FEATURES=`$ECHO $with_jvm_features | $SED -e 's/,/ /g'` 192 AC_MSG_RESULT([$JVM_FEATURES]) 193 fi 194 195 # Verify that dependencies are met for explicitly set features. 196 if HOTSPOT_CHECK_JVM_FEATURE(jvmti) && ! HOTSPOT_CHECK_JVM_FEATURE(services); then 197 AC_MSG_ERROR([Specified JVM feature 'jvmti' requires feature 'services']) 198 fi 199 200 if HOTSPOT_CHECK_JVM_FEATURE(management) && ! HOTSPOT_CHECK_JVM_FEATURE(nmt); then 201 AC_MSG_ERROR([Specified JVM feature 'management' requires feature 'nmt']) 202 fi 203 204 if HOTSPOT_CHECK_JVM_FEATURE(jvmci) && ! (HOTSPOT_CHECK_JVM_FEATURE(compiler1) || HOTSPOT_CHECK_JVM_FEATURE(compiler2)); then 205 AC_MSG_ERROR([Specified JVM feature 'jvmci' requires feature 'compiler2' or 'compiler1']) 206 fi 207 208 if HOTSPOT_CHECK_JVM_FEATURE(compiler2) && ! HOTSPOT_CHECK_JVM_FEATURE(all-gcs); then 209 AC_MSG_ERROR([Specified JVM feature 'compiler2' requires feature 'all-gcs']) 210 fi 211 212 if HOTSPOT_CHECK_JVM_FEATURE(vm-structs) && ! HOTSPOT_CHECK_JVM_FEATURE(all-gcs); then 213 AC_MSG_ERROR([Specified JVM feature 'vm-structs' requires feature 'all-gcs']) 214 fi 215 216 # Turn on additional features based on other parts of configure 217 if test "x$INCLUDE_DTRACE" = "xtrue"; then 218 JVM_FEATURES="$JVM_FEATURES dtrace" 219 else 220 if HOTSPOT_CHECK_JVM_FEATURE(dtrace); then 221 AC_MSG_ERROR([To enable dtrace, you must use --enable-dtrace]) 222 fi 223 fi 224 225 if test "x$STATIC_BUILD" = "xtrue"; then 226 JVM_FEATURES="$JVM_FEATURES static-build" 227 else 228 if HOTSPOT_CHECK_JVM_FEATURE(static-build); then 229 AC_MSG_ERROR([To enable static-build, you must use --enable-static-build]) 230 fi 231 fi 232 233 if ! HOTSPOT_CHECK_JVM_VARIANT(zero) && ! HOTSPOT_CHECK_JVM_VARIANT(zeroshark); then 234 if HOTSPOT_CHECK_JVM_FEATURE(zero); then 235 AC_MSG_ERROR([To enable zero/zeroshark, you must use --with-jvm-variants=zero/zeroshark]) 236 fi 237 fi 238 239 if ! HOTSPOT_CHECK_JVM_VARIANT(zeroshark); then 240 if HOTSPOT_CHECK_JVM_FEATURE(shark); then 241 AC_MSG_ERROR([To enable shark, you must use --with-jvm-variants=zeroshark]) 242 fi 243 fi 244 245 # Only enable jvmci on x86_64, sparcv9 and aarch64. 246 if test "x$OPENJDK_TARGET_CPU" = "xx86_64" || \ 247 test "x$OPENJDK_TARGET_CPU" = "xsparcv9" || \ 248 test "x$OPENJDK_TARGET_CPU" = "xaarch64" ; then 249 JVM_FEATURES_jvmci="jvmci" 250 else 251 JVM_FEATURES_jvmci="" 252 fi 253 254 # All variants but minimal (and custom) get these features 255 NON_MINIMAL_FEATURES="$NON_MINIMAL_FEATURES jvmti fprof vm-structs jni-check services management all-gcs nmt cds" 256 257 # Enable features depending on variant. 258 JVM_FEATURES_server="compiler1 compiler2 $NON_MINIMAL_FEATURES $JVM_FEATURES $JVM_FEATURES_jvmci" 259 JVM_FEATURES_client="compiler1 $NON_MINIMAL_FEATURES $JVM_FEATURES $JVM_FEATURES_jvmci" 260 JVM_FEATURES_core="$NON_MINIMAL_FEATURES $JVM_FEATURES" 261 JVM_FEATURES_minimal="compiler1 minimal $JVM_FEATURES" 262 JVM_FEATURES_zero="zero $NON_MINIMAL_FEATURES $JVM_FEATURES" 263 JVM_FEATURES_zeroshark="zero shark $NON_MINIMAL_FEATURES $JVM_FEATURES" 264 JVM_FEATURES_custom="$JVM_FEATURES" 265 266 AC_SUBST(JVM_FEATURES_server) 267 AC_SUBST(JVM_FEATURES_client) 268 AC_SUBST(JVM_FEATURES_core) 269 AC_SUBST(JVM_FEATURES_minimal) 270 AC_SUBST(JVM_FEATURES_zero) 271 AC_SUBST(JVM_FEATURES_zeroshark) 272 AC_SUBST(JVM_FEATURES_custom) 273 274 # Used for verification of Makefiles by check-jvm-feature 275 AC_SUBST(VALID_JVM_FEATURES) 276 277 # We don't support --with-jvm-interpreter anymore, use zero instead. 278 BASIC_DEPRECATED_ARG_WITH(jvm-interpreter) 279 ]) |