Rev 30 | Blame | Compare with Previous | Last modification | View Log | RSS feed
dnl @synopsis AX_JAVAC_AND_JAVAdnl @synopsis AX_CHECK_JAVA_CLASS(CLASSNAME)dnldnl Test for the presence of a JDK, and (optionally) specific classes.dnldnl If "JAVA" is defined in the environment, that will be the onlydnl java command tested. Otherwise, a hard-coded list will be used.dnl Similarly for "JAVAC".dnldnl AX_JAVAC_AND_JAVA does not currenly support testing for a particulardnl Java version, testing for only one of "java" and "javac", ordnl compiling or running user-provided Java code.dnldnl After AX_JAVAC_AND_JAVA runs, the shell variables "success" anddnl "ax_javac_and_java" are set to "yes" or "no", and "JAVAC" anddnl "JAVA" are set to the appropriate commands.dnldnl AX_CHECK_JAVA_CLASS must be run after AX_JAVAC_AND_JAVA.dnl It tests for the presence of a class based on a fully-qualified name.dnl It sets the shell variable "success" to "yes" or "no".dnldnl @category Javadnl @version 2009-02-09dnl @license AllPermissivednldnl Copyright (C) 2009 David Reissdnl Copying and distribution of this file, with or without modification,dnl are permitted in any medium without royalty provided the copyrightdnl notice and this notice are preserved.AC_DEFUN([AX_JAVAC_AND_JAVA],[dnl Hard-coded default commands to test.JAVAC_PROGS="javac,jikes,gcj -C"JAVA_PROGS="java,kaffe"dnl Allow the user to specify an alternative.if test -n "$JAVAC" ; thenJAVAC_PROGS="$JAVAC"fiif test -n "$JAVA" ; thenJAVA_PROGS="$JAVA"fiAC_MSG_CHECKING(for javac and java)echo "public class configtest_ax_javac_and_java { public static void main(String args@<:@@:>@) { } }" > configtest_ax_javac_and_java.javasuccess=nooIFS="$IFS"IFS=","for JAVAC in $JAVAC_PROGS ; doIFS="$oIFS"echo "Running \"$JAVAC configtest_ax_javac_and_java.java\"" >&AS_MESSAGE_LOG_FDif $JAVAC configtest_ax_javac_and_java.java >&AS_MESSAGE_LOG_FD 2>&1 ; thenIFS=","for JAVA in $JAVA_PROGS ; doIFS="$oIFS"echo "Running \"$JAVA configtest_ax_javac_and_java\"" >&AS_MESSAGE_LOG_FDif $JAVA configtest_ax_javac_and_java >&AS_MESSAGE_LOG_FD 2>&1 ; thensuccess=yesbreak 2fidonefidonerm -f configtest_ax_javac_and_java.java configtest_ax_javac_and_java.classif test "$success" != "yes" ; thenAC_MSG_RESULT(no)JAVAC=""JAVA=""elseAC_MSG_RESULT(yes)fiax_javac_and_java="$success"])AC_DEFUN([AX_CHECK_JAVA_CLASS],[AC_MSG_CHECKING(for Java class [$1])echo "import $1; public class configtest_ax_javac_and_java { public static void main(String args@<:@@:>@) { } }" > configtest_ax_javac_and_java.javaecho "Running \"$JAVAC configtest_ax_javac_and_java.java\"" >&AS_MESSAGE_LOG_FDif $JAVAC configtest_ax_javac_and_java.java >&AS_MESSAGE_LOG_FD 2>&1 ; thenAC_MSG_RESULT(yes)success=yeselseAC_MSG_RESULT(no)success=nofirm -f configtest_ax_javac_and_java.java configtest_ax_javac_and_java.class])