Macro: ac_prog_java_cc

Back to the Main Page. | # ac_prog_java_cc | Download the M4 Source.

Synopsis

  `AC_PROG_JAVA_CC`

Version

  1.1 (2002/03/17) Java_Support @ ac-archive-0.5.39

Author

  Nic Ferrier <nferrier@tapsellferrier.co.uk>

Description

  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:
  - for GCJ it sets it to: @GCJ_OPTS@
  `(if GCJ_OPTS is not yet defined then it is set to "-C")`

  - no other compiler has applicable options yet

  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@`

M4 Source Code

      # 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