CFLAGS="$CFLAGS -D_REENTRANT"
dnl tell boehm to support threads as well
- ac_configure_args="$ac_configure_args --enable-boehm-threads=posix"
+ CONFIGURE_ARGS="${CONFIGURE_ARGS} --enable-boehm-threads=posix"
AM_CONDITIONAL([NATIVE_THREADS], [true])
else
AC_MSG_RESULT(yes, green)
dnl no threads for boehm
- ac_configure_args="$ac_configure_args --disable-boehm-threads"
+ CONFIGURE_ARGS="${CONFIGURE_ARGS} --disable-boehm-threads"
AM_CONDITIONAL([NATIVE_THREADS], [false])
fi
;;
AC_MSG_RESULT(yes)
AC_DEFINE([USE_GTK], 1, [use gtk])
AM_CONDITIONAL([USE_GTK_PEER], [true])
-
else
AC_MSG_RESULT(no)
- ac_configure_args="$ac_configure_args --disable-gtk-peer"
AM_CONDITIONAL([USE_GTK_PEER], [false])
+ CONFIGURE_ARGS="${CONFIGURE_ARGS} --disable-gtk-peer"
fi
-if test "x1" == "x$STATIC_CLASSPATH"; then
+if test "x$STATIC_CLASSPATH" = "x1"; then
AC_DEFINE([STATIC_CLASSPATH], 1, [use classpath statically linked])
AM_CONDITIONAL([STATIC_CLASSPATH], [true])
-
+ CONFIGURE_ARGS="${CONFIGURE_ARGS} --enable-static --disable-shared --disable-load-library"
else
AM_CONDITIONAL([STATIC_CLASSPATH], [false])
+ CONFIGURE_ARGS="${CONFIGURE_ARGS} --disable-static --enable-shared --enable-load-library"
+fi
+
+
+dnl should we use an external classpath installation
+AC_ARG_WITH([external-classpath], [AS_HELP_STRING(--with-external-classpath=<dir>,installation directory of external GNU classpath [[default=no]])])
+
+AC_MSG_CHECKING(whether to use an external GNU classpath)
+if test x"$with_external_classpath" != "x"; then
+ if test x"$with_external_classpath" = "xyes"; then
+ AC_MSG_ERROR(please specify the installation prefix)
+ fi
+ AC_MSG_RESULT($with_external_classpath)
+ AC_DEFINE([WITH_EXTERNAL_CLASSPATH], 1, [external classpath])
+ AM_CONDITIONAL([WITH_EXTERNAL_CLASSPATH], [true])
+ EXTERNAL_CLASSPATH_PREFIX="$with_external_classpath"
+ AC_DEFINE_UNQUOTED([EXTERNAL_CLASSPATH_PREFIX], "${EXTERNAL_CLASSPATH_PREFIX}", [external classpath directory])
+ AC_SUBST(EXTERNAL_CLASSPATH_PREFIX)
+else
+ AC_MSG_RESULT(no)
+ AM_CONDITIONAL([WITH_EXTERNAL_CLASSPATH], [false])
fi
dnl set some essential classpath options, even if their classpath default is
dnl suitable for us
-ac_configure_args="$ac_configure_args --libdir=${CACAO_INSTALL_PREFIX}/jre/lib/${ARCH_DIR} --enable-jni --disable-cni --disable-regen-headers --enable-static --enable-shared --enable-load-library"
+ac_configure_args="$ac_configure_args --libdir=${CACAO_INSTALL_PREFIX}/jre/lib/${ARCH_DIR} --enable-jni --disable-cni --disable-regen-headers ${CONFIGURE_ARGS}"
dnl now configure boehm gc and gnu classpath
[src/Makefile]
[src/cacao/Makefile]
[src/cacaoh/Makefile]
+ [src/lib/Makefile]
[src/mm/Makefile]
[src/native/Makefile]
[src/native/include/Makefile]
+## src/Makefile.am
+##
## Copyright (C) 1996-2005 R. Grafl, A. Krall, C. Kruegel, C. Oates,
## R. Obermaisser, M. Platter, M. Probst, S. Ring, E. Steiner,
## C. Thalinger, D. Thuernbeck, P. Tomsich, C. Ullrich, J. Wenninger,
##
## Changes:
##
-## $Id: Makefile.am 1999 2005-03-05 17:01:20Z twisti $
+## $Id: Makefile.am 2035 2005-03-18 12:45:13Z twisti $
## Process this file with automake to produce Makefile.in
-# keep this order!!!
+if WITH_EXTERNAL_CLASSPATH
+CLASSPATH = lib
+else
+CLASSPATH = classpath
+endif
+
+# Keep this order!!!
SUBDIRS = \
boehm-gc \
- classpath \
+ $(CLASSPATH) \
mm \
toolbox \
vm \
--- /dev/null
+## src/lib/Makefile.am
+##
+## Copyright (C) 1996-2005 R. Grafl, A. Krall, C. Kruegel, C. Oates,
+## R. Obermaisser, M. Platter, M. Probst, S. Ring, E. Steiner,
+## C. Thalinger, D. Thuernbeck, P. Tomsich, C. Ullrich, J. Wenninger,
+## Institut f. Computersprachen - TU Wien
+##
+## This file is part of CACAO.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2, or (at
+## your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program; if not, write to the Free Software
+## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+## 02111-1307, USA.
+##
+## Contact: cacao@complang.tuwien.ac.at
+##
+## Authors: Christian Thalinger
+##
+## Changes:
+##
+## $Id: Makefile.am 2035 2005-03-18 12:45:13Z twisti $
+
+## Process this file with automake to produce Makefile.in
+
+CLEANFILES = vm.zip
+
+JAVA_VM_FILES = \
+ $(top_srcdir)/src/classpath/vm/reference/gnu/java/nio/VMPipe.java \
+ $(top_srcdir)/src/classpath/vm/reference/gnu/java/nio/VMSelector.java \
+ $(top_srcdir)/src/classpath/vm/reference/gnu/classpath/VMSystemProperties.java \
+ $(top_srcdir)/src/classpath/vm/reference/gnu/classpath/VMStackWalker.java \
+ $(top_srcdir)/src/classpath/vm/reference/java/io/VMFile.java \
+ $(top_srcdir)/src/classpath/vm/reference/java/io/VMObjectStreamClass.java \
+ $(top_srcdir)/src/classpath/vm/reference/java/lang/reflect/Constructor.java \
+ $(top_srcdir)/src/classpath/vm/reference/java/lang/reflect/Field.java \
+ $(top_srcdir)/src/classpath/vm/reference/java/lang/reflect/Method.java \
+ $(top_srcdir)/src/classpath/vm/reference/java/lang/VMClass.java \
+ $(top_srcdir)/src/classpath/vm/reference/java/lang/VMClassLoader.java \
+ $(top_srcdir)/src/classpath/vm/reference/java/lang/VMCompiler.java \
+ $(top_srcdir)/src/classpath/vm/reference/java/lang/VMDouble.java \
+ $(top_srcdir)/src/classpath/vm/reference/java/lang/VMFloat.java \
+ $(top_srcdir)/src/classpath/vm/reference/java/lang/VMObject.java \
+ $(top_srcdir)/src/classpath/vm/reference/java/lang/VMProcess.java \
+ $(top_srcdir)/src/classpath/vm/reference/java/lang/VMRuntime.java \
+ $(top_srcdir)/src/classpath/vm/reference/java/lang/VMSystem.java \
+ $(top_srcdir)/src/classpath/vm/reference/java/lang/VMString.java \
+ $(top_srcdir)/src/classpath/vm/reference/java/lang/VMThread.java \
+ $(top_srcdir)/src/classpath/vm/reference/java/lang/VMThrowable.java \
+ $(top_srcdir)/src/classpath/vm/reference/java/security/VMAccessController.java \
+ $(top_srcdir)/src/classpath/vm/reference/java/util/VMTimeZone.java \
+ $(top_srcdir)/src/classpath/vm/reference/java/nio/channels/VMChannels.java \
+ $(top_srcdir)/src/classpath/vm/reference/java/nio/VMDirectByteBuffer.java
+
+#GLIBJ_ZIP = $(EXTERNAL_CLASSPATH_PREFIX)/share/classpath/glibj.zip
+GLIBJ_ZIP = ../classpath/lib/rt.jar
+
+vmzipdir = $(prefix)/jre/lib
+vmzip_DATA = vm.zip
+
+vm.zip: $(JAVA_VM_FILES)
+ jikes -bootclasspath $(GLIBJ_ZIP) -d classes $(JAVA_VM_FILES)
+ cd classes && zip -r ../vm.zip .
+
+clean-local:
+ -rm -rf classes
+
+
+## Local variables:
+## mode: Makefile
+## indent-tabs-mode: t
+## c-basic-offset: 4
+## tab-width: 8
+## compile-command: "automake --add-missing"
+## End: