/hg/icedtea6: JamVM: Taste the New --enable-jamvm Flavour!
xranby at icedtea.classpath.org
xranby at icedtea.classpath.org
Tue Feb 22 03:38:24 PST 2011
changeset 7d23f65c73a8 in /hg/icedtea6
details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=7d23f65c73a8
author: Xerxes R?nby <xerxes at zafena.se>
date: Tue Feb 22 12:21:34 2011 +0100
JamVM: Taste the New --enable-jamvm Flavour!
2011-02-22 Xerxes Ranby <xerxes at zafena.se>
JamVM: Taste the New --enable-jamvm Flavour!
* NEWS: Updated.
* Makefile.am (JAMVM_VERSION): New variable.
(JAMVM_SHA256SUM): Likewise. (JAMVM_BASE_URL): Likewise.
(JAMVM_URL): Likewise. (JAMVM_SRC_ZIP): Likewise.
(JAMVM_IMPORT_PATH): Likewise. (ICEDTEA_BUILD_TARGET):
Build only jdk if jamvm are enabled.
(ICEDTEA_DEBUG_BUILD_TARGET): Likewise. (ICEDTEA_ENV): Set
ALT_HOTSPOT_IMPORT_PATH to JAMVM_IMPORT_PATH if jamvm are
enabled. (PRODUCT_NAME): Make -version report IcedTea6
Runtime Environment if jamvm are enabled.
(JDK_DERIVATIVE_NAME): Only show IcedTea version if jamvm
are enabled. (stamps/download-jamvm.stamp): New make target.
(clean-download-jamvm): Likewise. (stamps/extract-
jamvm.stamp): Likewise. (stamps/jamvm.stamp): Likewise.
(clean-jamvm): Likewise. (.PHONY): Add clean-jamvm.
(stamps/download.stamp): Add stamps/download-jamvm.stamp.
(clean-download): Add clean-download-jamvm.
(stamps/extract.stamp): Add stamps/extract-jamvm.stamp.
(clean-extract): Add clean-jamvm. (stamps/icedtea.stamp):
Add stamps/jamvm.stamp. (download-jamvm): Alias to stamps
/download-jamvm.stamp. (jamvm): Alias to stamps/jamvm.stamp.
* configure.ac (IT_CHECK_ENABLE_JAMVM): Use new macro.
* acinclude.m4: (ENABLE_ZERO_BUILD): Do not use zero if jamvm
are enabled. (IT_CHECK_ENABLE_JAMVM): New macro.
(BUILD_JAMVM): New conditional. (ENABLE_JAMVM): New
conditional.
diffstat:
5 files changed, 170 insertions(+), 10 deletions(-)
ChangeLog | 39 +++++++++++++++++++
Makefile.am | 116 +++++++++++++++++++++++++++++++++++++++++++++++++++++-----
NEWS | 1
acinclude.m4 | 21 ++++++++++
configure.ac | 3 +
diffs (355 lines):
diff -r 3dc52504cbdd -r 7d23f65c73a8 ChangeLog
--- a/ChangeLog Tue Feb 22 10:58:37 2011 +0000
+++ b/ChangeLog Tue Feb 22 12:21:34 2011 +0100
@@ -1,3 +1,42 @@ 2011-02-22 Andrew John Hughes <ahughes
+2011-02-22 Xerxes Ranby <xerxes at zafena.se>
+
+ JamVM: Taste the New --enable-jamvm Flavour!
+ * NEWS: Updated.
+ * Makefile.am (JAMVM_VERSION): New variable.
+ (JAMVM_SHA256SUM): Likewise.
+ (JAMVM_BASE_URL): Likewise.
+ (JAMVM_URL): Likewise.
+ (JAMVM_SRC_ZIP): Likewise.
+ (JAMVM_IMPORT_PATH): Likewise.
+ (ICEDTEA_BUILD_TARGET):
+ Build only jdk if jamvm are enabled.
+ (ICEDTEA_DEBUG_BUILD_TARGET): Likewise.
+ (ICEDTEA_ENV): Set ALT_HOTSPOT_IMPORT_PATH to JAMVM_IMPORT_PATH
+ if jamvm are enabled.
+ (PRODUCT_NAME): Make -version report IcedTea6 Runtime Environment
+ if jamvm are enabled.
+ (JDK_DERIVATIVE_NAME): Only show IcedTea version
+ if jamvm are enabled.
+ (stamps/download-jamvm.stamp): New make target.
+ (clean-download-jamvm): Likewise.
+ (stamps/extract-jamvm.stamp): Likewise.
+ (stamps/jamvm.stamp): Likewise.
+ (clean-jamvm): Likewise.
+ (.PHONY): Add clean-jamvm.
+ (stamps/download.stamp): Add stamps/download-jamvm.stamp.
+ (clean-download): Add clean-download-jamvm.
+ (stamps/extract.stamp): Add stamps/extract-jamvm.stamp.
+ (clean-extract): Add clean-jamvm.
+ (stamps/icedtea.stamp): Add stamps/jamvm.stamp.
+ (download-jamvm): Alias to stamps/download-jamvm.stamp.
+ (jamvm): Alias to stamps/jamvm.stamp.
+ * configure.ac (IT_CHECK_ENABLE_JAMVM): Use new macro.
+ * acinclude.m4:
+ (ENABLE_ZERO_BUILD): Do not use zero if jamvm are enabled.
+ (IT_CHECK_ENABLE_JAMVM): New macro.
+ (BUILD_JAMVM): New conditional.
+ (ENABLE_JAMVM): New conditional.
+
2011-02-22 Andrew John Hughes <ahughes at redhat.com>
PR633: IcedTea installs javaws manpages on x86
diff -r 3dc52504cbdd -r 7d23f65c73a8 Makefile.am
--- a/Makefile.am Tue Feb 22 10:58:37 2011 +0000
+++ b/Makefile.am Tue Feb 22 12:21:34 2011 +0100
@@ -10,6 +10,17 @@ CACAO_BASE_URL = http://icedtea.classpat
CACAO_BASE_URL = http://icedtea.classpath.org/download/drops/cacao
CACAO_URL = $(CACAO_BASE_URL)/$(CACAO_VERSION).tar.gz
CACAO_SRC_ZIP = cacao-$(CACAO_VERSION).tar.gz
+
+# The jamvm-3f02679901ac46985c9c3ac3f1b99e8eaf6a7e27.tar.gz got fetched from
+# http://git.berlios.de/cgi-bin/cgit.cgi/jamvm/snapshot/jamvm-3f02679901ac46985c9c3ac3f1b99e8eaf6a7e27.tar.gz
+# Unfortunally the generated .tar.gz by the berlios cgit snapshot function
+# keeps changing sha256sum. I have hosted a snapshot on labb.zafena.se
+# while we wait for the final JamVM 1.6.0 release.
+JAMVM_VERSION = 3f02679901ac46985c9c3ac3f1b99e8eaf6a7e27
+JAMVM_SHA256SUM = 396daf08896a71cfcddfabfbaf2d8b3f07557d8143eaaa93be25e2d80f30e165
+JAMVM_BASE_URL = http://labb.zafena.se/jamvm
+JAMVM_URL = $(JAMVM_BASE_URL)/jamvm-$(JAMVM_VERSION).tar.gz
+JAMVM_SRC_ZIP = jamvm-$(JAMVM_VERSION).tar.gz
JAXWS_DROP_URL = http://icedtea.classpath.org/download/drops
JAXWS_DROP_ZIP = jdk6-jaxws-b20.zip
@@ -37,6 +48,7 @@ ENDORSED_DIR = $(BOOT_DIR)/lib/endorsed
ENDORSED_DIR = $(BOOT_DIR)/lib/endorsed
ECJ_BOOT_DIR = $(abs_top_builddir)/bootstrap/ecj
ICEDTEA_BOOT_DIR = $(abs_top_builddir)/bootstrap/icedtea
+JAMVM_IMPORT_PATH = $(abs_top_builddir)/jamvm/install/hotspot
SERVER_DIR = hotspot/import/jre/lib/$(INSTALL_ARCH_DIR)/server
BUILD_JRE_ARCH_DIR = $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR)
BUILD_DEBUG_JRE_ARCH_DIR = $(DEBUG_BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR)
@@ -126,7 +138,12 @@ if WITH_CACAO
ICEDTEA_BUILD_TARGET=jdk_only
ICEDTEA_DEBUG_BUILD_TARGET = jdk_fastdebug_only
else
+if ENABLE_JAMVM
+ ICEDTEA_BUILD_TARGET=jdk_only
+ ICEDTEA_DEBUG_BUILD_TARGET = jdk_fastdebug_only
+else
ICEDTEA_DEBUG_BUILD_TARGET = debug_build
+endif
endif
if BOOTSTRAPPING
@@ -471,6 +488,11 @@ ICEDTEA_ENV += \
ALT_HOTSPOT_IMPORT_PATH="$(CACAO_IMPORT_PATH)"
endif
+if ENABLE_JAMVM
+ICEDTEA_ENV += \
+ ALT_HOTSPOT_IMPORT_PATH="$(JAMVM_IMPORT_PATH)"
+endif
+
if DISABLE_OPTIMIZATIONS
ICEDTEA_ENV += \
NO_OPTIMIZATIONS="true" \
@@ -584,8 +606,10 @@ install:
clean-icedtea icedtea-against-icedtea clean-icedtea-ecj \
clean-tools-jar clean-copy clean-rt hotspot \
hotspot-helper clean-extra clean-jtreg clean-jtreg-reports \
- clean-add-zero clean-add-zero-debug clean-icedtea clean-icedtea-debug
- clean-icedtea-against-ecj clean-cacao clean-add-cacao clean-add-cacao-debug \
+ clean-add-zero clean-add-zero-debug clean-icedtea clean-icedtea-debug \
+ clean-icedtea-against-ecj \
+ clean-jamvm \
+ clean-cacao clean-add-cacao clean-add-cacao-debug \
clean-ports clean-overlay clean-extract-ecj clean-extract clean-extract-openjdk \
clean-replace-hotspot clean-generated clean-download clean-hgforest clean-download-openjdk \
clean-rewriter clean-rewrite-rhino clean-add-systemtap clean-add-systemtap-debug \
@@ -742,6 +766,29 @@ clean-download-cacao:
rm -f $(CACAO_SRC_ZIP)
rm -f stamps/download-cacao.stamp
+stamps/download-jamvm.stamp:
+if BUILD_JAMVM
+ if ! echo "$(JAMVM_SHA256SUM) $(JAMVM_SRC_ZIP)" \
+ | $(SHA256SUM) --check ; \
+ then \
+ if [ $(JAMVM_SRC_ZIP) ] ; \
+ then \
+ mv $(JAMVM_SRC_ZIP) $(JAMVM_SRC_ZIP).old ; \
+ fi ; \
+ $(WGET) $(JAMVM_URL) -O $(JAMVM_SRC_ZIP); \
+ if ! echo "$(JAMVM_SHA256SUM) $(JAMVM_SRC_ZIP)" \
+ | $(SHA256SUM) --check ; \
+ then echo "ERROR: Bad download of JamVM zip"; false; \
+ fi; \
+ fi
+endif
+ mkdir -p stamps
+ touch $@
+
+clean-download-jamvm:
+ rm -f $(JAMVM_SRC_ZIP)
+ rm -f stamps/download-jamvm.stamp
+
clean-drops: clean-download-jaxp-drop clean-download-jaf-drop \
clean-download-jaxws-drop
if [ -e drops ] ; then \
@@ -804,18 +851,19 @@ clean-download-openjdk:
rm -f stamps/download-openjdk.stamp
stamps/download.stamp: stamps/download-drops.stamp stamps/download-cacao.stamp \
- stamps/download-openjdk.stamp
+ stamps/download-jamvm.stamp stamps/download-openjdk.stamp
touch stamps/download.stamp
-clean-download: clean-drops clean-download-cacao clean-download-openjdk
+clean-download: clean-drops clean-download-cacao clean-download-jamvm \
+ clean-download-openjdk
rm -f stamps/download.stamp
stamps/extract.stamp: stamps/extract-openjdk.stamp \
- stamps/extract-cacao.stamp
+ stamps/extract-cacao.stamp stamps/extract-jamvm.stamp
mkdir -p stamps
touch $@
-clean-extract: clean-extract-openjdk clean-cacao
+clean-extract: clean-extract-openjdk clean-cacao clean-jamvm
rm -f stamps/extract.stamp
stamps/extract-openjdk.stamp: stamps/download.stamp
@@ -872,6 +920,20 @@ endif
endif
mkdir -p stamps
touch stamps/extract-cacao.stamp
+
+stamps/extract-jamvm.stamp:
+if BUILD_JAMVM
+ set -e ; \
+ if ! test -d jamvm ; \
+ then \
+ mkdir jamvm ; \
+ $(TAR) xf $(JAMVM_SRC_ZIP) -C jamvm ; \
+ dir=$$(basename jamvm/jamvm-*) ; \
+ ln -s $$dir jamvm/jamvm ; \
+ fi
+endif
+ mkdir -p stamps
+ touch stamps/extract-jamvm.stamp
stamps/replace-hotspot.stamp: stamps/extract.stamp
if WITH_ALT_HSBUILD
@@ -1020,7 +1082,8 @@ stamps/patch.stamp: stamps/patch-fsg.sta
fi
icedtea_version="$(PACKAGE_VERSION)$(ICEDTEA_REV)" ; \
- if ! test "x$(WITH_CACAO)" = "xno"; then \
+ if test "x$(WITH_CACAO)" = "xyes" || \
+ test "x$(ENABLE_JAMVM)" = "xyes"; then \
echo "JDK_DERIVATIVE_NAME=$${icedtea_version}" \
>>openjdk/jdk/make/common/shared/Defs.gmk ; \
echo "PRODUCT_NAME=$(ICEDTEA_NAME)" \
@@ -1247,7 +1310,8 @@ clean-bootstrap-directory-symlink:
# If you change anything here in the icedtea target, please make sure
# you change it in the icedtea-debug target as well.
stamps/icedtea.stamp: stamps/bootstrap-directory-symlink.stamp \
- $(OPENJDK_TREE) stamps/cacao.stamp stamps/rewrite-rhino.stamp
+ $(OPENJDK_TREE) stamps/cacao.stamp stamps/rewrite-rhino.stamp \
+ stamps/jamvm.stamp
$(ARCH_PREFIX) $(MAKE) \
$(ICEDTEA_ENV) \
-C openjdk \
@@ -1265,6 +1329,9 @@ if WITH_CACAO
if WITH_CACAO
printf -- '-cacao ALIASED_TO -server\n' >> $(BUILD_JRE_ARCH_DIR)/jvm.cfg
endif
+if ENABLE_JAMVM
+ printf -- '-jamvm ALIASED_TO -server\n' >> $(BUILD_JRE_ARCH_DIR)/jvm.cfg
+endif
@echo "IcedTea is served:" $(BUILD_OUTPUT_DIR)
mkdir -p stamps
touch stamps/icedtea.stamp
@@ -1274,7 +1341,8 @@ clean-icedtea:
rm -f stamps/icedtea.stamp
stamps/icedtea-debug.stamp: stamps/bootstrap-directory-symlink.stamp \
- $(OPENJDK_TREE) stamps/cacao.stamp stamps/rewrite-rhino.stamp
+ $(OPENJDK_TREE) stamps/cacao.stamp stamps/rewrite-rhino.stamp \
+ stamps/jamvm.stamp
$(ARCH_PREFIX) $(MAKE) \
$(ICEDTEA_ENV) \
-C openjdk \
@@ -1291,6 +1359,9 @@ endif
endif
if WITH_CACAO
printf -- '-cacao ALIASED_TO -server\n' >> $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg
+endif
+if ENABLE_JAMVM
+ printf -- '-jamvm ALIASED_TO -server\n' >> $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg
endif
@echo "IcedTea (debug build) is served:" \
$(DEBUG_BUILD_OUTPUT_DIR)
@@ -1697,6 +1768,29 @@ clean-rewrite-rhino:
fi
rm -f stamps/rewrite-rhino.stamp
+# JamVM
+
+stamps/jamvm.stamp: $(OPENJDK_TREE) stamps/rt.stamp
+if BUILD_JAMVM
+ cd jamvm/jamvm && \
+ ./autogen.sh --with-java-runtime-library=openjdk \
+ --prefix=$(abs_top_builddir)/jamvm/install ; \
+ $(MAKE) ; \
+ $(MAKE) install
+ mkdir -p $(abs_top_builddir)/jamvm/install/hotspot/jre/lib/$(INSTALL_ARCH_DIR)/server
+ cp $(abs_top_builddir)/jamvm/install/lib/libjvm.so $(abs_top_builddir)/jamvm/install/hotspot/jre/lib/$(INSTALL_ARCH_DIR)/server
+ ln -s server $(abs_top_builddir)/jamvm/install/hotspot/jre/lib/$(INSTALL_ARCH_DIR)/client
+ touch $(abs_top_builddir)/jamvm/install/hotspot/jre/lib/$(INSTALL_ARCH_DIR)/server/Xusage.txt
+ touch $(abs_top_builddir)/jamvm/install/hotspot/jre/lib/$(INSTALL_ARCH_DIR)/libjsig.so
+endif
+ mkdir -p stamps
+ touch $@
+
+clean-jamvm:
+ rm -rf jamvm
+ rm -f stamps/jamvm.stamp
+ rm -f stamps/extract-jamvm.stamp
+
# CACAO
stamps/cacao.stamp: $(OPENJDK_TREE) stamps/rt.stamp
@@ -2061,6 +2155,8 @@ download-cacao: stamps/download-cacao.st
download-drops: stamps/download-drops.stamp
+download-jamvm: stamps/download-jamvm.stamp
+
download-jaf-drop: stamps/download-jaf-drop.stamp
download-jaxp-drop: stamps/download-jaxp-drop.stamp
@@ -2084,6 +2180,8 @@ icedtea-debug-against-icedtea: stamps/ic
icedtea-debug-against-icedtea: stamps/icedtea-debug-against-icedtea.stamp
icedtea-ecj: stamps/icedtea-ecj.stamp
+
+jamvm: stamps/jamvm.stamp
jtreg: stamps/jtreg.stamp
diff -r 3dc52504cbdd -r 7d23f65c73a8 NEWS
--- a/NEWS Tue Feb 22 10:58:37 2011 +0000
+++ b/NEWS Tue Feb 22 12:21:34 2011 +0100
@@ -10,6 +10,7 @@ CVE-XXXX-YYYY: http://www.cve.mitre.org/
New in release 1.10 (2011-XX-XX):
+* Added out-of-the-box JamVM support using --enable-jamvm
* NetX and the plugin moved to the IcedTea-Web project with a separate
release cycle.
* Shark provided upstream rather than as part of IcedTea.
diff -r 3dc52504cbdd -r 7d23f65c73a8 acinclude.m4
--- a/acinclude.m4 Tue Feb 22 10:58:37 2011 +0000
+++ b/acinclude.m4 Tue Feb 22 12:21:34 2011 +0100
@@ -783,7 +783,8 @@ AC_DEFUN([IT_ENABLE_ZERO_BUILD],
sparc*-*-*) ;;
x86_64-*-*) ;;
*)
- if test "x${WITH_CACAO}" != xno; then
+ if test "x${WITH_CACAO}" != xno || \
+ test "x${ENABLE_JAMVM}" = xyes; then
use_zero=no
else
use_zero=yes
@@ -855,6 +856,23 @@ AC_DEFUN([IT_SET_SHARK_BUILD],
AC_MSG_RESULT($use_shark)
AM_CONDITIONAL(SHARK_BUILD, test "x${use_shark}" = xyes)
+])
+
+AC_DEFUN([IT_CHECK_ENABLE_JAMVM],
+[
+ AC_MSG_CHECKING(whether to use JamVM as VM)
+ AC_ARG_ENABLE([jamvm],
+ [AS_HELP_STRING(--enable-jamvm,use JamVM as VM [[default=no]])],
+ [
+ ENABLE_JAMVM="${enableval}"
+ ],
+ [
+ ENABLE_JAMVM=no
+ ])
+
+ AC_MSG_RESULT(${ENABLE_JAMVM})
+ AM_CONDITIONAL(ENABLE_JAMVM, test x"${ENABLE_JAMVM}" = "xyes")
+ AC_SUBST(ENABLE_JAMVM)
])
AC_DEFUN([IT_CHECK_ENABLE_CACAO],
@@ -1203,6 +1221,7 @@ AM_CONDITIONAL(ADD_CACAO_BUILD, test x$a
AM_CONDITIONAL(ADD_CACAO_BUILD, test x$add_vm_cacao != x)
AM_CONDITIONAL(ADD_ZERO_BUILD, test x$add_vm_zero != x || test x$add_vm_shark != x)
AM_CONDITIONAL(ADD_SHARK_BUILD, test x$add_vm_shark != x)
+AM_CONDITIONAL(BUILD_JAMVM, test "x${ENABLE_JAMVM}" = xyes)
AM_CONDITIONAL(BUILD_CACAO, test x$add_vm_cacao != x || test "x${WITH_CACAO}" = xyes)
if test "x${WITH_CACAO}" = xyes && test "x${ADD_CACAO_BUILD_TRUE}" = x; then
diff -r 3dc52504cbdd -r 7d23f65c73a8 configure.ac
--- a/configure.ac Tue Feb 22 10:58:37 2011 +0000
+++ b/configure.ac Tue Feb 22 12:21:34 2011 +0100
@@ -175,6 +175,9 @@ IT_CHECK_WITH_CACAO_HOME
IT_CHECK_WITH_CACAO_HOME
IT_CHECK_WITH_CACAO_SRC_ZIP
IT_CHECK_WITH_CACAO_SRC_DIR
+
+IT_CHECK_ENABLE_JAMVM
+
IT_DISABLE_OPTIMIZATIONS
IT_SET_SHARK_BUILD
IT_ENABLE_ZERO_BUILD
More information about the distro-pkg-dev
mailing list