123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109 |
- dnl Available from the GNU Autoconf Macro Archive at:
- dnl http://www.gnu.org/software/ac-archive/htmldoc/ac_prog_java_works.html
- dnl
- AC_DEFUN_ONCE([AC_PROG_JAVA_WORKS], [
- AC_REQUIRE([AC_PROG_JAVA])
- AC_CHECK_PROG(uudecode, uudecode$EXEEXT, yes)
- if test x$uudecode = xyes; then
- AC_CACHE_CHECK([if uudecode can decode base 64 file], ac_cv_prog_uudecode_base64, [
- dnl /**
- dnl * Test.java: used to test if java compiler works.
- dnl */
- dnl public class Test
- dnl {
- dnl
- dnl public static void
- dnl main( String[] argv )
- dnl {
- dnl System.exit (0);
- dnl }
- dnl
- dnl }
- cat << \EOF > Test.uue
- begin-base64 644 Test.class
- yv66vgADAC0AFQcAAgEABFRlc3QHAAQBABBqYXZhL2xhbmcvT2JqZWN0AQAE
- bWFpbgEAFihbTGphdmEvbGFuZy9TdHJpbmc7KVYBAARDb2RlAQAPTGluZU51
- bWJlclRhYmxlDAAKAAsBAARleGl0AQAEKEkpVgoADQAJBwAOAQAQamF2YS9s
- YW5nL1N5c3RlbQEABjxpbml0PgEAAygpVgwADwAQCgADABEBAApTb3VyY2VG
- aWxlAQAJVGVzdC5qYXZhACEAAQADAAAAAAACAAkABQAGAAEABwAAACEAAQAB
- AAAABQO4AAyxAAAAAQAIAAAACgACAAAACgAEAAsAAQAPABAAAQAHAAAAIQAB
- AAEAAAAFKrcAErEAAAABAAgAAAAKAAIAAAAEAAQABAABABMAAAACABQ=
- ====
- EOF
- if uudecode$EXEEXT Test.uue; then
- ac_cv_prog_uudecode_base64=yes
- else
- echo "configure: __oline__: uudecode had trouble decoding base 64 file 'Test.uue'" >&AC_FD_CC
- echo "configure: failed file was:" >&AC_FD_CC
- cat Test.uue >&AC_FD_CC
- ac_cv_prog_uudecode_base64=no
- fi
- rm -f Test.uue])
- fi
- if test x$ac_cv_prog_uudecode_base64 != xyes; then
- rm -f Test.class
- AC_MSG_WARN([I have to compile Test.class from scratch])
- if test x$ac_cv_prog_javac_works = xno; then
- AC_MSG_ERROR([Cannot compile java source. $JAVAC does not work properly])
- fi
- fi
- AC_CACHE_CHECK(if $JAVA works, ac_cv_prog_java_works, [
- JAVA_TEST=Test.java
- CLASS_TEST=Test.class
- TEST=Test
- changequote(, )dnl
- cat << \EOF > $JAVA_TEST
- /* [#]line __oline__ "configure" */
- public class Test {
- public static void main (String args[]) {
- System.exit (0);
- } }
- EOF
- changequote([, ])dnl
- if test x$ac_cv_prog_uudecode_base64 != xyes; then
- AC_REQUIRE([AC_PROG_JAVAC_WORKS])
- if AC_TRY_COMMAND($JAVAC $JAVACFLAGS $JAVA_TEST) && test -s $CLASS_TEST; then
- :
- else
- echo "configure: failed program was:" >&AC_FD_CC
- cat $JAVA_TEST >&AC_FD_CC
- AC_MSG_ERROR(The Java compiler $JAVAC failed (see config.log, check the CLASSPATH?))
- fi
- fi
- if AC_TRY_COMMAND(CLASSPATH=.:$CLASSPATH $JAVA $JAVAFLAGS $TEST) >/dev/null 2>&1; then
- ac_cv_prog_java_works=yes
- else
- echo "configure: failed program was:" >&AC_FD_CC
- cat $JAVA_TEST >&AC_FD_CC
- AC_MSG_ERROR(The Java VM $JAVA failed (see config.log, check the CLASSPATH?))
- fi
- rm -fr $JAVA_TEST $CLASS_TEST Test.uue
- ])
- AC_PROVIDE([$0])dnl
- ]
- )
- dnl Available from the GNU Autoconf Macro Archive at:
- dnl http://www.gnu.org/software/ac-archive/htmldoc/ac_try_compile_java.html
- dnl
- AC_DEFUN_ONCE([AC_TRY_COMPILE_JAVA],[
- AC_REQUIRE([AC_PROG_JAVAC_WORKS])dnl
- cat << \EOF > Test.java
- /* [#]line __oline__ "configure" */
- ifelse([$1], , , [import $1;])
- public class Test {
- [$2]
- }
- EOF
- if AC_TRY_COMMAND($JAVAC $JAVACFLAGS Test.java) && test -s Test.class
- then
- dnl Don't remove the temporary files here, so they can be examined.
- ifelse([$3], , :, [$3])
- else
- echo "configure: failed program was:" >&AC_FD_CC
- cat Test.java >&AC_FD_CC
- ifelse([$4], , , [ rm -fr Test*
- $4
- ])dnl
- fi
- rm -fr Test*])
|