comparison configure.ac @ 15777:b8bcb2c7f3e8

configure.ac: Search for jvm.dll on MingW/Cygwin platforms for Java. * configure.ac: Search for jvm.dll on MingW/Cygwin platforms.
author Rik <rik@octave.org>
date Wed, 12 Dec 2012 16:03:46 -0800
parents eade542fedaa
children 4456ad3d8a56
comparison
equal deleted inserted replaced
15776:169a47c5e254 15777:b8bcb2c7f3e8
2311 [Define to 1 if Java is available and is at least version 1.5]) 2311 [Define to 1 if Java is available and is at least version 1.5])
2312 break 2312 break
2313 ;; 2313 ;;
2314 esac 2314 esac
2315 2315
2316 ## Determine Shared Library Extension 2316 ## Determine which library file name to search for.
2317 case $canonical_host_type in 2317 case $canonical_host_type in
2318 *-darwin*) 2318 *-darwin*)
2319 shlext=dylib 2319 jvmlib=libjvm.dylib
2320 ;; 2320 ;;
2321 *-mingw* | *-cygwin*) 2321 *-mingw* | *-cygwin*)
2322 shlext=dll 2322 jvmlib=jvm.dll
2323 ;; 2323 ;;
2324 *) 2324 *)
2325 shlext=so 2325 jvmlib=libjvm.so
2326 ;; 2326 ;;
2327 esac 2327 esac
2328 2328
2329 AC_MSG_CHECKING([for libjvm.${shlext}]) 2329 AC_MSG_CHECKING([for $jvmlib])
2330 2330
2331 if test -z "$JAVA_LDPATH"; then 2331 if test -z "$JAVA_LDPATH"; then
2332 ## Run Java to try and determine library path to libjvm.so. 2332 ## Run Java to try and determine library path to libjvm.so.
2333 JAVA_TMP_LDPATH=`$JAVA -classpath ${srcdir}/build-aux OctJavaQry JAVA_LDPATH` 2333 JAVA_TMP_LDPATH=`$JAVA -classpath ${srcdir}/build-aux OctJavaQry JAVA_LDPATH`
2334 JAVA_TMP_LDPATH=`echo $JAVA_TMP_LDPATH | sed -e 's/:/ /g'` 2334 JAVA_TMP_LDPATH=`echo $JAVA_TMP_LDPATH | sed -e "s/${PATH_SEPARATOR}/ /g"`
2335 for dir in $JAVA_TMP_LDPATH; do 2335 for dir in $JAVA_TMP_LDPATH; do
2336 if test -f "$dir/libjvm.${shlext}"; then 2336 if test -f "$dir/$jvmlib"; then
2337 JAVA_LDPATH=$dir 2337 JAVA_LDPATH=$dir
2338 break 2338 break
2339 fi 2339 fi
2340 done 2340 done
2341 fi 2341 fi
2343 if test -z "$JAVA_LDPATH"; then 2343 if test -z "$JAVA_LDPATH"; then
2344 ## Nothing found. Try Java again using bootpath argument. 2344 ## Nothing found. Try Java again using bootpath argument.
2345 JAVA_TMP_LDPATH=`$JAVA -classpath ${srcdir}/build-aux OctJavaQry JAVA_BOOTPATH` 2345 JAVA_TMP_LDPATH=`$JAVA -classpath ${srcdir}/build-aux OctJavaQry JAVA_BOOTPATH`
2346 JAVA_TMP_LDPATH="${JAVA_TMP_LDPATH} ${JAVA_TMP_LDPATH}/client ${JAVA_TMP_LDPATH}/server" 2346 JAVA_TMP_LDPATH="${JAVA_TMP_LDPATH} ${JAVA_TMP_LDPATH}/client ${JAVA_TMP_LDPATH}/server"
2347 for dir in $JAVA_TMP_LDPATH; do 2347 for dir in $JAVA_TMP_LDPATH; do
2348 if test -f "$dir/libjvm.${shlext}"; then 2348 if test -f "$dir/$jvmlib"; then
2349 JAVA_LDPATH=$dir 2349 JAVA_LDPATH=$dir
2350 break 2350 break
2351 fi 2351 fi
2352 done 2352 done
2353 fi 2353 fi
2356 ## Java failed to find it's own library path. Guess wildly. 2356 ## Java failed to find it's own library path. Guess wildly.
2357 JAVA_TMP_LDPATH=`ls -d $JAVA_HOME/jre/lib/*/client` 2357 JAVA_TMP_LDPATH=`ls -d $JAVA_HOME/jre/lib/*/client`
2358 JAVA_TMP_LDPATH="${JAVA_TMP_LDPATH} `ls -d $JAVA_HOME/jre/lib/*/server`" 2358 JAVA_TMP_LDPATH="${JAVA_TMP_LDPATH} `ls -d $JAVA_HOME/jre/lib/*/server`"
2359 ## Add some paths that might work on Macs. 2359 ## Add some paths that might work on Macs.
2360 JAVA_TMP_LDPATH="${JAVA_TMP_LDPATH} ${JAVA_HOME}/../Libraries ${JAVA_HOME}/Libraries" 2360 JAVA_TMP_LDPATH="${JAVA_TMP_LDPATH} ${JAVA_HOME}/../Libraries ${JAVA_HOME}/Libraries"
2361 ## Add some paths that might work on MinGW
2362 JAVA_TMP_LDPATH="${JAVA_TMP_LDPATH} ${JAVA_HOME}/bin/client ${JAVA_HOME}/bin/server"
2361 for dir in $JAVA_TMP_LDPATH; do 2363 for dir in $JAVA_TMP_LDPATH; do
2362 if test -f "$dir/libjvm.${shlext}"; then 2364 if test -f "$dir/$jvmlib"; then
2363 JAVA_LDPATH=$dir 2365 JAVA_LDPATH=$dir
2364 break 2366 break
2365 fi 2367 fi
2366 done 2368 done
2367 fi 2369 fi
2368 2370
2369 ## Verify value passed in option --with-java-libdir 2371 ## Verify value passed in option --with-java-libdir
2370 if test -n "$JAVA_LDPATH"; then 2372 if test -n "$JAVA_LDPATH"; then
2371 if test -f "${JAVA_LDPATH}/libjvm.${shlext}"; then 2373 if test -f "${JAVA_LDPATH}/$jvmlib"; then
2372 : # libjvm found 2374 : # libjvm found
2373 else 2375 else
2374 JAVA_LDPATH="" 2376 JAVA_LDPATH=""
2375 fi 2377 fi
2376 fi 2378 fi
2377 2379
2378 if test -z "$JAVA_LDPATH"; then 2380 if test -z "$JAVA_LDPATH"; then
2379 AC_MSG_RESULT([not found]) 2381 AC_MSG_RESULT([not found])
2380 AC_MSG_WARN([Library libjvm not found. Octave will not be able to call Java methods.]) 2382 AC_MSG_WARN([Library $jvmlib not found. Octave will not be able to call Java methods.])
2381 break 2383 break
2382 else 2384 else
2383 AC_MSG_RESULT([$JAVA_LDPATH]) 2385 AC_MSG_RESULT([$JAVA_LDPATH])
2384 fi 2386 fi
2385 2387