changeset 2202:8a1a5c294219

NetX/plugin build sync (2/3): Synchronise with IcedTea6. 2010-03-15 Andrew John Hughes <ahughes@redhat.com> NetX/plugin build sync (2/3): * patches/icedtea-liveconnect-dist.patch, * patches/icedtea-liveconnect.patch, * patches/icedtea-netx.patch, * patches/icedtea-webstart-umask.patch, * patches/icedtea-webstart.patch: Moved to extensions subdirectory. * Makefile.am: (PLUGIN_PATCH): Removed. (ICEDTEA_PATCHES): Add conditional plugin patches in same manner as all other conditional patches. Fix paths of NetX patches and LiveConnect patches. (stamps/plugin-tests.stamp): Depend on stamps/plugin.stamp, not rt-closed.jar. Surround by ENABLE_PLUGIN rather than using a (now broken) test on lib/rt/netscape. * acinclude.m4: Add missing ;;. * patches/extensions/liveconnect-dist.patch: Was patches/icedtea-liveconnect-dist.patch. * patches/extensions/liveconnect.patch: Was patches/icedtea-liveconnect.patch. * patches/extensions/netx-dist.patch: Renamed from patches/icedtea-netx.patch. * patches/extensions/netx-umask.patch: Renamed from patches/icedtea-webstart-umask.patch. * patches/extensions/netx.patch: Renamed from patches/icedtea-webstart.patch.
author Andrew John Hughes <ahughes@redhat.com>
date Tue, 01 Jun 2010 22:35:00 +0100
parents 85e376bde322
children e39b0fad0de1
files ChangeLog Makefile.am acinclude.m4 patches/extensions/liveconnect-dist.patch patches/extensions/liveconnect.patch patches/extensions/netx-dist.patch patches/extensions/netx-umask.patch patches/extensions/netx.patch patches/icedtea-liveconnect-dist.patch patches/icedtea-liveconnect.patch patches/icedtea-netx.patch patches/icedtea-webstart-umask.patch patches/icedtea-webstart.patch
diffstat 13 files changed, 604 insertions(+), 587 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Mon Mar 15 13:35:18 2010 -0400
+++ b/ChangeLog	Tue Jun 01 22:35:00 2010 +0100
@@ -1,3 +1,32 @@
+2010-03-15  Andrew John Hughes  <ahughes@redhat.com>
+
+	NetX/plugin build sync (2/3):
+	* patches/icedtea-liveconnect-dist.patch,
+	* patches/icedtea-liveconnect.patch,
+	* patches/icedtea-netx.patch,
+	* patches/icedtea-webstart-umask.patch,
+	* patches/icedtea-webstart.patch:
+	Moved to extensions subdirectory.
+	* Makefile.am:
+	(PLUGIN_PATCH): Removed.
+	(ICEDTEA_PATCHES): Add conditional plugin patches in
+	same manner as all other conditional patches.  Fix
+	paths of NetX patches and LiveConnect patches.
+	(stamps/plugin-tests.stamp): Depend on stamps/plugin.stamp,
+	not rt-closed.jar.  Surround by ENABLE_PLUGIN rather than
+	using a (now broken) test on lib/rt/netscape.
+	* acinclude.m4: Add missing ;;.
+	* patches/extensions/liveconnect-dist.patch:
+	Was patches/icedtea-liveconnect-dist.patch.
+	* patches/extensions/liveconnect.patch:
+	Was patches/icedtea-liveconnect.patch.
+	* patches/extensions/netx-dist.patch:
+	Renamed from patches/icedtea-netx.patch.
+	* patches/extensions/netx-umask.patch:
+	Renamed from patches/icedtea-webstart-umask.patch.
+	* patches/extensions/netx.patch:
+	Renamed from patches/icedtea-webstart.patch.
++
 2010-03-13  Deepak Bhole <dbhole@redhat.com>
 
 	* plugin/icedteanp/java/sun/applet/PluginAppletViewer.java
--- a/Makefile.am	Mon Mar 15 13:35:18 2010 -0400
+++ b/Makefile.am	Tue Jun 01 22:35:00 2010 +0100
@@ -127,7 +127,6 @@
 	$(SHARE)/javax/script \
 	$(SHARE)/javax/security/auth/kerberos \
 	$(SHARE)/javax/security/sasl \
-	$(SHARE)/javax/swing/plaf/basic \
 	$(SHARE)/sun/awt/ \
 	$(SHARE)/sun/rmi/rmic \
 	$(SHARE)/sun/tools/java \
@@ -185,9 +184,8 @@
 if ENABLE_NPPLUGIN
 PLUGIN_SRCDIR=$(abs_top_srcdir)/plugin/icedteanp
 PLUGIN_BUILD_DIR=$(abs_top_builddir)/plugin.build/icedteanp
-ICEDTEANPPLUGIN_TARGET = stamps/icedtea-npplugin
+ICEDTEANPPLUGIN_TARGET = stamps/icedtea-npplugin.stamp
 ICEDTEAPLUGIN_CLEAN = clean-IcedTeaNPPlugin
-PLUGIN_PATCH = patches/icedtea-liveconnect.patch
 LIVECONNECT_DIR = sun/applet netscape
 JNLP_ABOUT_TARGET = extra-lib/about.jar
 LIVECONNECT_CLASSES = $(abs_top_builddir)/liveconnect
@@ -199,7 +197,6 @@
 PLUGIN_BUILD_DIR=$(abs_top_builddir)/plugin.build/icedtea
 ICEDTEAPLUGIN_TARGET = $(PLUGIN_BUILD_DIR)/IcedTeaPlugin.so
 ICEDTEAPLUGIN_CLEAN = clean-IcedTeaPlugin
-PLUGIN_PATCH = patches/icedtea-liveconnect.patch
 LIVECONNECT_DIR = sun/applet netscape
 JNLP_ABOUT_TARGET = extra-lib/about.jar
 LIVECONNECT_CLASSES = $(abs_top_builddir)/liveconnect
@@ -271,9 +268,6 @@
 	patches/icedtea-copy-plugs.patch \
 	patches/hotspot/$(HSBUILD)/icedtea-text-relocations.patch \
 	patches/icedtea-ssl.patch \
-	$(PLUGIN_PATCH) \
-	patches/icedtea-webstart.patch \
-	patches/icedtea-webstart-umask.patch \
 	patches/icedtea-rmi_amd64.patch \
 	patches/icedtea-tools.patch \
 	patches/icedtea-demos.patch \
@@ -321,12 +315,14 @@
 	patches/hotspot/$(HSBUILD)/icedtea-includedb.patch \
 	patches/icedtea-demo-swingapplet.patch \
 	patches/icedtea-jvmtiEnv.patch \
-	patches/icedtea-netx.patch \
 	patches/icedtea-disable-intree-ec.patch \
 	patches/icedtea-sources.patch \
 	patches/no-precompiled.patch \
 	patches/parisc.patch \
-	patches/sh4-support.patch
+	patches/sh4-support.patch \
+	patches/extensions/netx.patch \
+	patches/extensions/netx-dist.patch \
+	patches/extensions/netx-umask.patch
 
 # Conditional patches
 
@@ -378,10 +374,12 @@
 endif
 
 if ENABLE_PLUGIN
-ICEDTEA_PATCHES += patches/icedtea-liveconnect-dist.patch
+ICEDTEA_PATCHES += patches/extensions/liveconnect.patch \
+	patches/extensions/liveconnect-dist.patch
 else
 if ENABLE_NPPLUGIN
-ICEDTEA_PATCHES += patches/icedtea-liveconnect-dist.patch
+ICEDTEA_PATCHES += patches/extensions/liveconnect.patch \
+	patches/extensions/liveconnect-dist.patch
 endif
 endif
 
@@ -1797,8 +1795,7 @@
 stamps/icedtea.stamp: stamps/bootstrap-directory-symlink-stage2.stamp \
  stamps/download.stamp stamps/extract.stamp $(OPENJDK_TREE) \
  stamps/plugin.stamp $(JNLP_ABOUT_TARGET) stamps/cacao.stamp \
- stamps/netx-dist.stamp stamps/liveconnect-dist.stamp $(PULSE_JAVA_TARGET) \
- stamps/rewrite-rhino.stamp
+ stamps/netx-dist.stamp $(PULSE_JAVA_TARGET) stamps/rewrite-rhino.stamp
 	$(ARCH_PREFIX) $(MAKE) \
 	  $(ICEDTEA_ENV) \
 	  -C openjdk/ \
@@ -2070,8 +2067,8 @@
 	  $(MOZILLA_LIBS)\
 	  -shared -o $@
 
-stamps/icedtea-npplugin: $(NPPLUGIN_DIR)/IcedTeaNPPlugin.so
-	touch stamps/icedtea-npplugin
+stamps/icedtea-npplugin.stamp: $(NPPLUGIN_DIR)/IcedTeaNPPlugin.so
+	touch stamps/icedtea-npplugin.stamp
 
 clean-IcedTeaNPPlugin:
 	rm -f $(addprefix $(PLUGIN_BUILD_DIR)/,$(NPPLUGIN_OBJECTS))
@@ -2104,7 +2101,8 @@
 	rm -f $(PLUGIN_BUILD_DIR)/IcedTeaPlugin.so
 endif
 
-stamps/plugin.stamp: $(ICEDTEAPLUGIN_TARGET) $(ICEDTEANPPLUGIN_TARGET)
+stamps/plugin.stamp: $(ICEDTEAPLUGIN_TARGET) $(ICEDTEANPPLUGIN_TARGET) \
+ stamps/liveconnect-dist.stamp
 	mkdir -p stamps
 	touch $@
 
@@ -2555,30 +2553,19 @@
 
 # plugin tests
 
-stamps/plugin-tests.stamp: $(PLUGIN_TEST_SRCS) \
- bootstrap/jdk1.7.0/jre/lib/rt-closed.jar
+if ENABLE_PLUGIN
+stamps/plugin-tests.stamp: $(PLUGIN_TEST_SRCS) stamps/plugin.stamp
 	mkdir -p plugin/tests/LiveConnect
-	if test -d lib/rt/netscape ; then \
-	  set -e ; \
-	  if ! test -d $(ICEDTEA_BOOT_DIR) ; then \
-	    $(JAVAC) $(MEMORY_LIMIT) -g -d plugin/tests/LiveConnect \
-	      -classpath bootstrap/jdk1.7.0/jre/lib/rt-closed.jar \
-              -source 1.5 $(PLUGIN_TEST_SRCS) ; \
-	    $(JAR) cf plugin/tests/LiveConnect/PluginTest.jar \
-	      plugin/tests/LiveConnect/*.class ; \
-	  else \
-	    $(ICEDTEA_BOOT_DIR)/bin/javac $(MEMORY_LIMIT) -g \
-	      -d plugin/tests/LiveConnect \
-	      -classpath bootstrap/jdk1.7.0/jre/lib/rt-closed.jar \
-	      -source 1.5 $(PLUGIN_TEST_SRCS) ; \
-	    $(ICEDTEA_BOOT_DIR)/bin/jar cf plugin/tests/LiveConnect/PluginTest.jar \
-	      plugin/tests/LiveConnect/*.class ; \
-	  fi ; \
-	  cp -a $(abs_top_srcdir)/plugin/tests/LiveConnect/*.{js,html} plugin/tests/LiveConnect ; \
-	  echo "Done. Now launch \"firefox file://`pwd`/index.html\"" ; \
-	fi
+	$(ICEDTEA_BOOT_DIR)/bin/javac $(IT_JAVACFLAGS) \
+	 -d plugin/tests/LiveConnect \
+	 -classpath $(LIVECONNECT_JAR) $(PLUGIN_TEST_SRCS) ;
+	$(ICEDTEA_BOOT_DIR)/bin/jar cf plugin/tests/LiveConnect/PluginTest.jar \
+	  plugin/tests/LiveConnect/*.class ;
+	cp -a $(abs_top_srcdir)/plugin/tests/LiveConnect/*.{js,html} plugin/tests/LiveConnect ;
+	echo "Done. Now launch \"firefox file://`pwd`/index.html\"" ; \
 	mkdir -p stamps
 	touch stamps/plugin-tests.stamp
+endif
 
 # jtreg
 
--- a/acinclude.m4	Mon Mar 15 13:35:18 2010 -0400
+++ b/acinclude.m4	Tue Jun 01 22:35:00 2010 +0100
@@ -74,6 +74,7 @@
       JRE_ARCH_DIR=s390x
       CROSS_TARGET_ARCH=s390x
       ARCHFLAG="-m64"
+      ;;
     *)
       BUILD_ARCH_DIR=`uname -m`
       INSTALL_ARCH_DIR=$BUILD_ARCH_DIR
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/extensions/liveconnect-dist.patch	Tue Jun 01 22:35:00 2010 +0100
@@ -0,0 +1,76 @@
+diff -Nru openjdk.orig/jdk/make/common/internal/Defs-liveconnect.gmk openjdk/jdk/make/common/internal/Defs-liveconnect.gmk
+--- openjdk.orig/jdk/make/common/internal/Defs-liveconnect.gmk	1970-01-01 01:00:00.000000000 +0100
++++ openjdk/jdk/make/common/internal/Defs-liveconnect.gmk	2009-11-11 02:53:36.000000000 +0000
+@@ -0,0 +1,28 @@
++#
++# Copyright 2009 Red Hat, Inc.  All Rights Reserved.
++# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
++#
++# This code is free software; you can redistribute it and/or modify it
++# under the terms of the GNU General Public License version 2 only, as
++# published by the Free Software Foundation.  Red Hat designates this
++# particular file as subject to the "Classpath" exception as provided
++# by Sun in the LICENSE file that accompanied this code.
++#
++# This code 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
++# version 2 for more details (a copy is included in the LICENSE file that
++# accompanied this code).
++#
++# You should have received a copy of the GNU General Public License version
++# 2 along with this work; if not, write to the Free Software Foundation,
++# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
++#
++
++# The specific packages that come from or go to rt.jar and tools.jar
++IMPORT_RT_PACKAGES += \
++     netscape/javascript \
++     sun/applet
++
++IMPORT_TOOLS_PACKAGES +=
++
+diff -Nru openjdk.orig/jdk/make/common/internal/ImportComponents.gmk openjdk/jdk/make/common/internal/ImportComponents.gmk
+--- openjdk.orig/jdk/make/common/internal/ImportComponents.gmk	2009-11-11 02:52:44.000000000 +0000
++++ openjdk/jdk/make/common/internal/ImportComponents.gmk	2009-11-11 02:57:32.000000000 +0000
+@@ -49,6 +49,9 @@
+ ifndef NETX_DIST
+   include $(BUILDDIR)/common/internal/Defs-netx.gmk
+ endif
++ifndef LIVECONNECT_DIST
++  include $(BUILDDIR)/common/internal/Defs-liveconnect.gmk
++endif
+ 
+ # Clean up these lists so empty lists are empty
+ IMPORT_TOOLS_PACKAGES := $(strip $(IMPORT_TOOLS_PACKAGES))
+@@ -123,6 +126,7 @@
+ $(call import-one-sources,JAXP_DIST,$1)
+ $(call import-one-sources,JAXWS_DIST,$1)
+ $(call import-one-sources,NETX_DIST,$1)
++$(call import-one-sources,LIVECONNECT_DIST,$1)
+ endef
+ 
+ # Import all component docs into directory $1 (optional)
+@@ -162,6 +166,7 @@
+ $(call import-one-classes,JAXP_DIST,$1)
+ $(call import-one-classes,JAXWS_DIST,$1)
+ $(call import-one-classes,NETX_DIST,$1)
++$(call import-one-classes,LIVECONNECT_DIST,$1)
+ endef
+ 
+ # Clean up import files
+diff -Nru openjdk.orig/jdk/make/common/shared/Defs.gmk openjdk/jdk/make/common/shared/Defs.gmk
+--- openjdk.orig/jdk/make/common/shared/Defs.gmk	2009-11-11 02:52:44.000000000 +0000
++++ openjdk/jdk/make/common/shared/Defs.gmk	2009-11-11 02:13:22.000000000 +0000
+@@ -365,6 +365,11 @@
+ else
+   NETX_DIST =
+ endif
++ifdef ALT_LIVECONNECT_DIST
++  LIVECONNECT_DIST := $(call FullPath,$(ALT_LIVECONNECT_DIST))
++else
++  LIVECONNECT_DIST =
++endif
+ 
+ # HOTSPOT_DOCS_IMPORT_PATH: Path to hotspot docs files to import into the docs generation
+ ifdef ALT_HOTSPOT_DOCS_IMPORT_PATH
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/extensions/liveconnect.patch	Tue Jun 01 22:35:00 2010 +0100
@@ -0,0 +1,89 @@
+diff -Nru openjdk.orig/jdk/make/docs/NON_CORE_PKGS.gmk openjdk/jdk/make/docs/NON_CORE_PKGS.gmk
+--- openjdk.orig/jdk/make/docs/NON_CORE_PKGS.gmk	2009-12-04 23:26:19.000000000 +0000
++++ openjdk/jdk/make/docs/NON_CORE_PKGS.gmk	2010-05-04 12:02:43.000000000 +0100
+@@ -84,6 +84,8 @@
+ TREEAPI_PKGS 	 = com.sun.source.tree \
+ 		   com.sun.source.util
+ 
++JAVASCRIPT_PKGS  = netscape.javascript
++
+ SMARTCARDIO_PKGS = javax.smartcardio
+ 
+ SCTPAPI_PKGS     = com.sun.nio.sctp
+@@ -94,6 +96,7 @@
+ # non-core packages in rt.jar
+ NON_CORE_PKGS    = $(DOMAPI_PKGS) \
+                    $(MGMT_PKGS) \
++                   $(JAVASCRIPT_PKGS) \
+                    $(JAAS_PKGS) \
+                    $(JGSS_PKGS) \
+                    $(NIO_PKGS) \
+diff -Nru openjdk.orig/jdk/make/sun/Makefile openjdk/jdk/make/sun/Makefile
+--- openjdk.orig/jdk/make/sun/Makefile	2010-04-28 22:05:28.000000000 +0100
++++ openjdk/jdk/make/sun/Makefile	2010-05-04 12:06:20.000000000 +0100
+@@ -64,7 +64,7 @@
+ SUBDIRS_desktop    = audio $(RENDER_SUBDIR) image \
+                      awt splashscreen $(XAWT_SUBDIR) \
+                      $(HEADLESS_SUBDIR) $(DGA_SUBDIR) \
+-                     jawt font jpeg cmm applet beans
++                     jawt font jpeg cmm applet beans plugin
+ SUBDIRS_management = management
+ SUBDIRS_misc       = jkernel $(ORG_SUBDIR) \
+                      rmi $(JDBC_SUBDIR) tracing
+diff -Nru openjdk.orig/jdk/make/sun/plugin/Makefile openjdk/jdk/make/sun/plugin/Makefile
+--- openjdk.orig/jdk/make/sun/plugin/Makefile	1970-01-01 01:00:00.000000000 +0100
++++ openjdk/jdk/make/sun/plugin/Makefile	2010-05-04 12:02:43.000000000 +0100
+@@ -0,0 +1,53 @@
++#
++# Copyright 1995-2005 Sun Microsystems, Inc.  All Rights Reserved.
++# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
++#
++# This code is free software; you can redistribute it and/or modify it
++# under the terms of the GNU General Public License version 2 only, as
++# published by the Free Software Foundation.  Sun designates this
++# particular file as subject to the "Classpath" exception as provided
++# by Sun in the LICENSE file that accompanied this code.
++#
++# This code 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
++# version 2 for more details (a copy is included in the LICENSE file that
++# accompanied this code).
++#
++# You should have received a copy of the GNU General Public License version
++# 2 along with this work; if not, write to the Free Software Foundation,
++# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
++#
++# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
++# CA 95054 USA or visit www.sun.com if you need additional information or
++# have any questions.
++#
++
++#
++# Makefile for pluginappletviewer wrapper.
++#
++
++BUILDDIR = ../..
++PACKAGE = sun.applet
++PRODUCT = sun
++PROGRAM = pluginappletviewer
++include $(BUILDDIR)/common/Defs.gmk
++
++#
++# Files to compile.
++#
++AUTO_FILES_JAVA_DIRS = sun/applet
++
++ifneq ($(PLATFORM), windows)
++  #
++  # Anything with a GUI needs X11 to be linked in.
++  #
++  OTHER_LDLIBS += -L$(OPENWIN_LIB) -lX11 
++endif # PLATFORM
++
++#
++# Rules
++#
++JAVA_ARGS = { "sun.applet.PluginMain" }
++include $(BUILDDIR)/common/Program.gmk
++
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/extensions/netx-dist.patch	Tue Jun 01 22:35:00 2010 +0100
@@ -0,0 +1,86 @@
+diff -Nru openjdk.orig/jdk/make/common/internal/Defs-netx.gmk openjdk/jdk/make/common/internal/Defs-netx.gmk
+--- openjdk.orig/jdk/make/common/internal/Defs-netx.gmk	1970-01-01 01:00:00.000000000 +0100
++++ openjdk/jdk/make/common/internal/Defs-netx.gmk	2009-05-28 09:18:45.000000000 +0100
+@@ -0,0 +1,38 @@
++#
++# Copyright 2009 Red Hat, Inc.  All Rights Reserved.
++# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
++#
++# This code is free software; you can redistribute it and/or modify it
++# under the terms of the GNU General Public License version 2 only, as
++# published by the Free Software Foundation.  Red Hat designates this
++# particular file as subject to the "Classpath" exception as provided
++# by Sun in the LICENSE file that accompanied this code.
++#
++# This code 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
++# version 2 for more details (a copy is included in the LICENSE file that
++# accompanied this code).
++#
++# You should have received a copy of the GNU General Public License version
++# 2 along with this work; if not, write to the Free Software Foundation,
++# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
++#
++
++# The specific packages that come from or go to rt.jar and tools.jar
++IMPORT_RT_PACKAGES += \
++     net/sourceforge/jnlp \
++     net/sourceforge/jnlp/tools \
++     net/sourceforge/jnlp/runtime \
++     net/sourceforge/jnlp/util \
++     net/sourceforge/jnlp/services \
++     net/sourceforge/jnlp/security \
++     net/sourceforge/jnlp/security/viewer \
++     net/sourceforge/jnlp/cache \
++     net/sourceforge/jnlp/event \
++     net/sourceforge/jnlp/resources \
++     net/sourceforge/nanoxml \
++     javax/jnlp
++
++IMPORT_TOOLS_PACKAGES +=
++
+diff -Nru openjdk.orig/jdk/make/common/internal/ImportComponents.gmk openjdk/jdk/make/common/internal/ImportComponents.gmk
+--- openjdk.orig/jdk/make/common/internal/ImportComponents.gmk	2009-05-29 02:09:27.000000000 +0100
++++ openjdk/jdk/make/common/internal/ImportComponents.gmk	2009-05-29 02:10:56.000000000 +0100
+@@ -46,6 +46,9 @@
+ ifndef JAXWS_DIST
+   include $(BUILDDIR)/common/internal/Defs-jaxws.gmk
+ endif
++ifndef NETX_DIST
++  include $(BUILDDIR)/common/internal/Defs-netx.gmk
++endif
+ 
+ # Clean up these lists so empty lists are empty
+ IMPORT_TOOLS_PACKAGES := $(strip $(IMPORT_TOOLS_PACKAGES))
+@@ -119,6 +122,7 @@
+ $(call import-one-sources,CORBA_DIST,$1)
+ $(call import-one-sources,JAXP_DIST,$1)
+ $(call import-one-sources,JAXWS_DIST,$1)
++$(call import-one-sources,NETX_DIST,$1)
+ endef
+ 
+ # Import all component docs into directory $1 (optional)
+@@ -157,6 +161,7 @@
+ $(call import-one-classes,CORBA_DIST,$1)
+ $(call import-one-classes,JAXP_DIST,$1)
+ $(call import-one-classes,JAXWS_DIST,$1)
++$(call import-one-classes,NETX_DIST,$1)
+ endef
+ 
+ # Clean up import files
+diff -Nru openjdk.orig/jdk/make/common/shared/Defs.gmk openjdk/jdk/make/common/shared/Defs.gmk
+--- openjdk.orig/jdk/make/common/shared/Defs.gmk	2009-05-29 02:09:27.000000000 +0100
++++ openjdk/jdk/make/common/shared/Defs.gmk	2009-05-29 02:11:18.000000000 +0100
+@@ -344,6 +344,11 @@
+ else
+   JAXWS_DIST =
+ endif
++ifdef ALT_NETX_DIST
++  NETX_DIST := $(call FullPath,$(ALT_NETX_DIST))
++else
++  NETX_DIST =
++endif
+ 
+ # HOTSPOT_DOCS_IMPORT_PATH: Path to hotspot docs files to import into the docs generation
+ ifdef ALT_HOTSPOT_DOCS_IMPORT_PATH
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/extensions/netx-umask.patch	Tue Jun 01 22:35:00 2010 +0100
@@ -0,0 +1,169 @@
+diff -Nru openjdk.orig/jdk/make/launchers/Makefile.launcher openjdk/jdk/make/launchers/Makefile.launcher
+--- openjdk.orig/jdk/make/launchers/Makefile.launcher	2008-07-03 08:42:32.000000000 +0100
++++ openjdk/jdk/make/launchers/Makefile.launcher	2008-07-21 02:49:53.000000000 +0100
+@@ -153,6 +153,16 @@
+   endif
+ endif
+ 
++# pluginappletviewer only
++ifeq ($(PROGRAM), pluginappletviewer)
++  OTHER_CPPFLAGS += -DUSE_UMASK=\"077\"
++endif
++
++# javaws only
++ifeq ($(PROGRAM), javaws)
++  OTHER_CPPFLAGS += -DUSE_UMASK=\"077\"
++endif
++
+ # GUI tools
+ ifeq ($(GUI_TOOL),true)
+   ifneq ($(PLATFORM), windows)
+diff -Nru openjdk.orig/jdk/src/share/bin/java.c openjdk/jdk/src/share/bin/java.c
+--- openjdk.orig/jdk/src/share/bin/java.c	2008-07-03 08:42:35.000000000 +0100
++++ openjdk/jdk/src/share/bin/java.c	2008-07-21 02:53:15.000000000 +0100
+@@ -76,6 +76,8 @@
+ static jboolean _wc_enabled = JNI_FALSE;
+ static jint _ergo_policy = DEFAULT_POLICY;
+ 
++#define MAXMASK 4095 /* Same as octal 07777 */
++
+ /*
+  * Entries for splash screen environment variables.
+  * putenv is performed in SelectVersion. We need
+@@ -162,6 +164,10 @@
+ 
+ int JNICALL JavaMain(void * args); /* entry point                  */
+ 
++/* umask things */
++static int FindUMask(int *, char ***, int *);
++static int VerifyMask(char *, int*);
++ 
+ typedef struct {
+   int     argc;
+   char ** argv;
+@@ -272,6 +278,26 @@
+         SetClassPath(cpath);
+     }
+ 
++#ifdef USE_UMASK
++	/* Set umask */
++	int mask;
++    // Check to see if we can find a umask on the command line.
++    if (FindUMask(&argc, &argv, &mask) < 0)
++    {
++        // We didn't find a umask, so fall back to the default one.
++        char * defaultMask = (char *) JLI_MemAlloc(5 * sizeof(char));
++        strcpy(defaultMask, USE_UMASK);
++        int converted;
++        VerifyMask(defaultMask, &converted);
++        JLI_MemFree(defaultMask);
++		umask(converted); /* from sys/stat.h */
++    }
++    else
++    {
++		umask(mask);
++    }
++#endif
++
+     /*
+      *  Parse command line options; if the return value of
+      *  ParseArguments is false, the program should exit.
+@@ -2027,3 +2053,87 @@
+     fprintf(stderr, "\n");
+     va_end(vl);
+ }
++
++/**
++ * Searches argv to find any parameters that start with "-umask=".
++ * Sets maskToSet with the mask if a -umask is found, and if the mask
++ * supplied is valid. Returns 1 if a valid mask was found and set,
++ * -1 otherwise.
++ */
++int FindUMask(int *pargc, char *** pargv, int *maskToSet)
++{
++    int found_mask = -1;
++
++    // our handles to the original list
++    int argc = *pargc;
++    char **argv = *pargv;
++
++    // the new set
++    int nargc = argc;
++    char ** nargv = (char **) JLI_MemAlloc((nargc + 1) * sizeof(char *));
++
++    // set the original set to the new set
++    *pargv = nargv;
++    *pargc = nargc;
++
++    char *maskString = (char *) JLI_MemAlloc(6 * sizeof(char *));
++	int i;
++    for (i = 0; i < argc; i++)
++    {
++        char *arg = argv[i];
++        if (strncmp(arg, "-umask=",7) == 0)
++        {
++            strncpy(maskString, arg+7, 5);
++
++            if (VerifyMask(maskString, maskToSet) < 0)
++            {
++                printf("Invalid umask %s, application stopped.\n", maskString);
++                exit(1);
++            }
++
++            found_mask = 1;
++            nargc--;
++            (*pargc)--;
++        }
++        else
++        {
++            *nargv++ = arg;
++        }
++    }
++
++    JLI_MemFree(maskString);
++
++    return found_mask;
++}
++
++/**
++ * Takes an octal mask in string form, and converts it to
++ * decimal form in convertedMask. The decimal form can then be
++ * easily passed to umask(). Returns 1 if the mask is valid, -1 otherwise.
++ */
++int VerifyMask(char * maskString, int * convertedMask)
++{
++    // Borrowed from coreutils modechange.c
++    if ('0' <= *maskString && *maskString < '8')
++    {
++        unsigned int decimal_mode = 0;
++
++        do {
++            decimal_mode = 8 * decimal_mode + *maskString++ - '0';
++        } while ('0' <= *maskString && *maskString < '8');
++
++        if (decimal_mode > MAXMASK)
++            return -1;
++        else if (*maskString)
++            return -1;
++        else
++            *convertedMask = decimal_mode;
++
++        return 1;
++    }
++    else
++    {
++        return -1;
++    }
++
++}
+diff -Nru openjdk.orig/jdk/src/share/bin/java.h openjdk/jdk/src/share/bin/java.h
+--- openjdk.orig/jdk/src/share/bin/java.h	2008-07-21 02:51:54.000000000 +0100
++++ openjdk/jdk/src/share/bin/java.h	2008-07-21 02:53:18.000000000 +0100
+@@ -29,6 +29,7 @@
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
++#include <sys/stat.h>
+ #include <limits.h>
+ 
+ #include <jni.h>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/extensions/netx.patch	Tue Jun 01 22:35:00 2010 +0100
@@ -0,0 +1,130 @@
+diff -Nru openjdk.orig/jdk/make/docs/NON_CORE_PKGS.gmk openjdk/jdk/make/docs/NON_CORE_PKGS.gmk
+--- openjdk.orig/jdk/make/docs/NON_CORE_PKGS.gmk	2009-08-04 14:58:33.000000000 +0100
++++ openjdk/jdk/make/docs/NON_CORE_PKGS.gmk	2009-08-04 14:59:43.000000000 +0100
+@@ -93,6 +93,8 @@
+ TRACING_PKGS     = com.sun.tracing         \
+                    com.sun.tracing.dtrace
+ 
++JNLP_PKGS        = javax.jnlp
++
+ # non-core packages in rt.jar
+ NON_CORE_PKGS    = $(DOMAPI_PKGS) \
+                    $(MGMT_PKGS) \
+@@ -103,6 +105,7 @@
+                    $(OLD_JSSE_PKGS) \
+                    $(HTTPSERVER_PKGS) \
+                    $(SMARTCARDIO_PKGS) \
++                   $(JNLP_PKGS) \
+                    $(TRACING_PKGS) \
+                    $(SCTPAPI_PKGS)
+ 
+diff -Nru openjdk.orig/jdk/make/launchers/Makefile openjdk/jdk/make/launchers/Makefile
+--- openjdk.orig/jdk/make/launchers/Makefile	2009-07-25 04:30:42.000000000 +0100
++++ openjdk/jdk/make/launchers/Makefile	2009-08-04 14:59:15.000000000 +0100
+@@ -67,6 +67,7 @@
+ $(call make-launcher, javadoc, com.sun.tools.javadoc.Main, , )
+ $(call make-launcher, javah, com.sun.tools.javah.Main, , )
+ $(call make-launcher, javap, com.sun.tools.javap.Main, , )
++$(call make-launcher, javaws, net.sourceforge.jnlp.runtime.Boot, , )
+ $(call make-launcher, jconsole, sun.tools.jconsole.JConsole, \
+   -J-Djconsole.showOutputViewer, )
+ $(call make-launcher, jdb, com.sun.tools.example.debug.tty.TTY, , )
+diff -Nru openjdk.orig/jdk/src/share/classes/sun/applet/AppletPanel.java openjdk/jdk/src/share/classes/sun/applet/AppletPanel.java
+--- openjdk.orig/jdk/src/share/classes/sun/applet/AppletPanel.java	2009-08-04 14:57:54.000000000 +0100
++++ openjdk/jdk/src/share/classes/sun/applet/AppletPanel.java	2009-08-04 14:59:15.000000000 +0100
+@@ -67,7 +67,7 @@
+     /**
+      * The applet (if loaded).
+      */
+-    Applet applet;
++    protected Applet applet;
+ 
+     /**
+      * Applet will allow initialization.  Should be
+@@ -161,7 +161,8 @@
+      * 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 @@
+     /**
+      * 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 @@
+      * 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;
+diff -Nru openjdk.orig/jdk/src/share/classes/sun/applet/AppletViewerPanel.java openjdk/jdk/src/share/classes/sun/applet/AppletViewerPanel.java
+--- openjdk.orig/jdk/src/share/classes/sun/applet/AppletViewerPanel.java	2009-08-04 14:57:54.000000000 +0100
++++ openjdk/jdk/src/share/classes/sun/applet/AppletViewerPanel.java	2009-08-04 14:59:15.000000000 +0100
+@@ -42,25 +42,25 @@
+  *
+  * @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 @@
+     /**
+      * 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;
+ 
+@@ -202,12 +202,12 @@
+         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);
--- a/patches/icedtea-liveconnect-dist.patch	Mon Mar 15 13:35:18 2010 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,76 +0,0 @@
-diff -Nru openjdk.orig/jdk/make/common/internal/Defs-liveconnect.gmk openjdk/jdk/make/common/internal/Defs-liveconnect.gmk
---- openjdk.orig/jdk/make/common/internal/Defs-liveconnect.gmk	1970-01-01 01:00:00.000000000 +0100
-+++ openjdk/jdk/make/common/internal/Defs-liveconnect.gmk	2009-11-11 02:53:36.000000000 +0000
-@@ -0,0 +1,28 @@
-+#
-+# Copyright 2009 Red Hat, Inc.  All Rights Reserved.
-+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+#
-+# This code is free software; you can redistribute it and/or modify it
-+# under the terms of the GNU General Public License version 2 only, as
-+# published by the Free Software Foundation.  Red Hat designates this
-+# particular file as subject to the "Classpath" exception as provided
-+# by Sun in the LICENSE file that accompanied this code.
-+#
-+# This code 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
-+# version 2 for more details (a copy is included in the LICENSE file that
-+# accompanied this code).
-+#
-+# You should have received a copy of the GNU General Public License version
-+# 2 along with this work; if not, write to the Free Software Foundation,
-+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
-+#
-+
-+# The specific packages that come from or go to rt.jar and tools.jar
-+IMPORT_RT_PACKAGES += \
-+     netscape/javascript \
-+     sun/applet
-+
-+IMPORT_TOOLS_PACKAGES +=
-+
-diff -Nru openjdk.orig/jdk/make/common/internal/ImportComponents.gmk openjdk/jdk/make/common/internal/ImportComponents.gmk
---- openjdk.orig/jdk/make/common/internal/ImportComponents.gmk	2009-11-11 02:52:44.000000000 +0000
-+++ openjdk/jdk/make/common/internal/ImportComponents.gmk	2009-11-11 02:57:32.000000000 +0000
-@@ -49,6 +49,9 @@
- ifndef NETX_DIST
-   include $(BUILDDIR)/common/internal/Defs-netx.gmk
- endif
-+ifndef LIVECONNECT_DIST
-+  include $(BUILDDIR)/common/internal/Defs-liveconnect.gmk
-+endif
- 
- # Clean up these lists so empty lists are empty
- IMPORT_TOOLS_PACKAGES := $(strip $(IMPORT_TOOLS_PACKAGES))
-@@ -123,6 +126,7 @@
- $(call import-one-sources,JAXP_DIST,$1)
- $(call import-one-sources,JAXWS_DIST,$1)
- $(call import-one-sources,NETX_DIST,$1)
-+$(call import-one-sources,LIVECONNECT_DIST,$1)
- endef
- 
- # Import all component docs into directory $1 (optional)
-@@ -162,6 +166,7 @@
- $(call import-one-classes,JAXP_DIST,$1)
- $(call import-one-classes,JAXWS_DIST,$1)
- $(call import-one-classes,NETX_DIST,$1)
-+$(call import-one-classes,LIVECONNECT_DIST,$1)
- endef
- 
- # Clean up import files
-diff -Nru openjdk.orig/jdk/make/common/shared/Defs.gmk openjdk/jdk/make/common/shared/Defs.gmk
---- openjdk.orig/jdk/make/common/shared/Defs.gmk	2009-11-11 02:52:44.000000000 +0000
-+++ openjdk/jdk/make/common/shared/Defs.gmk	2009-11-11 02:13:22.000000000 +0000
-@@ -365,6 +365,11 @@
- else
-   NETX_DIST =
- endif
-+ifdef ALT_LIVECONNECT_DIST
-+  LIVECONNECT_DIST := $(call FullPath,$(ALT_LIVECONNECT_DIST))
-+else
-+  LIVECONNECT_DIST =
-+endif
- 
- # HOTSPOT_DOCS_IMPORT_PATH: Path to hotspot docs files to import into the docs generation
- ifdef ALT_HOTSPOT_DOCS_IMPORT_PATH
--- a/patches/icedtea-liveconnect.patch	Mon Mar 15 13:35:18 2010 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,89 +0,0 @@
-diff -Nru openjdk.orig/jdk/make/docs/NON_CORE_PKGS.gmk openjdk/jdk/make/docs/NON_CORE_PKGS.gmk
---- openjdk.orig/jdk/make/docs/NON_CORE_PKGS.gmk	2009-12-04 23:26:19.000000000 +0000
-+++ openjdk/jdk/make/docs/NON_CORE_PKGS.gmk	2010-05-04 12:02:43.000000000 +0100
-@@ -84,6 +84,8 @@
- TREEAPI_PKGS 	 = com.sun.source.tree \
- 		   com.sun.source.util
- 
-+JAVASCRIPT_PKGS  = netscape.javascript
-+
- SMARTCARDIO_PKGS = javax.smartcardio
- 
- SCTPAPI_PKGS     = com.sun.nio.sctp
-@@ -94,6 +96,7 @@
- # non-core packages in rt.jar
- NON_CORE_PKGS    = $(DOMAPI_PKGS) \
-                    $(MGMT_PKGS) \
-+                   $(JAVASCRIPT_PKGS) \
-                    $(JAAS_PKGS) \
-                    $(JGSS_PKGS) \
-                    $(NIO_PKGS) \
-diff -Nru openjdk.orig/jdk/make/sun/Makefile openjdk/jdk/make/sun/Makefile
---- openjdk.orig/jdk/make/sun/Makefile	2010-04-28 22:05:28.000000000 +0100
-+++ openjdk/jdk/make/sun/Makefile	2010-05-04 12:06:20.000000000 +0100
-@@ -64,7 +64,7 @@
- SUBDIRS_desktop    = audio $(RENDER_SUBDIR) image \
-                      awt splashscreen $(XAWT_SUBDIR) \
-                      $(HEADLESS_SUBDIR) $(DGA_SUBDIR) \
--                     jawt font jpeg cmm applet beans
-+                     jawt font jpeg cmm applet beans plugin
- SUBDIRS_management = management
- SUBDIRS_misc       = jkernel $(ORG_SUBDIR) \
-                      rmi $(JDBC_SUBDIR) tracing
-diff -Nru openjdk.orig/jdk/make/sun/plugin/Makefile openjdk/jdk/make/sun/plugin/Makefile
---- openjdk.orig/jdk/make/sun/plugin/Makefile	1970-01-01 01:00:00.000000000 +0100
-+++ openjdk/jdk/make/sun/plugin/Makefile	2010-05-04 12:02:43.000000000 +0100
-@@ -0,0 +1,53 @@
-+#
-+# Copyright 1995-2005 Sun Microsystems, Inc.  All Rights Reserved.
-+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+#
-+# This code is free software; you can redistribute it and/or modify it
-+# under the terms of the GNU General Public License version 2 only, as
-+# published by the Free Software Foundation.  Sun designates this
-+# particular file as subject to the "Classpath" exception as provided
-+# by Sun in the LICENSE file that accompanied this code.
-+#
-+# This code 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
-+# version 2 for more details (a copy is included in the LICENSE file that
-+# accompanied this code).
-+#
-+# You should have received a copy of the GNU General Public License version
-+# 2 along with this work; if not, write to the Free Software Foundation,
-+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
-+#
-+# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
-+# CA 95054 USA or visit www.sun.com if you need additional information or
-+# have any questions.
-+#
-+
-+#
-+# Makefile for pluginappletviewer wrapper.
-+#
-+
-+BUILDDIR = ../..
-+PACKAGE = sun.applet
-+PRODUCT = sun
-+PROGRAM = pluginappletviewer
-+include $(BUILDDIR)/common/Defs.gmk
-+
-+#
-+# Files to compile.
-+#
-+AUTO_FILES_JAVA_DIRS = sun/applet
-+
-+ifneq ($(PLATFORM), windows)
-+  #
-+  # Anything with a GUI needs X11 to be linked in.
-+  #
-+  OTHER_LDLIBS += -L$(OPENWIN_LIB) -lX11 
-+endif # PLATFORM
-+
-+#
-+# Rules
-+#
-+JAVA_ARGS = { "sun.applet.PluginMain" }
-+include $(BUILDDIR)/common/Program.gmk
-+
--- a/patches/icedtea-netx.patch	Mon Mar 15 13:35:18 2010 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,86 +0,0 @@
-diff -Nru openjdk.orig/jdk/make/common/internal/Defs-netx.gmk openjdk/jdk/make/common/internal/Defs-netx.gmk
---- openjdk.orig/jdk/make/common/internal/Defs-netx.gmk	1970-01-01 01:00:00.000000000 +0100
-+++ openjdk/jdk/make/common/internal/Defs-netx.gmk	2009-05-28 09:18:45.000000000 +0100
-@@ -0,0 +1,38 @@
-+#
-+# Copyright 2009 Red Hat, Inc.  All Rights Reserved.
-+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+#
-+# This code is free software; you can redistribute it and/or modify it
-+# under the terms of the GNU General Public License version 2 only, as
-+# published by the Free Software Foundation.  Red Hat designates this
-+# particular file as subject to the "Classpath" exception as provided
-+# by Sun in the LICENSE file that accompanied this code.
-+#
-+# This code 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
-+# version 2 for more details (a copy is included in the LICENSE file that
-+# accompanied this code).
-+#
-+# You should have received a copy of the GNU General Public License version
-+# 2 along with this work; if not, write to the Free Software Foundation,
-+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
-+#
-+
-+# The specific packages that come from or go to rt.jar and tools.jar
-+IMPORT_RT_PACKAGES += \
-+     net/sourceforge/jnlp \
-+     net/sourceforge/jnlp/tools \
-+     net/sourceforge/jnlp/runtime \
-+     net/sourceforge/jnlp/util \
-+     net/sourceforge/jnlp/services \
-+     net/sourceforge/jnlp/security \
-+     net/sourceforge/jnlp/security/viewer \
-+     net/sourceforge/jnlp/cache \
-+     net/sourceforge/jnlp/event \
-+     net/sourceforge/jnlp/resources \
-+     net/sourceforge/nanoxml \
-+     javax/jnlp
-+
-+IMPORT_TOOLS_PACKAGES +=
-+
-diff -Nru openjdk.orig/jdk/make/common/internal/ImportComponents.gmk openjdk/jdk/make/common/internal/ImportComponents.gmk
---- openjdk.orig/jdk/make/common/internal/ImportComponents.gmk	2009-05-29 02:09:27.000000000 +0100
-+++ openjdk/jdk/make/common/internal/ImportComponents.gmk	2009-05-29 02:10:56.000000000 +0100
-@@ -46,6 +46,9 @@
- ifndef JAXWS_DIST
-   include $(BUILDDIR)/common/internal/Defs-jaxws.gmk
- endif
-+ifndef NETX_DIST
-+  include $(BUILDDIR)/common/internal/Defs-netx.gmk
-+endif
- 
- # Clean up these lists so empty lists are empty
- IMPORT_TOOLS_PACKAGES := $(strip $(IMPORT_TOOLS_PACKAGES))
-@@ -119,6 +122,7 @@
- $(call import-one-sources,CORBA_DIST,$1)
- $(call import-one-sources,JAXP_DIST,$1)
- $(call import-one-sources,JAXWS_DIST,$1)
-+$(call import-one-sources,NETX_DIST,$1)
- endef
- 
- # Import all component docs into directory $1 (optional)
-@@ -157,6 +161,7 @@
- $(call import-one-classes,CORBA_DIST,$1)
- $(call import-one-classes,JAXP_DIST,$1)
- $(call import-one-classes,JAXWS_DIST,$1)
-+$(call import-one-classes,NETX_DIST,$1)
- endef
- 
- # Clean up import files
-diff -Nru openjdk.orig/jdk/make/common/shared/Defs.gmk openjdk/jdk/make/common/shared/Defs.gmk
---- openjdk.orig/jdk/make/common/shared/Defs.gmk	2009-05-29 02:09:27.000000000 +0100
-+++ openjdk/jdk/make/common/shared/Defs.gmk	2009-05-29 02:11:18.000000000 +0100
-@@ -344,6 +344,11 @@
- else
-   JAXWS_DIST =
- endif
-+ifdef ALT_NETX_DIST
-+  NETX_DIST := $(call FullPath,$(ALT_NETX_DIST))
-+else
-+  NETX_DIST =
-+endif
- 
- # HOTSPOT_DOCS_IMPORT_PATH: Path to hotspot docs files to import into the docs generation
- ifdef ALT_HOTSPOT_DOCS_IMPORT_PATH
--- a/patches/icedtea-webstart-umask.patch	Mon Mar 15 13:35:18 2010 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,169 +0,0 @@
-diff -Nru openjdk.orig/jdk/make/launchers/Makefile.launcher openjdk/jdk/make/launchers/Makefile.launcher
---- openjdk.orig/jdk/make/launchers/Makefile.launcher	2008-07-03 08:42:32.000000000 +0100
-+++ openjdk/jdk/make/launchers/Makefile.launcher	2008-07-21 02:49:53.000000000 +0100
-@@ -153,6 +153,16 @@
-   endif
- endif
- 
-+# pluginappletviewer only
-+ifeq ($(PROGRAM), pluginappletviewer)
-+  OTHER_CPPFLAGS += -DUSE_UMASK=\"077\"
-+endif
-+
-+# javaws only
-+ifeq ($(PROGRAM), javaws)
-+  OTHER_CPPFLAGS += -DUSE_UMASK=\"077\"
-+endif
-+
- # GUI tools
- ifeq ($(GUI_TOOL),true)
-   ifneq ($(PLATFORM), windows)
-diff -Nru openjdk.orig/jdk/src/share/bin/java.c openjdk/jdk/src/share/bin/java.c
---- openjdk.orig/jdk/src/share/bin/java.c	2008-07-03 08:42:35.000000000 +0100
-+++ openjdk/jdk/src/share/bin/java.c	2008-07-21 02:53:15.000000000 +0100
-@@ -76,6 +76,8 @@
- static jboolean _wc_enabled = JNI_FALSE;
- static jint _ergo_policy = DEFAULT_POLICY;
- 
-+#define MAXMASK 4095 /* Same as octal 07777 */
-+
- /*
-  * Entries for splash screen environment variables.
-  * putenv is performed in SelectVersion. We need
-@@ -162,6 +164,10 @@
- 
- int JNICALL JavaMain(void * args); /* entry point                  */
- 
-+/* umask things */
-+static int FindUMask(int *, char ***, int *);
-+static int VerifyMask(char *, int*);
-+ 
- typedef struct {
-   int     argc;
-   char ** argv;
-@@ -272,6 +278,26 @@
-         SetClassPath(cpath);
-     }
- 
-+#ifdef USE_UMASK
-+	/* Set umask */
-+	int mask;
-+    // Check to see if we can find a umask on the command line.
-+    if (FindUMask(&argc, &argv, &mask) < 0)
-+    {
-+        // We didn't find a umask, so fall back to the default one.
-+        char * defaultMask = (char *) JLI_MemAlloc(5 * sizeof(char));
-+        strcpy(defaultMask, USE_UMASK);
-+        int converted;
-+        VerifyMask(defaultMask, &converted);
-+        JLI_MemFree(defaultMask);
-+		umask(converted); /* from sys/stat.h */
-+    }
-+    else
-+    {
-+		umask(mask);
-+    }
-+#endif
-+
-     /*
-      *  Parse command line options; if the return value of
-      *  ParseArguments is false, the program should exit.
-@@ -2027,3 +2053,87 @@
-     fprintf(stderr, "\n");
-     va_end(vl);
- }
-+
-+/**
-+ * Searches argv to find any parameters that start with "-umask=".
-+ * Sets maskToSet with the mask if a -umask is found, and if the mask
-+ * supplied is valid. Returns 1 if a valid mask was found and set,
-+ * -1 otherwise.
-+ */
-+int FindUMask(int *pargc, char *** pargv, int *maskToSet)
-+{
-+    int found_mask = -1;
-+
-+    // our handles to the original list
-+    int argc = *pargc;
-+    char **argv = *pargv;
-+
-+    // the new set
-+    int nargc = argc;
-+    char ** nargv = (char **) JLI_MemAlloc((nargc + 1) * sizeof(char *));
-+
-+    // set the original set to the new set
-+    *pargv = nargv;
-+    *pargc = nargc;
-+
-+    char *maskString = (char *) JLI_MemAlloc(6 * sizeof(char *));
-+	int i;
-+    for (i = 0; i < argc; i++)
-+    {
-+        char *arg = argv[i];
-+        if (strncmp(arg, "-umask=",7) == 0)
-+        {
-+            strncpy(maskString, arg+7, 5);
-+
-+            if (VerifyMask(maskString, maskToSet) < 0)
-+            {
-+                printf("Invalid umask %s, application stopped.\n", maskString);
-+                exit(1);
-+            }
-+
-+            found_mask = 1;
-+            nargc--;
-+            (*pargc)--;
-+        }
-+        else
-+        {
-+            *nargv++ = arg;
-+        }
-+    }
-+
-+    JLI_MemFree(maskString);
-+
-+    return found_mask;
-+}
-+
-+/**
-+ * Takes an octal mask in string form, and converts it to
-+ * decimal form in convertedMask. The decimal form can then be
-+ * easily passed to umask(). Returns 1 if the mask is valid, -1 otherwise.
-+ */
-+int VerifyMask(char * maskString, int * convertedMask)
-+{
-+    // Borrowed from coreutils modechange.c
-+    if ('0' <= *maskString && *maskString < '8')
-+    {
-+        unsigned int decimal_mode = 0;
-+
-+        do {
-+            decimal_mode = 8 * decimal_mode + *maskString++ - '0';
-+        } while ('0' <= *maskString && *maskString < '8');
-+
-+        if (decimal_mode > MAXMASK)
-+            return -1;
-+        else if (*maskString)
-+            return -1;
-+        else
-+            *convertedMask = decimal_mode;
-+
-+        return 1;
-+    }
-+    else
-+    {
-+        return -1;
-+    }
-+
-+}
-diff -Nru openjdk.orig/jdk/src/share/bin/java.h openjdk/jdk/src/share/bin/java.h
---- openjdk.orig/jdk/src/share/bin/java.h	2008-07-21 02:51:54.000000000 +0100
-+++ openjdk/jdk/src/share/bin/java.h	2008-07-21 02:53:18.000000000 +0100
-@@ -29,6 +29,7 @@
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
-+#include <sys/stat.h>
- #include <limits.h>
- 
- #include <jni.h>
--- a/patches/icedtea-webstart.patch	Mon Mar 15 13:35:18 2010 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,130 +0,0 @@
-diff -Nru openjdk.orig/jdk/make/docs/NON_CORE_PKGS.gmk openjdk/jdk/make/docs/NON_CORE_PKGS.gmk
---- openjdk.orig/jdk/make/docs/NON_CORE_PKGS.gmk	2009-08-04 14:58:33.000000000 +0100
-+++ openjdk/jdk/make/docs/NON_CORE_PKGS.gmk	2009-08-04 14:59:43.000000000 +0100
-@@ -93,6 +93,8 @@
- TRACING_PKGS     = com.sun.tracing         \
-                    com.sun.tracing.dtrace
- 
-+JNLP_PKGS        = javax.jnlp
-+
- # non-core packages in rt.jar
- NON_CORE_PKGS    = $(DOMAPI_PKGS) \
-                    $(MGMT_PKGS) \
-@@ -103,6 +105,7 @@
-                    $(OLD_JSSE_PKGS) \
-                    $(HTTPSERVER_PKGS) \
-                    $(SMARTCARDIO_PKGS) \
-+                   $(JNLP_PKGS) \
-                    $(TRACING_PKGS) \
-                    $(SCTPAPI_PKGS)
- 
-diff -Nru openjdk.orig/jdk/make/launchers/Makefile openjdk/jdk/make/launchers/Makefile
---- openjdk.orig/jdk/make/launchers/Makefile	2009-07-25 04:30:42.000000000 +0100
-+++ openjdk/jdk/make/launchers/Makefile	2009-08-04 14:59:15.000000000 +0100
-@@ -67,6 +67,7 @@
- $(call make-launcher, javadoc, com.sun.tools.javadoc.Main, , )
- $(call make-launcher, javah, com.sun.tools.javah.Main, , )
- $(call make-launcher, javap, com.sun.tools.javap.Main, , )
-+$(call make-launcher, javaws, net.sourceforge.jnlp.runtime.Boot, , )
- $(call make-launcher, jconsole, sun.tools.jconsole.JConsole, \
-   -J-Djconsole.showOutputViewer, )
- $(call make-launcher, jdb, com.sun.tools.example.debug.tty.TTY, , )
-diff -Nru openjdk.orig/jdk/src/share/classes/sun/applet/AppletPanel.java openjdk/jdk/src/share/classes/sun/applet/AppletPanel.java
---- openjdk.orig/jdk/src/share/classes/sun/applet/AppletPanel.java	2009-08-04 14:57:54.000000000 +0100
-+++ openjdk/jdk/src/share/classes/sun/applet/AppletPanel.java	2009-08-04 14:59:15.000000000 +0100
-@@ -67,7 +67,7 @@
-     /**
-      * The applet (if loaded).
-      */
--    Applet applet;
-+    protected Applet applet;
- 
-     /**
-      * Applet will allow initialization.  Should be
-@@ -161,7 +161,8 @@
-      * 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 @@
-     /**
-      * 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 @@
-      * 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;
-diff -Nru openjdk.orig/jdk/src/share/classes/sun/applet/AppletViewerPanel.java openjdk/jdk/src/share/classes/sun/applet/AppletViewerPanel.java
---- openjdk.orig/jdk/src/share/classes/sun/applet/AppletViewerPanel.java	2009-08-04 14:57:54.000000000 +0100
-+++ openjdk/jdk/src/share/classes/sun/applet/AppletViewerPanel.java	2009-08-04 14:59:15.000000000 +0100
-@@ -42,25 +42,25 @@
-  *
-  * @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 @@
-     /**
-      * 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;
- 
-@@ -202,12 +202,12 @@
-         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);