16
16
dnl @author Gary Kumfert
18
18
AC_DEFUN([LLNL_CONFIRM_BABEL_JAVA_SUPPORT], [
19
AC_ARG_VAR([JAVAPREFIX],[Directory where Java binaries are installed @<:@e.g. $JAVAPREFIX/$JAVA@:>@])
20
AC_ARG_VAR([JAVAC],[Java Compiler])
19
AC_ARG_VAR([JAVAPREFIX],[Directory where Java is installed has subdirectories bin and include ( @<:@e.g. $JAVAPREFIX/bin/java@:>@])
20
AC_ARG_VAR([JAVAC],[Absolute path to Java Compiler])
21
21
AC_ARG_VAR([JAVACFLAGS],[Flags for Java Compiler])
22
AC_ARG_VAR([JAVA],[Java Runtime])
22
AC_ARG_VAR([JAVA],[Absolute path to Java Runtime])
23
23
AC_ARG_VAR([JAVAFLAGS],[Flags for Java Runtime])
24
AC_ARG_VAR([JAVAH],[JNI C stub and header generator])
25
AC_ARG_VAR([JAR],[Java Archive Tool])
24
AC_ARG_VAR([JAVAH],[Absolute path to javah, the JNI C stub and header generator])
25
AC_ARG_VAR([JAR],[Absolute path to the Java Archive Tool (jar)])
26
AC_ARG_VAR([JNI_INCLUDES],[Preprocessor flags used @<:@e.g., -I$JAVAPREFIX/include@:>@ to #include <jni.h>])
27
28
# First determine enable_java == true or false, and value of $JAVA (before testing JAVAPREFIX)
28
29
AC_ARG_ENABLE([java],
29
AS_HELP_STRING(--enable-java@<:@=JVM@:>@,java languange bindings @<:@default=yes@:>@),
30
AS_HELP_STRING(--enable-java@<:@=JAVAPREFIX@:>@,java language bindings @<:@default=yes@:>@. If a directory value is given it overrides JAVAPREFIX.),
30
31
[enable_java="$enableval"],
31
32
[enable_java="yes"])
32
33
test -z "$enable_java" && enable_java="yes" #zero length is yes
35
36
# --enable-java=no is equiv to --disable-java
36
37
AC_MSG_WARN([Cannot disable Java entirely, only Java support in Babel.])
37
38
AC_MSG_WARN([The Babel code generator itself still needs a working Java.])
38
elif test "x$enable_java" = "xyes"; then
39
test -z "$JAVA" && JAVA=java
40
else # --enable-java has an explicit value
41
if test -n "$JAVA"; then
42
if test "$JAVA" != "$enable_java"; then
43
AC_MSG_WARN([--enable-java=]"$enable_java"[, and JAVA=]"$JAVA"[, using former])
39
elif test "x$enable_java" != "xyes"; then
40
if test -n "$JAVAPREFIX"; then
41
if test "$JAVAPREFIX" != "$enable_java"; then
42
AC_MSG_WARN([--enable-java=]"$enable_java"[, and JAVAPREFIX=]"$JAVAPREFIX"[, using former])
45
JAVAPREFIX="$enable_java"
50
# now resolve `dirname $JAVA` and $JAVAPREFIX
52
if test "$tmp" = "$JAVA"; then
53
if test -z "$JAVAPREFIX"; then
54
#easy case. $JAVA=="java" and $JAVAPREFIX=""
57
#not hard. $JAVA=="java" and $JAVAPREFIX="some/path"
61
if test -z "$JAVAPREFIX"; then
62
#little strange. $JAVA=="some/path/java" and $JAVAPREFIX=""
63
#set JAVAPREFIX=`dirname $JAVA`
64
JAVAPREFIX=`dirname $JAVA`
67
#way wierd. $JAVA=="one/path/java" and $JAVAPREFIX="possibly/another/path"
68
if "$tmp" != "$JAVAPREFIX"; then
69
AC_MSG_ERROR([Confused by 'dirname $JAVA'=]"$tmp"[ and $JAVAPREFIX=]"$JAVAPREFIX")
73
49
AC_SUBST(JAVAPREFIX)dnl
77
if test -n "$JAVAPREFIX"; then
78
PATH=$JAVAPREFIX:${PATH}
81
52
LLNL_CHECK_CLASSPATH
82
test -z "$JAVAC" && JAVAC=javac
54
if test "X$ac_cv_prog_javac_works" != "Xyes"; then
55
AC_MSG_ERROR([Babel development kit requires working java compiler.])
85
58
LLNL_CHECK_JAVA_ADDCLASSPATH_FLAG
87
test -z "$JAR" && JAR=jar
90
62
AC_TRY_COMPILE_JAVA
91
63
if test "X$enable_java" != "Xno"; then
92
test -z "$JAVADOC" && JAVADOC=javadoc
94
test -z "$JAVAH" && JAVAH=javah
96
66
if test "X$llnl_cv_header_jni_h" = "Xno"; then
97
67
AC_MSG_WARN([Cannot find jni.h, Java support will be disabled])
127
97
JNI_LDFLAGS="$llnl_cv_jni_linker_flags"
128
98
AC_SUBST(JNI_LDFLAGS)
130
LLNL_WHICH_PROG(WHICH_JAVA,$JAVAPREFIX)
131
LLNL_WHICH_PROG(WHICH_JAVAC,$JAVAPREFIX)
132
LLNL_WHICH_PROG(WHICH_JAR,$JAVAPREFIX)
133
LLNL_WHICH_PROG(WHICH_JAVAH,$JAVAPREFIX)
135
100
AC_SUBST(JAVAC)dnl
136
101
AC_SUBST(JAVACFLAGS)dnl
137
102
AC_SUBST(JAVA)dnl
138
103
AC_SUBST(JAVAFLAGS)dnl