Macro: ac_check_junit

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

Synopsis

  `AC_CHECK_JUNIT`

Version

  1.1.1.1 (2001/07/26) Java_Support @ ac-archive-0.5.39

Author

  Luc Maisonobe

Description

  AC_CHECK_JUNIT tests the availability of the Junit testing framework, and set some variables for conditional compilation of the test suite by automake.

  If available, JUNIT is set to a command launching the text based user interface of Junit, @JAVA_JUNIT@ is set to $JAVA_JUNIT and @TESTS_JUNIT@ is set to $TESTS_JUNIT, otherwise they are set to empty values.

  You can use these variables in your Makefile.am file like this :

  `# Some of the following classes are built only if junit is available`
  `JAVA_JUNIT = Class1Test.java Class2Test.java AllJunitTests.java`

  `noinst_JAVA = Example1.java Example2.java @JAVA_JUNIT@`

  `EXTRA_JAVA = $(JAVA_JUNIT)`

  `TESTS_JUNIT = AllJunitTests`

  `TESTS = StandaloneTest1 StandaloneTest2 @TESTS_JUNIT@`

  `EXTRA_TESTS = $(TESTS_JUNIT)`

  `AllJunitTests :`
  `echo "#! /bin/sh" > $@`
  `echo "exec @JUNIT@ my.package.name.AllJunitTests" >> $@`
  `chmod +x $@`

M4 Source Code

      AC_DEFUN([AC_CHECK_JUNIT],[
      AC_CACHE_VAL(ac_cv_prog_JUNIT,[
      AC_CHECK_CLASS(junit.textui.TestRunner)
      if test x"`eval 'echo $ac_cv_class_junit_textui_TestRunner'`" != xno ; then
        ac_cv_prog_JUNIT='$(CLASSPATH_ENV) $(JAVA) $(JAVAFLAGS) junit.textui.TestRunner'
      fi])
      AC_MSG_CHECKING([for junit])
      if test x"`eval 'echo $ac_cv_prog_JUNIT'`" != x ; then
        JUNIT="$ac_cv_prog_JUNIT"
        JAVA_JUNIT='$(JAVA_JUNIT)'
        TESTS_JUNIT='$(TESTS_JUNIT)'
      else
        JUNIT=
        JAVA_JUNIT=
        TESTS_JUNIT=
      fi
      AC_MSG_RESULT($JAVA_JUNIT)
      AC_SUBST(JUNIT)
      AC_SUBST(JAVA_JUNIT)
      AC_SUBST(TESTS_JUNIT)])