Ed Warnicke | cb9cada | 2015-12-08 15:45:58 -0700 | [diff] [blame] | 1 | # =========================================================================== |
| 2 | # http://www.gnu.org/software/autoconf-archive/ax_try_run_java.html |
| 3 | # =========================================================================== |
| 4 | # |
| 5 | # SYNOPSIS |
| 6 | # |
| 7 | # AX_TRY_RUN_JAVA |
| 8 | # |
| 9 | # DESCRIPTION |
| 10 | # |
| 11 | # AX_TRY_RUN_JAVA attempt to compile and run user given source. |
| 12 | # |
| 13 | # *Warning*: its success or failure can depend on a proper setting of the |
| 14 | # CLASSPATH env. variable. |
| 15 | # |
| 16 | # Note: This is part of the set of autoconf M4 macros for Java programs. |
| 17 | # It is VERY IMPORTANT that you download the whole set, some macros depend |
| 18 | # on other. Unfortunately, the autoconf archive does not support the |
| 19 | # concept of set of macros, so I had to break it for submission. The |
| 20 | # general documentation, as well as the sample configure.in, is included |
| 21 | # in the AX_PROG_JAVA macro. |
| 22 | # |
| 23 | # LICENSE |
| 24 | # |
| 25 | # Copyright (c) 2008 Devin Weaver <ktohg@tritarget.com> |
| 26 | # |
| 27 | # Copying and distribution of this file, with or without modification, are |
| 28 | # permitted in any medium without royalty provided the copyright notice |
| 29 | # and this notice are preserved. This file is offered as-is, without any |
| 30 | # warranty. |
| 31 | |
| 32 | #serial 2 |
| 33 | |
| 34 | AU_ALIAS([AC_TRY_RUN_JAVA], [AX_TRY_RUN_JAVA]) |
| 35 | AC_DEFUN([AX_TRY_RUN_JAVA],[ |
| 36 | AC_REQUIRE([AX_PROG_JAVAC])dnl |
| 37 | AC_REQUIRE([AX_PROG_JAVA])dnl |
| 38 | cat << \EOF > Test.java |
| 39 | /* [#]line __oline__ "configure" */ |
| 40 | ifelse([$1], , , [include $1;]) |
| 41 | public class Test { |
| 42 | [$2] |
| 43 | } |
| 44 | EOF |
| 45 | if AC_TRY_COMMAND($JAVAC $JAVACFLAGS Test.java) && test -s Test.class && ($JAVA $JAVAFLAGS Test; exit) 2>/dev/null |
| 46 | then |
| 47 | dnl Don't remove the temporary files here, so they can be examined. |
| 48 | ifelse([$3], , :, [$3]) |
| 49 | else |
| 50 | echo "configure: failed program was:" >&AS_MESSAGE_LOG_FD |
| 51 | cat Test.java >&AS_MESSAGE_LOG_FD |
| 52 | ifelse([$4], , , [ rm -fr Test.java Test.class |
| 53 | $4 |
| 54 | ])dnl |
| 55 | fi |
| 56 | rm -fr Test.java Test.class]) |