--- java/icedtea-web/Makefile.orig 2012-08-15 12:26:12.000000000 -0400 +++ java/icedtea-web/Makefile 2012-08-15 15:09:18.000000000 -0400 @@ -21,7 +21,7 @@ USE_JAVA= yes JAVA_OS= native JAVA_VENDOR= openjdk -JAVA_VERSION= 1.6 +JAVA_VERSION= 1.6+ USE_XORG= x11 OPTIONS_DEFINE= PLUGIN RHINO TEST @@ -93,7 +93,7 @@ pre-extract: @${ECHO_MSG} @${ECHO_MSG} "IMPORTANT: To build IcedTea-Web ${PORTVERSION}, you have to turn on 'ICEDTEA' option" - @${ECHO_MSG} "for java/openjdk6 (default). Otherwise, it will neither build nor work." + @${ECHO_MSG} "for ${JAVA_PORT} (default). Otherwise, it will neither build nor work." @${ECHO_MSG} @sleep 10 --- java/openjdk7/Makefile.orig 2012-08-06 14:08:22.000000000 -0400 +++ java/openjdk7/Makefile 2012-08-15 15:14:19.000000000 -0400 @@ -7,6 +7,7 @@ PORTNAME= openjdk PORTVERSION= ${JDK_MAJOR_VERSION}.${PORT_MINOR_VERSION}.${PORT_BUILD_NUMBER} +PORTREVISION= 1 CATEGORIES= java devel MASTER_SITES= http://download.java.net/openjdk/jdk${JDK_MAJOR_VERSION}u${JDK_MINOR_VERSION}/promoted/b${JDK_BUILD_NUMBER}/ \ http://download.java.net/jaxp/1.4.5/:jaxp \ @@ -34,8 +35,13 @@ USE_ZIP= YES MAKE_JOBS_UNSAFE= YES -OPTIONS= POLICY "Install the Unlimited Strength Policy Files" on \ - TZUPDATE "Update the time zone data" on +.include + +OPTIONS_DEFINE= ICEDTEA POLICY TZUPDATE +OPTIONS_DEFAULT=ICEDTEA POLICY TZUPDATE +ICEDTEA_DESC= Apply additional patches from IcedTea +POLICY_DESC= Install the Unlimited Strength Policy Files +TZUPDATE_DESC= Update the time zone data PORT_MINOR_VERSION= 5 PORT_BUILD_NUMBER= 06 @@ -60,8 +66,8 @@ JAXWSFILE= jdk7-jaxws2_2_4-b04-2011_06_01.zip JAFFILE= jdk7-jaf-2010_08_19.zip -LIB_DEPENDS+= freetype.9:${PORTSDIR}/print/freetype2 \ - asound.2:${PORTSDIR}/audio/alsa-lib +LIB_DEPENDS+= freetype:${PORTSDIR}/print/freetype2 \ + asound:${PORTSDIR}/audio/alsa-lib BUILD_DEPENDS+= zip:${PORTSDIR}/archivers/zip \ unzip:${PORTSDIR}/archivers/unzip \ ${LOCALBASE}/include/cups/cups.h:${PORTSDIR}/print/cups-client @@ -117,7 +123,11 @@ .include -.if defined(WITH_TZUPDATE) +.if ${PORT_OPTIONS:MICEDTEA} +EXTRA_PATCHES= ${FILESDIR}/icedtea/applet_hole.patch +.endif + +.if ${PORT_OPTIONS:MTZUPDATE} RUN_DEPENDS+= ${LOCALBASE}/share/java/zi:${PORTSDIR}/java/java-zoneinfo .endif @@ -139,12 +149,12 @@ ${WRKSRC}/hotspot/src/os/bsd/vm/os_bsd.cpp @${REINPLACE_CMD} 's|build-policy install-limited|build-policy install-unlimited|' \ ${WRKSRC}/jdk/make/javax/crypto/Makefile -.if defined(WITH_POLICY) +.if ${PORT_OPTIONS:MPOLICY} @${REINPLACE_CMD} 's|build-policy install-limited|build-policy install-unlimited|' \ ${WRKSRC}/jdk/make/javax/crypto/Makefile .endif -.if defined(WITH_TZUPDATE) +.if ${PORT_OPTIONS:MTZUPDATE} pre-install: @# Update time zones @${RM} -rf ${WRKSRC}/build/${OPENJDK_OSARCH}/j2sdk-image/jre/lib/zi --- /dev/null 2012-08-15 15:13:50.000000000 -0400 +++ java/openjdk7/files/icedtea/applet_hole.patch 2012-08-15 15:00:31.000000000 -0400 @@ -0,0 +1,115 @@ + +# HG changeset patch +# User andrew +# Date 1291850761 0 +# Node ID e7fc517805960b967fc76eb140f1c9a6dc8954d0 +# Parent c981a387cd86a62e265232fa21ab91db1048dd08 +Make AppletPanel and AppletViewerPanel accessible to the IcedTea-Web project. + +--- jdk/src/share/classes/sun/applet/AppletPanel.java Mon Nov 22 21:55:09 2010 +0000 ++++ jdk/src/share/classes/sun/applet/AppletPanel.java Wed Dec 08 23:26:01 2010 +0000 +@@ -67,7 +67,7 @@ abstract class AppletPanel extends Panel + /** + * The applet (if loaded). + */ +- Applet applet; ++ protected Applet applet; + + /** + * Applet will allow initialization. Should be +@@ -161,7 +161,8 @@ abstract class AppletPanel extends Panel + * Creates a thread to run the applet. This method is called + * each time an applet is loaded and reloaded. + */ +- synchronized void createAppletThread() { ++ //Overridden by NetxPanel. ++ protected synchronized void createAppletThread() { + // Create a thread group for the applet, and start a new + // thread to load the applet. + String nm = "applet-" + getCode(); +@@ -305,7 +306,7 @@ abstract class AppletPanel extends Panel + /** + * Get an event from the queue. + */ +- synchronized AppletEvent getNextEvent() throws InterruptedException { ++ protected synchronized AppletEvent getNextEvent() throws InterruptedException { + while (queue == null || queue.isEmpty()) { + wait(); + } +@@ -694,7 +695,8 @@ abstract class AppletPanel extends Panel + * applet event processing so that it can be gracefully interrupted from + * things like HotJava. + */ +- private void runLoader() { ++ //Overridden by NetxPanel. ++ protected void runLoader() { + if (status != APPLET_DISPOSE) { + showAppletStatus("notdisposed"); + return; +--- jdk/src/share/classes/sun/applet/AppletViewerPanel.java Mon Nov 22 21:55:09 2010 +0000 ++++ jdk/src/share/classes/sun/applet/AppletViewerPanel.java Wed Dec 08 23:26:01 2010 +0000 +@@ -42,25 +42,25 @@ import sun.tools.jar.*; + * + * @author Arthur van Hoff + */ +-class AppletViewerPanel extends AppletPanel { ++public class AppletViewerPanel extends AppletPanel { + + /* Are we debugging? */ +- static boolean debug = false; ++ protected static boolean debug = false; + + /** + * The document url. + */ +- URL documentURL; ++ protected URL documentURL; + + /** + * The base url. + */ +- URL baseURL; ++ protected URL baseURL; + + /** + * The attributes of the applet. + */ +- Hashtable atts; ++ protected Hashtable atts; + + /* + * JDK 1.1 serialVersionUID +@@ -70,7 +70,7 @@ class AppletViewerPanel extends AppletPa + /** + * Construct an applet viewer and start the applet. + */ +- AppletViewerPanel(URL documentURL, Hashtable atts) { ++ protected AppletViewerPanel(URL documentURL, Hashtable atts) { + this.documentURL = documentURL; + this.atts = atts; + +@@ -106,7 +106,7 @@ class AppletViewerPanel extends AppletPa + * Get an applet parameter. + */ + public String getParameter(String name) { +- return (String)atts.get(name.toLowerCase()); ++ return atts.get(name.toLowerCase()); + } + + /** +@@ -202,12 +202,12 @@ class AppletViewerPanel extends AppletPa + return (AppletContext)getParent(); + } + +- static void debug(String s) { ++ protected static void debug(String s) { + if(debug) + System.err.println("AppletViewerPanel:::" + s); + } + +- static void debug(String s, Throwable t) { ++ protected static void debug(String s, Throwable t) { + if(debug) { + t.printStackTrace(); + debug(s); +