# HG changeset patch # User gnu_andrew@member.fsf.org # Date 1196717922 0 # Node ID 1fa24a0691298690a5e8a0fb9c7097578b307f24 # Parent dc6721b486c70c96d1d4de86d96623f45b99a951 Updated compiler testing to just use javac. diff -r dc6721b486c7 -r 1fa24a069129 ChangeLog --- a/ChangeLog Mon Dec 03 21:07:30 2007 +0000 +++ b/ChangeLog Mon Dec 03 21:38:42 2007 +0000 @@ -1,3 +1,13 @@ +2007-12-03 Andrew John Hughes + + * Makefile.am: + Just use JAVAC and fail when there is no compiler. + * configure.ac: + Remove unneeded macros. + * m4/acinclude.m4: + Likewise, and bring in updated javac test from + GNU Classpath. + 2007-12-03 Andrew John Hughes * AUTHORS: diff -r dc6721b486c7 -r 1fa24a069129 Makefile.am --- a/Makefile.am Mon Dec 03 21:07:30 2007 +0000 +++ b/Makefile.am Mon Dec 03 21:38:42 2007 +0000 @@ -11,14 +11,10 @@ FULL_VERSION = $(RELEASE)-$(USER_RELEASE_SUFFIX)-$(BUILD_NUMBER) # Setup the compiler -if FOUND_ECJ -JCOMPILER = $(ECJ) -1.5 -encoding UTF-8 -warn:-deprecation,serial,typeHiding,unchecked,unused,varargsCast -bootclasspath $(PATH_TO_GLIBJ_ZIP) -classpath .:$(USER_CLASSLIB) +if FOUND_JAVAC +JCOMPILER = $(JAVAC) $(JAVAC_OPTS) -classpath .:$(USER_CLASSLIB) else -if FOUND_JAVAC -JCOMPILER = $(JAVAC) -encoding UTF-8 -bootclasspath $(PATH_TO_GLIBJ_ZIP) -classpath .:$(GLIBJ_CLASSPATH) -else -error dunno how to setup the JCOMPILER and compile -endif +JCOMPILER = echo "No compiler found" 1>&2; exit 1 endif bin_SCRIPTS = tools/apt tools/javac tools/javah tools/javadoc diff -r dc6721b486c7 -r 1fa24a069129 configure.ac --- a/configure.ac Mon Dec 03 21:07:30 2007 +0000 +++ b/configure.ac Mon Dec 03 21:38:42 2007 +0000 @@ -6,7 +6,7 @@ dnl define([AC_CACHE_LOAD], )dnl dnl define([AC_CACHE_SAVE], )dnl -AC_INIT([IcePick],[0.01],[classpath@gnu.org],[icepick]) +AC_INIT([IcePick],[0.01],[distro-pkg-dev@openjdk.java.net],[icepick]) AC_CONFIG_SRCDIR(tools/javadoc.in) AC_CANONICAL_TARGET @@ -19,12 +19,12 @@ dnl Sets the VM name for use in tool wrapper scripts dnl ----------------------------------------------------------- AC_ARG_WITH([vm], - [AS_HELP_STRING(--with-vm,sets the VM binary name [default='${prefix}/bin/java'])], + [AS_HELP_STRING(--with-vm,sets the VM binary name [default='java'])], [ VM_BINARY=${withval} ], [ - VM_BINARY='${prefix}/bin/java' + VM_BINARY='java' ]) AC_SUBST(VM_BINARY) @@ -60,32 +60,6 @@ dnl ----------------------------------------------------------- AM_MAINTAINER_MODE -dnl ----------------------------------------------------------------------- -dnl Support for using a prebuilt class library -dnl ----------------------------------------------------------------------- -AC_ARG_WITH([glibj_zip], - AS_HELP_STRING([--with-glibj-zip=ABS.PATH], - [use prebuilt glibj.zip class library])) - -case "$with_glibj_zip" in -"") - use_glibj_zip=false - ;; -"no" ) - use_glibj_zip=false - ;; -"yes") - AC_MSG_ERROR([Please suply an absolute path to a prebuilt glibj.zip]) - ;; -*) - use_glibj_zip=true - PATH_TO_GLIBJ_ZIP=$with_glibj_zip - ;; -esac; - -AM_CONDITIONAL(USE_PREBUILT_GLIBJ_ZIP, test x$use_glibj_zip = xtrue) -AC_SUBST(PATH_TO_GLIBJ_ZIP) - dnl ----------------------------------------------------------- dnl output files dnl ----------------------------------------------------------- diff -r dc6721b486c7 -r 1fa24a069129 m4/acinclude.m4 --- a/m4/acinclude.m4 Mon Dec 03 21:07:30 2007 +0000 +++ b/m4/acinclude.m4 Mon Dec 03 21:38:42 2007 +0000 @@ -5,222 +5,94 @@ [ user_specified_javac= -dnl CLASSPATH_WITH_GCJ -dnl CLASSPATH_WITH_JIKES -dnl CLASSPATH_WITH_KJC - CLASSPATH_WITH_ECJ CLASSPATH_WITH_JAVAC if test "x${user_specified_javac}" = x; then -dnl AM_CONDITIONAL(FOUND_GCJ, test "x${GCJ}" != x) -dnl AM_CONDITIONAL(FOUND_JIKES, test "x${JIKES}" != x) - AM_CONDITIONAL(FOUND_ECJ, test "x${ECJ}" != x) AM_CONDITIONAL(FOUND_JAVAC, test "x${JAVAC}" != x) else -dnl AM_CONDITIONAL(FOUND_GCJ, test "x${user_specified_javac}" = xgcj) -dnl AM_CONDITIONAL(FOUND_JIKES, test "x${user_specified_javac}" = xjikes) - AM_CONDITIONAL(FOUND_ECJ, test "x${user_specified_javac}" = xecj) - AM_CONDITIONAL(FOUND_JAVAC, test "x${user_specified_javac}" = xjavac) + AM_CONDITIONAL(FOUND_JAVAC, test "x${user_specified_javac}" = xjavac && test "x${JAVAC}" != x) fi -dnl AM_CONDITIONAL(FOUND_KJC, test "x${user_specified_javac}" = xkjc) -dnl if test "x${GCJ}" = x && test "x${JIKES}" = x && test "x${user_specified_javac}" != xkjc; then - if test "x${ECJ}" = x && test "x${JAVAC}" = x && test "x${user_specified_javac}" != xecj; then - AC_MSG_ERROR([cannot find javac, try --with-ecj]) + if test "x${JAVAC}" = x && test "x${user_specified_javac}" != xjavac; then + AC_MSG_ERROR([cannot find javac, try --with-javac]) fi ]) dnl ----------------------------------------------------------- -AC_DEFUN([CLASSPATH_WITH_GCJ], +AC_DEFUN([CLASSPATH_WITH_JAVAC], [ - AC_ARG_WITH([gcj], - [AS_HELP_STRING(--with-gcj,bytecode compilation with gcj)], + AC_ARG_WITH([javac], + [AS_HELP_STRING(--with-javac,bytecode compilation with javac)], [ if test "x${withval}" != x && test "x${withval}" != xyes && test "x${withval}" != xno; then - CLASSPATH_CHECK_GCJ(${withval}) + CLASSPATH_CHECK_JAVAC(${withval}) else if test "x${withval}" != xno; then - CLASSPATH_CHECK_GCJ + CLASSPATH_CHECK_JAVAC fi fi - user_specified_javac=gcj - ], - [ - CLASSPATH_CHECK_GCJ - ]) - AC_SUBST(GCJ) -]) - -dnl ----------------------------------------------------------- -AC_DEFUN([CLASSPATH_CHECK_GCJ], -[ - if test "x$1" != x; then - if test -f "$1"; then - GCJ="$1" - else - AC_PATH_PROG(GCJ, "$1") - fi - else - AC_PATH_PROG(GCJ, "gcj") - fi - dnl Test the given GCJ, but use it as C (!) compiler to check version - if test "x$GCJ" != x; then - AC_MSG_CHECKING([gcj version 4.0]) - AC_LANG_PUSH([C]) - AC_LANG_CONFTEST( - [[#if __GNUC__ <= 3 - #error GCJ 4.0.0 or higher is required - #endif - ]]) - $GCJ -E conftest.c > /dev/null - gcj_4_result=$? - if test "x$gcj_4_result" = "x0"; then - AC_MSG_RESULT([4.0 or higher found]) - else - AC_MSG_WARN([4.0 or higher required]) - fi - AC_LANG_POP - fi -]) - -dnl ----------------------------------------------------------- -AC_DEFUN([CLASSPATH_WITH_JIKES], -[ - AC_ARG_WITH([jikes], - [AS_HELP_STRING(--with-jikes,bytecode compilation with jikes)], - [ - if test "x${withval}" != x && test "x${withval}" != xyes && test "x${withval}" != xno; then - CLASSPATH_CHECK_JIKES(${withval}) - else - if test "x${withval}" != xno; then - CLASSPATH_CHECK_JIKES - fi - fi - user_specified_javac=jikes + user_specified_javac=javac ], [ - CLASSPATH_CHECK_JIKES + CLASSPATH_CHECK_JAVAC ]) - AC_SUBST(JIKES) + AC_SUBST(JAVAC) + AC_SUBST(JAVAC_OPTS) ]) dnl ----------------------------------------------------------- -AC_DEFUN([CLASSPATH_CHECK_JIKES], +AC_DEFUN([CLASSPATH_CHECK_JAVAC], [ if test "x$1" != x; then - if test -f "$1"; then - JIKES="$1" - else - AC_PATH_PROG(JIKES, "$1") - fi + JAVAC="$1" else - AC_PATH_PROG(JIKES, "jikes") + AC_PATH_PROG(JAVAC, "javac") fi - if test "x$JIKES" != "x"; then - dnl Require at least version 1.19 - AC_MSG_CHECKING(jikes version) - JIKES_VERSION=`$JIKES --version | awk '/^Jikes Compiler/' | cut -d ' ' -f 5` - JIKES_VERSION_MAJOR=`echo "$JIKES_VERSION" | cut -d '.' -f 1` - JIKES_VERSION_MINOR=`echo "$JIKES_VERSION" | cut -d '.' -f 2` - if expr "$JIKES_VERSION_MAJOR" = 1 > /dev/null; then - if expr "$JIKES_VERSION_MINOR" \< 19 > /dev/null; then - JIKES="" - fi - fi - if test "x$JIKES" != "x"; then - AC_MSG_RESULT($JIKES_VERSION) - else - AC_MSG_WARN($JIKES_VERSION: jikes 1.19 or higher required) - fi - - JIKESENCODING= - if test -n "`$JIKES --help 2>&1 | grep encoding`"; then - JIKESENCODING='-encoding UTF-8' - fi - AC_SUBST(JIKESENCODING) - - JIKESWARNINGS="+Pno-switchcheck" - if test "x$JIKES_VERSION_MAJOR" = x"1" ; then - if ! test "x$JIKES_VERSION_MINOR" = x"19"; then - JIKESWARNINGS="$JIKESWARNINGS +Pno-shadow" - fi - fi - AC_SUBST(JIKESWARNINGS) - + dnl Test the given javac + AC_MSG_CHECKING([if javac is 1.5-capable]) + cat > conftest.java << EOF +public class conftest { +public static void main(String[] args) { +java.util.List l = new java.util.ArrayList(); +System.out.println(l); +}} +EOF + $JAVAC -sourcepath '' conftest.java + javac_result=$? + if test "x$javac_result" = "x0"; then + AC_MSG_RESULT([yes]) + else + AC_MSG_WARN([1.5 capable javac required]) + fi + AC_MSG_CHECKING([whether javac supports -J]) + $JAVAC -J-Xmx512M -sourcepath '' conftest.java + javac_result=$? + if test "x$javac_result" = "x0"; then + AC_MSG_RESULT([yes]) + JAVAC_OPTS="-J-Xmx512M" + else + AC_MSG_RESULT([javac doesn't support -J]) fi ]) -dnl ----------------------------------------------------------- -AC_DEFUN([CLASSPATH_WITH_KJC], +dnl Allow langtools directory to be specified +AC_DEFUN([WITH_LANGTOOLS_SRC_DIR], [ - AC_ARG_WITH([kjc], - [AS_HELP_STRING(--with-kjc,bytecode compilation with kjc)], + AC_MSG_CHECKING(langtools sources) + AC_ARG_WITH([langtools-src-dir], + [AS_HELP_STRING(--with-langtools-src-dir,specify the location of the openjdk langtools sources)], [ - if test "x${withval}" != x && test "x${withval}" != xyes && test "x${withval}" != xno; then - CLASSPATH_CHECK_KJC(${withval}) - else - if test "x${withval}" != xno; then - CLASSPATH_CHECK_KJC - fi - fi - user_specified_javac=kjc + LANGTOOLS_SRC_DIR=${withval} + AC_MSG_RESULT(${withval}) + conditional_with_langtools_sources=true ], [ - CLASSPATH_CHECK_KJC + conditional_with_langtools_sources=false + LANGTOOLS_SRC_DIR=`pwd`/langtools + AC_MSG_RESULT(${OPENJDK_SRC_DIR}) ]) - AC_SUBST(KJC) -]) - -dnl ----------------------------------------------------------- -AC_DEFUN([CLASSPATH_CHECK_KJC], -[ - if test "x$1" != x; then - if test -f "$1"; then - KJC="$1" - else - AC_PATH_PROG(KJC, "$1") - fi - else - AC_PATH_PROG(KJC, "kJC") - fi -]) - -dnl ----------------------------------------------------------- -AC_DEFUN([CLASSPATH_WITH_JAVAH], -[ - AC_ARG_WITH([javah], - [AS_HELP_STRING(--with-javah,specify path or name of a javah-like program)], - [ - if test "x${withval}" != x && test "x${withval}" != xyes && test "x${withval}" != xno; then - CLASSPATH_CHECK_JAVAH(${withval}) - else - CLASSPATH_CHECK_JAVAH - fi - ], - [ - CLASSPATH_CHECK_JAVAH - ]) - AC_SUBST(USER_JAVAH) -]) - -dnl ----------------------------------------------------------- -dnl Checking for a javah like program -dnl ----------------------------------------------------------- -AC_DEFUN([CLASSPATH_CHECK_JAVAH], -[ - if test "x$1" != x; then - if test -f "$1"; then - USER_JAVAH="$1" - else - AC_PATH_PROG(USER_JAVAH, "$1") - fi - else - AC_PATH_PROGS([USER_JAVAH],[gjavah gcjh-wrapper-4.1 gcjh-4.1 gcjh javah]) - fi - - if test "x${USER_JAVAH}" = x; then - AC_MSG_ERROR([can not find javah]) - fi + AC_SUBST(LANGTOOLS_SRC_DIR) + AM_CONDITIONAL(GNU_CLASSLIB_FOUND, test "x${conditional_with_langtools_sources}" = xtrue) ]) dnl ----------------------------------------------------------- @@ -250,225 +122,4 @@ [ conditional_with_classlib=false ]) AM_CONDITIONAL(USER_SPECIFIED_CLASSLIB, test "x${conditional_with_classlib}" = xtrue) - AC_ARG_WITH([vm-classes], - [AS_HELP_STRING(--with-vm-classes,specify path to VM override source files)], [vm_classes="$with_vm_classes"], - [vm_classes='${top_srcdir}/vm/reference']) - AC_SUBST(vm_classes) ]) - -dnl ----------------------------------------------------------- -dnl CLASSPATH_WITH_GLIBJ - specify what to install -dnl ----------------------------------------------------------- -AC_DEFUN([CLASSPATH_WITH_GLIBJ], -[ - AC_PATH_PROG(ZIP, zip) - AC_ARG_WITH([fastjar], - [AS_HELP_STRING([--with-fastjar=PATH], [define to use a fastjar style tool])], - [ - AC_MSG_CHECKING([for user supplied fastjar]) - FASTJAR=${withval} - AC_MSG_RESULT([${FASTJAR}]) - ], - [AC_PATH_PROG(FASTJAR, fastjar)]) -dnl We disable ZIP by default if we find fastjar. - if test x"${FASTJAR}" != x; then - ZIP="" - fi - - AC_ARG_WITH([glibj], - [AS_HELP_STRING([--with-glibj],[define what to install (zip|flat|both|none|build) [default=zip]])], - [ - if test "x${withval}" = xyes || test "x${withval}" = xzip; then - install_class_files=no - build_class_files=yes - use_zip=yes - elif test "x${withval}" = xboth; then - install_class_files=yes - build_class_files=yes - use_zip=yes - elif test "x${withval}" = xflat; then - install_class_files=yes - build_class_files=yes - use_zip=no - elif test "x${withval}" = xno || test "x${withval}" = xnone; then - install_class_files=no - build_class_files=no - use_zip=no - elif test "x${withval}" = xbuild; then - install_class_files=no - build_class_files=yes - use_zip=no - else - AC_MSG_ERROR([unknown value given to --with-glibj]) - fi - ], - [ - install_class_files=no - use_zip=yes - ]) - AM_CONDITIONAL(INSTALL_GLIBJ_ZIP, test "x${use_zip}" = xyes) - AM_CONDITIONAL(INSTALL_CLASS_FILES, test "x${install_class_files}" = xyes) - AM_CONDITIONAL(BUILD_CLASS_FILES, test "x${build_class_files}" = xyes) - - AC_ARG_ENABLE([examples], - [AS_HELP_STRING(--enable-examples,enable build of the examples [default=yes])], - [case "${enableval}" in - yes) EXAMPLESDIR="examples" ;; - no) EXAMPLESDIR="" ;; - *) AC_MSG_ERROR(bad value ${enableval} for --enable-examples) ;; - esac], - [EXAMPLESDIR="examples"]) - if test "x${use_zip}" = xno && test "x${install_class_files}" = xno; then - EXAMPLESDIR="" - fi - AC_SUBST(EXAMPLESDIR) -]) - -dnl ----------------------------------------------------------- -dnl Enable generation of API documentation, with gjdoc if it -dnl has been compiled to an executable (or a suitable script -dnl is in your PATH) or using the argument as gjdoc executable. -dnl ----------------------------------------------------------- -AC_DEFUN([CLASSPATH_WITH_GJDOC], -[ - AC_ARG_WITH([gjdoc], - AS_HELP_STRING([--with-gjdoc], - [generate documentation using gjdoc (default is NO)]), - [if test "x${withval}" = xno; then - WITH_GJDOC=no; - elif test "x${withval}" = xyes -o "x{withval}" = x; then - WITH_GJDOC=yes; - AC_PATH_PROG(GJDOC, gjdoc, "no") - if test "x${GJDOC}" = xno; then - AC_MSG_ERROR("gjdoc executable not found"); - fi - else - WITH_GJDOC=yes - GJDOC="${withval}" - AC_CHECK_FILE(${GJDOC}, AC_SUBST(GJDOC), - AC_MSG_ERROR("Cannot use ${withval} as gjdoc executable since it doesn't exist")) - fi], - [WITH_GJDOC=no]) - - AM_CONDITIONAL(CREATE_API_DOCS, test "x${WITH_GJDOC}" = xyes) -]) - -dnl ----------------------------------------------------------- -dnl Enable regeneration of parsers using jay -dnl http://www.informatik.uni-osnabrueck.de/alumni/bernd/jay/ -dnl ----------------------------------------------------------- -AC_DEFUN([REGEN_WITH_JAY], -[ - AC_ARG_WITH([jay], - [AS_HELP_STRING(--with-jay,Regenerate the parsers with jay must be given the path to the jay executable)], - [ - if test -d "${withval}"; then - JAY_DIR_PATH="${withval}" - AC_PATH_PROG(JAY, jay, "no", ${JAY_DIR_PATH}) - if test "x${JAY}" = xno; then - AC_MSG_ERROR("jay executable not found"); - fi - else - JAY_DIR_PATH=`dirname "${withval}"` - JAY="${withval}" - AC_SUBST(JAY) - fi - JAY_SKELETON="${JAY_DIR_PATH}/skeleton" - AC_CHECK_FILE(${JAY_SKELETON}, AC_SUBST(JAY_SKELETON), - AC_MSG_ERROR("Expected skeleton file in `dirname ${withval}`")) - JAY_FOUND=yes - ], - [ - JAY_FOUND=no - ]) - AM_CONDITIONAL(REGEN_PARSERS, test "x${JAY_FOUND}" = xyes) -]) - -dnl ----------------------------------------------------------- -AC_DEFUN([CLASSPATH_WITH_ECJ], -[ - AC_ARG_WITH([ecj], - [AS_HELP_STRING(--with-ecj,bytecode compilation with ecj)], - [ - if test "x${withval}" != x && test "x${withval}" != xyes && test "x${withval}" != xno; then - CLASSPATH_CHECK_ECJ(${withval}) - else - if test "x${withval}" != xno; then - CLASSPATH_CHECK_ECJ - fi - fi - user_specified_javac=ecj - ], - [ - CLASSPATH_CHECK_ECJ - ]) - AC_SUBST(ECJ) -]) - -dnl ----------------------------------------------------------- -AC_DEFUN([CLASSPATH_CHECK_ECJ], -[ - if test "x$1" != x; then - if test -f "$1"; then - ECJ="$1" - else - AC_PATH_PROG(ECJ, "$1") - fi - else - AC_PATH_PROG(ECJ, "ecj") - fi -]) - -dnl ----------------------------------------------------------- -AC_DEFUN([CLASSPATH_WITH_JAVAC], -[ - AC_ARG_WITH([javac], - [AS_HELP_STRING(--with-javac,bytecode compilation with javac)], - [ - if test "x${withval}" != x && test "x${withval}" != xyes && test "x${withval}" != xno; then - CLASSPATH_CHECK_JAVAC(${withval}) - else - if test "x${withval}" != xno; then - CLASSPATH_CHECK_JAVAC - fi - fi - user_specified_javac=javac - ], - [ - CLASSPATH_CHECK_JAVAC - ]) - AC_SUBST(JAVAC) -]) - -dnl ----------------------------------------------------------- -AC_DEFUN([CLASSPATH_CHECK_JAVAC], -[ - if test "x$1" != x; then - if test -f "$1"; then - JAVAC="$1" - else - AC_PATH_PROG(JAVAC, "$1") - fi - else - AC_PATH_PROG(JAVAC, "javac") - fi -]) - -AC_DEFUN([WITH_LANGTOOLS_SRC_DIR], -[ - AC_MSG_CHECKING(langtools sources) - AC_ARG_WITH([langtools-src-dir], - [AS_HELP_STRING(--with-langtools-src-dir,specify the location of the openjdk langtools sources)], - [ - LANGTOOLS_SRC_DIR=${withval} - AC_MSG_RESULT(${withval}) - conditional_with_langtools_sources=true - ], - [ - conditional_with_langtools_sources=false - LANGTOOLS_SRC_DIR=`pwd`/langtools - AC_MSG_RESULT(${OPENJDK_SRC_DIR}) - ]) - AC_SUBST(LANGTOOLS_SRC_DIR) - AM_CONDITIONAL(GNU_CLASSLIB_FOUND, test "x${conditional_with_langtools_sources}" = xtrue) -])