# HG changeset patch # User Andrew John Hughes # Date 1395892220 0 # Node ID 531847dfec6f16ea13f2fdbda9bec1b108a8d538 # Parent 92ea9fe535057e075c877638c98f78d323b431df Perform configure checks using ecj.jar if native ecj is enabled. 2014-03-26 Andrew John Hughes Perform configure checks using ecj.jar if native ecj is enabled. * Makefile.am: (native-ecj): Link against gcj explicitly. * acinclude.m4: (IT_FIND_COMPILER): Run IT_WITH_GCJ and set JAVAC to an invocation of the ECJ_JAR if native ecj is used. Depend on IT_FIND_JAVA and IT_FIND_ECJ_JAR for this. (IT_FIND_ECJ_JAR): Define only once. (IT_WITH_GCJ): Likewise. (IT_DIAMOND_CHECK): Depend on IT_CHECK_JAVA_AND_JAVAC_WORK. * configure.ac: Remove invocation of IT_WITH_GCJ. diff -r 92ea9fe53505 -r 531847dfec6f ChangeLog --- a/ChangeLog Wed Mar 26 23:23:37 2014 +0000 +++ b/ChangeLog Thu Mar 27 03:50:20 2014 +0000 @@ -1,3 +1,19 @@ +2014-03-26 Andrew John Hughes + + Perform configure checks using ecj.jar + if native ecj is enabled. + * Makefile.am: + (native-ecj): Link against gcj explicitly. + * acinclude.m4: + (IT_FIND_COMPILER): Run IT_WITH_GCJ + and set JAVAC to an invocation of the ECJ_JAR + if native ecj is used. Depend on IT_FIND_JAVA + and IT_FIND_ECJ_JAR for this. + (IT_FIND_ECJ_JAR): Define only once. + (IT_WITH_GCJ): Likewise. + (IT_DIAMOND_CHECK): Depend on IT_CHECK_JAVA_AND_JAVAC_WORK. + * configure.ac: Remove invocation of IT_WITH_GCJ. + 2014-03-26 Andrew John Hughes * Makefile.am: diff -r 92ea9fe53505 -r 531847dfec6f Makefile.am --- a/Makefile.am Wed Mar 26 23:23:37 2014 +0000 +++ b/Makefile.am Thu Mar 27 03:50:20 2014 +0000 @@ -1609,7 +1609,7 @@ mkdir -p stamps if BUILD_NATIVE_ECJ ${GCJ} $(IT_CFLAGS) -Wl,-Bsymbolic -findirect-dispatch -o native-ecj \ - --main=org.eclipse.jdt.internal.compiler.batch.Main ${ECJ_JAR} + --main=org.eclipse.jdt.internal.compiler.batch.Main -lgcj ${ECJ_JAR} endif touch $@ diff -r 92ea9fe53505 -r 531847dfec6f acinclude.m4 --- a/acinclude.m4 Wed Mar 26 23:23:37 2014 +0000 +++ b/acinclude.m4 Thu Mar 27 03:50:20 2014 +0000 @@ -119,9 +119,17 @@ AC_DEFUN([IT_FIND_COMPILER], [ + AC_REQUIRE([IT_FIND_JAVA]) + AC_REQUIRE([IT_FIND_ECJ_JAR]) + IT_FIND_JAVAC IT_FIND_ECJ IT_USING_ECJ + IT_WITH_GCJ + + if test x"${GCJ}" != xno ; then + JAVAC="${JAVA} -classpath ${ECJ_JAR} org.eclipse.jdt.internal.compiler.batch.Main" + fi AC_SUBST(ECJ) AC_SUBST(JAVAC) @@ -308,7 +316,7 @@ AM_CONDITIONAL([SRC_DIR_HARDLINKABLE], test x"${it_cv_hardlink_src}" = "xyes") ]) -AC_DEFUN([IT_FIND_ECJ_JAR], +AC_DEFUN_ONCE([IT_FIND_ECJ_JAR], [ AC_MSG_CHECKING([for an ecj JAR file]) AC_ARG_WITH([ecj-jar], @@ -904,7 +912,7 @@ AM_CONDITIONAL([USE_JDK7], test x"${project}" = "xjdk7") ]) -AC_DEFUN([IT_WITH_GCJ], +AC_DEFUN_ONCE([IT_WITH_GCJ], [ AC_MSG_CHECKING([whether to compile ecj natively]) AC_ARG_WITH([gcj], @@ -1746,6 +1754,7 @@ ]) AC_DEFUN([IT_DIAMOND_CHECK],[ + AC_REQUIRE([IT_CHECK_JAVA_AND_JAVAC_WORK]) AC_CACHE_CHECK([if javac lacks support for the diamond operator], it_cv_diamond, [ CLASS=Test.java BYTECODE=$(echo $CLASS|sed 's#\.java##') diff -r 92ea9fe53505 -r 531847dfec6f configure.ac --- a/configure.ac Wed Mar 26 23:23:37 2014 +0000 +++ b/configure.ac Thu Mar 27 03:50:20 2014 +0000 @@ -43,7 +43,6 @@ IT_CHECK_FOR_MERCURIAL IT_OBTAIN_HG_REVISIONS AC_PATH_TOOL([LSB_RELEASE],[lsb_release]) -IT_WITH_GCJ IT_WITH_HOTSPOT_BUILD AC_PATH_TOOL([LINUX32],[linux32]) IT_CHECK_GCC_VERSION