259 toolchain_var_name=TOOLCHAIN_DESCRIPTION_$toolchain
260 TOOLCHAIN_DESCRIPTION=${!toolchain_var_name}
261 $PRINTF " %-10s %s\n" $toolchain "$TOOLCHAIN_DESCRIPTION"
262 done
263
264 exit 0
265 elif test "x$with_toolchain_type" != x; then
266 # User override; check that it is valid
267 if test "x${VALID_TOOLCHAINS/$with_toolchain_type/}" = "x${VALID_TOOLCHAINS}"; then
268 AC_MSG_NOTICE([Toolchain type $with_toolchain_type is not valid on this platform.])
269 AC_MSG_NOTICE([Valid toolchains: $VALID_TOOLCHAINS.])
270 AC_MSG_ERROR([Cannot continue.])
271 fi
272 TOOLCHAIN_TYPE=$with_toolchain_type
273 else
274 # No flag given, use default
275 TOOLCHAIN_TYPE=$DEFAULT_TOOLCHAIN
276 fi
277 AC_SUBST(TOOLCHAIN_TYPE)
278
279 TOOLCHAIN_CC_BINARY_clang="clang"
280 TOOLCHAIN_CC_BINARY_gcc="gcc"
281 TOOLCHAIN_CC_BINARY_microsoft="cl$EXE_SUFFIX"
282 TOOLCHAIN_CC_BINARY_solstudio="cc"
283 TOOLCHAIN_CC_BINARY_xlc="xlc_r"
284
285 TOOLCHAIN_CXX_BINARY_clang="clang++"
286 TOOLCHAIN_CXX_BINARY_gcc="g++"
287 TOOLCHAIN_CXX_BINARY_microsoft="cl$EXE_SUFFIX"
288 TOOLCHAIN_CXX_BINARY_solstudio="CC"
289 TOOLCHAIN_CXX_BINARY_xlc="xlC_r"
290
291 # Use indirect variable referencing
292 toolchain_var_name=TOOLCHAIN_DESCRIPTION_$TOOLCHAIN_TYPE
293 TOOLCHAIN_DESCRIPTION=${!toolchain_var_name}
294 toolchain_var_name=TOOLCHAIN_MINIMUM_VERSION_$TOOLCHAIN_TYPE
295 TOOLCHAIN_MINIMUM_VERSION=${!toolchain_var_name}
296 toolchain_var_name=TOOLCHAIN_MINIMUM_LD_VERSION_$TOOLCHAIN_TYPE
297 TOOLCHAIN_MINIMUM_LD_VERSION=${!toolchain_var_name}
298 toolchain_var_name=TOOLCHAIN_CC_BINARY_$TOOLCHAIN_TYPE
299 TOOLCHAIN_CC_BINARY=${!toolchain_var_name}
300 toolchain_var_name=TOOLCHAIN_CXX_BINARY_$TOOLCHAIN_TYPE
301 TOOLCHAIN_CXX_BINARY=${!toolchain_var_name}
302
303 TOOLCHAIN_SETUP_FILENAME_PATTERNS
304
305 if test "x$TOOLCHAIN_TYPE" = "x$DEFAULT_TOOLCHAIN"; then
306 AC_MSG_NOTICE([Using default toolchain $TOOLCHAIN_TYPE ($TOOLCHAIN_DESCRIPTION)])
307 else
308 AC_MSG_NOTICE([Using user selected toolchain $TOOLCHAIN_TYPE ($TOOLCHAIN_DESCRIPTION). Default toolchain is $DEFAULT_TOOLCHAIN.])
309 fi
|
259 toolchain_var_name=TOOLCHAIN_DESCRIPTION_$toolchain
260 TOOLCHAIN_DESCRIPTION=${!toolchain_var_name}
261 $PRINTF " %-10s %s\n" $toolchain "$TOOLCHAIN_DESCRIPTION"
262 done
263
264 exit 0
265 elif test "x$with_toolchain_type" != x; then
266 # User override; check that it is valid
267 if test "x${VALID_TOOLCHAINS/$with_toolchain_type/}" = "x${VALID_TOOLCHAINS}"; then
268 AC_MSG_NOTICE([Toolchain type $with_toolchain_type is not valid on this platform.])
269 AC_MSG_NOTICE([Valid toolchains: $VALID_TOOLCHAINS.])
270 AC_MSG_ERROR([Cannot continue.])
271 fi
272 TOOLCHAIN_TYPE=$with_toolchain_type
273 else
274 # No flag given, use default
275 TOOLCHAIN_TYPE=$DEFAULT_TOOLCHAIN
276 fi
277 AC_SUBST(TOOLCHAIN_TYPE)
278
279 # on AIX, check for xlclang++ on the PATH and TOOLCHAIN_PATH and use it if it is available
280 if test "x$OPENJDK_TARGET_OS" = xaix; then
281 if test "x$TOOLCHAIN_PATH" != x; then
282 XLC_TEST_PATH=${TOOLCHAIN_PATH}/
283 fi
284
285 XLCLANG_VERSION_OUTPUT=`${XLC_TEST_PATH}xlclang++ -qversion 2>&1 | $HEAD -n 1`
286 $ECHO "$XLCLANG_VERSION_OUTPUT" | $GREP "IBM XL C/C++ for AIX" > /dev/null
287 if test $? -eq 0; then
288 AC_MSG_NOTICE([xlclang++ output: $XLCLANG_VERSION_OUTPUT])
289 XLC_USES_CLANG=true
290 fi
291 fi
292
293 TOOLCHAIN_CC_BINARY_clang="clang"
294 TOOLCHAIN_CC_BINARY_gcc="gcc"
295 TOOLCHAIN_CC_BINARY_microsoft="cl$EXE_SUFFIX"
296 TOOLCHAIN_CC_BINARY_solstudio="cc"
297 TOOLCHAIN_CC_BINARY_xlc="xlc_r"
298
299 TOOLCHAIN_CXX_BINARY_clang="clang++"
300 TOOLCHAIN_CXX_BINARY_gcc="g++"
301 TOOLCHAIN_CXX_BINARY_microsoft="cl$EXE_SUFFIX"
302 TOOLCHAIN_CXX_BINARY_solstudio="CC"
303 TOOLCHAIN_CXX_BINARY_xlc="xlC_r"
304
305 if test "x$OPENJDK_TARGET_OS" = xaix; then
306 if test "x$XLC_USES_CLANG" = xtrue; then
307 AC_MSG_NOTICE([xlclang++ detected, using it])
308 TOOLCHAIN_CC_BINARY_xlc="xlclang"
309 TOOLCHAIN_CXX_BINARY_xlc="xlclang++"
310 fi
311 fi
312
313 # Use indirect variable referencing
314 toolchain_var_name=TOOLCHAIN_DESCRIPTION_$TOOLCHAIN_TYPE
315 TOOLCHAIN_DESCRIPTION=${!toolchain_var_name}
316 toolchain_var_name=TOOLCHAIN_MINIMUM_VERSION_$TOOLCHAIN_TYPE
317 TOOLCHAIN_MINIMUM_VERSION=${!toolchain_var_name}
318 toolchain_var_name=TOOLCHAIN_MINIMUM_LD_VERSION_$TOOLCHAIN_TYPE
319 TOOLCHAIN_MINIMUM_LD_VERSION=${!toolchain_var_name}
320 toolchain_var_name=TOOLCHAIN_CC_BINARY_$TOOLCHAIN_TYPE
321 TOOLCHAIN_CC_BINARY=${!toolchain_var_name}
322 toolchain_var_name=TOOLCHAIN_CXX_BINARY_$TOOLCHAIN_TYPE
323 TOOLCHAIN_CXX_BINARY=${!toolchain_var_name}
324
325 TOOLCHAIN_SETUP_FILENAME_PATTERNS
326
327 if test "x$TOOLCHAIN_TYPE" = "x$DEFAULT_TOOLCHAIN"; then
328 AC_MSG_NOTICE([Using default toolchain $TOOLCHAIN_TYPE ($TOOLCHAIN_DESCRIPTION)])
329 else
330 AC_MSG_NOTICE([Using user selected toolchain $TOOLCHAIN_TYPE ($TOOLCHAIN_DESCRIPTION). Default toolchain is $DEFAULT_TOOLCHAIN.])
331 fi
|