mirror of git://gcc.gnu.org/git/gcc.git
				
				
				
			
		
			
				
	
	
		
			109 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			109 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
| 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*])
 |