1dnl @synopsis AC_PROG_JAVAC 2dnl 3dnl AC_PROG_JAVAC tests an existing Java compiler. It uses the 4dnl environment variable JAVAC then tests in sequence various common 5dnl Java compilers. For political reasons, it starts with the free 6dnl ones. 7dnl 8dnl If you want to force a specific compiler: 9dnl 10dnl - at the configure.ac level, set JAVAC=yourcompiler before calling 11dnl AC_PROG_JAVAC 12dnl 13dnl - at the configure level, setenv JAVAC 14dnl 15dnl You can use the JAVAC variable in your Makefile.in, with @JAVAC@. 16dnl 17dnl *Warning*: its success or failure can depend on a proper setting of 18dnl the CLASSPATH env. variable. 19dnl 20dnl TODO: allow to exclude compilers (rationale: most Java programs 21dnl cannot compile with some compilers like guavac). 22dnl 23dnl Note: This is part of the set of autoconf M4 macros for Java 24dnl programs. It is VERY IMPORTANT that you download the whole set, 25dnl some macros depend on other. Unfortunately, the autoconf archive 26dnl does not support the concept of set of macros, so I had to break it 27dnl for submission. The general documentation, as well as the sample 28dnl configure.ac, is included in the AC_PROG_JAVA macro. 29dnl 30dnl @category Java 31dnl @author Stephane Bortzmeyer <bortzmeyer@pasteur.fr> 32dnl @version 2000-07-19 33dnl @license GPLWithACException 34dnl 35dnl Modified to remove jikes by Andrew John Hughes on 2008-02-11 36 37AC_DEFUN_ONCE([AC_PROG_JAVAC],[ 38AC_REQUIRE([AC_EXEEXT])dnl 39ECJ_OPTS="-warn:-deprecation,serial,unusedImport,unusedPrivate,resource" 40JAVAC_OPTS="-Xlint:unchecked,cast,divzero,empty,finally,overrides" 41GCJ_OPTS="-g" 42if test "x$JAVAPREFIX" = x; then 43 test "x$JAVAC" = x && AC_CHECK_PROGS(JAVAC, ["ecj$EXEEXT $ECJ_OPTS"] ["ecj-3.3$EXEEXT $ECJ_OPTS"] ["ecj-3.2$EXEEXT $ECJ_OPTS"] ["javac$EXEEXT $JAVAC_OPTS"] "gcj$EXEEXT -C") 44else 45 test "x$JAVAC" = x && AC_CHECK_PROGS(JAVAC, ["ecj$EXEEXT $ECJ_OPTS"] ["ecj-3.3$EXEEXT $ECJ_OPTS"] ["ecj-3.2$EXEEXT $ECJ_OPTS"] ["javac$EXEEXT $JAVAC_OPTS"] "gcj$EXEEXT -C", $JAVAPREFIX) 46fi 47test "x$JAVAC" = x && AC_MSG_ERROR([no acceptable Java compiler found in \$PATH]) 48AC_CACHE_CHECK([if $JAVAC is a version of gcj], ac_cv_prog_javac_is_gcj, [ 49if $JAVAC --version 2>&1 | grep gcj >&AS_MESSAGE_LOG_FD ; then 50 ac_cv_prog_javac_is_gcj=yes; 51 JAVAC="$JAVAC $GCJ_OPTS"; 52else 53 ac_cv_prog_javac_is_gcj=no; 54fi 55]) 56AC_SUBST(JAVAC_IS_GCJ, $ac_cv_prog_javac_is_gcj) 57AM_CONDITIONAL(GCJ_JAVAC, test x"${JAVAC_IS_GCJ}" = xyes) 58dnl END GCJ LOCAL 59AC_PROVIDE([$0])dnl 60]) 61