changeset 255:25dc7d8cb757

Allow icedtea-web to run with just a JRE 2011-08-23 Omair Majid <omajid@redhat.com> * Makefile.am: Remove JRE. Replace uses with SYSTEM_JRE_DIR instead. Also replace uses of SYSTEM_JDK_DIR/jre with SYSTEM_JRE_DIR. * acinclude.m4 (IT_CHECK_FOR_JRE): New macro. (IT_FIND_JAVA): Require IT_CHECK_FOR_JRE. Use java binary from within the JRE.
author Omair Majid <omajid@redhat.com>
date Tue, 23 Aug 2011 12:52:10 -0400
parents db6914cf15be
children 494140bdce62
files ChangeLog Makefile.am acinclude.m4
diffstat 3 files changed, 43 insertions(+), 8 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Wed Aug 03 14:11:11 2011 -0400
+++ b/ChangeLog	Tue Aug 23 12:52:10 2011 -0400
@@ -1,3 +1,12 @@
+2011-08-23  Omair Majid  <omajid@redhat.com>
+
+	* Makefile.am: Remove JRE. Replace uses with SYSTEM_JRE_DIR instead. Also
+	replace uses of SYSTEM_JDK_DIR/jre with SYSTEM_JRE_DIR.
+	* acinclude.m4
+	(IT_CHECK_FOR_JRE): New macro.
+	(IT_FIND_JAVA): Require IT_CHECK_FOR_JRE. Use java binary from within the
+	JRE.
+
 2011-08-03  Deepak Bhole <dbhole@redhat.com>
 
 	PR768: Signed applets/Web Start apps don't work with OpenJDK7 and up
--- a/Makefile.am	Wed Aug 03 14:11:11 2011 -0400
+++ b/Makefile.am	Tue Aug 23 12:52:10 2011 -0400
@@ -43,7 +43,6 @@
 #    IllegalAccessException
 #  - we want full privileges
 #
-JRE='"$(SYSTEM_JDK_DIR)/jre"'
 LAUNCHER_BOOTCLASSPATH="-Xbootclasspath/a:$(datadir)/$(PACKAGE_NAME)/netx.jar$(RHINO_RUNTIME)"
 PLUGIN_BOOTCLASSPATH='"-Xbootclasspath/a:$(datadir)/$(PACKAGE_NAME)/netx.jar:$(datadir)/$(PACKAGE_NAME)/plugin.jar$(RHINO_RUNTIME)"'
 
@@ -120,7 +119,7 @@
   -e 's|[@]JAVAWS_BIN_LOCATION[@]|$(bindir)/$(javaws)|g' \
   -e 's|[@]ITWEB_SETTINGS_BIN_LOCATION[@]|$(bindir)/$(itweb_settings)|g' \
   -e 's|[@]JAVA[@]|$(JAVA)|g' \
-  -e 's|[@]JRE[@]|$(JRE)|g'
+  -e 's|[@]JRE[@]|$(SYSTEM_JRE_DIR)|g'
 
 # Top-Level Targets
 # =================
@@ -208,7 +207,7 @@
 	  -DPLUGIN_VERSION="\"$(PLUGIN_VERSION)\"" \
 	  -DPACKAGE_URL="\"$(PACKAGE_URL)\"" \
 	  -DMOZILLA_VERSION_COLLAPSED="$(MOZILLA_VERSION_COLLAPSED)" \
-	  -DICEDTEA_WEB_JRE=$(JRE) \
+	  -DICEDTEA_WEB_JRE="\"$(SYSTEM_JRE_DIR)\"" \
 	  -DPLUGIN_BOOTCLASSPATH=$(PLUGIN_BOOTCLASSPATH) \
 	  $(GLIB_CFLAGS) \
 	  $(GTK_CFLAGS) \
@@ -530,13 +529,13 @@
 	ln -sf $(abs_top_builddir)/javac $(BOOT_DIR)/bin/javac
 	ln -sf $(JAVADOC) $(BOOT_DIR)/bin/javadoc
 	mkdir -p $(BOOT_DIR)/jre/lib && \
-	ln -s $(SYSTEM_JDK_DIR)/jre/lib/rt.jar $(BOOT_DIR)/jre/lib && \
-	if [ -e $(SYSTEM_JDK_DIR)/jre/lib/jsse.jar ] ; then \
-	  ln -s $(SYSTEM_JDK_DIR)/jre/lib/jsse.jar $(BOOT_DIR)/jre/lib ; \
+	ln -s $(SYSTEM_JRE_DIR)/lib/rt.jar $(BOOT_DIR)/jre/lib && \
+	if [ -e $(SYSTEM_JRE_DIR)/lib/jsse.jar ] ; then \
+	  ln -s $(SYSTEM_JRE_DIR)/lib/jsse.jar $(BOOT_DIR)/jre/lib ; \
 	else \
 	  ln -s rt.jar $(BOOT_DIR)/jre/lib/jsse.jar ; \
 	fi
-	ln -sf $(SYSTEM_JDK_DIR)/jre/lib/$(JRE_ARCH_DIR) \
+	ln -sf $(SYSTEM_JRE_DIR)/lib/$(JRE_ARCH_DIR) \
 	  $(BOOT_DIR)/jre/lib/ && \
 	if ! test -d $(BOOT_DIR)/jre/lib/$(INSTALL_ARCH_DIR); \
 	  then \
--- a/acinclude.m4	Wed Aug 03 14:11:11 2011 -0400
+++ b/acinclude.m4	Tue Aug 23 12:52:10 2011 -0400
@@ -64,6 +64,32 @@
   AC_SUBST(SYSTEM_JDK_DIR)
 ])
 
+AC_DEFUN_ONCE([IT_CHECK_FOR_JRE],
+[
+  AC_REQUIRE([IT_CHECK_FOR_JDK])
+  AC_MSG_CHECKING([for a JRE home directory])
+  AC_ARG_WITH([jre-home],
+             [AS_HELP_STRING([--with-jre-home],
+                              [jre home directory \
+                               (default is the JRE under the JDK)])],
+             [
+               SYSTEM_JRE_DIR=${withval}
+             ],
+             [
+               SYSTEM_JRE_DIR=
+             ])
+  if test -z "${SYSTEM_JRE_DIR}" ; then
+    if test -d "${SYSTEM_JDK_DIR}/jre" ; then
+      SYSTEM_JRE_DIR="${SYSTEM_JDK_DIR}/jre"
+    fi
+  fi
+  AC_MSG_RESULT(${SYSTEM_JRE_DIR})
+  if ! test -d "${SYSTEM_JRE_DIR}"; then
+    AC_MSG_ERROR("A JRE home directory could not be found.")
+  fi
+  AC_SUBST(SYSTEM_JRE_DIR)
+])
+
 AC_DEFUN_ONCE([FIND_JAVAC],
 [
   AC_REQUIRE([IT_CHECK_FOR_JDK])
@@ -592,6 +618,7 @@
 
 AC_DEFUN_ONCE([IT_FIND_JAVA],
 [
+  AC_REQUIRE([IT_CHECK_FOR_JRE])
   AC_MSG_CHECKING([for a Java virtual machine])
   AC_ARG_WITH([java],
               [AS_HELP_STRING(--with-java,specify location of the 1.5 java vm)],
@@ -599,7 +626,7 @@
     JAVA="${withval}"
   ],
   [
-    JAVA=${SYSTEM_JDK_DIR}/bin/java
+    JAVA="${SYSTEM_JRE_DIR}/bin/java"
   ])
   if ! test -f "${JAVA}"; then
     AC_PATH_PROG(JAVA, "${JAVA}")