public inbox for frysk-cvs@sourceware.org help / color / mirror / Atom feed
From: cagney@sourceware.org To: frysk-cvs@sourceware.org Subject: [SCM] master: Fix missing -fsource=1.4 when .java.h: and JAVAC=GCJ. Date: Fri, 07 Dec 2007 01:55:00 -0000 [thread overview] Message-ID: <20071207015532.15278.qmail@sourceware.org> (raw) The branch, master has been updated via 165cdef652b84c712b7d6ade77608d538ec7a02b (commit) from b752273a412939b9d582ee4cf6b8d419dc956909 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email. - Log ----------------------------------------------------------------- commit 165cdef652b84c712b7d6ade77608d538ec7a02b Author: Andrew Cagney <cagney@redhat.com> Date: Thu Dec 6 20:54:45 2007 -0500 Fix missing -fsource=1.4 when .java.h: and JAVAC=GCJ. frysk-common/ChangeLog 2007-12-06 Andrew Cagney <cagney@redhat.com> * frysk-common.ac (GCJ_FSOURCE): Delete. (AC_LANG(JAVA)): Replace AC_LANG(GCJ). (JAVA_IS): Re-implement using AC_COMPILE_IFELSE. (GCJ_WALL): Default to adding -Wall. * Makefile.rules (.java.h): Use JAVAC. ----------------------------------------------------------------------- Summary of changes: frysk-common/ChangeLog | 8 +++ frysk-common/Makefile.rules | 2 +- frysk-common/frysk-common.ac | 102 +++++++++++++++-------------------------- 3 files changed, 46 insertions(+), 66 deletions(-) First 500 lines of diff: diff --git a/frysk-common/ChangeLog b/frysk-common/ChangeLog index 51b8530..7be00a9 100644 --- a/frysk-common/ChangeLog +++ b/frysk-common/ChangeLog @@ -1,3 +1,11 @@ +2007-12-06 Andrew Cagney <cagney@redhat.com> + + * frysk-common.ac (GCJ_FSOURCE): Delete. + (AC_LANG(JAVA)): Replace AC_LANG(GCJ). + (JAVA_IS): Re-implement using AC_COMPILE_IFELSE. + (GCJ_WALL): Default to adding -Wall. + * Makefile.rules (.java.h): Use JAVAC. + 2007-12-06 Andrew Cagney <cagney@frysk32.hsv.redhat.com> * frysk-common.ac (JAVAC): Pass -1.4 to ECJ compiler. diff --git a/frysk-common/Makefile.rules b/frysk-common/Makefile.rules index d696ac2..3b9e075 100644 --- a/frysk-common/Makefile.rules +++ b/frysk-common/Makefile.rules @@ -360,7 +360,7 @@ $(GEN_SOURCENAME)/JUnitTests.java: files-java.list tmpdir=$$b.tmp ; \ rm -rf $$tmpdir ; \ mkdir -p $$tmpdir ; \ - $(GCJCOMPILE) -C -d $$tmpdir '$<' || exit 1 ; \ + $(JAVAC) $(JAVACFLAGS) -d $$tmpdir '$<' || exit 1 ; \ classes=`cd $$tmpdir; find $$d/$$b*.class \ -name '*\$$[0-9]*' -prune \ -o -name $$b.class -print \ diff --git a/frysk-common/frysk-common.ac b/frysk-common/frysk-common.ac index 1dbd199..3db1dd3 100644 --- a/frysk-common/frysk-common.ac +++ b/frysk-common/frysk-common.ac @@ -99,38 +99,6 @@ AC_CHECK_PROGS([JV_SCAN], [jv-scan4 jv-scan], [no]) AM_CONDITIONAL([HAVE_JV_SCAN], test x"${JV_SCAN}" != xno) -# autoconf doesn't yet know about GCJ, so define it ourselves. - -m4_define([AC_LANG(GCJ)], -[ac_ext=java -ac_objext=class -ac_compile='$GCJ $GCJFLAGS conftest.$ac_ext >&AS_MESSAGE_LOG_FD' -ac_java_werror_flag=no -]) -m4_defun([AC_LANG_COMPILER(GCJ)], []) -m4_define([_AC_LANG_ABBREV(GCJ)], [java]) -AC_LANG(GCJ) - - -# See gcj accepts -fsource=1.4, if not only use the warning flags. If -# it is available also use it for the GCJFLAGS. - -AC_MSG_CHECKING([whether ${GCJ} accepts -fsource=1.4]) -if test "x$ac_env_GCJFLAGS_set" == xset ; then - GCJ_FSOURCE="no" - AC_MSG_RESULT([not needed]) -else - GCJFLAGS_WARN=$GCJFLAGS - GCJFLAGS="$GCJFLAGS -fsource=1.4" - AC_COMPILE_IFELSE([public class conftest{}], - [GCJ_FSOURCE="yes" - GCJFLAGS="$GCJFLAGS -fsource=1.4"], - [GCJ_FSOURCE="no" - GCJFLAGS=$GCJFLAGS_WARN]) - AC_MSG_RESULT([${GCJ_FSOURCE}]) -fi - - # Check for the ECJ compiler. AC_MSG_CHECKING([ecj.jar]) @@ -139,55 +107,59 @@ AC_SUBST([ECJ_JAR]) AC_MSG_RESULT(${ECJ_JAR}) +# autoconf doesn't yet know about JAVAC, so define it ourselves. + +m4_define([AC_LANG(JAVAC)], +[ac_ext=java +ac_objext=class +ac_compile='$JAVAC $JAVACFLAGS conftest.$ac_ext >&AS_MESSAGE_LOG_FD' +ac_java_werror_flag=no +]) +m4_defun([AC_LANG_COMPILER(JAVAC)], []) +m4_define([_AC_LANG_ABBREV(JAVAC)], [java]) +AC_LANG(JAVAC) + + # Two possible compilers: either GCJ (wrapper round ECJ); or ECJ. In # the latter case, need to explicitly run compiler from within the GIJ # runtime so that ECJ sees the classpath environment, in particular -# things like gnu.gcj.RawDataManaged. - -AC_MSG_CHECKING([JAVAC]) -if test x"${JAVAC}" = x ; then - if test "x${GCJ_FSOURCE}" = xyes ; then - JAVAC_IS=gcj - JAVAC="\$(GCJ) -C" - elif test "x${ECJ_JAR}" != xno ; then - JAVAC_IS=ecj - JAVAC="\$(GIJ) --classpath \$(ECJ_JAR):\$(CLASSPATH) org.eclipse.jdt.internal.compiler.batch.Main -1.4" - else - AC_MSG_ERROR([no java compiler]) - fi -fi -AC_SUBST([JAVAC]) -AC_SUBST([JAVAC_IS]) -AC_MSG_RESULT(${JAVAC}) +# things like gnu.gcj.RawDataManaged. Start out assuming GCJ (with +# the -fsource=1.4 flag), if that fails, fall back to ECJ. +# See gcj accepts -fsource=1.4, if not only use the warning flags. If +# it is available also use it for the GCJFLAGS. -# Only add -warn flags when the compiler is known to be ECJ. -AC_MSG_CHECKING([java flags]) -case "${JAVAC_IS}" in - gcj) JAVACFLAGS='-g -classpath $(SOURCEPATH):$(CLASSPATH)' ;; - ecj) JAVACFLAGS='-warn:+semicolon -sourcepath $(SOURCEPATH) -classpath $(CLASSPATH)' ;; -esac +AC_MSG_CHECKING([for working java compiler]) +JAVAC=${JAVAC:-${GCJ} -C -fsource=1.4} +JAVACFLAGS=${JAVACFLAGS:-${GCJFLAGS}} +AC_COMPILE_IFELSE([public class conftest{}], + [JAVAC_IS=gcj], + [JAVAC_IS=ecj + JAVAC='$(GIJ) --classpath $(ECJ_JAR):$(CLASSPATH) org.eclipse.jdt.internal.compiler.batch.Main -1.4' + JAVACFLAGS='-warn:+semicolon -sourcepath $(SOURCEPATH) -classpath $(CLASSPATH)']) +AC_SUBST([JAVAC]) AC_SUBST([JAVACFLAGS]) -AC_MSG_RESULT(${JAVACFLAGS}) - +AC_SUBST([JAVAC_IS]) +AC_MSG_RESULT([${JAVAC_IS} ($JAVAC)]) # Some versions of gcj don't support -Wall. Some versions generate # good warnings without it. So explictily test for it. -AC_MSG_CHECKING([whether ${JAVAC} accepts -Wall]) +AC_MSG_CHECKING([whether GCJ needs -Wall]) if test "x$ac_env_GCJFLAGS_set" == xset ; then - GCJ_WALL=no - AC_MSG_RESULT([not needed]) + GCJ_WALL="not needed" elif test x"${JAVAC_IS}" = xgcj ; then - # Newer compilers have a good default set of warnings so do - # not need -Wall. However, older GCJs barf on stray - # semicolons so always check for them to help with - # compatibility. + # A newer GCJ (using it for JAVAC) which has a good + # default set of warnings so do not need -Wall. However, + # older GCJs barf on stray semicolons so always check for them + # to help with compatibility. GCJ_WALL=-Wextraneous-semicolon JAVACFLAGS="$JAVACFLAGS ${GCJ_WALL}" GCJFLAGS="$GCJFLAGS ${GCJ_WALL}" else - GCJ_WALL=no + # Older GCJ (not using it for JAVAC) need the full gamit. + GCJ_WALL="-Wextraneous-semicolon -Wall" + GCJFLAGS="$GCJFLAGS ${GCJ_WALL}" fi AC_MSG_RESULT([${GCJ_WALL}]) hooks/post-receive -- frysk system monitor/debugger
reply other threads:[~2007-12-07 1:55 UTC|newest] Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20071207015532.15278.qmail@sourceware.org \ --to=cagney@sourceware.org \ --cc=frysk-cvs@sourceware.org \ --cc=frysk@sourceware.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).