Salome HOME
Join modifications from BR_Dev_For_4_0 tag V4_1_1.
[modules/kernel.git] / salome_adm / unix / config_files / check_java.m4
1 dnl  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
2 dnl  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
3 dnl 
4 dnl  This library is free software; you can redistribute it and/or 
5 dnl  modify it under the terms of the GNU Lesser General Public 
6 dnl  License as published by the Free Software Foundation; either 
7 dnl  version 2.1 of the License. 
8 dnl 
9 dnl  This library is distributed in the hope that it will be useful, 
10 dnl  but WITHOUT ANY WARRANTY; without even the implied warranty of 
11 dnl  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
12 dnl  Lesser General Public License for more details. 
13 dnl 
14 dnl  You should have received a copy of the GNU Lesser General Public 
15 dnl  License along with this library; if not, write to the Free Software 
16 dnl  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
17 dnl 
18 dnl  See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org 
19 dnl
20 dnl
21 dnl
22 AC_DEFUN([CHECK_JAVA],[
23 dnl AC_REQUIRE([AC_CANONICAL_SYSTEM])dnl
24 dnl AC_REQUIRE([AC_PROG_CPP])dnl
25
26 AC_CHECKING(for JAVA)
27
28 JAVA_INCLUDES=""
29 JAVA_LIBS=""
30 JAVA_LDPATH=""
31
32 java_ok=no
33
34 if test -z $JAVAHOME
35 then
36    AC_MSG_WARN(define JAVAHOME variable to use Java)
37 else
38    java_ok=yes
39 fi
40
41 if  test "x$java_ok" = "xyes"
42 then
43    AC_EXEEXT
44    AC_CHECK_PROG(JAVA, java$EXEEXT,found)
45    if  test "x$JAVA" = "x"
46    then
47      java_ok=no
48    fi
49
50    AC_CHECK_PROG(JAVAC, javac$EXEEXT,found)
51    if  test "x$JAVAC" = "x"
52    then
53      java_ok=no
54    fi
55 fi
56
57 if  test "x$java_ok" = "xyes"
58 then
59     version=`$JAVA -version 2>&1 | grep "java version"`
60     case "$version" in
61       *1.1.*)
62           AC_MSG_RESULT(using jdk1.1 version - jdk1.4 required)
63           java_ok=no;;
64       *1.2*)
65           AC_MSG_RESULT(using jdk1.2 version - jdk1.4 required)
66           java_ok=no;;
67       *1.3*)
68           AC_MSG_RESULT(using jdk1.3 version - jdk1.4 required)
69           java_ok=no;;
70       *1.4*)
71           AC_MSG_RESULT(using jdk1.4 version) ;;
72     esac
73 fi
74
75 if  test "x$java_ok" = "xyes"
76 then
77 dnl java headers
78   LOCAL_INCLUDES=" -I${JAVAHOME}/include  -I${JAVAHOME}/include/linux"
79   CPPFLAGS_old="$CPPFLAGS"
80   CPPFLAGS="$CPPFLAGS $LOCAL_INCLUDES"
81   AC_CHECK_HEADER(jni.h,java_ok=yes ,java_ok=no)
82
83   CPPFLAGS="$CPPFLAGS_old"
84 fi
85
86 if  test "x$java_ok" = "xyes"
87 then
88 dnl libjava library
89   LOCAL_LIBS="-L${JAVAHOME}/jre/lib/i386 -ljava -L${JAVAHOME}/jre/lib/i386/client -ljvm -lverify"
90   LIBS_old="$LIBS"
91   LIBS="$LIBS $LOCAL_LIBS"
92
93   AC_CHECK_LIB(jvm,JNI_CreateJavaVM,java_ok=yes,java_ok=no)
94
95   LIBS="$LIBS_old"
96 fi
97
98 if  test "x$java_ok" = "xyes"
99 then
100   JAVA_INCLUDES="$LOCAL_INCLUDES"
101   JAVA_LIBS="$LOCAL_LIBS"
102 fi
103
104 AC_SUBST(JAVA_INCLUDES)
105 AC_SUBST(JAVA_LIBS)
106 AC_SUBST(JAVA_LDPATH)
107
108 AC_MSG_RESULT(for java: $java_ok)
109
110 ])dnl
111 dnl