Nic Ferrier <nferrier@tapsellferrier.co.uk>
GPLWithACException
This program is free software; you can
redistribute it and/or modify it under the terms of the GNU General Public License
as published by the Free Software Foundation. As a special exception, the respective
Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify
the configure scripts that are the output of Autoconf when processing the Macro. You
need not follow the terms of the
GNU General Public License when using or distributing such scripts
cryp.to ac-archive's Java Support (released)
Finds the appropriate java compiler on your path. By preference the
java compiler is gcj, then jikes then javac.
The macro can take one argument specifying a space separated list
of java compiler names.
For example:
AC_PROG_JAVA_CC(javac, gcj)
The macro also sets the compiler options variable: JAVA_CC_OPTS to
something sensible:
(if GCJ_OPTS is not yet defined then it is set to "-C")
Here's an example configure.in:
AC_INIT(Makefile.in)
AC_PROG_JAVA_CC()
AC_OUTPUT(Makefile)
dnl End.
And here's the start of the Makefile.in:
PROJECT_ROOT := @srcdir@
# Tool definitions.
JAVAC := @JAVA_CC@
JAVAC_OPTS := @JAVA_CC_OPTS@
JAR_TOOL := @jar_tool@
# AC_PROG_JAVA_CC([COMPILER ...])
# --------------------------
# COMPILER ... is a space separated list of java compilers to search for.
# This just gives the user an opportunity to specify an alternative
# search list for the java compiler.
AC_DEFUN([AC_PROG_JAVA_CC],
[AC_ARG_VAR([JAVA_CC], [java compiler command])dnl
AC_ARG_VAR([JAVA_CC_FLAGS], [java compiler flags])dnl
m4_ifval([$1],
[AC_CHECK_TOOLS(JAVA_CC, [$1])],
[AC_CHECK_TOOL(JAVA_CC, gcj)
if test -z "$JAVA_CC"; then
AC_CHECK_TOOL(JAVA_CC, javac)
fi
if test -z "$JAVA_CC"; then
AC_CHECK_TOOL(JAVA_CC, jikes)
fi
])
if test "$JAVA_CC" = "gcj"; then
if test "$GCJ_OPTS" = ""; then
AC_SUBST(GCJ_OPTS,-C)
fi
AC_SUBST(JAVA_CC_OPTS, @GCJ_OPTS@,
[Define the compilation options for GCJ])
fi
test -z "$JAVA_CC" && AC_MSG_ERROR([no acceptable java compiler found in \$PATH])
])# AC_PROG_JAVA_CC