# HG changeset patch # User martin # Date 1362518200 28800 # Node ID a9c8a32d09f94f95bf8432033ee5c1dfe0b0e1d8 # Parent cb0ac8979caab8b0958df8019c79bb1c7166c78f 8006988: build-infra: Configure fails if 'cl' is in path on linux Summary: Respect user CC and CXX environment variables; use cl iff on windows Reviewed-by: erikj diff -r cb0ac8979caa -r a9c8a32d09f9 common/autoconf/generated-configure.sh --- a/common/autoconf/generated-configure.sh Tue Feb 26 09:25:44 2013 -0800 +++ b/common/autoconf/generated-configure.sh Tue Mar 05 13:16:40 2013 -0800 @@ -3733,7 +3733,7 @@ #CUSTOM_AUTOCONF_INCLUDE # Do not change or remove the following line, it is needed for consistency checks: -DATE_WHEN_GENERATED=1361899489 +DATE_WHEN_GENERATED=1362517596 ############################################################################### # @@ -18105,14 +18105,18 @@ ### Locate C compiler (CC) -# gcc is almost always present, but on Windows we -# prefer cl.exe and on Solaris we prefer CC. -# Thus test for them in this order. -if test "x$OPENJDK_TARGET_OS" = xmacosx; then - # Do not probe for cc on MacOSX. - COMPILER_CHECK_LIST="cl gcc" -else - COMPILER_CHECK_LIST="cl cc gcc" +# On windows, only cl.exe is supported. +# On Solaris, cc is preferred to gcc. +# Elsewhere, gcc is preferred to cc. + +if test "x$CC" != x; then + COMPILER_CHECK_LIST="$CC" +elif test "x$OPENJDK_TARGET_OS" = "xwindows"; then + COMPILER_CHECK_LIST="cl" +elif test "x$OPENJDK_TARGET_OS" = "xsolaris"; then + COMPILER_CHECK_LIST="cc gcc" +else + COMPILER_CHECK_LIST="gcc cc" fi @@ -19076,7 +19080,7 @@ $as_echo "$as_me: Using $COMPILER_VENDOR $COMPILER_NAME compiler version $COMPILER_VERSION (located at $COMPILER)" >&6;} -# Now that we have resolved CC ourself, let autoconf have it's go at it +# Now that we have resolved CC ourself, let autoconf have its go at it ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' @@ -19678,12 +19682,16 @@ ### Locate C++ compiler (CXX) -if test "x$OPENJDK_TARGET_OS" = xmacosx; then - # Do not probe for CC on MacOSX. - COMPILER_CHECK_LIST="cl g++" -else - COMPILER_CHECK_LIST="cl CC g++" -fi +if test "x$CXX" != x; then + COMPILER_CHECK_LIST="$CXX" +elif test "x$OPENJDK_TARGET_OS" = "xwindows"; then + COMPILER_CHECK_LIST="cl" +elif test "x$OPENJDK_TARGET_OS" = "xsolaris"; then + COMPILER_CHECK_LIST="CC g++" +else + COMPILER_CHECK_LIST="g++ CC" +fi + COMPILER_NAME=C++ @@ -20645,7 +20653,7 @@ $as_echo "$as_me: Using $COMPILER_VENDOR $COMPILER_NAME compiler version $COMPILER_VERSION (located at $COMPILER)" >&6;} -# Now that we have resolved CXX ourself, let autoconf have it's go at it +# Now that we have resolved CXX ourself, let autoconf have its go at it ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' diff -r cb0ac8979caa -r a9c8a32d09f9 common/autoconf/toolchain.m4 --- a/common/autoconf/toolchain.m4 Tue Feb 26 09:25:44 2013 -0800 +++ b/common/autoconf/toolchain.m4 Tue Mar 05 13:16:40 2013 -0800 @@ -248,30 +248,38 @@ ### Locate C compiler (CC) -# gcc is almost always present, but on Windows we -# prefer cl.exe and on Solaris we prefer CC. -# Thus test for them in this order. -if test "x$OPENJDK_TARGET_OS" = xmacosx; then - # Do not probe for cc on MacOSX. - COMPILER_CHECK_LIST="cl gcc" +# On windows, only cl.exe is supported. +# On Solaris, cc is preferred to gcc. +# Elsewhere, gcc is preferred to cc. + +if test "x$CC" != x; then + COMPILER_CHECK_LIST="$CC" +elif test "x$OPENJDK_TARGET_OS" = "xwindows"; then + COMPILER_CHECK_LIST="cl" +elif test "x$OPENJDK_TARGET_OS" = "xsolaris"; then + COMPILER_CHECK_LIST="cc gcc" else - COMPILER_CHECK_LIST="cl cc gcc" + COMPILER_CHECK_LIST="gcc cc" fi TOOLCHAIN_FIND_COMPILER([CC],[C],[$COMPILER_CHECK_LIST]) -# Now that we have resolved CC ourself, let autoconf have it's go at it +# Now that we have resolved CC ourself, let autoconf have its go at it AC_PROG_CC([$CC]) ### Locate C++ compiler (CXX) -if test "x$OPENJDK_TARGET_OS" = xmacosx; then - # Do not probe for CC on MacOSX. - COMPILER_CHECK_LIST="cl g++" +if test "x$CXX" != x; then + COMPILER_CHECK_LIST="$CXX" +elif test "x$OPENJDK_TARGET_OS" = "xwindows"; then + COMPILER_CHECK_LIST="cl" +elif test "x$OPENJDK_TARGET_OS" = "xsolaris"; then + COMPILER_CHECK_LIST="CC g++" else - COMPILER_CHECK_LIST="cl CC g++" + COMPILER_CHECK_LIST="g++ CC" fi + TOOLCHAIN_FIND_COMPILER([CXX],[C++],[$COMPILER_CHECK_LIST]) -# Now that we have resolved CXX ourself, let autoconf have it's go at it +# Now that we have resolved CXX ourself, let autoconf have its go at it AC_PROG_CXX([$CXX]) ### Locate other tools